SMMMO02500_환자진료정보.xrw 72 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>환자진료정보</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <cond>
  11. <dcflag/>
  12. <opfromdd/>
  13. <optodd/>
  14. <pid/>
  15. <perfdeptcd/>
  16. <oppatflagcd/>
  17. <opflagcd/>
  18. <oproomcd/>
  19. <opstatcd/>
  20. <prcpall/>
  21. <deptyn>Y</deptyn>
  22. <opsrchyn>Y</opsrchyn>
  23. <nopsrchyn>Y</nopsrchyn>
  24. <grdid/>
  25. <scrnid/>
  26. <prcphngcd/>
  27. </cond>
  28. <patinfolist>
  29. <dataflag/>
  30. <pid/>
  31. <instcd/>
  32. <hngnm/>
  33. <hngnm2/>
  34. <dispnm1/>
  35. <dispnm2/>
  36. <rrgstno1/>
  37. <rrgstno2/>
  38. <sex/>
  39. <age/>
  40. <brthdd/>
  41. <hometel/>
  42. <mpphontel/>
  43. <etctel1/>
  44. <etctel2/>
  45. <zipcd1/>
  46. <zipcd2/>
  47. <zipcdseq/>
  48. <addr/>
  49. <detladdr/>
  50. <email/>
  51. <recmyn/>
  52. <recmernm/>
  53. <recmerrela/>
  54. <vipyn/>
  55. <viprem/>
  56. <religncd/>
  57. <remfact/>
  58. <ward/>
  59. <allergy/>
  60. </patinfolist>
  61. <bfprcpday>
  62. <bfprcpday/>
  63. </bfprcpday>
  64. <bfprcp>
  65. <prcplist/>
  66. <remarks>
  67. <remarks/>
  68. </remarks>
  69. </bfprcp>
  70. <cncrlist>
  71. <cncrlist/>
  72. </cncrlist>
  73. <patophistinfo>
  74. <patophistlist/>
  75. </patophistinfo>
  76. <tnshistlist>
  77. <tnshistlist/>
  78. </tnshistlist>
  79. <srchinfo>
  80. <patinfolist>
  81. <dataflag/>
  82. <pid/>
  83. <instcd/>
  84. <hngnm/>
  85. <rrgstno1/>
  86. <rrgstno2/>
  87. <sex/>
  88. <age/>
  89. <brthdd/>
  90. <hometel/>
  91. <mpphontel/>
  92. <etctel1/>
  93. <zipcd1/>
  94. <zipcd2/>
  95. <zipcdseq/>
  96. <addr/>
  97. <detladdr/>
  98. <email/>
  99. <recmyn/>
  100. <recmernm/>
  101. <recmerrela/>
  102. <vipyn/>
  103. <viprem/>
  104. <religncd/>
  105. <remfact/>
  106. <ward/>
  107. <allergy/>
  108. </patinfolist>
  109. <patchosinfolist/>
  110. </srchinfo>
  111. <patinfo>
  112. <patinfolist>
  113. <pid/>
  114. <hngnm/>
  115. </patinfolist>
  116. </patinfo>
  117. </main>
  118. <hidden>
  119. <srchcond/>
  120. <pid/>
  121. <hngnm/>
  122. <receivedata>
  123. <srchdrugcd/>
  124. </receivedata>
  125. <smsdata/>
  126. </hidden>
  127. <temp>
  128. <paminfo/>
  129. </temp>
  130. <init>
  131. <P0327/>
  132. <P0157/>
  133. <M0003/>
  134. <M0005/>
  135. <M0011/>
  136. <M0013/>
  137. <M0015/>
  138. <M0017/>
  139. <M0020/>
  140. <M0022/>
  141. <M0029/>
  142. <M0330/>
  143. <P0341/>
  144. <orddept>
  145. <dept/>
  146. </orddept>
  147. <userlist>
  148. <usercombo/>
  149. </userlist>
  150. <orddept2>
  151. <dept/>
  152. </orddept2>
  153. <target>
  154. <pid/>
  155. </target>
  156. <mouserght>
  157. <item>
  158. <name>약품편람</name>
  159. <func>fDrugInfo</func>
  160. </item>
  161. <item>
  162. <name>Copy(클립보드)</name>
  163. <func>fCopyClipBoard</func>
  164. </item>
  165. <item>
  166. <name>-</name>
  167. <func/>
  168. </item>
  169. <item>
  170. <name>검사(치료) 희망일 변경</name>
  171. <func>fChangeHopeDd</func>
  172. </item>
  173. </mouserght>
  174. <mouserght2>
  175. <item>
  176. <name>환자메모</name>
  177. <func>fEmrMemo</func>
  178. </item>
  179. </mouserght2>
  180. </init>
  181. <send>
  182. <reqdata/>
  183. </send>
  184. <recv/>
  185. </root>
  186. </instance>
  187. <submission id="TRMMO02501" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/patinfo"/>
  188. <submission id="TRMMO02502" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/patprcpday"/>
  189. <submission id="TRMMO00100" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/prcpsrch"/>
  190. <script type="javascript" ev:event="xforms-model-construct-done">
  191. <![CDATA[
  192. var colHidnValue = grdBaseColHidn("D");
  193. grdBaseColHidn(colHidnValue, "grd_bfprcplist", 37, "prcpvol", "prcpqty", "drprcpetc7", "drprcpetc8", 37);
  194. fInitialize_SMMMO02500();
  195. ]]>
  196. </script>
  197. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post"/>
  198. <submission id="TRMMO05102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/opanstschelist"/>
  199. <submission id="TRZSU10105" mediatype="application/x-www-form-urlencoded" method="post"/>
  200. <submission id="TRZSD00109" mediatype="application/x-www-form-urlencoded" method="post"/>
  201. <submission id="TRMMO02503" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/cncrlist"/>
  202. <submission id="TRMMO02504" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/tnshistlist"/>
  203. <submission id="TRMMB04101" mediatype="application/x-www-form-urlencoded" method="post"/>
  204. <submission id="TRMMO02505" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/srchinfo"/>
  205. <submission id="TRMMO02506" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/bfprcp"/>
  206. <submission id="TRMMO02507" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/bfprcpday"/>
  207. <submission id="TRMMO02508" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/patophistinfo"/>
  208. <submission id="TRMMB01103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/init/userscrnenvinfo"/>
  209. <submission id="TXMMB01102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/init/userenvinfo"/>
  210. <submission id="TRMRC00510" mediatype="application/x-www-form-urlencoded" method="post"/>
  211. <submission id="TXMMO02501" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/changehopedd" resultref="/root/recv"/>
  212. </model>
  213. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  214. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  215. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  216. <script type="javascript" src="../../../emr/prcpmngtweb/js/MMO001.js"/>
  217. <script type="javascript" src="../../../emr/prcpmngtweb/js/SMMMO04100.js"/>
  218. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  219. <script type="javascript" src="../../../emr/chrtmngtweb/js/SMMRC00101.js"/>
  220. <script type="javascript" src="../../../com/shortmsgweb/js/ZMS001.js"/>
  221. <script type="javascript">
  222. <![CDATA[
  223. var gbsortflag = "desc"; // 처방이력 sort
  224. var gpatchosflag = "desc"; //수진그리드 sort
  225. function setPrcpColor() {
  226. var srcNodeList = model.instances(0).selectNodes ( "/root/main/bfprcp/prcplist" );
  227. for ( var i=1; i <= srcNodeList.length; i++ ) {
  228. var colorArray = model.getValue ( "/root/main/bfprcp/prcplist[" + i + "]/tempcol10" ) + "^";
  229. var backgroundcolor = getArrayData (colorArray, 0, 0, "^", "|" );
  230. var fontcolor = getArrayData (colorArray, 0, 1, "^", "|" );
  231. var boldflag = getArrayData (colorArray, 0, 2, "^", "|" );
  232. if ( !isNull(backgroundcolor)) {
  233. grd_bfprcplist.rowstyle(i, "data", "background-color") = backgroundcolor;
  234. } else {
  235. grd_bfprcplist.rowstyle(i, "data", "background-color") = "#ffffff";
  236. }
  237. if ( !isNull(fontcolor)) {
  238. grd_bfprcplist.rowstyle(i, "data", "color") = fontcolor;
  239. } else {
  240. grd_bfprcplist.rowstyle(i, "data", "color") = "#000000";
  241. }
  242. if ( !isNull(boldflag)) {
  243. grd_bfprcplist.rowstyle(i, "data", "font-weight") = boldflag;
  244. } else {
  245. grd_bfprcplist.rowstyle(i, "data", "font-weight") = "normal";
  246. }
  247. // 09.10.26 박유진 보험정보 변경여부
  248. var insuupdtyn = model.getValue("/root/main/bfprcp/prcplist[" + i + "]/insuupdtyn");
  249. if(insuupdtyn=="Y"){
  250. grd_bfprcplist.cellstyle("color", i, 18, i, 18) = "#3366ff";
  251. }
  252. }
  253. }
  254. /**
  255. *화면 초기화
  256. *1.상단정보
  257. *2.opener window로 부터 전달받은 parameter로 처리
  258. */
  259. function fInitialize_SMMMO02500(){
  260. //처방일자 그리드 화면 숨김 및 전처방 그리드 화면 좌측에 맞춤
  261. grd_prcpdd.visible = false;
  262. grd_bfprcplist.attribute("left") = 2;
  263. grd_bfprcplist.attribute("width")= 1190;
  264. grd_bfprcplist.frozenCols = 9;
  265. reqOrderInfoOfCol("SMMMO02500", "grd_bfprcplist");
  266. mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/init/orddept", "A");
  267. zbcfGetCodeList(new Array( "M0003", //prcpkindcd
  268. "M0005", //prcpclscd
  269. "M0011", //prcpstatcd
  270. "M0013",
  271. "M0015", //opstatcd
  272. "M0017", //
  273. "M0020", //opflagcd
  274. "M0022", //
  275. "M0029", //payflagcd
  276. "M0330",
  277. "P0341" ),
  278. new Array( "/root/init/M0003",
  279. "/root/init/M0005",
  280. "/root/init/M0011",
  281. "/root/init/M0013",
  282. "/root/init/M0015",
  283. "/root/init/M0017",
  284. "/root/init/M0020",
  285. "/root/init/M0022",
  286. "/root/init/M0029",
  287. "/root/init/M0330",
  288. "/root/init/P0341"));
  289. var param = opener.javascript.getParameter("SMMMO02500_cond");
  290. addComboInstance("/root/init/P0341", "cdid^cdnm", "입원^입원", "P0341"); //의사콤보 전체항목 추가
  291. //상단정보로 화면 초기화
  292. if(isNull(param)){
  293. var paminfo = getGlobalVariable("paminfo");
  294. if(paminfo.length != 0){
  295. setCSVToNode("/root/temp/paminfo", paminfo);
  296. var pid = model.getValue("/root/temp/paminfo/list/pid");
  297. if(!isNull(pid)){
  298. //환자기본정보 조회
  299. fReqGetPatComnInfo("/root/send/reqdata", pid);
  300. model.copyNode("/root/main/patinfolist", "/root/main/srchinfo/patinfolist");
  301. //var rsltnodelist = model.instances(0).selectNodes("/root/main/srchinfo/patchosinfolist");
  302. }
  303. }
  304. //opener의 parameter로 화면 초기화
  305. }else{
  306. model.setValue("/root/main/patinfolist/pid", param);
  307. model.refresh();
  308. fReqGetPatComnInfo("/root/send/reqdata", ipt_pid.currentText);
  309. model.toggle("case1");
  310. button1.selected = true;
  311. var nodelist = model.instances(0).selectNodes("/root/main/srchinfo/patinfolist");
  312. if(nodelist.length > 0){
  313. model.copyNode("/root/main/patinfolist", "/root/main/srchinfo/patinfolist");
  314. model.removeNodeset("/root/main/bfprcp/prcplist");
  315. model.removeNodeset("/root/main/bfprcpday/bfprcpday");
  316. grd_prcpdd.visible = false;
  317. grd_bfprcplist.attribute("left") = 2;
  318. grd_bfprcplist.attribute("width")= 1190;
  319. model.refresh();
  320. }else{
  321. var trgtpid = model.getValue("/root/send/reqdata/pid");
  322. messageBox("등록번호[" + trgtpid + "]로 환자를 조회", "E001");
  323. return;
  324. }
  325. }
  326. //kimsj 100121 JCI_ADR버튼
  327. var nodeValue = model.getValue("/root/main/patinfolist/allergy");
  328. var valueArr = nodeValue.split("^");
  329. // 기존에 ADR/Allergy 로 두 개의 값(allergy0, allergy1)을 받던걸 하나로 변경. 둘 중하나라도 Y 이면 Y(실제로는 둘다 Y 이거나, 둘다 N으로 넘겨주기로 함)
  330. if (valueArr[0] == "Y" || valueArr[1] == "Y" ) btn_allergy.attribute("background-image") = "../../../com/hismainweb/images/btn_top_allergy.gif";
  331. else btn_allergy.attribute("background-image") = "../../../com/hismainweb/images/btn_top_allergy_d.gif";
  332. model.refresh();
  333. }
  334. /**
  335. * 환자기본정보 조회
  336. * @param
  337. * pid : 등록번호
  338. * stnddd : 기준일자
  339. */
  340. function fReqGetPatComnInfo(ref, pid, stnddd){
  341. cap_dethinfo.visible = false;
  342. var current_pid = fCheckedBindPid(pid, "/root/send/reqata", "/root/temp/tempbindpid");
  343. model.removeNodeset(ref);
  344. var prcpall = model.getValue("/root/main/cond/prcpall");
  345. var deptyn = model.getValue("/root/main/cond/deptyn");
  346. model.makeValue(ref + "/instcd", getUserInfo("dutplceinstcd"));
  347. model.makeValue(ref + "/pid", current_pid);
  348. model.makeValue(ref + "/stnddd", stnddd);
  349. model.makeValue(ref + "/prcpall", prcpall)
  350. model.makeValue(ref + "/deptyn", deptyn)
  351. model.resetInstanceNode("/root/main/bfprcp/remarks/remarks");
  352. if(submit("TRMMO02505")){
  353. }
  354. if(model.getValue("root/main/srchinfo/patdethinfo/patdethyn") == 'Y'){
  355. cap_dethinfo.visible = true;
  356. }
  357. }
  358. /**
  359. * @desc : 환자 처방조회
  360. * @
  361. * @param :
  362. * @return :
  363. * @author : 오지훈
  364. * @---------------------------------------------------
  365. */
  366. function fGetBfPrcpList(){
  367. model.removeNodeset("/root/main/bfprcp/prcplist");
  368. model.removeNodeset("/root/main/bfprcpday/bfprcpday");
  369. var ioflag = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/ordtype");
  370. var pid = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/pid");
  371. var orddd = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/orddd");
  372. var orddeptcd = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/orddeptcd");
  373. var orddrid = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/orddrid");
  374. var cretno = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/cretno");
  375. var dcflag = model.getValue("/root/main/cond/dcflag");
  376. var ref = "/root/send/reqdata";
  377. //외래전처방조회
  378. if(ioflag == "O" || ioflag == "S"){ //외래인 경우 처방일자 그리드를 화면에서 숨기고, 전처방그리드의 위치를 좌측에 맞춤
  379. grd_prcpdd.visible = false;
  380. grd_bfprcplist.attribute("left") = 2;
  381. grd_bfprcplist.attribute("width")= 1190;
  382. fReqGetPatBfPrcpList(ref, pid, orddd, cretno, orddd, ioflag, dcflag, "", orddeptcd, orddrid);
  383. }else{ //입원전처방일자 조회, 입원환자 선택시 전처방일자 조회
  384. grd_prcpdd.visible = true;
  385. grd_bfprcplist.attribute("left")= 114;
  386. grd_bfprcplist.attribute("width")= 1078;
  387. fReqGetPatBfPrcpDay(ref, pid, orddd, cretno, dcflag);
  388. }
  389. }
  390. /**
  391. * 환자기본정보 조회
  392. * @param
  393. * pid : 등록번호
  394. * orddd : 진료일자
  395. * cretno : 생성번호
  396. * prcpdd : 처방일자
  397. * ioflag : 외래입원구분
  398. * dcflag : DC포함
  399. * oprsrvno: 수술예약번호(수술처방조회시)
  400. */
  401. function fReqGetPatBfPrcpList(ref, pid, orddd, cretno, prcpdd, ioflag, dcflag, oprsrvno, orddeptcd, orddrid){
  402. model.removeNodeset(ref);
  403. model.makeValue(ref + "/pid", pid);
  404. model.makeValue(ref + "/orddd", orddd);
  405. model.makeValue(ref + "/cretno", cretno);
  406. model.makeValue(ref + "/prcpdd", prcpdd);
  407. model.makeValue(ref + "/ioflag", ioflag);
  408. model.makeValue(ref + "/dcflag", dcflag);
  409. model.makeValue(ref + "/oprsrvno", oprsrvno);
  410. model.makeValue(ref + "/orddeptcd", orddeptcd);
  411. model.makeValue(ref + "/orddrid", orddrid);
  412. //처방 조회 시 수술관련 처방 포함 여부 flag 추가 (2009.05.28 JJE)
  413. if( button2.selected == true ){ //수술탭
  414. model.makeValue(ref + "/srchflag", "OP");
  415. model.makeValue(ref + "/opsrchyn", model.getValue("/root/main/cond/nopsrchyn"));
  416. }else{
  417. model.makeValue(ref + "/srchflag", "-");
  418. model.makeValue(ref + "/opsrchyn", model.getValue("/root/main/cond/opsrchyn"));
  419. }
  420. if(submit("TRMMO02506")){
  421. setPrcpColor();
  422. }
  423. }
  424. /**
  425. * 환자전처방일자 조회
  426. *@param
  427. *pid : 등록번호
  428. *orddd : 진료일자
  429. *cretno : 생성번호
  430. *dcflag : DC구분
  431. */
  432. function fReqGetPatBfPrcpDay(ref, pid, orddd, cretno, dcflag){
  433. model.removeNodeset(ref);
  434. model.makeValue(ref + "/pid", pid);
  435. model.makeValue(ref + "/orddd", orddd);
  436. model.makeValue(ref + "/cretno", cretno);
  437. model.makeValue(ref + "/dcflag", dcflag);
  438. if(submit("TRMMO02507")){
  439. }
  440. }
  441. /**
  442. * 환자 수술이력정보 조회
  443. * @param
  444. * pid : 등록번호
  445. */
  446. function fReqGetPatOpHistList(ref, pid){
  447. model.removeNodeset(ref);
  448. model.makeValue(ref + "/pid", pid);
  449. if(submit("TRMMO02508")){
  450. }
  451. }
  452. /**
  453. * 환자메모 팝업
  454. * @param
  455. * pid : 등록번호
  456. */
  457. function fEmrMemo() {
  458. curMemoObj = getOpenWindow("SPMMR05600");
  459. if(curMemoObj != null) {
  460. curMemoObj.javascript.fGetPatMemo();
  461. activateChild("SPMMR05600");
  462. }
  463. var ioflag = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/ordtype");
  464. var pid = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/pid");
  465. var deptcd = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/orddeptcd");
  466. var deptnm = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/depthngnm");
  467. var hngnm = model.getValue("/root/main/patinfolist/hngnm");
  468. var age = model.getValue("/root/main/patinfolist/sex") +"/"+ model.getValue("/root/main/patinfolist/age");
  469. setParameter("SPMMR05600_ioflag", ioflag);
  470. setParameter("SPMMR05600_pid", pid);
  471. setParameter("SPMMR05600_deptcd", deptcd); // 환자 진료과로 조회
  472. setParameter("SPMMR05600_hngnm", hngnm);
  473. setParameter("SPMMR05600_age", age);
  474. setParameter("SPMMR05600_deptnm", deptnm);
  475. setParameter("SPMMR05600_screenid", "SMMMO02500"); // 간호 메모, 진료 메모 수정을 위해 스크린 아이디를 넘긴다. 2014.04.11 엄영만
  476. open("SPMMR05600", 1, 200, 400, "", "", "");
  477. }
  478. /**
  479. * 약품편람 조회
  480. * @param
  481. * pid : 등록번호
  482. */
  483. function fDrugInfo() {
  484. var prcpclscd = model.getValue ("/root/main/bfprcp/prcplist[" + grd_bfprcplist.row + "]/prcpclscd");
  485. if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6" ) {
  486. model.setValue ( "/root/hidden/receivedata/srchdrugcd", model.getValue ("/root/main/bfprcp/prcplist[" + grd_bfprcplist.row + "]/prcpcd" ));
  487. open("SMADB01900", 0, 0, 0, "SMADB01900", "/root/hidden/receivedata","/root/hidden/receivedata");
  488. }
  489. }
  490. /**
  491. * Copy(클립보드)
  492. */
  493. function fCopyClipBoard() {
  494. var bufCnts = "";
  495. var rowidx;
  496. var sPrcpNm = "";
  497. var sDrPrcpetc8 = ""; // 1회 수량
  498. var sPrcpQtyUnitNm = ""; // 수량단위
  499. var sPrcpTims = "";
  500. var sPrcpClsCd = "";
  501. for (var i = 0; i < grd_bfprcplist.selectedRows; i++) {
  502. rowidx = grd_bfprcplist.selectedRow(i);
  503. sPrcpClsCd = grd_bfprcplist.valueMatrix(rowidx, grd_bfprcplist.colref("prcpclscd")) ;
  504. sPrcpNm = grd_bfprcplist.valueMatrix(rowidx, grd_bfprcplist.colref("prcpnm")) ;
  505. if (sPrcpClsCd == "A2" || sPrcpClsCd == "A4" || sPrcpClsCd == "A6" ) {
  506. sDrPrcpetc8 = grd_bfprcplist.valueMatrix(rowidx, grd_bfprcplist.colref("drprcpetc8")) ; // 1회 수량
  507. sPrcpQtyUnitNm = grd_bfprcplist.valueMatrix(rowidx, grd_bfprcplist.colref("prcpqtyunitnm")) ; // 수량단위
  508. sPrcpTims = grd_bfprcplist.valueMatrix(rowidx, grd_bfprcplist.colref("prcptims")) ;
  509. bufCnts += sPrcpNm + " " + sDrPrcpetc8 + sPrcpQtyUnitNm + " X " + sPrcpTims + "\r\n";
  510. } else {
  511. bufCnts += sPrcpNm + "\r\n";
  512. }
  513. }
  514. window.clipBoardData = bufCnts;
  515. }
  516. function fChangeHopeDd() {
  517. try {
  518. var sPrcpHopeDd = "";
  519. setParameter("paramcalflag", "sngl");
  520. setParameter("defaultday", getCurrentDate());
  521. setParameter("reqparam", getCurrentDate());
  522. setParameter("prcpdayno", "1");
  523. fPrcpModal("SPMMO10600", 20, 50);
  524. sPrcpHopeDd = getParameter("rtn");
  525. if (isNull(sPrcpHopeDd)) { // 값이 없으면 return
  526. return;
  527. } else if ( messageBox ( "선택된 처방의 희망일자를 " + sPrcpHopeDd.toDate("YYYYMMDD").getDateFormat("YYYY-MM-DD") + " 로 변경 하시겠습니까?","Q") != "6" ) {
  528. return;
  529. }
  530. var nLen = 0;
  531. model.removeNodeSet("/root/send/changehopedd");
  532. for(var currow = 1 ; currow < grd_bfprcplist.rows ; currow++){
  533. if(grd_bfprcplist.isSelected(currow)){
  534. if (isNull(model.instance1.selectNodes("/root/send/changehopedd").length)){
  535. nLen = 1;
  536. } else {
  537. nLen = model.instance1.selectNodes("/root/send/changehopedd").length + 1;
  538. }
  539. model.makeValue("/root/send/changehopedd["+nLen+"]/instcd", model.getValue("/root/main/bfprcp/prcplist[" + currow + "]/instcd"));
  540. model.makeValue("/root/send/changehopedd["+nLen+"]/prcpdd", model.getValue("/root/main/bfprcp/prcplist[" + currow + "]/prcpdd"));
  541. model.makeValue("/root/send/changehopedd["+nLen+"]/prcpno", model.getValue("/root/main/bfprcp/prcplist[" + currow + "]/prcpno"));
  542. model.makeValue("/root/send/changehopedd["+nLen+"]/prcphistno", model.getValue("/root/main/bfprcp/prcplist[" + currow + "]/prcphistno"));
  543. model.makeValue("/root/send/changehopedd["+nLen+"]/prcpgenrflag", model.getValue("/root/main/bfprcp/prcplist[" + currow + "]/prcpgenrflag"));
  544. model.makeValue("/root/send/changehopedd["+nLen+"]/prcphopedd", sPrcpHopeDd);
  545. }
  546. }
  547. if (nLen > 0) {
  548. if (submit ( "TXMMO02501", false )){
  549. fGetBfPrcpList();
  550. } else {
  551. messageBox ( "처방 희망일자 변경 중 오류가 발생 하였습니다.", "E999" );
  552. }
  553. }
  554. } catch(err) {
  555. messageBox ( "처방 희망일자 변경 중 예외가 발생 하였습니다.", "E999" );
  556. }
  557. }
  558. function fMouseRight() {
  559. setPopupMenu("grd_bfprcplist", false, "/root/init/mouserght/item", "name", "func"); //메뉴호출방식변경 JJE
  560. }
  561. function fGetOrderInfoOfCol(grdID){
  562. var grdObj = document.controls.item(grdID);
  563. var refdata = ""; // ref
  564. var sizedata = ""; // size
  565. var totcol = grdObj.cols;
  566. for(var i = 0; i < totcol; i++){
  567. var refval = grdObj.colAttribute(i, "ref");
  568. refdata += refval + "^";
  569. var sizeval = grdObj.colWidth(i);
  570. sizedata += sizeval + "^";
  571. }
  572. refdata = refdata.substring(0 , refdata.length-1);
  573. sizedata = sizedata.substring(0, sizedata.length-1);
  574. model.removeNodeset("/root/listval");
  575. model.makeValue("/root/listval/refdata", refdata);
  576. model.makeValue("/root/listval/sizedata", sizedata);
  577. }
  578. /**
  579. * 등록번호(환자) 조회
  580. * @param
  581. * pid : 등록번호
  582. */
  583. function getPIDEnter() {
  584. var pid = ipt_pid.currentText;
  585. model.setValue("/root/main/patinfolist/pid", pid);
  586. fPidTrim("/root/main/patinfolist/pid");
  587. pid = model.getValue("/root/main/patinfolist/pid");
  588. fReqGetPatComnInfo("/root/send/reqdata", pid);
  589. //fReqGetPatComnInfo("/root/send/reqdata", ipt_pid.currentText);
  590. model.toggle("case1");
  591. button1.selected = true;
  592. var nodelist = model.instances(0).selectNodes("/root/main/srchinfo/patinfolist");
  593. if(nodelist.length > 0){
  594. model.copyNode("/root/main/patinfolist", "/root/main/srchinfo/patinfolist");
  595. model.removeNodeset("/root/main/bfprcp/prcplist");
  596. model.removeNodeset("/root/main/bfprcpday/bfprcpday");
  597. grd_prcpdd.visible = false;
  598. grd_bfprcplist.attribute("left") = 2;
  599. grd_bfprcplist.attribute("width")= 1190;
  600. //kimsj 100121 JCI_ADR버튼
  601. var nodeValue = model.getValue("/root/main/patinfolist/allergy");
  602. var valueArr = nodeValue.split("^");
  603. // 기존에 ADR/Allergy 로 두 개의 값(allergy0, allergy1)을 받던걸 하나로 변경. 둘 중하나라도 Y 이면 Y(실제로는 둘다 Y 이거나, 둘다 N으로 넘겨주기로 함)
  604. if (valueArr[0] == "Y" || valueArr[1] == "Y" ) btn_allergy.attribute("background-image") = "../../../com/hismainweb/images/btn_top_allergy.gif";
  605. else btn_allergy.attribute("background-image") = "../../../com/hismainweb/images/btn_top_allergy_d.gif";
  606. model.refresh();
  607. }else{
  608. var trgtpid = model.getValue("/root/send/reqdata/pid");
  609. messageBox("등록번호[" + trgtpid + "]로 환자를 조회", "E001");
  610. return;
  611. }
  612. }
  613. function fChgViewPrcpnm() {
  614. var prcphngcd = model.getValue("/root/main/cond/prcphngcd");
  615. if (prcphngcd == "Y") {
  616. grd_bfprcplist.colWidth(grd_bfprcplist.colRef("prcphngnm")) = grd_bfprcplist.colWidth(grd_bfprcplist.colRef("prcpnm"))
  617. grd_bfprcplist.colWidth(grd_bfprcplist.colRef("prcpnm")) = 0;
  618. } else {
  619. grd_bfprcplist.colWidth(grd_bfprcplist.colRef("prcpnm")) = grd_bfprcplist.colWidth(grd_bfprcplist.colRef("prcphngnm"))
  620. grd_bfprcplist.colWidth(grd_bfprcplist.colRef("prcphngnm")) = 0;
  621. }
  622. model.refresh();
  623. }
  624. ]]>
  625. </script>
  626. </xhtml:head>
  627. <xhtml:body scroll="auto" guideline="1,1191;2,787;1,1194;1,1194;1,1193;2,783;2,171;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  628. <button id="btn_allergy" style="left:764px; top:145px; width:38px; height:19px; text-align:center; background-color:#d9ecff; background-image:../../../com/hismainweb/images/btn_top_allergy_d.gif; background-position:center; border-color:#99ccff; border-style:solid; ">
  629. <caption/>
  630. <script type="javascript" ev:event="DOMActivate">
  631. <![CDATA[
  632. //ADR 화면 팝업
  633. setParameter ( "SPMMD03300_pid", model.getValue("/root/main/patinfolist/pid"));
  634. setParameter ( "SPMMD03300_opener", "opener");
  635. modal("SPMMD03300");
  636. getPIDEnter();
  637. ]]>
  638. </script>
  639. </button>
  640. <button id="button61" class="icon_search" style="left:195px; top:22px; width:16px; height:16px; ">
  641. <caption/>
  642. <script type="javascript" ev:event="DOMActivate">
  643. <![CDATA[
  644. modal("SPPMC02500");
  645. var pid = model.getValue("/root/main/patinfo/patinfolist/pid");
  646. var hngnm = model.getValue("/root/main/patinfo/patinfolist/hngnm");
  647. model.makeValue("/root/main/patinfolist/prcpall", prcpall);
  648. model.setValue("/root/main/patinfolist/pid", pid);
  649. model.setValue("/root/main/patinfolist/hngnm", hngnm);
  650. if(pid.length > 0){
  651. var prcpall = model.getValue("/root/main/cond/prcpall");
  652. fReqGetPatComnInfo("/root/send/reqdata", pid, prcpall);
  653. button1.selected = true;
  654. model.toggle("case1");
  655. model.copyNode("/root/main/patinfolist", "/root/main/srchinfo/patinfolist");
  656. model.removeNodeset("/root/main/bfprcp/prcplist");
  657. model.removeNodeset("/root/main/bfprcpday/bfprcpday");
  658. grd_prcpdd.visible = false;
  659. grd_bfprcplist.attribute("left") = 2;
  660. grd_bfprcplist.attribute("width")= 1190;
  661. model.refresh();
  662. }
  663. ]]>
  664. </script>
  665. </button>
  666. <button id="button1" class="btn_sw" group="tab" selected="true" style="left:0px; top:146px; width:60px; height:22px; ">
  667. <caption>수 진</caption>
  668. <script type="javascript" ev:event="DOMActivate">
  669. <![CDATA[
  670. model.toggle("case1");
  671. model.removeNodeset("/root/main/bfprcp/prcplist");
  672. btn_setscrn.visible = true;
  673. model.refresh();
  674. ]]>
  675. </script>
  676. </button>
  677. <switch id="switch1" style="left:0px; top:167px; width:1194px; height:609px; ">
  678. <case id="case1" selected="true">
  679. <caption id="caption22" class="tit_2" style="left:5px; top:219px; width:155px; height:13px; ">
  680. <![CDATA[수진기간중 처방이력]]>
  681. <script type="javascript" ev:event="ondblclick">
  682. <![CDATA[
  683. var grdid = "grd_bfprcplist";
  684. var scrnid = "SMMMO02500";
  685. fGetOrderInfoOfCol(grdid);
  686. var refdata = model.getValue("/root/listval/refdata");
  687. var sizedata = model.getValue("/root/listval/sizedata");
  688. model.removeNodeset("/root/send/savedata");
  689. model.makeValue("/root/send/savedata/compscnts", ""); //추후 삭제 예정
  690. model.makeValue("/root/send/savedata/compsrefcnts", refdata);
  691. model.makeValue("/root/send/savedata/compssizecnts", sizedata);
  692. model.makeValue("/root/send/savedata/scrnid", scrnid);
  693. model.makeValue("/root/send/savedata/compscd" ,"01");
  694. submit("TXMMB01102");
  695. ]]>
  696. </script>
  697. </caption>
  698. <datagrid id="grd_patchosinfo" nodeset="/root/main/srchinfo/patchosinfolist" caption="진료구분^내원일시^퇴원일자^센터^진료과^세부과^진료의^예약구분^이지^보험유형^보조유형^특례기호^진단코드^진단명" colsep="^" colwidth="55, 110, 80, 81, 100, 0, 60, 90, 30, 65, 70, 55, 70, 320" dataheight="25" defaultrows="0" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" multitotal="false" rowheight="25" rowsep="|" tooltip="true" style="left:0px; top:1px; width:1190px; height:124px; ">
  699. <col disabled="true" ref="ordtype" type="combo" style="text-align:center; ">
  700. <choices>
  701. <item>
  702. <label>입원</label>
  703. <value>I</value>
  704. </item>
  705. <item>
  706. <label>외래</label>
  707. <value>O</value>
  708. </item>
  709. <item>
  710. <label>응급</label>
  711. <value>E</value>
  712. </item>
  713. <item>
  714. <label>DSC</label>
  715. <value>D</value>
  716. </item>
  717. </choices>
  718. </col>
  719. <col ref="ordddtm" format="yyyy-mm-dd hh:nn" style="text-align:center; "/>
  720. <col ref="dschdd" format="yyyy-mm-dd" style="text-align:center; "/>
  721. <col ref="centcd"/>
  722. <col ref="depthngnm" style="text-align:center; "/>
  723. <col ref="subdeptcd"/>
  724. <col ref="orddrnm" style="text-align:center; "/>
  725. <col disabled="true" ref="rsrvflag" type="combo">
  726. <choices>
  727. <itemset nodeset="/root/init/P0341/P0341">
  728. <label ref="cdnm"/>
  729. <value ref="cdid"/>
  730. </itemset>
  731. </choices>
  732. </col>
  733. <col ref="ezpassyn" style="text-align:center; "/>
  734. <col ref="insukindnm" style="text-align:center; "/>
  735. <col ref="suppkindnm" style="text-align:center; "/>
  736. <col ref="spclcd" style="text-align:center; "/>
  737. <col ref="icd10cd" style="text-align:center; "/>
  738. <col ref="diagnm" format="yyyy-mm-dd"/>
  739. <script type="javascript" ev:event="ondblclick">
  740. <![CDATA[
  741. if(isDataCell()){
  742. fGetBfPrcpList();
  743. }
  744. ]]>
  745. </script>
  746. <script type="javascript" ev:event="onclick">
  747. <![CDATA[
  748. var currow = grd_patchosinfo.row;
  749. var curcol = grd_patchosinfo.col;
  750. if(currow == 0){ //header를 클릭한 경우 sort되도록 처리
  751. nodeListSort(grd_patchosinfo.nodeset, grd_patchosinfo.colAttribute(curcol, "ref"), gpatchosflag);
  752. if(gpatchosflag == "desc"){
  753. gpatchosflag = "asc";
  754. }else{
  755. gpatchosflag = "desc";
  756. }
  757. model.refresh();
  758. }
  759. ]]>
  760. </script>
  761. <script type="javascript" ev:event="onmousedown">
  762. <![CDATA[
  763. setPopupMenu("grd_patchosinfo", false, "/root/init/mouserght2/item", "name", "func");
  764. ]]>
  765. </script>
  766. </datagrid>
  767. <datagrid id="grd_prcpdd" nodeset="/root/main/bfprcpday/bfprcpday" caption="처방적용일자" colsep="^" colwidth="100" ellipsis="true" explorerbar="sortshowmove" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowsep="|" tooltip="true" style="left:0px; top:235px; width:113px; height:370px; ">
  768. <col ref="prcpdd" format="yyyy-mm-dd" style="text-align:center; "/>
  769. <script type="javascript" ev:event="ondblclick">
  770. <![CDATA[
  771. if(isDataCell()){
  772. var pid = model.getValue("/root/main/bfprcpday/bfprcpday[" + grd_prcpdd.row + "]/pid");
  773. var orddd = model.getValue("/root/main/bfprcpday/bfprcpday[" + grd_prcpdd.row + "]/orddd");
  774. var cretno = model.getValue("/root/main/bfprcpday/bfprcpday[" + grd_prcpdd.row + "]/cretno");
  775. var prcpdd = model.getValue("/root/main/bfprcpday/bfprcpday[" + grd_prcpdd.row + "]/prcpdd");
  776. var dcflag = model.getValue("/root/main/cond/dcflag");
  777. var orddeptcd = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/orddeptcd");
  778. var orddrid = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/orddrid");
  779. var ref = "/root/send/reqdata";
  780. fReqGetPatBfPrcpList(ref, pid, orddd, cretno, prcpdd, "I", dcflag, "", orddeptcd, orddrid);
  781. }
  782. ]]>
  783. </script>
  784. </datagrid>
  785. <caption id="caption20" style="left:169px; top:217px; width:100px; height:20px; ">D/C원처방포함</caption>
  786. <bool id="bool1" checkvalue="Y,N" ref="/root/main/cond/dcflag" style="left:145px; top:217px; width:30px; height:20px; ">
  787. <script type="javascript" ev:event="xforms-value-changed">
  788. <![CDATA[
  789. if (grd_patchosinfo.row < 1) {
  790. messageBox("환자 수진내역을", "C002");
  791. } else {
  792. var ordtype = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/ordtype");
  793. if (ordtype =="O") {
  794. var ref = "/root/send/reqdata";
  795. var pid = model.getValue(ref + "/pid");
  796. var orddd = model.getValue(ref + "/orddd");
  797. var cretno = model.getValue(ref + "/cretno");
  798. var prcpdd = model.getValue(ref + "/prcpdd");
  799. var ioflag = model.getValue(ref + "/ioflag");
  800. var orddrid = model.getValue(ref + "/orddrid");
  801. var orddeptcd = model.getValue(ref + "/orddeptcd");
  802. var dcflag = bool1.value;
  803. fReqGetPatBfPrcpList(ref, pid, orddd, cretno, prcpdd, ioflag, dcflag, "", orddeptcd, orddrid);
  804. } else {
  805. if (grd_prcpdd.row < 1) {
  806. messageBox("환자 수진일자를", "C002");
  807. } else {
  808. var ref = "/root/send/reqdata";
  809. var pid = model.getValue(ref + "/pid");
  810. var orddd = model.getValue(ref + "/orddd");
  811. var cretno = model.getValue(ref + "/cretno");
  812. var prcpdd = model.getValue(ref + "/prcpdd");
  813. var ioflag = model.getValue(ref + "/ioflag");
  814. var orddrid = model.getValue(ref + "/orddrid");
  815. var orddeptcd = model.getValue(ref + "/orddeptcd");
  816. var dcflag = bool1.value;
  817. fReqGetPatBfPrcpList(ref, pid, orddd, cretno, prcpdd, ioflag, dcflag, "", orddeptcd, orddrid);
  818. }
  819. }
  820. }
  821. ]]>
  822. </script>
  823. </bool>
  824. <datagrid id="grd_bfprcplist" nodeset="/root/main/bfprcp/prcplist" caption="선택^상태^처방종류^처방구분^DC^원내/외^분류^처방코드^처방명^처방 한글명^1회 용량^1회 용량^1회 용량^1회 수량^1회 수량^1회 수량^횟수^일수^용법/검체^처방내역^MIX^급비^응급^전달사항^처방사유^처방의id^처방자^처방이동^치식정보^처방저장일시^희망일^예약일^시행부서^실시부서^실시일시^실시검사실^PRN실시회수^입력자^발행부서^선택진료^선택진료의^DC부서^DC유저^DC일시" colsep="^" colwidth="0, 55, 72, 67, 52, 52, 75, 86, 251, 0, 37, 37, 27, 37, 37, 27, 37, 36, 227, 250, 30, 43, 0, 160, 120, 80, 80, 54, 120, 120, 75, 100, 100, 100, 100, 100, 100, 100, 100, 64, 74, 90, 60, 100" dataheight="23" ellipsis="true" explorerbar="sortmove" extendlastcol="noscroll" mergecellsfixedrows="bycolrec" rowheight="23" rowsep="|" tooltip="true" style="left:109px; top:235px; width:1078px; height:370px; ">
  825. <col checkvalue="I,N" ref="status" type="checkbox"/>
  826. <col disabled="true" ref="prcpstatcd" type="combo" style="text-align:center; ">
  827. <choices>
  828. <itemset nodeset="/root/init/M0011/M0011">
  829. <label ref="cdnm"/>
  830. <value ref="cdid"/>
  831. </itemset>
  832. </choices>
  833. </col>
  834. <col disabled="true" ref="prcpkindcd" type="combo" style="text-align:center; ">
  835. <choices>
  836. <itemset nodeset="/root/init/M0003/M0003">
  837. <label ref="cdnm"/>
  838. <value ref="cdid"/>
  839. </itemset>
  840. </choices>
  841. </col>
  842. <col ref="prcpclsdesc" type="output"/>
  843. <col disabled="true" ref="prcphistcd" type="combo" style="text-align:center; ">
  844. <choices>
  845. <item>
  846. <label>D/C</label>
  847. <value>D</value>
  848. </item>
  849. <item>
  850. <label>D/C</label>
  851. <value>E</value>
  852. </item>
  853. </choices>
  854. </col>
  855. <col disabled="true" ref="hosinhosoutflag" type="combo" style="text-align:center; ">
  856. <choices>
  857. <item>
  858. <label>원내</label>
  859. <value>I</value>
  860. </item>
  861. <item>
  862. <label>원외</label>
  863. <value>O</value>
  864. </item>
  865. </choices>
  866. </col>
  867. <col disabled="true" ref="prcpclscd" type="combo">
  868. <choices>
  869. <itemset nodeset="/root/init/M0005/M0005">
  870. <label ref="cdnm"/>
  871. <value ref="cdid"/>
  872. </itemset>
  873. </choices>
  874. </col>
  875. <col ref="prcpcd"/>
  876. <col ref="prcpnm"/>
  877. <col ref="prcphngnm"/>
  878. <col ref="prcpvol" style="text-align:center; "/>
  879. <col ref="drprcpetc7" style="text-align:center; "/>
  880. <col ref="prcpvolunitnm" style="text-align:center; "/>
  881. <col ref="prcpqty" style="text-align:center; "/>
  882. <col ref="drprcpetc8" style="text-align:center; "/>
  883. <col ref="prcpqtyunitnm" style="text-align:center; "/>
  884. <col ref="prcptims" style="text-align:center; "/>
  885. <col ref="prcpdayno" style="text-align:center; "/>
  886. <col ref="drugmthdspccdnm"/>
  887. <col ref="tempcol7"/>
  888. <col ref="prcpmixno"/>
  889. <col disabled="true" ref="payflagcd" type="combo" style="text-align:center; ">
  890. <choices>
  891. <itemset nodeset="/root/init/M0029/M0029">
  892. <label ref="cdnm"/>
  893. <value ref="cdid"/>
  894. </itemset>
  895. </choices>
  896. </col>
  897. <col ref="erprcpflag" style="text-align:center; "/>
  898. <col ref="prcpdelivefact"/>
  899. <col ref="prcprsn"/>
  900. <col ref="prcpdrid" visibility="hidden"/>
  901. <col ref="prcpdrnm" style="text-align:center; "/>
  902. <col ref="cvrtbfprcp" style="text-align:center; "/>
  903. <col ref="tootfact"/>
  904. <col ref="fstrgstdt" format="yyyy-mm-dd hh:nn:ss"/>
  905. <col ref="prcphopedd" format="yyyy-mm-dd" style="text-align:center; "/>
  906. <col ref="rsrvdt" format="yyyy-mm-dd hh:nn" style="text-align:center; "/>
  907. <col disabled="true" editmode="input" ref="prcpexecdeptnm" type="output"/>
  908. <col disabled="true" editmode="input" ref="execdeptnm" type="output"/>
  909. <col ref="execdt" format="yyyy-mm-dd hh:nn"/>
  910. <col ref="execgoto"/>
  911. <col ref="prncc"/>
  912. <col ref="prcpinptnm" style="text-align:center; "/>
  913. <col ref="issdeptnm"/>
  914. <col ref="choiordflag" style="text-align:center; "/>
  915. <col ref="specdrnm" style="text-align:center; "/>
  916. <col ref="updtdeptnm" style="text-align:center; "/>
  917. <col ref="updtrnm" style="text-align:center; "/>
  918. <col ref="updtdt" format="yyyy-mm-dd hh:nn"/>
  919. <script type="javascript" ev:event="onmousedown">
  920. <![CDATA[
  921. fMouseRight();
  922. ]]>
  923. </script>
  924. <!--
  925. <script type="javascript" ev:event="onclick">
  926. <![CDATA[
  927. //처방이력 header를 더블클릭 했을때, 정렬을 수행한다.
  928. var currow = grd_bfprcplist.row;
  929. if(currow == 0){
  930. nodeListSort(grd_bfprcplist.nodeset, grd_bfprcplist.colAttribute(grd_bfprcplist.col, "ref"), gbsortflag);
  931. if(gbsortflag == "desc"){
  932. gbsortflag = "asc";
  933. }else{
  934. gbsortflag = "desc";
  935. }
  936. model.refresh();
  937. }
  938. ]]>
  939. </script>
  940. -->
  941. <script type="javascript" ev:event="ondblclick">
  942. <![CDATA[
  943. //처방구분 컬럼을 더블클릭 했을때, 처방구분 컬럼 사이즈를 넓히거나 좁힌다.
  944. if(isDataCell()){
  945. var curcol = grd_bfprcplist.col;
  946. if(curcol == grd_bfprcplist.colRef("prcpclsdesc")){
  947. if(grd_bfprcplist.colWidth(curcol) == 67){
  948. grd_bfprcplist.colWidth(curcol) += 40;
  949. }else{
  950. grd_bfprcplist.colWidth(curcol) -= 40;
  951. }
  952. }
  953. }
  954. ]]>
  955. </script>
  956. <script type="javascript" ev:event="onaftersort">
  957. <![CDATA[
  958. grd_bfprcplist.gridToInstance();
  959. ]]>
  960. </script>
  961. <script type="javascript" ev:event="DOMFocusOut">
  962. <![CDATA[
  963. initPopupMenu();
  964. ]]>
  965. </script>
  966. </datagrid>
  967. <caption id="caption25" class="tit_2" style="left:0px; top:127px; width:155px; height:14px; ">참고사항</caption>
  968. <textarea id="textarea2" ref="/root/main/bfprcp/remarks/remarks" scroll="autovscroll" style="left:140px; top:142px; width:1050px; height:75px; "/>
  969. <caption id="caption26" class="cell_1" style="left:0px; top:142px; width:140px; height:75px; ">
  970. <![CDATA[진단서
  971. 사본발행
  972. 진료의뢰
  973. 중증/희귀난치 등록내역
  974. 입원의뢰서]]>
  975. </caption>
  976. <bool id="bool4" checkvalue="Y,N" ref="/root/main/cond/opsrchyn" style="left:259px; top:217px; width:30px; height:20px; ">
  977. <script type="javascript" ev:event="xforms-value-changed">
  978. <![CDATA[
  979. if (grd_patchosinfo.row < 1) {
  980. messageBox("환자 수진내역을", "C002");
  981. } else {
  982. var ordtype = model.getValue("/root/main/srchinfo/patchosinfolist[" + grd_patchosinfo.row + "]/ordtype");
  983. if (ordtype =="O") {
  984. var ref = "/root/send/reqdata";
  985. var pid = model.getValue(ref + "/pid");
  986. var orddd = model.getValue(ref + "/orddd");
  987. var cretno = model.getValue(ref + "/cretno");
  988. var prcpdd = model.getValue(ref + "/prcpdd");
  989. var ioflag = model.getValue(ref + "/ioflag");
  990. var orddrid = model.getValue(ref + "/orddrid");
  991. var orddeptcd = model.getValue(ref + "/orddeptcd");
  992. var dcflag= model.getValue("/root/main/cond/dcflag");
  993. fReqGetPatBfPrcpList(ref, pid, orddd, cretno, prcpdd, ioflag, dcflag, "", orddeptcd, orddrid);
  994. } else {
  995. if (grd_prcpdd.row < 1) {
  996. messageBox("환자 수진일자를", "C002");
  997. } else {
  998. var ref = "/root/send/reqdata";
  999. var pid = model.getValue(ref + "/pid");
  1000. var orddd = model.getValue(ref + "/orddd");
  1001. var cretno = model.getValue(ref + "/cretno");
  1002. var prcpdd = model.getValue(ref + "/prcpdd");
  1003. var ioflag = model.getValue(ref + "/ioflag");
  1004. var orddrid = model.getValue(ref + "/orddrid");
  1005. var orddeptcd = model.getValue(ref + "/orddeptcd");
  1006. var dcflag= model.getValue("/root/main/cond/dcflag");
  1007. fReqGetPatBfPrcpList(ref, pid, orddd, cretno, prcpdd, ioflag, dcflag, "", orddeptcd, orddrid);
  1008. }
  1009. }
  1010. }
  1011. ]]>
  1012. </script>
  1013. </bool>
  1014. <caption id="caption27" style="left:283px; top:217px; width:80px; height:20px; ">
  1015. <![CDATA[수술처방포함]]>
  1016. <script type="javascript" ev:event="onclick">
  1017. <![CDATA[
  1018. ]]>
  1019. </script>
  1020. </caption>
  1021. <bool id="bool6" checkvalue="Y,N" ref="/root/main/cond/prcphngcd" style="left:360px; top:217px; width:30px; height:20px; ">
  1022. <script type="javascript" ev:event="xforms-value-changed">
  1023. <![CDATA[
  1024. fChgViewPrcpnm();
  1025. ]]>
  1026. </script>
  1027. </bool>
  1028. <caption id="caption29" style="left:385px; top:217px; width:80px; height:20px; ">
  1029. <![CDATA[한글명 보기]]>
  1030. <script type="javascript" ev:event="onclick">
  1031. <![CDATA[
  1032. var prcphngcd = model.getValue("/root/main/cond/prcphngcd");
  1033. if (prcphngcd == "Y") {
  1034. model.setValue("/root/main/cond/prcphngcd", "N");
  1035. } else {
  1036. model.setValue("/root/main/cond/prcphngcd", "Y");
  1037. }
  1038. fChgViewPrcpnm();
  1039. ]]>
  1040. </script>
  1041. </caption>
  1042. </case>
  1043. <case id="case2">
  1044. <datagrid id="grd_opanstschelist" nodeset="/root/main/patophistinfo/patophistlist" caption="levl^수술구분^환자구분^수술일시^소요시간^진료과^집도과^집도의^병실^입원일^퇴원일^진단명^수술명^마취의^마취방법" colsep="^" colwidth="0, 67, 63, 120, 70, 93, 96, 100, 61, 88, 88, 126, 128, 130, 84" ellipsis="true" mergecellsfixedrows="bycolrec" rowsep="|" navindex="12" style="left:0px; top:0px; width:1191px; height:246px; text-align:center; ">
  1045. <col ref="levl"/>
  1046. <col disabled="true" ref="opflagcd" type="combo">
  1047. <choices>
  1048. <itemset nodeset="/root/init/M0013/M0013">
  1049. <label ref="cdnm"/>
  1050. <value ref="cdid"/>
  1051. </itemset>
  1052. </choices>
  1053. </col>
  1054. <col disabled="true" ref="oppatflagcd" type="combo">
  1055. <choices>
  1056. <itemset nodeset="/root/init/M0020/M0020">
  1057. <label ref="cdnm"/>
  1058. <value ref="cdid"/>
  1059. </itemset>
  1060. </choices>
  1061. </col>
  1062. <col ref="patinroomdt" format="yyyy-mm-dd hh:nn"/>
  1063. <col ref="opusetm" format="hh:nn"/>
  1064. <col disabled="true" ref="orddeptcd" type="combo">
  1065. <choices>
  1066. <itemset nodeset="/root/init/orddept/dept">
  1067. <label ref="depthngnm"/>
  1068. <value ref="deptcd"/>
  1069. </itemset>
  1070. </choices>
  1071. </col>
  1072. <col disabled="true" ref="perfdeptcd" type="combo">
  1073. <choices>
  1074. <itemset nodeset="/root/init/orddept/dept">
  1075. <label ref="depthngnm"/>
  1076. <value ref="deptcd"/>
  1077. </itemset>
  1078. </choices>
  1079. </col>
  1080. <col ref="perfdrnm"/>
  1081. <col ref="roomcd"/>
  1082. <col ref="indd" format="yyyy-mm-dd"/>
  1083. <col ref="dschdd" format="yyyy-mm-dd"/>
  1084. <col ref="diagnm"/>
  1085. <col ref="opnm"/>
  1086. <col disabled="true" ref="anstdr"/>
  1087. <col disabled="true" ref="anstmthdcd" type="combo">
  1088. <choices>
  1089. <itemset nodeset="/root/init/M0017/M0017">
  1090. <label ref="cdnm"/>
  1091. <value ref="cdid"/>
  1092. </itemset>
  1093. </choices>
  1094. </col>
  1095. <script type="javascript" ev:event="ondblclick">
  1096. <![CDATA[
  1097. if(isDataCell()){
  1098. var ref = "/root/send/reqdata";
  1099. var pid = ipt_pid.currentText;
  1100. var ioflag = "I";
  1101. var dcflag = model.getValue("/root/main/cond/dcflag");
  1102. var oprsrvno = model.getValue("/root/main/patophistinfo/patophistlist[" + grd_opanstschelist.row + "]/oprsrvno");
  1103. var oppatflagcd = model.getValue("/root/main/patophistinfo/patophistlist[" + grd_opanstschelist.row + "]/oppatflagcd"); //oppatflagcd param 추가 (2009.05.27 JJE)
  1104. //fReqGetPatBfPrcpList(ref, pid, "", "", "", "I", dcflag, oprsrvno);
  1105. fReqGetPatBfPrcpList(ref, pid, "", "", "", oppatflagcd, dcflag, oprsrvno); //oppatflagcd를 ioflag로 대체 (2009.05.27 JJE)
  1106. }
  1107. ]]>
  1108. </script>
  1109. </datagrid>
  1110. <caption id="caption19" class="tit_2" style="left:5px; top:250px; width:115px; height:13px; ">
  1111. <![CDATA[수술 처방이력]]>
  1112. <script type="javascript" ev:event="ondblclick">
  1113. <![CDATA[
  1114. var grdid = "grd_bfopprcplist";
  1115. var scrnid = "SMMMO02500";
  1116. fGetOrderInfoOfCol(grdid);
  1117. var refdata = model.getValue("/root/listval/refdata");
  1118. var sizedata = model.getValue("/root/listval/sizedata");
  1119. model.removeNodeset("/root/send/savedata");
  1120. model.makeValue("/root/send/savedata/compscnts", ""); //추후 삭제 예정
  1121. model.makeValue("/root/send/savedata/compsrefcnts", refdata);
  1122. model.makeValue("/root/send/savedata/compssizecnts", sizedata);
  1123. model.makeValue("/root/send/savedata/scrnid", scrnid);
  1124. model.makeValue("/root/send/savedata/compscd" ,"02");
  1125. submit("TXMMB01102");
  1126. ]]>
  1127. </script>
  1128. </caption>
  1129. <caption id="caption21" style="left:131px; top:248px; width:100px; height:20px; ">D/C원처방포함</caption>
  1130. <bool id="bool2" checkvalue="Y,N" ref="/root/main/cond/dcflag" style="left:107px; top:247px; width:30px; height:20px; ">
  1131. <script type="javascript" ev:event="xforms-value-changed">
  1132. <![CDATA[
  1133. var ref = "/root/send/reqdata";
  1134. var pid = model.getValue(ref + "/pid");
  1135. var orddd = model.getValue(ref + "/orddd");
  1136. var cretno = model.getValue(ref + "/cretno");
  1137. var prcpdd = model.getValue(ref + "/prcpdd");
  1138. var ioflag = model.getValue(ref + "/ioflag");
  1139. var dcflag = bool1.value;
  1140. var oprsrvno = model.getValue(ref + "/oprsrvno");
  1141. var oppatflagcd = model.getValue("/root/main/patophistinfo/patophistlist[" + grd_opanstschelist.row + "]/oppatflagcd"); //oppatflagcd param 추가 (2009.05.27 JJE)
  1142. fReqGetPatBfPrcpList(ref, pid, orddd, cretno, prcpdd, oppatflagcd, dcflag, oprsrvno);
  1143. ]]>
  1144. </script>
  1145. </bool>
  1146. <datagrid id="grd_bfopprcplist" nodeset="/root/main/bfprcp/prcplist" caption="선택^상태^처방종류^처방구분^DC^원내/외^분류^처방코드^처방명^총용량^총용량^수량^수량^횟수^일수^용법/검체^MIX^급비^응급^전달사항^처방일시^희망일^수행부서^수행일시" colsep="^" colwidth="0, 55, 72, 67, 52, 52, 75, 86, 251, 37, 27, 37, 27, 37, 36, 227, 30, 43, 0, 160, 88, 75, 104, 102" dataheight="23" ellipsis="true" explorerbar="move" extendlastcol="noscroll" mergecellsfixedrows="bycolrec" rowheight="23" rowsep="|" tooltip="true" style="left:0px; top:265px; width:1192px; height:340px; ">
  1147. <col checkvalue="I,N" ref="status" type="checkbox"/>
  1148. <col disabled="true" ref="prcpstatcd" type="combo" style="text-align:center; ">
  1149. <choices>
  1150. <itemset nodeset="/root/init/M0011/M0011">
  1151. <label ref="cdnm"/>
  1152. <value ref="cdid"/>
  1153. </itemset>
  1154. </choices>
  1155. </col>
  1156. <col disabled="true" ref="prcpkindcd" type="combo" style="text-align:center; ">
  1157. <choices>
  1158. <itemset nodeset="/root/init/M0003/M0003">
  1159. <label ref="cdnm"/>
  1160. <value ref="cdid"/>
  1161. </itemset>
  1162. </choices>
  1163. </col>
  1164. <col ref="prcpclsdesc" type="output"/>
  1165. <col disabled="true" ref="prcphistcd" type="combo">
  1166. <choices>
  1167. <item>
  1168. <label>D/C</label>
  1169. <value>D</value>
  1170. </item>
  1171. <item>
  1172. <label>D/C</label>
  1173. <value>E</value>
  1174. </item>
  1175. </choices>
  1176. </col>
  1177. <col disabled="true" ref="hosinhosoutflag" type="combo" style="text-align:center; ">
  1178. <choices>
  1179. <item>
  1180. <label>원내</label>
  1181. <value>I</value>
  1182. </item>
  1183. <item>
  1184. <label>원외</label>
  1185. <value>O</value>
  1186. </item>
  1187. </choices>
  1188. </col>
  1189. <col ref="prcpclscd" type="combo">
  1190. <choices>
  1191. <itemset nodeset="/root/init/M0005/M0005">
  1192. <label ref="cdnm"/>
  1193. <value ref="cdid"/>
  1194. </itemset>
  1195. </choices>
  1196. </col>
  1197. <col ref="prcpcd"/>
  1198. <col ref="prcpnm"/>
  1199. <col ref="prcpvol" style="text-align:center; "/>
  1200. <col ref="prcpvolunitnm" style="text-align:center; "/>
  1201. <col ref="prcpqty" style="text-align:center; "/>
  1202. <col ref="prcpqtyunitnm" style="text-align:center; "/>
  1203. <col ref="prcptims" style="text-align:center; "/>
  1204. <col ref="prcpdayno" style="text-align:center; "/>
  1205. <col ref="drugmthdspccdnm"/>
  1206. <col ref="prcpmixno"/>
  1207. <col disabled="true" ref="payflagcd" type="combo" style="text-align:center; ">
  1208. <choices>
  1209. <itemset nodeset="/root/init/M0029/M0029">
  1210. <label ref="cdnm"/>
  1211. <value ref="cdid"/>
  1212. </itemset>
  1213. </choices>
  1214. </col>
  1215. <col ref="erprcpflag" style="text-align:center; "/>
  1216. <col ref="prcpdelivefact"/>
  1217. <col ref="prcpdd" format="yyyy-mm-dd"/>
  1218. <col ref="prcphopedd" format="yyyy-mm-dd" style="text-align:center; "/>
  1219. <col disabled="true" editmode="input" ref="execdeptnm" type="output"/>
  1220. <col ref="execdt" format="yyyy-mm-dd hh:nn"/>
  1221. <script type="javascript" ev:event="onclick">
  1222. <![CDATA[
  1223. //처방이력 header를 더블클릭 했을때, 정렬을 수행한다.
  1224. var currow = grd_bfopprcplist.row;
  1225. if(currow == 0){
  1226. nodeListSort(grd_bfopprcplist.nodeset, grd_bfopprcplist.colAttribute(grd_bfopprcplist.col, "ref"), gbsortflag);
  1227. if(gbsortflag == "desc"){
  1228. gbsortflag = "asc";
  1229. }else{
  1230. gbsortflag = "desc";
  1231. }
  1232. model.refresh();
  1233. }
  1234. ]]>
  1235. </script>
  1236. <script type="javascript" ev:event="ondblclick">
  1237. <![CDATA[
  1238. //처방구분 컬럼을 더블클릭 했을때, 처방구분 컬럼 사이즈를 넓히거나 좁힌다.
  1239. if(isDataCell()){
  1240. var curcol = grd_bfopprcplist.col;
  1241. if(curcol == grd_bfopprcplist.colRef("prcpclsdesc")){
  1242. if(grd_bfopprcplist.colWidth(curcol) == 67){
  1243. grd_bfopprcplist.colWidth(curcol) += 40;
  1244. }else{
  1245. grd_bfopprcplist.colWidth(curcol) -= 40;
  1246. }
  1247. }
  1248. }
  1249. ]]>
  1250. </script>
  1251. </datagrid>
  1252. <bool id="bool5" checkvalue="N,Y" ref="/root/main/cond/nopsrchyn" style="left:225px; top:247px; width:30px; height:20px; ">
  1253. <script type="javascript" ev:event="xforms-value-changed">
  1254. <![CDATA[
  1255. var ref = "/root/send/reqdata";
  1256. var pid = model.getValue(ref + "/pid");
  1257. var orddd = model.getValue(ref + "/orddd");
  1258. var cretno = model.getValue(ref + "/cretno");
  1259. var prcpdd = model.getValue(ref + "/prcpdd");
  1260. var ioflag = model.getValue(ref + "/ioflag");
  1261. var dcflag = bool1.value;
  1262. var oprsrvno = model.getValue(ref + "/oprsrvno");
  1263. var oppatflagcd = model.getValue("/root/main/patophistinfo/patophistlist[" + grd_opanstschelist.row + "]/oppatflagcd"); //oppatflagcd param 추가 (2009.05.27 JJE)
  1264. fReqGetPatBfPrcpList(ref, pid, orddd, cretno, prcpdd, oppatflagcd, dcflag, oprsrvno);
  1265. ]]>
  1266. </script>
  1267. </bool>
  1268. <caption id="caption28" style="left:249px; top:248px; width:106px; height:20px; ">
  1269. <![CDATA[수술외처방포함]]>
  1270. <script type="javascript" ev:event="onclick">
  1271. <![CDATA[
  1272. ]]>
  1273. </script>
  1274. </caption>
  1275. </case>
  1276. <case id="case3">
  1277. <datagrid id="grd_tnshistlist" nodeset="/root/main/tnshistlist/tnshistlist" caption="진료구분^수혈일시^처방명^수량^수혈부작용^수행부서^처방자" colsep="^" colwidth="73, 150, 405, 91, 267, 100, 100" mergecellsfixedrows="bycolrec" rowsep="|" style="left:0px; top:1px; width:1192px; height:605px; ">
  1278. <col disabled="true" ref="ioflag" type="combo">
  1279. <choices>
  1280. <item>
  1281. <label>외래</label>
  1282. <value>O</value>
  1283. </item>
  1284. <item>
  1285. <label>입원</label>
  1286. <value>I</value>
  1287. </item>
  1288. <item>
  1289. <label>DSC</label>
  1290. <value>D</value>
  1291. </item>
  1292. </choices>
  1293. </col>
  1294. <col ref="tnsstrddtm" format="yyyy-mm-dd hh:nn"/>
  1295. <col ref="prcpnm"/>
  1296. <col ref="drugqty"/>
  1297. <col disabled="true" ref="tnssideeffect" type="combo">
  1298. <choices>
  1299. <itemset nodeset="/root/init/M0330/M0330">
  1300. <label ref="cdnm"/>
  1301. <value ref="cdid"/>
  1302. </itemset>
  1303. </choices>
  1304. </col>
  1305. <col ref="tnsendnursedeptnm"/>
  1306. <col ref="rgstnm"/>
  1307. <script type="javascript" ev:event="onclick">
  1308. <![CDATA[
  1309. //처방이력 header를 더블클릭 했을때, 정렬을 수행한다.
  1310. var currow = grd_tnshistlist.row;
  1311. if(currow == 0){
  1312. nodeListSort(grd_tnshistlist.nodeset, grd_tnshistlist.colAttribute(grd_tnshistlist.col, "ref"), gbsortflag);
  1313. if(gbsortflag == "desc"){
  1314. gbsortflag = "asc";
  1315. }else{
  1316. gbsortflag = "desc";
  1317. }
  1318. model.refresh();
  1319. }
  1320. ]]>
  1321. </script>
  1322. </datagrid>
  1323. </case>
  1324. <case id="case4">
  1325. <datagrid id="grd_cncrlist" nodeset="/root/main/cncrlist/cncrlist" caption="시행일시^의뢰과^의뢰과^의뢰과^의뢰과^변경과^변경과^변경과^변경과^전과사유|시행일시^진료과^병실^전문의^담당의^진료과^병실^전문의^담당의^전과사유" colsep="^" colwidth="100, 100, 67, 100, 100, 100, 63, 100, 100, 340" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowsep="|" style="left:0px; top:2px; width:1191px; height:604px; ">
  1326. <col ref="appdt" format="yyyy-mm-dd hh:mm"/>
  1327. <col ref="prestorddeptnm" style="text-align:center; "/>
  1328. <col ref="prestroomcd" style="text-align:center; "/>
  1329. <col ref="splcnm" style="text-align:center; "/>
  1330. <col ref="atdoctnm" style="text-align:center; "/>
  1331. <col ref="chngorddeptnm" style="text-align:center; "/>
  1332. <col ref="chngroomcd" style="text-align:center; "/>
  1333. <col ref="chngsplcnm" style="text-align:center; "/>
  1334. <col ref="chngatdoctnm" style="text-align:center; "/>
  1335. <col ref="chngprestrem"/>
  1336. <script type="javascript" ev:event="onclick">
  1337. <![CDATA[
  1338. //처방이력 header를 더블클릭 했을때, 정렬을 수행한다.
  1339. var currow = grd_cncrlist.row;
  1340. if(currow == 0){
  1341. nodeListSort(grd_cncrlist.nodeset, grd_cncrlist.colAttribute(grd_cncrlist.col, "ref"), gbsortflag);
  1342. if(gbsortflag == "desc"){
  1343. gbsortflag = "asc";
  1344. }else{
  1345. gbsortflag = "desc";
  1346. }
  1347. model.refresh();
  1348. }
  1349. ]]>
  1350. </script>
  1351. </datagrid>
  1352. </case>
  1353. </switch>
  1354. <caption id="caption5" class="cell_1" style="left:0px; top:20px; width:100px; height:23px; ">등록번호</caption>
  1355. <button id="btn_undo" accesskey="ctrl+z" class="btn2_letter4" style="left:1061px; top:145px; width:64px; height:19px; ">
  1356. <caption>진료예약</caption>
  1357. <script type="javascript" ev:event="DOMActivate">
  1358. <![CDATA[
  1359. setParameter("SMPMO00300_PARM1", getUserInfo("dutplcecd")); //진료과코드
  1360. setParameter("SMPMO00300_PARM2", getUserInfo("userid")); //진료의사코드
  1361. setParameter("SMPMO00300_PARM3", model.getValue( "/root/srchinfo/patinfolist/pid" )); //환자번호
  1362. modal("SMPMO00300");//, "1","690", "550", "SMPMO00300", "/root/source", "/root/send");
  1363. ]]>
  1364. </script>
  1365. </button>
  1366. <output id="output7" ref="/root/main/patinfolist/hometel" class="output_fix" appearance="output" style="left:618px; top:21px; width:100px; height:19px; "/>
  1367. <button id="button2" class="btn_sw" group="tab" selected="false" style="left:60px; top:146px; width:60px; height:22px; ">
  1368. <caption>수 술</caption>
  1369. <script type="javascript" ev:event="DOMActivate">
  1370. <![CDATA[
  1371. btn_setscrn.visible = false;
  1372. model.toggle("case2");
  1373. reqOrderInfoOfCol("SMMMO02500", "grd_bfopprcplist", "02");
  1374. model.removeNodeset("/root/main/bfprcp/prcplist");
  1375. model.refresh();
  1376. //환자 수술이력정보 조회
  1377. fReqGetPatOpHistList("/root/send/reqdata", model.getValue("/root/main/patinfolist/pid"));
  1378. ]]>
  1379. </script>
  1380. </button>
  1381. <button id="button3" class="btn_sw" group="tab" selected="false" style="left:120px; top:146px; width:60px; height:22px; ">
  1382. <caption>수 혈</caption>
  1383. <script type="javascript" ev:event="DOMActivate">
  1384. <![CDATA[
  1385. btn_setscrn.visible = false;
  1386. model.toggle("case3");
  1387. model.removeNodeset("/root/send/reqdata");
  1388. model.makeValue("/root/send/reqdata/pid", model.getValue("/root/main/patinfolist/pid"));
  1389. if(submit("TRMMO02504")){
  1390. }
  1391. ]]>
  1392. </script>
  1393. </button>
  1394. <button id="button4" class="btn_sw" group="tab" selected="false" style="left:180px; top:146px; width:78px; height:22px; ">
  1395. <caption>전과이력</caption>
  1396. <script type="javascript" ev:event="DOMActivate">
  1397. <![CDATA[
  1398. btn_setscrn.visible = false;
  1399. model.toggle ("case4" );
  1400. model.removeNodeset("/root/send/reqdata");
  1401. model.makeValue("/root/send/reqdata/pid", model.getValue("/root/main/patinfolist/pid"));
  1402. if(submit("TRMMO02503")){
  1403. }
  1404. ]]>
  1405. </script>
  1406. </button>
  1407. <caption id="caption4" class="cell_1" style="left:0px; top:44px; width:100px; height:23px; ">성 명</caption>
  1408. <caption id="caption7" class="cell_1" style="left:0px; top:68px; width:100px; height:23px; ">
  1409. <![CDATA[주민번호]]>
  1410. </caption>
  1411. <caption id="caption8" class="cell_1" style="left:309px; top:44px; width:61px; height:23px; ">생년월일</caption>
  1412. <caption id="caption9" class="cell_1" style="left:309px; top:20px; width:61px; height:23px; ">성별/나이</caption>
  1413. <caption id="caption10" class="cell_1" style="left:310px; top:68px; width:60px; height:23px; ">병 동</caption>
  1414. <caption id="caption2" class="cell_1" style="left:545px; top:68px; width:70px; height:23px; ">주보호자</caption>
  1415. <caption id="caption11" class="cell_1" style="left:545px; top:44px; width:70px; height:23px; ">휴대폰</caption>
  1416. <caption id="caption12" class="cell_1" style="left:545px; top:20px; width:70px; height:23px; ">연락처</caption>
  1417. <output id="output11" ref="/root/main/patinfolist/mpphontel" class="output_fix" appearance="output" style="left:618px; top:45px; width:100px; height:19px; "/>
  1418. <output id="output12" ref="/root/main/patinfolist/etctel1" class="output_fix" appearance="output" style="left:618px; top:69px; width:100px; height:19px; "/>
  1419. <caption id="caption1" class="cell_1" style="left:721px; top:68px; width:100px; height:23px; ">이메일주소</caption>
  1420. <caption id="caption3" class="cell_1" style="left:721px; top:44px; width:100px; height:23px; ">상위(하위)주소</caption>
  1421. <caption id="caption6" class="cell_1" style="left:721px; top:20px; width:100px; height:23px; ">우편번호/주소</caption>
  1422. <output id="output5" ref="/root/main/patinfolist/zipcd1" class="output_fix" appearance="output" style="left:824px; top:21px; width:30px; height:19px; "/>
  1423. <output id="output6" ref="/root/main/patinfolist/zipcd2" class="output_fix" appearance="output" style="left:857px; top:21px; width:30px; height:19px; "/>
  1424. <output id="output13" ref="/root/main/patinfolist/zipcdseq" class="output_fix" appearance="output" style="left:890px; top:21px; width:15px; height:19px; "/>
  1425. <output id="output14" ref="/root/main/patinfolist/addr" class="output_fix" appearance="output" style="left:908px; top:21px; width:286px; height:19px; "/>
  1426. <output id="output15" ref="/root/main/patinfolist/detladdr" class="output_fix" appearance="output" style="left:824px; top:45px; width:370px; height:19px; "/>
  1427. <output id="output16" ref="/root/main/patinfolist/email" class="output_fix" appearance="output" style="left:824px; top:69px; width:370px; height:19px; "/>
  1428. <caption id="caption13" class="cell_1" visibility="hidden" style="left:721px; top:116px; width:100px; height:22px; ">VIP여부/비고</caption>
  1429. <caption id="caption14" class="cell_1" visibility="hidden" style="left:721px; top:92px; width:100px; height:23px; ">추천인</caption>
  1430. <output id="output17" ref="/root/main/patinfolist/recmernm" class="output_fix" visibility="hidden" appearance="output" style="left:898px; top:93px; width:83px; height:19px; "/>
  1431. <select id="checkbox1" ref="/root/main/patinfolist/recmyn" disabled="true" visibility="hidden" overflow="hidden" appearance="full" style="left:825px; top:93px; width:70px; height:20px; border-style:none; ">
  1432. <choices>
  1433. <item>
  1434. <label>직원소개</label>
  1435. <value>Y</value>
  1436. </item>
  1437. </choices>
  1438. </select>
  1439. <caption id="caption15" class="cell_1" visibility="hidden" style="left:984px; top:92px; width:75px; height:23px; ">관계</caption>
  1440. <select1 id="combo1" ref="/root/main/patinfolist/religncd" class="combo_default" disabled="true" visibility="visible" appearance="minimal" style="left:618px; top:117px; width:100px; height:19px; ">
  1441. <choices>
  1442. <itemset nodeset="/root/init/P0327/P0327">
  1443. <label ref="cdnm"/>
  1444. <value ref="cdid"/>
  1445. </itemset>
  1446. </choices>
  1447. </select1>
  1448. <select id="checkbox2" ref="/root/main/patinfolist/vipyn" disabled="true" visibility="hidden" overflow="visible" appearance="full" style="left:824px; top:118px; width:41px; height:20px; border-style:none; ">
  1449. <choices>
  1450. <item>
  1451. <label>VIP</label>
  1452. <value>Y</value>
  1453. </item>
  1454. </choices>
  1455. </select>
  1456. <output id="output18" ref="/root/main/patinfolist/viprem" class="output_fix" visibility="hidden" appearance="output" style="left:865px; top:118px; width:116px; height:19px; "/>
  1457. <caption id="caption16" class="cell_1" visibility="visible" style="left:545px; top:116px; width:70px; height:22px; ">종교</caption>
  1458. <select1 id="combo2" ref="/root/main/patinfolist/recmerrela" class="combo_default" disabled="true" visibility="hidden" appearance="minimal" style="left:1062px; top:93px; width:132px; height:19px; ">
  1459. <choices>
  1460. <itemset nodeset="/root/init/P0157/P0157">
  1461. <label ref="cdnm"/>
  1462. <value ref="cdid"/>
  1463. </itemset>
  1464. </choices>
  1465. </select1>
  1466. <caption id="caption17" class="cell_1" style="left:0px; top:92px; width:100px; height:46px; ">참고사항</caption>
  1467. <textarea id="textarea1" ref="/root/main/patinfolist/remfact" disabled="true" style="left:103px; top:93px; width:440px; height:44px; "/>
  1468. <line id="line16" class="line_2" style="x1:0px; y1:42px; x2:1194px; y2:42px; "/>
  1469. <line id="line15" class="line_2" style="x1:0px; y1:66px; x2:1194px; y2:66px; "/>
  1470. <line id="line14" class="line_2" style="x1:0px; y1:90px; x2:1194px; y2:90px; "/>
  1471. <line id="line17" class="line_1" style="x1:0px; y1:15px; x2:1194px; y2:15px; "/>
  1472. <caption id="caption18" class="tit_2" style="left:5px; top:0px; width:121px; height:13px; ">환자진료정보조회</caption>
  1473. <line id="line6" class="line_3" style="x1:0px; y1:139px; x2:1194px; y2:139px; "/>
  1474. <button id="button5" class="btn2_letter6" style="left:973px; top:145px; width:86px; height:19px; ">
  1475. <caption>통합기록조회</caption>
  1476. <script type="javascript" ev:event="DOMActivate">
  1477. <![CDATA[
  1478. var pid = model.getValue("/root/main/patinfolist/pid");
  1479. if(pid == ""){
  1480. messageBox("환자 등록번호를", "C001");
  1481. return;
  1482. }
  1483. setParameter("SMMRI00400_param_pid", pid);
  1484. open("SMMRI00400");
  1485. ]]>
  1486. </script>
  1487. </button>
  1488. <button id="button6" accesskey="ctrl+z" class="btn2_letter4" style="left:1127px; top:145px; width:64px; height:19px; ">
  1489. <caption>전과의뢰</caption>
  1490. <script type="javascript" ev:event="DOMActivate">
  1491. <![CDATA[
  1492. var xpt = window.screenleft;
  1493. var ypt = window.screenTop;
  1494. var coord = getRelativeCoordinate ( xpt, ypt );
  1495. var mon = coord[0];
  1496. var xpt = coord[1];
  1497. var ypt = coord[2];
  1498. var pid = model.getValue("/root/main/patinfolist/pid");
  1499. if(pid == ""){
  1500. messageBox("환자 등록번호를", "C001");
  1501. return;
  1502. }
  1503. model.setValue("/root/init/target/pid", pid);
  1504. modal("SPPMI02700",mon,xpt,ypt, "SPPMI02700", "/root/init/target", "/root/hidden/target", "", false);
  1505. ]]>
  1506. </script>
  1507. </button>
  1508. <input id="ipt_pid" ref="/root/main/patinfolist/pid" class="input_s_essential" navindex="1" autonext="false" imemode="disabled" style="left:103px; top:21px; width:90px; height:19px; ">
  1509. <script type="javascript" ev:event="onkeypress">
  1510. <![CDATA[
  1511. if(event.keyCode == 13){
  1512. getPIDEnter();
  1513. }
  1514. ]]>
  1515. </script>
  1516. </input>
  1517. <input id="ipt_hngnm" ref="/root/main/patinfolist/dispnm2" class="input_s_essential" navindex="2" autonext="false" imemode="hangul" style="left:103px; top:45px; width:203px; height:19px; ">
  1518. <script type="javascript" ev:event="onkeypress">
  1519. <![CDATA[
  1520. if(event.keyCode == 13){
  1521. model.setValue("/root/hidden/srchcond", "2");
  1522. model.setValue("/root/hidden/hngnm", ipt_hngnm.currentText);
  1523. modal("SPPMC02500", "1","150", "150", "SPPMC02500", "/root/hidden", "/root/send");
  1524. var pid = model.getValue("/root/main/patinfo/patinfolist/pid");
  1525. var hngnm = model.getValue("/root/main/patinfo/patinfolist/hngnm");
  1526. var prcpall = model.getValue("/root/main/cond/prcpall");
  1527. if(pid.length > 0){
  1528. model.setValue("/root/main/patinfolist/pid", pid);
  1529. model.setValue("/root/main/patinfolist/hngnm", hngnm);
  1530. fReqGetPatComnInfo("/root/send/reqdata", pid);
  1531. model.toggle("case1");
  1532. button1.selected = true;
  1533. var nodelist = model.instances(0).selectNodes("/root/main/srchinfo/patinfolist");
  1534. if(nodelist.length > 0){
  1535. model.copyNode("/root/main/patinfolist", "/root/main/srchinfo/patinfolist");
  1536. model.removeNodeset("/root/main/bfprcp/prcplist");
  1537. model.removeNodeset("/root/main/bfprcpday/bfprcpday");
  1538. grd_prcpdd.visible = false;
  1539. grd_bfprcplist.attribute("left") = 2;
  1540. grd_bfprcplist.attribute("width")= 1190;
  1541. model.refresh();
  1542. }else{
  1543. var trgthngnm = model.getValue("/root/send/reqdata/hngnm");
  1544. messageBox("[" + trgthngnm + "] 환자를 조회", "E001");
  1545. return;
  1546. }
  1547. }
  1548. }
  1549. ]]>
  1550. </script>
  1551. </input>
  1552. <output id="opt_rrgstno1" ref="/root/main/patinfolist/rrgstno1" class="output_fix" navindex="3" format="999999" autonext="false" style="left:103px; top:69px; width:100px; height:19px; "/>
  1553. <output id="opt_rrgstno2" ref="/root/main/patinfolist/rrgstno2" class="output_fix" navindex="4" autonext="false" style="left:206px; top:69px; width:100px; height:19px; "/>
  1554. <output id="opt_sex" ref="/root/main/patinfolist/sex" class="output_fix" style="left:372px; top:21px; width:49px; height:19px; "/>
  1555. <output id="opt_age" ref="/root/main/patinfolist/age" class="output_fix" style="left:424px; top:21px; width:48px; height:19px; "/>
  1556. <output id="opt_brthdd" ref="/root/main/patinfolist/brthdd" class="output_fix" format="yyyy-mm-dd" style="left:372px; top:46px; width:100px; height:19px; text-align:left; border-style:solid; "/>
  1557. <output id="opt_ward" ref="/root/main/patinfolist/ward" class="output_fix" style="left:372px; top:70px; width:171px; height:19px; border-style:solid; "/>
  1558. <bool id="chk_prcpall" checkvalue="Y,N" ref="/root/main/cond/prcpall" style="left:210px; top:21px; width:25px; height:20px; ">
  1559. <script type="javascript" ev:event="xforms-value-changed">
  1560. <![CDATA[
  1561. var pid = ipt_pid.currentText;
  1562. model.setValue("/root/main/patinfolist/pid", pid);
  1563. fPidTrim("/root/main/patinfolist/pid");
  1564. pid = model.getValue("/root/main/patinfolist/pid");
  1565. fReqGetPatComnInfo("/root/send/reqdata", pid);
  1566. ]]>
  1567. </script>
  1568. </bool>
  1569. <caption id="caption23" style="left:230px; top:22px; width:80px; height:20px; ">
  1570. <![CDATA[모든수진내역]]>
  1571. </caption>
  1572. <button id="button7" class="btn2_letter6" style="left:884px; top:145px; width:86px; height:19px; ">
  1573. <caption>통합결과조회</caption>
  1574. <script type="javascript" ev:event="DOMActivate">
  1575. <![CDATA[
  1576. var pid = model.getValue("/root/main/patinfolist/pid");
  1577. if(pid == ""){
  1578. messageBox("환자 등록번호를", "C001");
  1579. return;
  1580. }
  1581. setParameter("SMAER00800_patprcp", "Y"); //환자진료정보에서 통합검사결과조회를 오픈할 경우만 pid 우선으로 처리하기 위하여 파라미터 설정
  1582. open("SMAER00800", "", "", "", "SMAER00800", "/root/main/patinfolist/pid", "/root/send/data/singdata/srchpid");
  1583. ]]>
  1584. </script>
  1585. </button>
  1586. <bool id="bool3" checkvalue="Y,N" ref="/root/main/cond/deptyn" style="left:260px; top:147px; width:20px; height:20px; ">
  1587. <script type="javascript" ev:event="xforms-value-changed">
  1588. <![CDATA[
  1589. pid = model.getValue("/root/main/patinfolist/pid");
  1590. fReqGetPatComnInfo("/root/send/reqdata", pid);
  1591. ]]>
  1592. </script>
  1593. </bool>
  1594. <caption id="caption24" style="left:280px; top:148px; width:55px; height:20px; ">
  1595. <![CDATA[타과포함]]>
  1596. <script type="javascript" ev:event="onclick">
  1597. <![CDATA[
  1598. var deptyn = model.getValue("/root/main/cond/deptyn");
  1599. if (deptyn == "Y") {
  1600. model.setValue("/root/main/cond/deptyn", "N");
  1601. } else {
  1602. model.setValue("/root/main/cond/deptyn", "Y");
  1603. }
  1604. model.refresh();
  1605. ]]>
  1606. </script>
  1607. </caption>
  1608. <button id="button8" class="btn2_letter5" style="left:806px; top:145px; width:75px; height:19px; ">
  1609. <caption>SMS전송</caption>
  1610. <script type="javascript" ev:event="DOMActivate">
  1611. <![CDATA[
  1612. if(model.getValue("/root/main/patinfolist/mpphontel") == ""){
  1613. messageBox("휴대전화번호가 ", "E014");
  1614. //return;
  1615. }
  1616. model.removeNodeset("/root/hidden/smsdata");
  1617. model.makeValue("/root/hidden/smsdata/bizabbr", "EMR");
  1618. model.makeValue("/root/hidden/smsdata/replytelno", "");
  1619. model.makeValue("/root/hidden/smsdata/rsrvyn", "");
  1620. model.makeValue("/root/hidden/smsdata/rsrvdate", "");
  1621. model.makeValue("/root/hidden/smsdata/rsrvtime", "");
  1622. model.makeValue("/root/hidden/smsdata/recvrlist/chk", "");
  1623. model.makeValue("/root/hidden/smsdata/recvrlist/recvrnm", model.getValue("/root/main/patinfolist/hngnm"));
  1624. model.makeValue("/root/hidden/smsdata/recvrlist/recvrtelno", model.getValue("/root/main/patinfolist/mpphontel"));
  1625. zmsfOpenSMS("/root/hidden/smsdata");
  1626. model.removeNodeset("/root/hidden/smsdata");
  1627. ]]>
  1628. </script>
  1629. </button>
  1630. <button id="btn_setscrn" class="btn2_letter4" style="left:1127px; top:385px; width:64px; height:19px; ">
  1631. <caption>컬럼설정</caption>
  1632. <script type="javascript" ev:event="DOMActivate">
  1633. <![CDATA[
  1634. setParameter("SMMMO02500_param_scrnid", "SMMMO02500");
  1635. setParameter("SMMMO02500_param_grdid" , "grd_bfprcplist");
  1636. setParameter("SMMMO02500_param_caseid", "01");
  1637. modal("SPMMB03500");
  1638. var useyn = getParameter("SPMMB03500_rtn_useyn");
  1639. if(useyn == "Y"){
  1640. reqOrderInfoOfCol("SMMMO02500", "grd_bfprcplist");
  1641. }
  1642. ]]>
  1643. </script>
  1644. </button>
  1645. <caption id="cap_dethinfo" visibility="hidden" style="left:476px; top:20px; width:65px; height:45px; font-weight:bold; color:#ff0000; text-align:center; background-color:#ffffff; border-color:#ff0000; border-style:solid; ">환자사망</caption>
  1646. <caption id="caption30" class="cell_1" style="left:545px; top:92px; width:70px; height:23px; ">가족</caption>
  1647. <output id="output1" ref="/root/main/patinfolist/etctel2" class="output_fix" appearance="output" style="left:618px; top:94px; width:100px; height:19px; "/>
  1648. </xhtml:body>
  1649. </xhtml:html>