SPMMD01700_항생제Master관리.xrw 47 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161
  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>CDSS 항생제 Master</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <cond>
  11. <resnflagno>11</resnflagno>
  12. <lrgno/>
  13. <mdlno/>
  14. <smlno/>
  15. </cond>
  16. <prcp>
  17. <prcplist>
  18. <status/>
  19. <antibiohistseq/>
  20. <comcd/>
  21. <histseq/>
  22. <prcpvolunitflag/>
  23. <prcpqtyunitflag/>
  24. <drugmthdspccd/>
  25. <prcpstatcd/>
  26. <prcpclscd/>
  27. <prcpkindcd/>
  28. <prcpcd/>
  29. <prcpnm/>
  30. <prcpvol/>
  31. <prcpvolunitnm/>
  32. <prcpqty/>
  33. <prcpqtyunitnm/>
  34. <prcptims/>
  35. <prcpdayno/>
  36. <drugmthdspccdnm/>
  37. <prcpmixno/>
  38. <payflagcd/>
  39. <prcpdelivefact/>
  40. <hosinhosoutflag/>
  41. <prcpexecdeptcd/>
  42. <prcphopedd/>
  43. <choiordflag/>
  44. <rgstdt/>
  45. <rgstridnm/>
  46. <testrsltunit/>
  47. <testrsltcnts/>
  48. <prcpgenrflag/>
  49. <prcphistcd/>
  50. <tempprcpflag/>
  51. <prcpsetcd/>
  52. <prcpvolunitflag/>
  53. <prcpqtyunitflag/>
  54. <orgprcpqty/>
  55. <drugspd/>
  56. <drugspdunitflag/>
  57. <powdflag/>
  58. <prnprcpflag/>
  59. <prepprcpflag/>
  60. <selfprcpflag/>
  61. <selfdrugflag/>
  62. <drugpackflag/>
  63. <erprcpflag/>
  64. <precureprcpflag/>
  65. <nigtprcpflag/>
  66. <portprcpflag/>
  67. <fixprcpflag/>
  68. <anamneflag/>
  69. <fastprcpflag/>
  70. <erreadflag/>
  71. <prcpdirecflag/>
  72. <tnsuseflag/>
  73. <tnsfiltflag/>
  74. <trnptbftestflag/>
  75. <offictourhealexamflag/>
  76. <stemcellflag/>
  77. <angioflagcd/>
  78. <opansflagcd/>
  79. <ansttm/>
  80. <mealcalrcnts/>
  81. <mealprotcnts/>
  82. <mealupdtflag/>
  83. <hosinprcpresncd/>
  84. <etcprcpresncd/>
  85. <drugmthdspccd/>
  86. <issdeptcd/>
  87. <prcpauthflag/>
  88. <prcpinptflag/>
  89. <prcpsignflag/>
  90. <rateprcpflag/>
  91. <prcprefseq/>
  92. <ordreqlnkno/>
  93. <testreqlnkno/>
  94. <prcplnkdd/>
  95. <prcplnkno/>
  96. <oprsrvno/>
  97. <tootfact/>
  98. <clinccmtcnts/>
  99. <prcpessninptflag/>
  100. <grupsnglflag/>
  101. <drugrateqty/>
  102. <asttestflag/>
  103. <clincstdyflag/>
  104. <prtlno/>
  105. <clincstdycd/>
  106. <optermcd/>
  107. <prcpflag/>
  108. <hscttempprcpflag/>
  109. <inclprcpcd/>
  110. <inclprcpno/>
  111. <pampkspec/>
  112. <prcppkspec/>
  113. <calcscormastspec/>
  114. <drugmastspec/>
  115. <rateprcpspec/>
  116. <matrsetprcpspec/>
  117. <suppdeptspec/>
  118. <contprcpspec/>
  119. <etclnkspec/>
  120. <srchcondcnts/>
  121. <orgprcpnm/>
  122. <chkcol/>
  123. <tempcol1/>
  124. <tempcol2/>
  125. <tempcol3/>
  126. </prcplist>
  127. </prcp>
  128. <antibiorecommlist/>
  129. <paramlist/>
  130. </main>
  131. <send>
  132. <reqdata/>
  133. <savedata/>
  134. <condition>
  135. <srchflag/>
  136. <srchnm/>
  137. <scrid/>
  138. </condition>
  139. </send>
  140. <hidden>
  141. <icomment/>
  142. <smlno/>
  143. <drugmthdspccd/>
  144. <smlcomment/>
  145. </hidden>
  146. <trgdata/>
  147. <srcdata/>
  148. <init>
  149. <M0342list/>
  150. </init>
  151. <temp>
  152. <comcdinfo>
  153. <list2700>
  154. <comcd/>
  155. <comnm/>
  156. <comexcd/>
  157. </list2700>
  158. </comcdinfo>
  159. </temp>
  160. <drugcalc>
  161. <prcpvol/>
  162. <prcpqty/>
  163. <prcptims/>
  164. </drugcalc>
  165. <cdssall>
  166. <lrgno/>
  167. <lrgnm/>
  168. <mdlno/>
  169. <mdlnm/>
  170. <smlno/>
  171. <smlnm/>
  172. <comcd/>
  173. <comexcd/>
  174. <comnm/>
  175. <drugcd/>
  176. <prcpnm/>
  177. <rank/>
  178. <drugkind/>
  179. <cmt/>
  180. <bigo/>
  181. </cdssall>
  182. </root>
  183. </instance>
  184. <submission id="TRMMD01604" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/antibiorecommlist"/>
  185. <submission id="TRMMD01605" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/prcp"/>
  186. <submission id="TXMMD01604" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/antibiorecommlist"/>
  187. <submission id="TXMMD01605" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/prcp"/>
  188. <submission id="TXMMD01603" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/antibiosmlnolist"/>
  189. <submission id="TRMMD02801" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/condition" replace="instance" resultref="/root/temp/comcdinfo"/>
  190. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  191. <submission id="TRMMD02802" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" replace="instance" resultref="/root/temp/comcdinfo"/>
  192. <submission id="TXMMD01606" mediatype="application/x-www-form-urlencoded" method="post" resultref="/root/cdssall"/>
  193. <script type="javascript" ev:event="xforms-ready">
  194. <![CDATA[
  195. zbcfGetCodeList(new Array("M0342"),
  196. new Array("/root/init/M0342list"));
  197. if(getUserId() != "EMR"){ // 'EMR'로 로긴시에는 처방되도록 처리
  198. // 버튼 권한 처리 20080319 정연우
  199. if(checkAuth("R")) { // 읽기 권한이 있을때 로드시 데이터 세팅.
  200. fInit();
  201. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD02400_항생제ProphylaxisMaster.xrw";
  202. }
  203. button1.disabled = !checkAuth("R"); // Prophylaxis
  204. button8.disabled = !checkAuth("R"); // Empirical
  205. button3.disabled = !checkAuth("R"); // Targeted therapy
  206. // 저장, 삭제, 추가
  207. button2.disabled = !checkAuth("X");
  208. button5.disabled = !checkAuth("X");
  209. button6.disabled = !checkAuth("X");
  210. button7.disabled = !checkAuth("X");
  211. button9.disabled = !checkAuth("X");
  212. btn_addrow.disabled = !checkAuth("X");
  213. btn_delrow.disabled = !checkAuth("X");
  214. } else {
  215. fInit();
  216. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD02400_항생제ProphylaxisMaster.xrw";
  217. }
  218. ]]>
  219. </script>
  220. <bind id="bind_comcd" ref="/root/main/antibiorecommlist/info/comcd" readonly="../smlno!=''"/>
  221. <bind id="bind_comnm" ref="/root/main/antibiorecommlist/info/comnm" readonly="../smlno!=''"/>
  222. <submission id="TRMMD01607" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/cdssdruglist"/>
  223. </model>
  224. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  225. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  226. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  227. <script type="javascript" src="../../../emr/prcpmngtweb/js/SMMMO00100.js"/>
  228. <script type="javascript" src="../../../emr/prcpmngtweb/js/MMO001.js"/>
  229. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  230. <script type="javascript" src="../../../com/departmentcodeweb/js/ZSD001.js"/>
  231. <script type="javascript">
  232. <![CDATA[
  233. function fInit(){
  234. model.removeNodeset("/root/send/reqdata");
  235. model.removeNodeset("/root/main/antibiorecommlist");
  236. model.setValue("/root/hidden/icomment", "");
  237. txt_comment.refresh();
  238. model.setValue("/root/hidden/smlcomment", "");
  239. txt_smlcomment.refresh();
  240. model.removeNodeset("/root/main/prcp");
  241. model.refresh();
  242. group1.visible = false;
  243. }
  244. function fRecommendedList(resnFlag, smlNo){
  245. var gridRow = ivw_prophylaxis.grd_smlno.selectedRow(0);
  246. model.removeNodeset("/root/send/reqdata");
  247. model.removeNodeset("/root/main/prcp");
  248. model.setValue("/root/hidden/icomment", "");
  249. txt_comment.refresh();
  250. model.makeValue("/root/hidden/smlcomment", ivw_prophylaxis.model.getValue("/root/main/antibiosmlnolist/info["+ gridRow + "]/smlcomment"));
  251. txt_smlcomment.refresh();
  252. model.makeValue("/root/send/reqdata/smlno", smlNo);
  253. model.setValue("/root/hidden/smlno", smlNo);
  254. submit("TRMMD01604");
  255. grd_antibiorecommlist.select(1,1) = true;
  256. fDetailList(1);
  257. }
  258. function fDetailList(gridRow){
  259. if(grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows >= 1 ){
  260. model.makeValue("/root/hidden/icomment", model.getValue("/root/main/antibiorecommlist/info["+ gridRow + "]/icomment"));
  261. model.refresh();
  262. model.removeNodeset("/root/send/reqdata");
  263. model.makeValue("/root/send/reqdata/comcd", model.getValue("/root/main/antibiorecommlist/info["+ gridRow + "]/comcd"));
  264. model.makeValue("/root/send/reqdata/comexcd", model.getValue("/root/main/antibiorecommlist/info["+ gridRow + "]/comexcd"));
  265. model.makeValue("/root/send/reqdata/smlno", model.getValue("/root/main/antibiorecommlist/info["+ gridRow + "]/smlno"));
  266. model.makeValue("/root/send/reqdata/drugkind", model.getValue("/root/main/antibiorecommlist/info["+ gridRow + "]/drugkind"));
  267. submit("TRMMD01605");
  268. model.removeNodeset("/root/send/reqdata");
  269. }
  270. }
  271. function fSetAntibioComcd(){
  272. var strCSV = getParameter("saveparam");
  273. setCSVToNode("/root/main/paramlist", strCSV, "info");
  274. var nodeList1 = instance1.selectNodes("/root/main/paramlist/info/comcd");
  275. var nodeList3 = instance1.selectNodes("/root/main/paramlist/info/comexcd");
  276. var nodeList2= instance1.selectNodes("/root/main/paramlist/info/comnm");
  277. var paramCnt = nodeList1.length;
  278. if(paramCnt > 0){
  279. for(var i=0; i<nodeList1.length; i++){
  280. var comCd = nodeList1.item(i).value;
  281. var comexCd = nodeList3.item(i).value;
  282. var comNm = nodeList2.item(i).value;
  283. //var m = node.selectSingleNode("m");
  284. /* 20080317 안혜림 선생님 요청 기존약품중 코드 중복시에도 추가 되도록 주석처리
  285. var nodeListRecomm = instance1.selectNodes("/root/main/antibiorecommlist/info[comcd = '"+comCd+"']/comnm");
  286. if ( nodeListRecomm != null && nodeListRecomm.length > 0 ){
  287. continue;
  288. }
  289. */
  290. //grd_antibiorecommlist.addRow();
  291. var rowno = grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows;
  292. // 2008.09.15 추가-> 성분코드조회 확인하면 그리드 row가 1줄 더 생기는 것 막음
  293. var racomcd = model.getValue("/root/main/antibiorecommlist/info["+ rowno +"]/comcd");
  294. if( grd_antibiorecommlist.rowStatus(rowno) != 1) {
  295. grd_antibiorecommlist.addRow();
  296. rowno ++;
  297. }
  298. if( grd_antibiorecommlist.rowStatus(rowno) == 1 && racomcd != "") {
  299. grd_antibiorecommlist.addRow();
  300. rowno ++;
  301. }
  302. // (e)
  303. model.setValue("/root/main/antibiorecommlist/info["+rowno+"]/comcd", comCd);
  304. model.setValue("/root/main/antibiorecommlist/info["+rowno+"]/comexcd", comexCd);
  305. model.setValue("/root/main/antibiorecommlist/info["+rowno+"]/comnm", comNm);
  306. model.setValue("/root/main/antibiorecommlist/info["+rowno+"]/refseq", rowno);
  307. model.setValue("/root/main/antibiorecommlist/info["+rowno+"]/smlno", model.getValue("/root/hidden/smlno"));
  308. }
  309. }
  310. model.removeNodeset("/root/main/paramlist");
  311. model.makeNode("/root/main/paramlist");
  312. setParameter("saveparam","");
  313. }
  314. /*=================================================================================================================================================
  315. * @desc : 성분코드 조회
  316. * @version : 2007-12-29
  317. =================================================================================================================================================*/
  318. function fGetComCdList(){
  319. if( event.keyCode != 13 ) return ;
  320. grp_comcd.visible= false;
  321. var iCol = grd_antibiorecommlist.col ;
  322. var iRow = grd_antibiorecommlist.row ;
  323. var sCondPath = "/root/send/condition";
  324. var sCond = "";
  325. //if(iCol != 2 && iCol != 4) { return;}
  326. if( iCol == 2 ){
  327. sCond = "C"; //code
  328. }
  329. else
  330. if( iCol == 4 ){
  331. sCond = "N"; //name
  332. }
  333. else {
  334. return ;
  335. }
  336. var sSrchNm = grd_antibiorecommlist.labelMatrix( iRow , iCol );
  337. if( sSrchNm.length< 2 ) {
  338. messageBox("두자리 이상 ","C001");
  339. grd_antibiorecommlist.row = iRow;
  340. grd_antibiorecommlist.col = iCol;
  341. grd_antibiorecommlist.editCell();
  342. return ;
  343. }
  344. model.makeNode(sCondPath + "/srchflag" );
  345. model.setValue(sCondPath + "/srchflag" , sCond);
  346. model.makeNode(sCondPath + "/srchnm" );
  347. model.setValue(sCondPath+ "/srchnm" , sSrchNm);
  348. model.makeNode(sCondPath + "/scrid" );
  349. model.setValue(sCondPath + "/scrid" , "SPMMD2700");
  350. model.removeNodeset(grd_masterinfo.nodeset);
  351. //alert( sCond + sSrchNm );
  352. if( submit("TRMMD02801") == false ) {
  353. grd_antibiorecommlist.row = iRow;
  354. grd_antibiorecommlist.col = iCol;
  355. grd_antibiorecommlist.editCell();
  356. return ;
  357. }
  358. var iCnt = getNodesetCount(grd_masterinfo.nodeset );
  359. if( iCnt < 1) {
  360. grd_antibiorecommlist.row = iRow;
  361. grd_antibiorecommlist.col = iCol;
  362. grd_antibiorecommlist.editCell();
  363. return ;
  364. }
  365. if( iCnt == 1 ){
  366. grd_masterinfo.row = 1;
  367. grd_masterinfo.valueMatrix(1, 1) = "Y" ;
  368. fSetComCdList();
  369. return ;
  370. }
  371. if( grd_antibiorecommlist.rows > 7 ) {
  372. grp_comcd.attribute("top") = parseInt( grd_antibiorecommlist.attribute("top") ) + parseInt(grd_antibiorecommlist.attribute("height") );
  373. }
  374. else {
  375. grp_comcd.attribute("top") = parseInt( grd_antibiorecommlist.attribute("top") ) + grd_antibiorecommlist.row*23 ;
  376. }
  377. grp_comcd.visible= true;
  378. }
  379. /*=================================================================================================================================================
  380. * @desc : 성분코드 설정
  381. * @version : 2007-12-29
  382. =================================================================================================================================================*/
  383. function fSetComCdList(){
  384. var checkNodeList = instance1.selectNodes(grd_masterinfo.nodeset+ "[chk='Y']");//dd
  385. if( checkNodeList != null && checkNodeList.length > 0 ){
  386. var csv = getNodeListCSV(checkNodeList);
  387. setParameter("saveparam", csv);
  388. grd_antibiorecommlist.deleteItem(grd_antibiorecommlist.rows -1 );
  389. fSetAntibioComcd();
  390. }
  391. grp_comcd.visible= false;
  392. }
  393. /*=================================================================================================================================================
  394. * @desc : 처방용량/처방수량 자동계산
  395. SMMMO00100의 DrugCalc 수정
  396. 처방용량이나 처방수량 데이터가 없을때 클릭해서 에디트모드에서 다른곳 클릭시 자동으로 1이 입력되는 로직 수정
  397. 그대로 사용하려면 DrugCalc 사용하도록 수정
  398. * @version : 2008-07-01
  399. =================================================================================================================================================*/
  400. function fDrugCalc(flag, curRow){
  401. var bfPrcpVol = model.getValue ( "/root/drugcalc/prcpvol" );
  402. if ( isNull(bfPrcpVol) || bfPrcpVol == 0 ) {
  403. bfPrcpVol = "1";
  404. }
  405. var bfPrcpQty = model.getValue ( "/root/drugcalc/prcpqty" );
  406. if ( isNull(bfPrcpQty) || bfPrcpQty == 0 ) {
  407. bfPrcpQty = "1";
  408. }
  409. var PrcpVol = model.getValue ( prcpNode + "[" + curRow + "]/prcpvol" );
  410. if ( isNull(PrcpVol) || PrcpVol == 0 ) {
  411. PrcpVol = "1";
  412. }
  413. var PrcpQty = model.getValue ( prcpNode + "[" + curRow + "]/prcpqty" );
  414. if ( isNull(PrcpQty) || PrcpQty == 0 ){
  415. PrcpQty = "1";
  416. }
  417. var calcPrcpVol = 0;
  418. var calcPrcpQty = 0;
  419. // 용량을 수정했을 때: 수량 자동계산, 수량을 수정했을 때: 용량 자동계산
  420. if ( flag == "prcpvol" && (model.getValue ( "/root/drugcalc/prcpvol" ) != model.getValue ( prcpNode + "[" + curRow + "]/prcpvol" ))) {
  421. calcPrcpQty = eval(PrcpVol) / eval(bfPrcpVol) * eval(PrcpQty)*1000;
  422. calcPrcpQty = Math.round(calcPrcpQty)/1000;
  423. model.setValue ("/root/main/prcp/prcplist" + "[" + curRow + "]/prcpqty", calcPrcpQty );
  424. } else if ( flag == "prcpqty" && (model.getValue ( "/root/drugcalc/prcpqty" ) != model.getValue ( prcpNode + "[" + curRow + "]/prcpqty" ))) {
  425. calcPrcpVol = eval(PrcpQty) / eval(bfPrcpQty) * eval(PrcpVol)*1000;
  426. calcPrcpVol = Math.round(calcPrcpVol)/1000;
  427. model.setValue ("/root/main/prcp/prcplist" + "[" + curRow + "]/prcpvol", calcPrcpVol );
  428. }
  429. }
  430. function fShowSearchList() {
  431. group1.visible= true;
  432. }
  433. function fSearchNo(){
  434. //grp_comcd.visible= false;
  435. var sCondPath = "/root/send/reqdata";
  436. var sSrchNm = model.getValue("/root/send/condition/srchnm");
  437. if( sSrchNm.length == "" ) {
  438. messageBox("검색어를","C001");
  439. return ;
  440. }
  441. model.makeNode(sCondPath + "/srchflag" );
  442. model.setValue(sCondPath + "/srchflag" , model.getValue("/root/send/condition/srchflag"));
  443. model.makeNode(sCondPath + "/resnflagno" );
  444. if(button1.selected == true){
  445. model.setValue(sCondPath+ "/resnflagno" , 11);
  446. } else if(button8.selected == true){
  447. model.setValue(sCondPath+ "/resnflagno" , 13);
  448. }
  449. model.makeNode(sCondPath + "/srchnm" );
  450. model.setValue(sCondPath+ "/srchnm" , sSrchNm);
  451. //model.copyNode("/root/send/reqdata", "/root/send/condition");
  452. submit("TRMMD01607");
  453. group1.visible= true;
  454. }
  455. function fSetData(){
  456. fInit();
  457. if(button1.selected == true){
  458. model.setValue("/root/main/cond/resnflagno", 11);
  459. model.setValue("/root/main/cond/lrgno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/lrgno"));
  460. model.setValue("/root/main/cond/mdlno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/mdlno"));
  461. model.setValue("/root/main/cond/smlno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/smlno"));
  462. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD01800_항생제Prophylaxis.xrw";
  463. button1.selected = true;
  464. } else if(button8.selected == true){
  465. model.setValue("/root/main/cond/resnflagno", 13);
  466. model.setValue("/root/main/cond/lrgno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/lrgno"));
  467. model.setValue("/root/main/cond/mdlno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/mdlno"));
  468. model.setValue("/root/main/cond/smlno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/smlno"));
  469. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD02000_항생제Empirical.xrw";
  470. button8.selected = true;
  471. } else if(button3.selected == true) {
  472. // grd_antibiorecommlist.colhidden(0) = false;
  473. model.setValue("/root/main/cond/resnflagno", 12);
  474. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD01900_항생제Targeted therapy.xrw";
  475. }
  476. group1.visible= false;
  477. }
  478. ]]>
  479. </script>
  480. </xhtml:head>
  481. <xhtml:body guideline="2,189;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  482. <group id="grp_tle" style="left:0px; top:0px; width:1175px; height:13px; ">
  483. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:162px; height:14px; ">CDSS 항생제 Master</caption>
  484. </group>
  485. <group id="grp_btn" style="left:0px; top:757px; width:1175px; height:27px; ">
  486. <button id="button4" class="btn4_letter2" style="left:1109px; top:3px; width:56px; height:22px; ">
  487. <caption>닫기</caption>
  488. <script type="javascript" ev:event="DOMActivate">
  489. <![CDATA[
  490. window.close();
  491. ]]>
  492. </script>
  493. </button>
  494. <button id="btn_excel" class="btn2_letter9" style="left:10px; top:5px; width:115px; height:19px; ">
  495. <caption>Master 엑셀로 받기</caption>
  496. <script type="javascript" ev:event="DOMActivate">
  497. <![CDATA[
  498. submit("TXMMD01606");
  499. model.refresh();
  500. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  501. if (fileName != ""){
  502. grd_masterinfolist.saveExcel(fileName, "SheetName", true, true, "", "", false);
  503. }
  504. ]]>
  505. </script>
  506. </button>
  507. </group>
  508. <group id="grp_biz" scroll="auto" style="left:0px; top:15px; width:1175px; height:740px; ">
  509. <datagrid id="grd_prcplist" nodeset="/root/main/prcp/prcplist" class="datagrid2" autoresize="true" caption="코드^원내보유 항생제^처방용량^처방용량^처방수량^처방수량^처방&#xA;횟수^처방&#xA;일수^용법/검체^제한&#xA;일수^caption1" colsep="^" colwidth="90, 255, 43, 24, 43, 24, 47, 41, 180, 41, 8, 11, 8, 12, 10, 10, 10" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:360px; top:450px; width:810px; height:287px; ">
  510. <col ref="prcpcd"/>
  511. <col ref="prcpnm"/>
  512. <col ref="prcpvol" type="input" format="#.#" style="text-align:center; focus-rect:visible; "/>
  513. <col ref="prcpvolunitnm" type="output" style="text-align:center; focus-rect:visible; "/>
  514. <col ref="prcpqty" type="input" format="#.#" style="text-align:center; focus-rect:visible; "/>
  515. <col ref="prcpqtyunitnm" style="text-align:center; focus-rect:visible; "/>
  516. <col ref="prcptims" type="input" format="#.#" style="text-align:center; focus-rect:visible; "/>
  517. <col ref="prcpdayno" type="input" format="#" style="text-align:center; focus-rect:visible; "/>
  518. <!--col ref="drugmthdspccdnm" type="inputbutton"/-->
  519. <col ref="drugmthdspccdnm" type="input"/>
  520. <col ref="limdayno" type="input" format="#" style="text-align:center; focus-rect:visible; "/>
  521. <col ref="antibiohistseq" visibility="hidden"/>
  522. <col ref="comcd" visibility="hidden"/>
  523. <col ref="comexcd" visibility="hidden"/>
  524. <col ref="smlno" visibility="hidden"/>
  525. <col ref="prcpvolunitflag" visibility="hidden"/>
  526. <col ref="prcpqtyunitflag" visibility="hidden"/>
  527. <col ref="drugmthdspccd" visibility="hidden"/>
  528. <script type="javascript" ev:event="onstartedit">
  529. <![CDATA[
  530. if ( grd_prcplist.col == grd_prcplist.colref("prcpvol")) {
  531. bfDrugCalc ( "prcpvol", grd_prcplist.row );
  532. } else if ( grd_prcplist.col == grd_prcplist.colref("prcpqty")) {
  533. bfDrugCalc ( "prcpqty", grd_prcplist.row );
  534. }
  535. ]]>
  536. </script>
  537. <script type="javascript" ev:event="onendedit">
  538. <![CDATA[
  539. var currow = grd_prcplist.row;
  540. if ( grd_prcplist.col == grd_prcplist.colref("prcpdayno")) {
  541. //fGridfBatIpt( "prcpdayno" );
  542. } else if ( grd_prcplist.col == grd_prcplist.colref("prcptims")) {
  543. //fGridfBatIpt( "prcptims" );
  544. //fBaseMthd(currow);
  545. if(event.keyCode == "13") {
  546. grd_prcplist.col = grd_prcplist.colref("prcpdayno");
  547. model.setfocus( "grd_prcplist" );
  548. grd_prcplist.editCell();
  549. }
  550. } else if ( grd_prcplist.col == grd_prcplist.colref("prcpqty")) {
  551. fDrugCalc ( "prcpqty" , grd_prcplist.row);
  552. //fGridfBatIpt( "prcpqty" );
  553. if(event.keyCode == "13") {
  554. grd_prcplist.col = grd_prcplist.colref("prcptims");
  555. model.setfocus( "grd_prcplist" );
  556. grd_prcplist.editCell();
  557. }
  558. } else if ( grd_prcplist.col == grd_prcplist.colref("prcpvol") ) {
  559. fDrugCalc ("prcpvol" , grd_prcplist.row);
  560. if(event.keyCode == "13") {
  561. grd_prcplist.col = grd_prcplist.colref("prcpqty");
  562. model.setfocus( "grd_prcplist" );
  563. grd_prcplist.editCell();
  564. }
  565. }
  566. ]]>
  567. </script>
  568. <script type="javascript" ev:event="onclick">
  569. <![CDATA[
  570. var curRow = grd_prcplist.mouseRow;
  571. var lastRow = grd_prcplist.rows - grd_prcplist.fixedRows;
  572. if(grd_prcplist.rows > 1 && grd_prcplist.rows <= grd_prcplist.mouseRow ) {
  573. //용법 팝업 수정에 따른 처리 -> 현재 사용은 하지 않음. 용법 팝업에서 수정되면 제거할것 2008.07.01 정연우
  574. model.makeValue("/root/main/prcp/prcplist["+grd_prcplist.row+"]/drugrateqty", "");
  575. //model.makeValue("/root/main/prcp/prcplist["+grd_prcplist.row+"]/exptmthdfact", "");
  576. //model.makeValue("/root/main/prcp/prcplist["+grd_prcplist.row+"]/drugindependpackflag", "");
  577. model.makeValue("/root/main/prcp/prcplist["+grd_prcplist.row+"]/rateprcpflag", "N");
  578. if( curRow > 0 && curRow <= lastRow ){
  579. if ( grd_prcplist.col == grd_prcplist.colref("drugmthdspccdnm") ){
  580. model.setValue("/root/hidden/drugmthdspccd", model.getValue("/root/main/prcp/prcplist["+grd_prcplist.row+"]/drugmthdspccd")); // 용법변경여부 체크위한 기존값저장
  581. var prcpclscd = model.getValue( "/root/main/prcp/prcplist[" + grd_prcplist.row + "]/prcpclscd");
  582. var status = model.getValue( "/root/main/prcp/prcplist[" + grd_prcplist.row + "]/status");
  583. if( grd_prcplist.isCell(event.target) && grd_prcplist.row >= grd_prcplist.fixedRows && grd_prcplist.row <= grd_prcplist.rows){
  584. if ( grd_prcplist.col == grd_prcplist.colref("drugmthdspccdnm") && status != "S" ) {
  585. if ( prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6") {
  586. //model.setValue( "/root/main/prcp/prcplist[" + grd_prcplist.row +"]/prcpclscd", "A2");
  587. fPrcpModal ("SPMMO01900", 500, 200);
  588. } else if ( prcpclscd == "B2" || prcpclscd == "B4" || prcpclscd == "B6" ) {
  589. fGetSpc ();
  590. }
  591. if( model.getValue("/root/main/prcp/prcplist["+grd_prcplist.row+"]/drugmthdspccd") != model.getValue("/root/hidden/drugmthdspccd") ){
  592. grd_prcplist.rowStatus(grd_prcplist.row)= 2;
  593. }
  594. } else if ( grd_prcplist.col == "15" && status != "S" ) {
  595. fPrcpdelivefact( "M" );
  596. } else if ( status != "S" ) {
  597. fPrcpDetl();
  598. }
  599. }
  600. }else if ( grd_prcplist.col == grd_prcplist.colref("prcpdayno")
  601. || grd_prcplist.col == grd_prcplist.colref("prcpvol")
  602. || grd_prcplist.col == grd_prcplist.colref("prcpqty")
  603. || grd_prcplist.col == grd_prcplist.colref("prcptims")
  604. || grd_prcplist.col == grd_prcplist.colref("limdayno") ) {
  605. grd_prcplist.editCell();
  606. }
  607. }
  608. }
  609. ]]>
  610. </script>
  611. </datagrid>
  612. <datagrid id="grd_antibiorecommlist" nodeset="/root/main/antibiorecommlist/info" dragmode="true" dropmode="true" autoresize="true" caption="Rank^코드^확장코드^Recommended Antibiotics^투여경로^caption1" colsep="^" colwidth="35, 72, 56, 254, 64, 10, 22, 11, 9, 8" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:360px; top:245px; width:560px; height:175px; ">
  613. <col ref="rank" type="input"/>
  614. <col ref="comcd" type="input"/>
  615. <col ref="comexcd" type="input"/>
  616. <col ref="comnm" type="input"/>
  617. <col class="gridcombo" ref="drugkind" type="combo" visibility="visible">
  618. <choices>
  619. <itemset nodeset="/root/init/M0342list/M0342">
  620. <label ref="cdnm"/>
  621. <value ref="cdid"/>
  622. </itemset>
  623. </choices>
  624. </col>
  625. <col ref="histseq" visibility="hidden"/>
  626. <col ref="comexcd" visibility="hidden"/>
  627. <col ref="refseq" visibility="hidden"/>
  628. <col ref="icomment" visibility="hidden"/>
  629. <col ref="smlno" visibility="hidden"/>
  630. <script type="javascript" ev:event="onclick">
  631. <![CDATA[
  632. //코드입력이 완료되지 않았을 경우 원내보유 항생제 조회가 되지 않도록...2007-12-29 손주연 수정 시작
  633. if( grd_antibiorecommlist.row > 0 ) {
  634. if ( (grd_antibiorecommlist.rowstatus( grd_antibiorecommlist.row ) == 1 ) ||
  635. (grd_antibiorecommlist.rowstatus( grd_antibiorecommlist.row ) == 3 ) ){
  636. if( model.getValue(grd_antibiorecommlist.nodeset + "[" + grd_antibiorecommlist.row + "]/smlno" ) == "" ) {
  637. grd_antibiorecommlist.editCell();
  638. }
  639. return ;
  640. }
  641. }
  642. //.2007-12-29 손주연 수정 종료
  643. var curRow = grd_antibiorecommlist.mouseRow;
  644. var lastRow = grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows;
  645. if( curRow > 0 && curRow <= lastRow ){
  646. if ( grd_antibiorecommlist.col == grd_antibiorecommlist.colref("comnm")
  647. || grd_antibiorecommlist.col == grd_antibiorecommlist.colref("comcd") ){
  648. fDetailList(grd_antibiorecommlist.row);
  649. }else if ( grd_antibiorecommlist.col == grd_antibiorecommlist.colref("rank")
  650. || grd_antibiorecommlist.col == grd_antibiorecommlist.colref("drugkind")) {
  651. grd_antibiorecommlist.editCell();
  652. }
  653. }
  654. ]]>
  655. </script>
  656. <script type="javascript" ev:event="ondrop">
  657. <![CDATA[
  658. var trgCnt = grd_antibiorecommlist.mouseRow;
  659. if( trgCnt < 0){
  660. trgCnt = grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows;
  661. }
  662. if( trgCnt == 0){
  663. trgCnt = 1;
  664. }
  665. var srcCnt = grd_antibiorecommlist.row;
  666. var newCnt;
  667. var trgNode = "/root/main/antibiorecommlist/info["+trgCnt+"]";
  668. var srcNode = "/root/main/antibiorecommlist/info["+srcCnt+"]";
  669. var srcStatus = grd_antibiorecommlist.rowStatus(srcCnt);
  670. var trgStatus = grd_antibiorecommlist.rowStatus(trgCnt);
  671. if ( event.drag == "grd_antibiorecommlist")
  672. {
  673. grd_antibiorecommlist.select( trgCnt, 1, trgCnt, 8 ) = true;
  674. model.removeNodeset("/root/trgdata");
  675. model.makeNode("/root/trgdata/info");
  676. if(srcCnt > 0 && trgCnt > 0 ){
  677. for(idx = 1 ; idx <= (grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows) ; idx++){
  678. if( grd_antibiorecommlist.rowStatus(idx) != 0 ){
  679. return;
  680. }
  681. }
  682. if( trgCnt == srcCnt){//자기자신일경우..
  683. return;
  684. }else{
  685. model.copyNode("/root/trgdata/info", trgNode);
  686. if(model.getValue("/root/trgdata/info/rank") != model.getValue("/root/srcdata/info/rank")){
  687. var rtnmsg = messageBox( model.getValue("/root/trgdata/info/rank") +" 순위로 ", "Q002");
  688. if( rtnmsg == 7 ){
  689. return;
  690. }
  691. model.setValue("/root/srcdata/info/rank", model.getValue("/root/trgdata/info/rank"));
  692. }
  693. grd_antibiorecommlist.insertRow(trgCnt, "above",false);
  694. model.copyNode( trgNode, "/root/srcdata/info" );
  695. if( trgCnt < srcCnt ) srcCnt++;//아래에서 위로 이동할때 위쪽에 행이 하나 추가되었으므로 삭제할 행이 증가된상태이다
  696. if( trgCnt > srcCnt ) srcCnt--;
  697. grd_antibiorecommlist.deleteRow(srcCnt, false);
  698. grd_antibiorecommlist.refresh();
  699. //refseq update하러 간다.
  700. model.removeNodeset("/root/send");
  701. model.makeNode("/root/send/savedata/disp");
  702. var curCnt = grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows;//1부터 시작
  703. for( var idx = 1 ; idx <= curCnt ; idx++ ){
  704. model.makeValue("/root/main/antibiorecommlist/info["+ idx + "]/m", "u");
  705. model.makeValue("/root/main/antibiorecommlist/info["+ idx + "]/refseq", idx);
  706. }
  707. //model.copyNode("/root/send/savedata/disp", "/root/main/antibiorecommlist/info");
  708. var saveFlagInfoNodeList = model.instance1.selectNodes( "/root/main/antibiorecommlist/info" );
  709. model.setValue("/root/send/savedata/disp",getNodeListCSV(saveFlagInfoNodeList));
  710. if(submit("TXMMD01604")){
  711. grd_antibiorecommlist.select(trgCnt,1)= true;
  712. fDetailList(trgCnt);
  713. }
  714. }
  715. }
  716. }
  717. ]]>
  718. </script>
  719. <script type="javascript" ev:event="ondragover">
  720. <![CDATA[
  721. var curCnt = grd_antibiorecommlist.mouseRow;
  722. if( curCnt > (grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows) ){
  723. curCnt = grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows;
  724. }
  725. if ( event.drag == "grd_antibiorecommlist")
  726. {
  727. grd_antibiorecommlist.select( curCnt, 1, curCnt, 8 ) = true;
  728. }
  729. ]]>
  730. </script>
  731. <script type="javascript" ev:event="ondragstart">
  732. <![CDATA[
  733. if ( event.drag == "grd_antibiorecommlist")
  734. {
  735. model.removeNodeset("/root/srcdata");
  736. model.makeNode("/root/srcdata/info");
  737. //event.dropData = grd_masterinfo.textMatrix( grd_masterinfo.row, 1 );
  738. var curCnt = grd_antibiorecommlist.row;
  739. if(curCnt > 0 && curCnt <= (grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows)){
  740. model.copyNode("/root/srcdata/info", "/root/main/antibiorecommlist/info["+curCnt+"]");
  741. }
  742. }
  743. ]]>
  744. </script>
  745. <script type="javascript" ev:event="onendedit">
  746. <![CDATA[
  747. fGetComCdList();
  748. ]]>
  749. </script>
  750. </datagrid>
  751. <caption id="caption4" class="tit_2" style="left:366px; top:225px; width:245px; height:14px; ">Recommended Antibiotics</caption>
  752. <caption id="caption25" class="tit_2" style="left:366px; top:35px; width:348px; height:13px; ">참고 정보</caption>
  753. <line id="line3" class="line_1" style="x1:361px; y1:50px; x2:1170px; y2:50px; "/>
  754. <line id="line4" class="line_1" style="x1:360px; y1:240px; x2:920px; y2:240px; "/>
  755. <caption id="caption7" class="tit_2" style="left:366px; top:430px; width:245px; height:14px; ">원내보유 항생제</caption>
  756. <line id="line6" class="line_1" style="x1:360px; y1:445px; x2:1170px; y2:445px; "/>
  757. <button id="button1" class="btn_sw" group="tab" selected="true" style="left:0px; top:5px; width:90px; height:22px; ">
  758. <caption>Prophylaxis</caption>
  759. <script type="javascript" ev:event="DOMActivate">
  760. <![CDATA[
  761. fInit();
  762. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD02400_항생제ProphylaxisMaster.xrw";
  763. ]]>
  764. </script>
  765. </button>
  766. <button id="button3" class="btn_sw" group="tab" style="left:165px; top:5px; width:120px; height:22px; ">
  767. <caption>Targeted therapy</caption>
  768. <script type="javascript" ev:event="DOMActivate">
  769. <![CDATA[
  770. fInit();
  771. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD02500_항생제Targeted therapyMaster.xrw";
  772. ]]>
  773. </script>
  774. </button>
  775. <button id="button8" class="btn_sw" group="tab" style="left:90px; top:5px; width:75px; height:22px; ">
  776. <caption>Empirical</caption>
  777. <script type="javascript" ev:event="DOMActivate">
  778. <![CDATA[
  779. fInit();
  780. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD02600_항생제EmpiricalMaster.xrw";
  781. ]]>
  782. </script>
  783. </button>
  784. <!--iviewer id="ivw_prophylaxis" src="../../../emr/cpcdssweb/xrw/SPMMD02400_항생제ProphylaxisMaster.xrw" style="left:0px; top:25px; width:355px; height:713px; "/-->
  785. <iviewer id="ivw_prophylaxis" style="left:0px; top:25px; width:355px; height:713px; "/>
  786. <textarea id="txt_smlcomment" ref="/root/hidden/smlcomment" style="left:361px; top:55px; width:809px; height:160px; "/>
  787. <button id="button2" class="btn2_letter6" style="left:702px; top:220px; width:86px; height:19px; ">
  788. <caption>성분코드조회</caption>
  789. <script type="javascript" ev:event="DOMActivate">
  790. <![CDATA[
  791. modal("SPMMD02700");
  792. ]]>
  793. </script>
  794. </button>
  795. <button id="btn_delrow" class="btn2_letter2" style="left:834px; top:220px; width:42px; height:19px; ">
  796. <caption>삭제</caption>
  797. <script type="javascript" ev:event="DOMActivate">
  798. <![CDATA[
  799. deleteSelectedRows(grd_antibiorecommlist, true );
  800. /*
  801. var iRow = grd_antibiorecommlist.selectedRow(0);
  802. if(iRow < 1){
  803. return;
  804. }
  805. var status = grd_antibiorecommlist.rowStatus(iRow);
  806. if(status == 1 || status == 3){
  807. grd_antibiorecommlist.deleteRow(iRow);
  808. }else{
  809. grd_antibiorecommlist.rowStatus(iRow)= 4;
  810. //model.setValue("/root/main/antibiolrgnolist/info[" + iRow + "]/todd", getCurrentDate());
  811. }
  812. */
  813. ]]>
  814. </script>
  815. </button>
  816. <button id="button5" class="btn5_letter2" style="left:878px; top:220px; width:42px; height:19px; ">
  817. <caption>저장</caption>
  818. <script type="javascript" ev:event="DOMActivate">
  819. <![CDATA[
  820. var rtnMsg;
  821. var gridRow = grd_antibiorecommlist.selectedRow(0);
  822. if( gridRow >= 1 ){
  823. model.removeNodeset("/root/send/savedata");
  824. // node = instance1.selectSingleNode(ref + "[icomment = '" + null + "']/comcd");
  825. // if( isNull(model.getValue("/root/main/antibiorecommlist/info["+ gridRow + "]/icomment")) ){
  826. // rtnMsg = messageBox("Comment가 입력되지 않았습니다.\n입력 " , "S001");
  827. // if( rtnMsg == "6" ){
  828. // return;
  829. // }
  830. // }
  831. // model.setValue("/root/main/antibiorecommlist/info["+ gridRow + "]/icomment", model.getValue("/root/hidden/icomment"));
  832. // grd_antibiorecommlist.rowStatus(gridRow)= 2;
  833. model.setValue("/root/main/antibiorecommlist/info["+ gridRow + "]/smlno", model.getValue("/root/hidden/smlno"));
  834. model.makeValue("/root/send/savedata/info", grd_antibiorecommlist.getUpdateData());
  835. if(submit("TXMMD01604")){
  836. grd_antibiorecommlist.select(gridRow,1)= true;
  837. fDetailList(gridRow);
  838. }
  839. }
  840. ]]>
  841. </script>
  842. </button>
  843. <button id="button6" class="btn5_letter2" style="left:1127px; top:425px; width:42px; height:19px; ">
  844. <caption>저장</caption>
  845. <script type="javascript" ev:event="DOMActivate">
  846. <![CDATA[
  847. var rtnMsg;
  848. var gridRow = grd_prcplist.row;
  849. if( gridRow >= 1 ){
  850. model.removeNodeset("/root/send/savedata");
  851. model.makeValue("/root/send/savedata/info", grd_prcplist.getUpdateData());
  852. submit("TXMMD01605");
  853. grd_prcplist.select(grd_prcplist.rows - grd_prcplist.fixedRows,1)= true;
  854. }
  855. ]]>
  856. </script>
  857. </button>
  858. <button id="button7" class="btn5_letter2" style="left:1128px; top:30px; width:42px; height:19px; ">
  859. <caption>저장</caption>
  860. <script type="javascript" ev:event="DOMActivate">
  861. <![CDATA[
  862. var rtnMsg;
  863. var gridRow = ivw_prophylaxis.grd_smlno.selectedRow(0);
  864. if( gridRow >= 1 ){
  865. model.removeNodeset("/root/send/savedata");
  866. model.makeNode("/root/send/savedata");
  867. // if( isNull(model.getValue("/root/hidden/smlcomment")) ){
  868. // messageBox("소분류 항생제 Comment가 입력되지 않았습니다. " , "C001");
  869. // return;
  870. // }
  871. ivw_prophylaxis.model.setValue("/root/main/antibiosmlnolist/info["+ gridRow + "]/smlcomment", model.getValue("/root/hidden/smlcomment"));
  872. var nodeList = ivw_prophylaxis.model.instances(0).selectNodes("root/main/antibiosmlnolist/info["+ gridRow + "]");
  873. model.copyNode("/root/send/savedata", nodeList.item(0));
  874. model.makeValue("/root/send/savedata/m", "c");//c는 comment 수정 구분
  875. if(submit("TXMMD01603")){
  876. copyNodesetType("/root/main/antibiosmlnolist","/root/main/antibiosmlnolist","replace",ivw_prophylaxis.model,model);
  877. model.removeNodeset("/root/main/antibiosmlnolist");
  878. ivw_prophylaxis.grd_smlno.rebuild();
  879. ivw_prophylaxis.grd_smlno.select(gridRow,1) = true;
  880. fRecommendedList(model.getValue("/root/main/cond/resnflagno"), ivw_prophylaxis.model.getValue("/root/main/antibiosmlnolist/info[" + gridRow + "]/smlno"));
  881. // grd_antibiorecommlist.select(gridRow,1)= true;
  882. // fDetailList(gridRow);
  883. }
  884. }
  885. ]]>
  886. </script>
  887. </button>
  888. <button id="button9" class="btn5_letter2" style="left:1126px; top:220px; width:42px; height:19px; ">
  889. <caption>저장</caption>
  890. <script type="javascript" ev:event="DOMActivate">
  891. <![CDATA[
  892. var rtnMsg;
  893. var gridRow = grd_antibiorecommlist.selectedRow(0);
  894. if( gridRow >= 1 ){
  895. model.removeNodeset("/root/send/savedata");
  896. model.makeNode("/root/send/savedata/info");
  897. // if( isNull(model.getValue("/root/hidden/icomment")) ){
  898. // messageBox("추천항생제 성분 Comment가 입력되지 않았습니다. " , "C001");
  899. // return;
  900. // }
  901. model.setValue("/root/main/antibiorecommlist/info["+ gridRow + "]/icomment", model.getValue("/root/hidden/icomment"));
  902. model.copyNode("/root/send/savedata/info", "/root/main/antibiorecommlist/info["+ gridRow + "]");
  903. model.makeValue("/root/send/savedata/info/m", "u");
  904. //submit("TXMMD01604");
  905. if(submit("TXMMD01604")){
  906. grd_antibiorecommlist.select(gridRow,1)= true;
  907. fDetailList(gridRow);
  908. }
  909. }
  910. ]]>
  911. </script>
  912. </button>
  913. <caption id="caption1" class="tit_2" style="left:930px; top:225px; width:130px; height:13px; ">비고</caption>
  914. <textarea id="txt_comment" ref="/root/hidden/icomment" style="left:925px; top:245px; width:245px; height:175px; "/>
  915. <line id="line1" class="line_1" style="x1:925px; y1:240px; x2:1170px; y2:240px; "/>
  916. <button id="btn_addrow" class="btn2_letter2" style="left:790px; top:220px; width:42px; height:19px; ">
  917. <caption>추가</caption>
  918. <script type="javascript" ev:event="DOMActivate">
  919. <![CDATA[
  920. grd_antibiorecommlist.addItem();
  921. grd_antibiorecommlist.col = 2;
  922. grd_antibiorecommlist.editCell();
  923. ]]>
  924. </script>
  925. </button>
  926. <group id="grp_comcd" visibility="hidden" style="left:360px; top:310px; width:525px; height:155px; vertical-align:top; ">
  927. <datagrid id="grd_masterinfo" nodeset="/root/temp/masterinfo/list2700" allowselection="true" autoresize="true" caption="V^성분코드^본원사용여부^성분명^확장코드" colsep="^" colwidth="28, 77, 74, 252, 52" dataheight="23" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" selectionmode="byrow" style="left:0px; top:0px; width:525px; height:165px; vertical-align:middle; ">
  928. <col checkvalue="Y,N" ref="chk" type="checkbox"/>
  929. <col ref="comcd"/>
  930. <col ref="hospuseyn"/>
  931. <col ref="comnm"/>
  932. <col ref="comexcd" visibility="hidden"/>
  933. <script type="javascript" ev:event="ondblclick">
  934. <![CDATA[
  935. if( grd_masterinfo.row < 1 ) return ;
  936. for( var i = 1 ; i < grd_masterinfo.rows; i++){
  937. if( grd_masterinfo.row != i ) {
  938. //grd_masterinfo.valueMatrix(i, 1) = "N" ;
  939. model.setValue(grd_masterinfo.nodeset + "[" + i + "]/chk" , "N");
  940. }
  941. else {
  942. model.setValue(grd_masterinfo.nodeset + "[" + i + "]/chk" , "Y");
  943. }
  944. }
  945. fSetComCdList();
  946. ]]>
  947. </script>
  948. </datagrid>
  949. <button id="btn_comcfm" class="btn4_letter2" style="left:407px; top:170px; width:56px; height:22px; ">
  950. <caption>확인</caption>
  951. <script type="javascript" ev:event="DOMActivate">
  952. <![CDATA[
  953. fSetComCdList();
  954. ]]>
  955. </script>
  956. </button>
  957. <button id="btn_comclose" class="btn4_letter2" style="left:465px; top:170px; width:56px; height:22px; ">
  958. <caption>닫기</caption>
  959. <script type="javascript" ev:event="DOMActivate">
  960. <![CDATA[
  961. grp_comcd.visible = false;
  962. grd_antibiorecommlist.editCell();
  963. ]]>
  964. </script>
  965. </button>
  966. </group>
  967. <group id="grp_excel" visibility="hidden" style="left:20px; top:565px; width:1030px; height:155px; vertical-align:top; ">
  968. <datagrid id="grd_masterinfolist" nodeset="/root/cdssall" allowselection="true" autoresize="false" caption="대분류코드^대분류명^중분류코드^중분류명^소분류코드^소분류명^참고사항^성분코드^확장코드^Recommended Antibiotics^RANK^투여경로^약품코드^약품명^비고^처방 제한 일수" colsep="^" colwidth="65, 60, 65, 60, 65, 60, 60, 60, 60, 60, 50, 60, 60, 60, 50, 100" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" selectionmode="byrow" style="left:0px; top:0px; width:1025px; height:165px; ">
  969. <col ref="lrgno"/>
  970. <col ref="lrgnm"/>
  971. <col ref="mdlno"/>
  972. <col ref="mdlnm"/>
  973. <col ref="smlno"/>
  974. <col ref="smlnm"/>
  975. <col ref="cmt"/>
  976. <col ref="comcd"/>
  977. <col ref="comexcd"/>
  978. <col ref="comnm"/>
  979. <col ref="rank"/>
  980. <col ref="drugkind"/>
  981. <col ref="drugcd"/>
  982. <col ref="prcpnm"/>
  983. <col ref="bigo"/>
  984. <col ref="limdayno"/>
  985. </datagrid>
  986. </group>
  987. <button id="btn_srchanti" class="btn2_letter4" style="left:291px; top:5px; width:64px; height:19px; ">
  988. <caption>검색</caption>
  989. <script type="javascript" ev:event="DOMActivate">
  990. <![CDATA[
  991. if(button3.selected == true) {
  992. messageBox("Targeted therapy 는 검색기능이","I004");
  993. return;
  994. }
  995. fShowSearchList();
  996. ]]>
  997. </script>
  998. </button>
  999. <group id="group1" visibility="hidden" style="left:360px; top:250px; width:640px; height:235px; vertical-align:top; border-color:#c0c0c0; border-width:2px; ">
  1000. <datagrid id="grd_cdssdruglist" nodeset="/root/main/cdssdruglist/cdssinfo" allowselection="true" autoresize="true" caption="대분류^중분류^소분류" colsep="^" colwidth="174, 181, 174" dataheight="23" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" selectionmode="byrow" style="left:7px; top:43px; width:623px; height:155px; ">
  1001. <col ref="lrgnm"/>
  1002. <col ref="mdlnm"/>
  1003. <col ref="smlnm"/>
  1004. <script type="javascript" ev:event="ondblclick">
  1005. <![CDATA[
  1006. if( grd_cdssdruglist.row < 1 ) return ;
  1007. fSetData();
  1008. ]]>
  1009. </script>
  1010. </datagrid>
  1011. <button id="button10" class="btn4_letter2" style="left:517px; top:200px; width:56px; height:22px; ">
  1012. <caption>확인</caption>
  1013. <script type="javascript" ev:event="DOMActivate">
  1014. <![CDATA[
  1015. fSetData();
  1016. ]]>
  1017. </script>
  1018. </button>
  1019. <button id="button11" class="btn4_letter2" style="left:575px; top:200px; width:56px; height:22px; ">
  1020. <caption>닫기</caption>
  1021. <script type="javascript" ev:event="DOMActivate">
  1022. <![CDATA[
  1023. group1.visible = false;
  1024. grd_antibiorecommlist.editCell();
  1025. ]]>
  1026. </script>
  1027. </button>
  1028. <input id="input17" ref="/root/send/condition/srchnm" class="input_search" disabled="true" style="left:365px; top:15px; width:151px; height:19px; ">
  1029. <script type="javascript" ev:event="onkeyup">
  1030. <![CDATA[
  1031. inputEnterKey("button12", "DOMActivate");
  1032. ]]>
  1033. </script>
  1034. </input>
  1035. <caption id="caption8" class="search_name" style="left:5px; top:15px; width:115px; height:17px; ">검색조건 :</caption>
  1036. <button id="button12" class="btn1_letter2" style="left:574px; top:15px; width:56px; height:22px; ">
  1037. <caption>조회</caption>
  1038. <script type="javascript" ev:event="DOMActivate">
  1039. <![CDATA[
  1040. fSearchNo();
  1041. ]]>
  1042. </script>
  1043. </button>
  1044. <shape id="rectangle2" appearance="rectangle" style="left:2px; top:5px; width:633px; height:225px; color:transparent; border-color:#c0c0c0; "/>
  1045. <select1 id="rdo_srchflag" ref="/root/send/condition/srchflag" visibility="1" appearance="full" cols="3" overflow="visible" style="left:100px; top:15px; width:230px; height:20px; border-style:none; ">
  1046. <choices>
  1047. <item>
  1048. <label>분류(질병)명</label>
  1049. <value>S</value>
  1050. </item>
  1051. <item>
  1052. <label>약품코드</label>
  1053. <value>C</value>
  1054. </item>
  1055. <item>
  1056. <label>약품명</label>
  1057. <value>N</value>
  1058. </item>
  1059. </choices>
  1060. <script type="javascript" ev:event="xforms-value-changed">
  1061. <![CDATA[
  1062. model.setFocus("input17");
  1063. input17.disabled = false;
  1064. model.refresh();
  1065. ]]>
  1066. </script>
  1067. </select1>
  1068. </group>
  1069. </group>
  1070. </xhtml:body>
  1071. </xhtml:html>