SMLBT10400_혈액불출관리.xrw 83 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMLBT10400_혈액불출관리.xrw
  4. * 설 명 : 혈액불출관리
  5. * 설 계 자 : (주)에이씨케이 -
  6. * 작 성 자 : (주)에이씨케이 - 박정은
  7. * 작 성 일 : 2007.06.07
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  12. <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">
  13. <xhtml:head>
  14. <xhtml:title>혈액불출관리</xhtml:title>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root>
  18. <main>
  19. <getblodprcplist>
  20. <pid/>
  21. <patnm/>
  22. <tclsscrnm/>
  23. <abo/>
  24. <iryn/>
  25. <no/>
  26. <erprcpflag/>
  27. <prcphopedd/>
  28. <tnsreqacptdt/>
  29. <h/>
  30. <tnsreqacptno/>
  31. <blodcomcd/>
  32. <prcpgenrflag/>
  33. <blodcomstat/>
  34. <abrnblodyn/>
  35. <validtyn/>
  36. </getblodprcplist>
  37. <getbloodinfo>
  38. <getblodprcplist>
  39. <pid/>
  40. <patnm/>
  41. <tclsscrnm/>
  42. <abo/>
  43. <iryn/>
  44. <no/>
  45. <erprcpflag/>
  46. <prcphopedd/>
  47. <tnsreqacptdt/>
  48. <h/>
  49. <tnsreqacptno/>
  50. </getblodprcplist>
  51. <getblooddetllist>
  52. <prcphopedd/>
  53. <blodcomnm/>
  54. <aborh/>
  55. <iryn/>
  56. <reqqty/>
  57. <cno/>
  58. <blodcomcd/>
  59. <blodbarcd/>
  60. <prcpgenrflag/>
  61. <tnsreqacptno/>
  62. </getblooddetllist>
  63. <getpatinfo>
  64. <pid/>
  65. <patnm/>
  66. <sexage/>
  67. <rstno/>
  68. <prcpgenrflag/>
  69. <orddeptnm/>
  70. <wardroom/>
  71. <aborh/>
  72. <orddrnm/>
  73. <f1/>
  74. <f2/>
  75. <f3/>
  76. <abrnblodyn/>
  77. </getpatinfo>
  78. <getbloodinfo>
  79. <ast/>
  80. <id>ANTI - I</id>
  81. <coomsd>NEGATIVE</coomsd>
  82. <coomsid>POSITIVE (+)</coomsid>
  83. </getbloodinfo>
  84. <getbloodinfo>
  85. <ast>2007-07-10</ast>
  86. <id>2007-07-10</id>
  87. <coomsd>2007-07-10</coomsd>
  88. <coomsid>2007-07-10</coomsid>
  89. </getbloodinfo>
  90. <blodrslthistory>
  91. <rsltdd>20070505</rsltdd>
  92. <rsltval>A+</rsltval>
  93. </blodrslthistory>
  94. <blodrslthistory>
  95. <rsltdd>20070309</rsltdd>
  96. <rsltval>A+</rsltval>
  97. </blodrslthistory>
  98. <blodrslthistory>
  99. <rsltdd>20070204</rsltdd>
  100. <rsltval>A+</rsltval>
  101. </blodrslthistory>
  102. <blodrslthistory>
  103. <rsltdd>20070110</rsltdd>
  104. <rsltval>A+</rsltval>
  105. </blodrslthistory>
  106. <blodrslthistory>
  107. <rsltdd>20061109</rsltdd>
  108. <rsltval>A+</rsltval>
  109. </blodrslthistory>
  110. <blodrslthistory>
  111. <rsltdd>20061020</rsltdd>
  112. <rsltval>A+</rsltval>
  113. </blodrslthistory>
  114. <blodrslthistory>
  115. <rsltdd>20060907</rsltdd>
  116. <rsltval>A+</rsltval>
  117. </blodrslthistory>
  118. <getcomment/>
  119. <getblodinfolist>
  120. <dt/>
  121. <rslt/>
  122. <tclsnm/>
  123. <testcd/>
  124. <unit/>
  125. </getblodinfolist>
  126. <getblodinforslt>
  127. <row>
  128. <a1/>
  129. </row>
  130. <row>
  131. <a1/>
  132. </row>
  133. <hearder/>
  134. </getblodinforslt>
  135. <blodrslthistory>
  136. <rsltdt/>
  137. <rslt/>
  138. </blodrslthistory>
  139. <getdeliverynmlist>
  140. <execid/>
  141. <execnm/>
  142. <acptid/>
  143. <acptnm/>
  144. </getdeliverynmlist>
  145. <getprepblood>
  146. <getprepbloodlist>
  147. <pno/>
  148. <blodno/>
  149. <blodcomnm/>
  150. <abo/>
  151. <iryn/>
  152. <validt/>
  153. <execid/>
  154. <execdt/>
  155. <testid/>
  156. <prntyn/>
  157. <rslt/>
  158. <cs/>
  159. <testdt/>
  160. <blodcmt/>
  161. <chk/>
  162. <cancel/>
  163. <blodcomstat/>
  164. <blodcmt/>
  165. <execprcpuniqno/>
  166. <tnsreqacptno/>
  167. <blodbarcd/>
  168. <blodcomcd/>
  169. <bftestno/>
  170. <donflag/>
  171. <crossprcpyn/>
  172. </getprepbloodlist>
  173. </getprepblood>
  174. <getpatcmt>
  175. <rgstdt/>
  176. <patcmt/>
  177. </getpatcmt>
  178. </getbloodinfo>
  179. <getuserDnm>
  180. <deliverynm/>
  181. </getuserDnm>
  182. <getuserAnm>
  183. <acceptnm/>
  184. </getuserAnm>
  185. <getUsernm>
  186. <usernm/>
  187. </getUsernm>
  188. <prcpbloodstat>
  189. <blodno/>
  190. <execprcpstatcd/>
  191. <prntyn/>
  192. </prcpbloodstat>
  193. <barcdprntsetup>
  194. </barcdprntsetup>
  195. <temp>
  196. <getprepbloodlist>
  197. <pno/>
  198. <blodno/>
  199. <blodcomnm/>
  200. <abo/>
  201. <iryn/>
  202. <validt/>
  203. <execid/>
  204. <execdt/>
  205. <testid/>
  206. <prntyn/>
  207. <rslt/>
  208. <cs/>
  209. <testdt/>
  210. <blodcmt/>
  211. <chk/>
  212. <cancel/>
  213. <blodcomstat/>
  214. <blodcmt/>
  215. <execprcpuniqno/>
  216. <tnsreqacptno/>
  217. <blodbarcd/>
  218. <blodcomcd/>
  219. <bftestno/>
  220. <donflag/>
  221. </getprepbloodlist>
  222. </temp>
  223. <getBMTInfo>
  224. <getBMTInfo>
  225. <pid/>
  226. <btype/>
  227. <dnorbtype/>
  228. <trnptdg/>
  229. <trnptdd/>
  230. </getBMTInfo>
  231. <getBMTInfoList>
  232. <pid/>
  233. <btype/>
  234. <dnorbtype/>
  235. <trnptdg/>
  236. </getBMTInfoList>
  237. </getBMTInfo>
  238. </main>
  239. <send>
  240. <pid/>
  241. <blodno/>
  242. <acptid/>
  243. <execid/>
  244. <deliveryid/>
  245. <acceptid/>
  246. <acptnm/>
  247. <tnsreqacptno/>
  248. <barcdflag/>
  249. <scrnid/>
  250. <tclscd/>
  251. <blodcomcd/>
  252. <prcpdd/>
  253. <iogbn/>
  254. <prcpdd/>
  255. <deliveryend/>
  256. <blodnolist/>
  257. <gbn/>
  258. <cancelflag/>
  259. <blodcmt/>
  260. <uniqno/>
  261. <blodbarcd/>
  262. <preblodbarcd/>
  263. <preblodcomcd/>
  264. <acptnolist/>
  265. <bftestno/>
  266. <donflag/>
  267. <iryn/>
  268. <prcphopedd/>
  269. <preplog/>
  270. <tnsacptno/>
  271. <bmtsearchgbn/>
  272. <codeflag/>
  273. <cmt/>
  274. <crossprcpyn/>
  275. </send>
  276. <init>
  277. </init>
  278. <hidden>
  279. <ref>
  280. <today/>
  281. <deliveryid/>
  282. <acceptid/>
  283. <pid/>
  284. <blodno/>
  285. <datetime/>
  286. <deliveryend/>
  287. </ref>
  288. <info>
  289. <blodrslthistory>
  290. <rsltdd>20070505</rsltdd>
  291. <rsltval>A+</rsltval>
  292. </blodrslthistory>
  293. <blodrslthistory>
  294. <rsltdd>20070309</rsltdd>
  295. <rsltval>A+</rsltval>
  296. </blodrslthistory>
  297. <blodrslthistory>
  298. <rsltdd>20070204</rsltdd>
  299. <rsltval>A+</rsltval>
  300. </blodrslthistory>
  301. <blodrslthistory>
  302. <rsltdd>20070110</rsltdd>
  303. <rsltval>A+</rsltval>
  304. </blodrslthistory>
  305. <blodrslthistory>
  306. <rsltdd>20061109</rsltdd>
  307. <rsltval>A+</rsltval>
  308. </blodrslthistory>
  309. <blodrslthistory>
  310. <rsltdd>20061020</rsltdd>
  311. <rsltval>A+</rsltval>
  312. </blodrslthistory>
  313. </info>
  314. <barcd/>
  315. <err>
  316. <err/>
  317. </err>
  318. <cancel>
  319. <cancelgbn/>
  320. <acptgbn/>
  321. <blodno/>
  322. <prepLog/>
  323. </cancel>
  324. <flag>
  325. <barcdflag>2</barcdflag>
  326. </flag>
  327. <natinfo>
  328. <deliveYN/>
  329. </natinfo>
  330. <userinfo>
  331. <tmpdeliveryid/>
  332. <tmpdeliverynm/>
  333. <tmpacceptid/>
  334. <tmpacceptnm/>
  335. </userinfo>
  336. <prcpremfact/>
  337. </hidden>
  338. </root>
  339. </instance>
  340. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  341. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  342. <script type="javascript" src="../../../lis/commonweb/js/LLZ001.js"/>
  343. <script type="javascript" src="../../../lis/commonweb/js/LZZ001.js"/>
  344. <script type="javascript" src="../../../lis/commonweb/js/LPZ001.js"/>
  345. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  346. <script type="javascript" src="../../../lis/commonweb/js/HanFont32.js"/>
  347. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  348. <script type="javascript" ev:event="xforms-ready">
  349. <![CDATA[
  350. fSetInit();
  351. grp_btn.disabled = true;
  352. model.setFocus("ID_txt");
  353. ]]>
  354. </script>
  355. <submission id="TRLBT10401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/getblodprcplist"/>
  356. <submission id="TRLBT10402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/getbloodinfo"/>
  357. <submission id="TRLBT10403" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/getuserDnm"/>
  358. <submission id="TRLBT10404" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/getuserAnm"/>
  359. <submission id="TRLBT10405" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/prcpbloodstat"/>
  360. <submission id="TRLBT10406" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden/barcd"/>
  361. <submission id="TRLBT10407" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/getbloodinfo/blodrslthistory"/>
  362. <submission id="TRLBT10408" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/temp"/>
  363. <submission id="TRLBT10409" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/getuserAnm"/>
  364. <submission id="TRLBT10209" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/getBMTInfo/getBMTInfo"/>
  365. <submission id="TRLBT10210" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/getBMTInfo/getBMTInfoList"/>
  366. <submission id="TRLZZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/LB0122"/>
  367. <submission id="TXLBT10401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden/err"/>
  368. <submission id="TXLBT10303" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance"/>
  369. <submission id="TRLZZ00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/getUsernm"/>
  370. <!-- 프린터 설정-->
  371. <submission id="TRLLC90101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/barcdprntsetup"/>
  372. <submission id="TRLZZ00107" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/prcpinfo"/>
  373. <submission id="TXLLB00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance"/>
  374. </model>
  375. <script type="javascript">
  376. <![CDATA[
  377. function fGetBarcdInfo(){
  378. model.setValue("/root/send/scrnid", getScreenID());
  379. submit("TRLLC90101");
  380. }
  381. //키이벤트 엔터키 입력시
  382. function fKeyEvent(){
  383. if(event.keyCode == "13"){
  384. // 등록번호 바코드 리딩시
  385. if(event.target == "ipt_pid"){
  386. model.setvalue("/root/hidden/ref/pid", ipt_pid.currentText);
  387. //fGetBlodinfo();
  388. fGetBloodPrcpList("pid");
  389. model.setFocus("ipt_blodno");
  390. }
  391. // 혈액번호 바코드 리딩시
  392. if(event.target=="ipt_blodno"){
  393. if(ipt_blodno.currentText == "XXXXXX"){
  394. fExeBlodDelivery();
  395. return;
  396. }
  397. model.setValue("/root/hidden/ref/blodno", (ipt_blodno.currentText).substr(0,10));
  398. //fGetBlodinfo();
  399. /// fSetPrepBlodList(); // 원리쓰던 함수
  400. fSetPrepBlodList2(); // 경대요청 변경된 함수
  401. model.setValue("/root/hidden/ref/blodno", "");
  402. model.setFocus("ipt_blodno");
  403. //ipt_blodno.refresh();
  404. model.refresh();
  405. ipt_blodno.selBegin = 0;
  406. ipt_blodno.selEnd = ipt_blodno.currentText.length;
  407. }
  408. // 불출자 바코드 리딩시
  409. if(event.target == "ipt_delivery"){
  410. model.setValue("/root/hidden/ref/deliveryid", (ipt_delivery.currentText).toUpperCase());
  411. fGetUsernm("d");
  412. // model.setFocus("ipt_accept"); // 수령자칸으로
  413. model.setFocus("ipt_blodno"); // 경대는 혈액번호만 입력함
  414. ipt_delivery.selBegin = 0;
  415. ipt_delivery.selEnd = ipt_delivery.currentText.length;
  416. }
  417. // 수령자 바코드 리딩시
  418. if(event.target == "ipt_accept"){
  419. model.setValue("/root/hidden/ref/acceptid", (ipt_accept.currentText).toUpperCase());
  420. fGetUsernm("a");
  421. model.setFocus("ipt_pid");
  422. ipt_accept.selBegin = 0;
  423. ipt_accept.selEnd = ipt_accept.currentText.length;
  424. }
  425. if(event.target =="ipt_cancelblodno"){
  426. model.setValue("/root/hidden/cancel/blodno", (ipt_cancelblodno.currentText).substr(0,10));
  427. model.setFocus("ipt_cancelblodno");
  428. fSetCancelBlodStat();
  429. ipt_cancelblodno.selBegin = 0;
  430. ipt_cancelblodno.selEnd = ipt_cancelblodno.currentText.length;
  431. }
  432. }
  433. }
  434. // 유저 정보
  435. function fGetUsernm(ref){
  436. if(ref=="d"){
  437. //model.setValue("/root/send/deliveryid", model.getValue("/root/hidden/ref/deliveryid"));
  438. //model.setValue("/root/send/acceptid", "");
  439. //submit("TRLBT10403");
  440. //불출자는 진검 사용자만 입력하기 위해 변경함. 수령자를 불출자에 넣고 불출하는 경우가 있음. 장현식선생님 요구
  441. model.makeValue("/root/send/userid" , model.getValue("/root/hidden/ref/deliveryid"));
  442. submit("TRLZZ00104");
  443. //불출후 불출자 초기화 하지 않기때문에 간혹 불출자 아이디가 잘못 들어간 경우가 있어 비교하기 위해
  444. model.setValue("/root/hidden/userinfo/tmpdeliveryid", model.getValue("/root/hidden/ref/deliveryid"));
  445. model.setValue("/root/hidden/userinfo/tmpdeliverynm", model.getValue("/root/main/getUsernm/usernm"));
  446. }else if(ref=="a"){
  447. model.setValue("/root/send/deliveryid", "");
  448. model.setValue("/root/send/acceptid", model.getValue("/root/hidden/ref/acceptid"));
  449. submit("TRLBT10404");
  450. //불출후 불출자 초기화 하지 않기때문에 간혹 불출자 아이디가 잘못 들어간 경우가 있어 비교하기 위해
  451. model.setValue("/root/hidden/userinfo/tmpacceptid", model.getValue("/root/hidden/ref/acceptid"));
  452. model.setValue("/root/hidden/userinfo/tmpacceptnm", model.getValue("/root/main/getuserAnm/acceptnm"));
  453. }
  454. }
  455. // 혈액정보 조회 - 사용안함
  456. function fGetBlodinfo(){
  457. model.resetInstanceNode("/root/main/getbloodinfo/getprepblood/getprepbloodlist");
  458. grd_prepblood.rebuild();
  459. grd_prepblood.rebuildStyle(1,1,(grd_prepblood.rows-1),2);
  460. model.setValue("/root/send/pid", model.getValue("/root/hidden/ref/pid"));
  461. model.setValue("/root/send/blodno", model.getValue("/root/hidden/ref/blodno"));
  462. submit("TRLBT10402");
  463. var aborh = model.getValue("/root/main/getbloodinfo/getpatinfo/aborh").substring(0,1);
  464. var abrnblodyn = model.getValue("/root/main/getbloodinfo/getpatinfo/abrnblodyn"); //이형혈액여부
  465. var aborhValue = model.getValue("/root/main/getbloodinfo/getpatinfo/aborh");
  466. var aborhLen = aborhValue.length;
  467. //이형혈액인경우
  468. if(abrnblodyn == "Y"){
  469. if(aborhLen > 3){
  470. opt_abo.attribute("font-size") = 20;
  471. opt_abo.attribute("color") = "red";
  472. }else{
  473. opt_abo.attribute("font-size") = 40;
  474. opt_abo.attribute("color") = "red";
  475. }
  476. }else{
  477. if(aborh=="A"){
  478. if(model.getValue("/root/main/getbloodinfo/getpatinfo/aborh").substring(0,2)=="AB"){
  479. opt_abo.attribute("class") = "font_ab";
  480. }else{
  481. opt_abo.attribute("class") = "font_a";
  482. }
  483. }else if(aborh=="B"){
  484. opt_abo.attribute("class") = "font_b";
  485. }else if(aborh=="O"){
  486. opt_abo.attribute("class") = "font_o";
  487. }else{
  488. // 기타 혈액형
  489. opt_abo.attribute("class") = "font_b";
  490. opt_abo.attribute("font-size") = 28;
  491. }
  492. }
  493. }
  494. // 준비혈액내역 확인
  495. function fSetPrepBlodList(){
  496. var sblodno = model.getValue("/root/hidden/ref/blodno");
  497. var findrow = grd_prepblood.findRow(sblodno , 1, 2 , true, true);
  498. //alert(findrow);
  499. if(findrow < 1 ) {
  500. messageBox("해당 혈액번호가 없습니다.", "I");
  501. //model.setFocus("ipt_blodno");
  502. }else{
  503. if(grd_prcplist.row <1){
  504. messageBox("처방을 선택하세요. ", "I");
  505. return;
  506. }
  507. if( model.getValue("/root/main/getblodprcplist["+ grd_prcplist.row +"]/abo") != model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ findrow +"]/abo")) {
  508. var rtn = messageBox("좌측하단의 불출된 혈액의 혈액형을 확인하십시오.", "Q003" );
  509. if(rtn == "7" ){
  510. return;
  511. }
  512. //model.setFocus("ipt_blodno");
  513. //ipt_blodno.refresh();
  514. }
  515. if(model.getValue("/root/hidden/ref/deliveryid")==""){
  516. messageBox("불출자를 " , "C001", ""); //불출자를 입력하십시오.
  517. model.setFocus("ipt_delivery");
  518. return;
  519. }
  520. model.setValue("/root/send/blodno", sblodno);
  521. model.removeNodeset("/root/main/prcpbloodstat");
  522. // 성분헌혈, 지정헌혈
  523. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/donflag")=="01"){
  524. // HPC=A0003 DGI=A0004 04064 전혈
  525. if((model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="A0003")
  526. || (model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="A0004")
  527. || (model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="04064") ){
  528. model.makeValue("/root/hidden/natinfo/blodno", sblodno);
  529. modal("SPLBT90300","","","","","/root/hidden/natinfo","/root/hidden/ref"); // SPLBT90300_공여자처방결과.xrw
  530. // nat결과여부 사후결과여부
  531. if(model.getValue("/root/hidden/natinfo/deliveYN") == "N"){
  532. messageBox("사후검사 결과가 없거나 이상치 결과가 있습니다. ", "I");
  533. //return;
  534. } // 공여자처방정보 팝업화면에 [닫기] or [불출]버튼 누르면 Y, N setting
  535. }
  536. }
  537. /* 서울성모
  538. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/execid", model.getValue("/root/main/getUsernm/usernm"));
  539. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/execdt", model.getValue("/root/hidden/ref/today"));
  540. grd_prepblood.cellStyle("color", findrow, 1, findrow, 10) = "#32cd32";
  541. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/chk", "Y");
  542. grd_prepblood.rowStatus(findrow) = 1;
  543. //불출할혈액많아서 스크롤생기면 혈액번호리딩시 찍은혈액이 바로보이게
  544. grd_prepblood.topRow = findrow;
  545. */
  546. // 경북대
  547. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="10104"){
  548. for(var blodRow = 1 ; blodRow < grd_prepblood.rows ; blodRow++){
  549. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+blodRow+"]/execid", model.getValue("/root/main/getUsernm/usernm"));
  550. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+blodRow+"]/execdt", model.getValue("/root/hidden/ref/today"));
  551. grd_prepblood.cellStyle("color", blodRow, 1, blodRow, 10) = "#32cd32";
  552. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+blodRow+"]/chk", "Y");
  553. grd_prepblood.rowStatus(blodRow) = 1;
  554. }
  555. grd_prepblood.topRow = grd_prepblood.rows-1;
  556. }else{
  557. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/execid", model.getValue("/root/main/getUsernm/usernm"));
  558. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/execdt", model.getValue("/root/hidden/ref/today"));
  559. grd_prepblood.cellStyle("color", findrow, 1, findrow, 10) = "#32cd32";
  560. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/chk", "Y");
  561. grd_prepblood.rowStatus(findrow) = 1;
  562. //불출할혈액많아서 스크롤생기면 혈액번호리딩시 찍은혈액이 바로보이게
  563. grd_prepblood.topRow = findrow;
  564. }
  565. }
  566. }
  567. // 준비혈액내역 확인 경대버전 혈액번호만 리딩하겠다함
  568. function fSetPrepBlodList2(){
  569. var sblodno = model.getValue("/root/hidden/ref/blodno");
  570. var findrow = grd_prepblood.findRow(sblodno , 1, 2 , true, true);
  571. //alert(findrow);
  572. if(findrow < 1 ) {
  573. /// messageBox("해당 혈액번호가 없습니다.", "I");
  574. //model.setFocus("ipt_blodno");
  575. model.setValue("/root/hidden/ref/blodno", (ipt_blodno.currentText).substr(0,10));
  576. fGetBloodPrcpList("blodno"); // 경대용 추가 혈액번호로 처방조회
  577. if(grd_prcplist.row > 0) { // 처방목록 조회되면
  578. fSetPrepBlodList2(); // 리딩한 혈액번호 상세목록에서 찾기
  579. // 수령자id, 불출요청서 작성한 사람 id, nm 가져오기
  580. fGetNurseID();
  581. model.setValue("/root/hidden/ref/pid", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/pid")); /// 등록번호 자동조회
  582. model.setValue("/root/hidden/ref/acceptid", model.getValue("/root/main/getuserAnm/acceptid")); // 수령자 자동조회
  583. model.setValue("/root/hidden/userinfo/tmpacceptid", model.getValue("/root/main/getuserAnm/acceptid"));
  584. model.setValue("/root/hidden/userinfo/tmpacceptnm", model.getValue("/root/main/getuserAnm/acceptnm"));
  585. model.refresh();
  586. model.setFocus("ipt_blodno");
  587. }
  588. }else{
  589. if(grd_prcplist.row <1){
  590. messageBox("처방을 선택하세요. ", "I");
  591. return;
  592. }
  593. if( model.getValue("/root/main/getblodprcplist["+ grd_prcplist.row +"]/abo") != model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ findrow +"]/abo")) {
  594. var rtn = messageBox("좌측하단의 불출된 혈액의 혈액형을 확인하십시오.", "Q003" );
  595. if(rtn == "7" ){
  596. return;
  597. }
  598. //model.setFocus("ipt_blodno");
  599. //ipt_blodno.refresh();
  600. }
  601. if(model.getValue("/root/hidden/ref/deliveryid")==""){
  602. messageBox("불출자를 " , "C001", ""); //불출자를 입력하십시오.
  603. model.setFocus("ipt_delivery");
  604. return;
  605. }
  606. model.setValue("/root/send/blodno", sblodno);
  607. model.removeNodeset("/root/main/prcpbloodstat");
  608. // 성분헌혈, 지정헌혈
  609. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/donflag")=="01"){
  610. // HPC=A0003 DGI=A0004 04064 전혈
  611. if((model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="A0003")
  612. || (model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="A0004")
  613. || (model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="04064") ){
  614. model.makeValue("/root/hidden/natinfo/blodno", sblodno);
  615. modal("SPLBT90300","","","","","/root/hidden/natinfo","/root/hidden/ref"); // SPLBT90300_공여자처방결과.xrw
  616. // nat결과여부 사후결과여부
  617. if(model.getValue("/root/hidden/natinfo/deliveYN") == "N"){
  618. messageBox("사후검사 결과가 없거나 이상치 결과가 있습니다. ", "I");
  619. //return;
  620. } // 공여자처방정보 팝업화면에 [닫기] or [불출]버튼 누르면 Y, N setting
  621. }
  622. }
  623. /* 서울성모
  624. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/execid", model.getValue("/root/main/getUsernm/usernm"));
  625. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/execdt", model.getValue("/root/hidden/ref/today"));
  626. grd_prepblood.cellStyle("color", findrow, 1, findrow, 10) = "#32cd32";
  627. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/chk", "Y");
  628. grd_prepblood.rowStatus(findrow) = 1;
  629. //불출할혈액많아서 스크롤생기면 혈액번호리딩시 찍은혈액이 바로보이게
  630. grd_prepblood.topRow = findrow;
  631. */
  632. // 경북대 바코드정보하는 곳도 같이 확인 lislib getTnsrBarcdInfo
  633. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="18203"
  634. || model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="18204"
  635. || model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="12003"
  636. || model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="12004"
  637. || model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="10103"
  638. || model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd")=="10104"){
  639. var getValbarcd = model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/blodbarcd");
  640. var getTestdt = model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/testdt");
  641. for(var blodRow = 1 ; blodRow < grd_prepblood.rows ; blodRow++){
  642. if(getValbarcd == model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+blodRow+"]/blodbarcd") &&
  643. getTestdt == model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+blodRow+"]/testdt")
  644. ){
  645. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+blodRow+"]/execid", model.getValue("/root/main/getUsernm/usernm"));
  646. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+blodRow+"]/execdt", model.getValue("/root/hidden/ref/today"));
  647. grd_prepblood.cellStyle("color", blodRow, 1, blodRow, 10) = "#32cd32";
  648. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+blodRow+"]/chk", "Y");
  649. grd_prepblood.rowStatus(blodRow) = 1;
  650. }
  651. }
  652. grd_prepblood.topRow = grd_prepblood.rows-1;
  653. }else{
  654. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/execid", model.getValue("/root/main/getUsernm/usernm"));
  655. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/execdt", model.getValue("/root/hidden/ref/today"));
  656. grd_prepblood.cellStyle("color", findrow, 1, findrow, 10) = "#32cd32";
  657. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+findrow+"]/chk", "Y");
  658. grd_prepblood.rowStatus(findrow) = 1;
  659. //불출할혈액많아서 스크롤생기면 혈액번호리딩시 찍은혈액이 바로보이게
  660. grd_prepblood.topRow = findrow;
  661. }
  662. }
  663. }
  664. // 혈액번호만 리딩했을때 불출요청서 작성한 id, 가져와서 수령자에 넣어주기
  665. function fGetNurseID(){
  666. model.makeValue("/root/send/blodno", model.getValue("/root/hidden/ref/blodno"));
  667. model.makeValue("/root/send/blodcomcd", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/blodcomcd"));
  668. submit("TRLBT10409");
  669. }
  670. // 결과보고 버튼
  671. function fExeBlodDelivery(){
  672. // if(model.getValue("/root/hidden/ref/pid") == ""){
  673. // messageBox("등록번호를 입력 또는 바코드 리딩하여 해당 환자의 처방만을 조회한 후 불출하여 주십시오.", "I");
  674. // return;
  675. // }
  676. if(model.getValue("/root/hidden/ref/deliveryid")=="" || model.getValue("/root/main/getUsernm/usernm") == ""){
  677. messageBox("불출자를 " , "C001", ""); //불출자를 입력하십시오.
  678. return;
  679. }
  680. if(model.getValue("/root/hidden/ref/acceptid")=="" || model.getValue("/root/main/getuserAnm/acceptnm") == ""){
  681. messageBox("수령자를 " , "C001", ""); //수령자를 입력하십시오.
  682. return;
  683. }
  684. if(model.getValue("/root/hidden/ref/deliveryid") != model.getValue("/root/hidden/userinfo/tmpdeliveryid")
  685. || model.getValue("/root/main/getUsernm/usernm") != model.getValue("/root/hidden/userinfo/tmpdeliverynm") ){
  686. messageBox("불출자를 확인해주세요.", "I");
  687. return;
  688. }
  689. if(model.getValue("/root/hidden/ref/acceptid") != model.getValue("/root/hidden/userinfo/tmpacceptid")
  690. || model.getValue("/root/main/getuserAnm/acceptnm") != model.getValue("/root/hidden/userinfo/tmpacceptnm") ){
  691. messageBox("수령자를 확인해주세요.", "I");
  692. return;
  693. }
  694. if(grd_prcplist.row <1){
  695. messageBox("처방을 선택하세요. ", "I");
  696. return;
  697. }
  698. if(model.getValue("/root/hidden/natinfo/deliveYN") == "N"){
  699. messageBox("사후검사 결과가 없거나 이상치 결과가 있습니다.", "I");
  700. return;
  701. }
  702. // 의뢰서 출력 안된 혈액 불출 못하게
  703. var blodenteryn = "";
  704. var prntYN = ""; //요청서 출력여부
  705. for(h=1; h<grd_prepblood.rows; h++){
  706. if(grd_prepblood.rowStatus(h) == 1){
  707. // 의뢰지 출력 안된 혈액
  708. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+h+"]/prntyn") != "true"){
  709. //messageBox("불출의뢰서 출력이 안된 상태입니다. 혈액불출 하실 수 ", "I004"); // 없습니다.
  710. //return;
  711. prntYN += h;
  712. }
  713. }
  714. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+h+"]/chk") == "Y"){
  715. blodenteryn += "Y";
  716. }
  717. }
  718. if(prntYN !=""){ // 요청서 출력 안된거 있는지 확인
  719. messageBox("불출요청서 출력이 안된 혈액이 있습니다.", "I");
  720. //return;
  721. }
  722. /* 경북대는 교차시험예외임
  723. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ 1 +"]/crossprcpyn") == "Y"){ //하나 체크해도 모든 row 같은 값으로 셋팅하기때문에 1번째걸로 비교
  724. var rtn = messageBox("교차시험 처방예외가 선택되었습니다. \n진행하시면 교차시험 추가처방이 발생되지 않습니다.\n계속 진행하시겠습니까?", "Q");
  725. if(rtn == "7"){
  726. return;
  727. }
  728. }
  729. */
  730. if(blodenteryn ==""){
  731. messageBox("불출할 혈액번호를 입력하십시오. ", "I");
  732. return;
  733. }
  734. var blod = "";
  735. var blodbarcd = "";
  736. var blodcomcd = "";
  737. //var tnsreqacptno = "";
  738. var blodcmt = "";
  739. var uniqno = "";
  740. var bftestno = ""; //사전검사실시처방유일번호 - 성분헌혈
  741. var donflag = ""; //헌혈구분(01-성분지정,자가,전혈, 02-지정헌혈)
  742. var crossprcpyn = ""; //교차시험처방 발생 여부
  743. var prepCnt = 0;
  744. for(i=1; i<grd_prepblood.rows; i++){
  745. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/chk")=="Y" &&
  746. model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/prntyn") == "true"){
  747. blod += "▦" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodno");
  748. blodbarcd += "▦" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodbarcd");
  749. blodcomcd += "▦" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodcomcd");
  750. //tnsreqacptno += "▦" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/tnsreqacptno");
  751. uniqno += "▦" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/execprcpuniqno");
  752. bftestno += "▦" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/bftestno");
  753. donflag += "▦" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/donflag");
  754. crossprcpyn += "▦" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/crossprcpyn");
  755. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodcmt") ==""){
  756. blodcmt += "▦" + " ";
  757. }else{
  758. blodcmt += "▦" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodcmt");
  759. }// ▦0300000001▦0300000002 ...
  760. prepCnt++;
  761. }
  762. }
  763. if(prepCnt > 0){
  764. model.setValue("/root/send/pid", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/pid"));
  765. model.setValue("/root/send/execid", model.getValue("/root/hidden/ref/deliveryid")); // 불출자
  766. model.setValue("/root/send/acptid", model.getValue("/root/hidden/ref/acceptid")); // 수령자
  767. model.setValue("/root/send/acptnm", model.getValue("/root/main/getuserAnm/acceptnm")); // 수령자명
  768. model.setValue("/root/send/blodno", blod);
  769. model.setValue("/root/send/uniqno", uniqno);
  770. model.setValue("/root/send/crossprcpyn", crossprcpyn); //추가처방 발생 여부
  771. model.setValue("/root/send/tnsreqacptno", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/tnsreqacptno")); // 수령자명
  772. model.setValue("/root/send/prcpdd", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/prcphopedd").substr(0,8));
  773. model.setValue("/root/send/iogbn", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/prcpgenrflag"));
  774. model.setValue("/root/send/blodcmt", blodcmt);
  775. model.setValue("/root/send/preblodbarcd", blodbarcd);
  776. model.setValue("/root/send/preblodcomcd", blodcomcd);
  777. model.setValue("/root/send/bftestno", bftestno);
  778. model.setValue("/root/send/donflag", donflag);
  779. if(submit("TXLBT10401")==true){
  780. //fExeBarcdPrnt("save"); 경대 준비에서 출력
  781. fSetInit("save");
  782. model.setValue("/root/hidden/ref/pid", "");
  783. model.setValue("/root/main/getuserAnm/acceptnm", ""); // 2008-09-08 불출하면 수령자는 초기화
  784. model.setValue("/root/hidden/ref/acceptid",""); // 2008-09-08 불출하면 수령자는 초기화
  785. ipt_pid.refresh();
  786. ipt_accept.refresh();
  787. input3.refresh();
  788. //model.setFocus("ipt_pid");
  789. fGetBloodPrcpList("btn");
  790. model.setFocus("ipt_blodno");
  791. model.refresh();
  792. }
  793. }
  794. }
  795. // 초기화
  796. function fSetInit(flag){
  797. model.removeNodeset("/root/main/getblodprcplist");
  798. model.removeNodeset("/root/main/getbloodinfo");
  799. grd_lastrslt.colWidthMax = 0;
  800. //grd_lastrslt.caption = "a^b^c^d^e^f^g";
  801. var today = getCurrentDate();
  802. model.setValue("/root/hidden/ref/today", today);
  803. grp_sea.refresh();
  804. grd_prepblood.rebuildStyle(1,1,(grd_prepblood.rows-1),10);
  805. model.setFocus("ipt_delivery");
  806. delPatientInfos(); //환자정보 전체 삭제
  807. model.setValue("/root/hidden/ref/datetime", getCurrentTime());
  808. model.setValue("/root/hidden/ref/pid", "");
  809. model.setValue("/root/hidden/ref/blodno", "");
  810. //lzzfMakeBrcdPrntObj("CommAX"); //이전 OCX
  811. model.setValue("/root/send/scrnid", getScreenID());
  812. submit("TRLLC90101");
  813. lzzfMakeBrcdPrntObjHanDo("CommAX");
  814. fGetBarcdInfo();
  815. if(flag != "save") {
  816. model.setValue("/root/hidden/ref/deliveryid", "");
  817. model.setValue("/root/hidden/ref/acceptid", "");
  818. model.setValue("/root/main/getuserAnm/acceptnm", "");
  819. }
  820. //LIS 공통코드 조회
  821. model.setValue("/root/send/codeflag", "0122|"); // 0122 수혈 반납/폐기 사유, 1201 알람소리
  822. submit("TRLZZ00101");
  823. model.refresh();
  824. }
  825. // 조회 버튼 클릭시
  826. function fGetBloodPrcpList(ref){
  827. chk_deliveryend.deselect(0);
  828. if(model.getValue("/root/hidden/ref/deliveryend")=="1"){
  829. if(model.getValue("/root/hidden/ref/pid")==""){
  830. messageBox("등록번호를 입력하십시오.", "I");
  831. return;
  832. }
  833. }
  834. model.setValue("/root/send/pid", model.getValue("/root/hidden/ref/pid"));
  835. model.setValue("/root/send/deliveryend", model.getValue("/root/hidden/ref/deliveryend"));
  836. model.setValue("/root/send/blodno", model.getValue("/root/hidden/ref/blodno"));
  837. submit("TRLBT10401");
  838. if(grd_prcplist.rows > 1){
  839. for(i=1; i<grd_prcplist.rows; i++){
  840. grd_prcplist.rebuildStyle(i,1,i,8);
  841. //이형 type 빨간색으로 표시되게
  842. if(model.getValue("/root/main/getblodprcplist["+i+"]/abrnblodyn")=="Y"){
  843. grd_prcplist.cellStyle("color", i, 4, i, 4) = "red";
  844. }
  845. //PC,LRSDP는 하루전날(B) 노랑, 당일(A) 빨강, 나머지는 5일(A) 빨강
  846. if(model.getValue("/root/main/getblodprcplist["+i+"]/validtyn") == "A"){
  847. grd_prcplist.cellstyle("background-color",i,1,i,8) = "#f7a08b";
  848. }else if(model.getValue("/root/main/getblodprcplist["+i+"]/validtyn") == "B"){
  849. grd_prcplist.cellstyle("background-color",i,1,i,8) = "#ffe79d";
  850. }
  851. }
  852. grd_prcplist.rebuild();
  853. if(ref == "pid"){
  854. grd_prcplist.row = 1;
  855. fGetDeliveryInfo("1");
  856. }else if (ref == "blodno"){
  857. grd_prcplist.row = 1;
  858. fGetDeliveryInfo("1");
  859. }
  860. }else{
  861. if(ref == "pid"){
  862. fGetDeliveryInfo("1");
  863. }else{
  864. model.removeNodeset("/root/main/getbloodinfo/getblooddetllist");
  865. model.removeNodeset("/root/main/getbloodinfo/getpatinfo");
  866. model.removeNodeset("/root/main/getbloodinfo/getprepblood/getprepbloodlist");
  867. model.removeNodeset("/root/main/getbloodinfo/blodrslthistory");
  868. model.setValue("/root/hidden/cancel/cancelgbn", "");
  869. model.refresh();
  870. fSetCancelBlodEnd();
  871. }
  872. }
  873. }
  874. // 혈액정보 결과값 더블 클릭시 검사항목 결과 히스토리 보여주기
  875. function fGetBlodInfoHistory(){
  876. //grp_history.visible = true;
  877. var rsltrow = getNodesetCount("/root/main/getbloodinfo/getblodinfolist");
  878. if(grd_lastrslt.isCell(event.target) && grd_lastrslt.row >= grd_lastrslt.fixedRows){
  879. var tclsnm = grd_lastrslt.caption;
  880. var tnm = tclsnm.split("^");
  881. for(i=0; i< rsltrow; i++){
  882. if(grd_lastrslt.col == i){
  883. if(tnm[i] == model.getValue("/root/main/getbloodinfo/getblodinfolist["+(i+1)+"]/tclsnmabbr")){
  884. model.setValue("/root/send/tclscd", model.getValue("/root/main/getbloodinfo/getblodinfolist["+(i+1)+"]/testcd"));
  885. model.setValue("/root/send/pid", model.getValue("/root/main/getbloodinfo/getpatinfo/pid"));
  886. submit("TRLBT10407");
  887. grp_history.visible = true;
  888. //fGetBlodInfoHistory();
  889. }
  890. }
  891. }
  892. }
  893. }
  894. function fGetDeliveryInfo(gbn){
  895. chk_deliveryend.deselect(0);
  896. fSetCancelBlodEnd();
  897. model.setValue("/root/hidden/prcpremfact", model.getValue("/root/main/getblodprcplist["+ grd_prcplist.row +"]/prcpremfact"));
  898. tar_prcpremfact.refresh();
  899. //alert(gbn);
  900. if(gbn == "1"){
  901. //alert("rows= " + grd_prcplist.rows);
  902. if(grd_prcplist.rows > 1){
  903. model.setValue("/root/send/tnsreqacptno", model.getValue("/root/main/getblodprcplist[1]/tnsreqacptno"));
  904. model.setValue("/root/send/pid", model.getValue("/root/main/getblodprcplist[1]/pid"));
  905. model.setValue("/root/send/blodcomcd", model.getValue("/root/main/getblodprcplist[1]/blodcomcd"));
  906. model.setValue("/root/send/iogbn", model.getValue("/root/main/getblodprcplist[1]/prcpgenrflag"));
  907. //불출대기 리스트를 선택해도 등록번호 셋팅 안되도록 수정. 등록번호 리딩하여 불출가능 하도록 변경 2009-11-06 김성희 요청번호 7170
  908. //model.setValue("/root/hidden/ref/pid", model.getValue("/root/main/getblodprcplist[1]/pid"));
  909. }else{
  910. model.setValue("/root/send/tnsreqacptno", "");
  911. model.setValue("/root/send/pid", model.getValue("/root/hidden/ref/pid"));
  912. model.setValue("/root/send/blodcomcd", "");
  913. model.setValue("/root/send/iogbn", "");
  914. }
  915. }else{
  916. model.setValue("/root/send/tnsreqacptno", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/tnsreqacptno"));
  917. model.setValue("/root/send/pid", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/pid"));
  918. model.setValue("/root/send/blodcomcd", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/blodcomcd"));
  919. model.setValue("/root/send/deliveryend", model.getValue("/root/hidden/ref/deliveryend"));
  920. model.setValue("/root/send/iogbn", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/prcpgenrflag"));
  921. //model.setValue("/root/hidden/ref/pid", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/pid"));
  922. }
  923. model.resetInstanceNode("/root/main/getbloodinfo/getprepblood/getprepbloodlist");
  924. grd_prepblood.rebuild();
  925. grd_prepblood.rebuildStyle(1,1,(grd_prepblood.rows-1),12);
  926. model.setValue("/root/send/blodno", model.getValue("/root/hidden/ref/blodno"));
  927. submit("TRLBT10402");
  928. model.resetInstanceNode("/root/hidden/natinfo/deliveYN");
  929. var count = getNodesetCount("/root/main/getbloodinfo/getprepblood/getprepbloodlist");
  930. //var today = getCurrentDate();
  931. for(i = 1; i <= count; i++) {
  932. var vali = model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/validt");
  933. if(vali.substr(8, 6) == "" || vali.substr(8, 4) == "0000") {
  934. var text = model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/validt") + "235900";
  935. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/validt", text);
  936. }
  937. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodcomstat")=="5"){
  938. grd_prepblood.cellStyle("color", i, 1, i, 12) = "#999999";
  939. }
  940. //유효기간 마지막날은 붉으죽죽한색으로 표시되게
  941. //if(today == vali.substring(0,8)){
  942. //grd_prepblood.cellStyle("background-color", i, 1, i, 12) = "#f7a08b";
  943. //}
  944. }
  945. // 최근결과 조회
  946. fGetBlodRslt();
  947. //--------------------------------------------------------------------
  948. // BMT 실시 정보
  949. fGetBMTInfo("info");
  950. var aborh = model.getValue("/root/main/getbloodinfo/getpatinfo/aborh").substring(0,1);
  951. var abrnblodyn = model.getValue("/root/main/getbloodinfo/getpatinfo/abrnblodyn"); //이형혈액여부
  952. var aborhValue = model.getValue("/root/main/getbloodinfo/getpatinfo/aborh");
  953. var aborhLen = aborhValue.length;
  954. //이형혈액인경우
  955. if(abrnblodyn == "Y"){
  956. if(aborhLen > 3){
  957. opt_abo.attribute("font-size") = 20;
  958. opt_abo.attribute("color") = "red";
  959. }else{
  960. opt_abo.attribute("font-size") = 40;
  961. opt_abo.attribute("color") = "red";
  962. }
  963. }else{
  964. if(aborh=="A"){
  965. if(model.getValue("/root/main/getbloodinfo/getpatinfo/aborh").substring(0,2)=="AB"){
  966. opt_abo.attribute("class") = "font_ab";
  967. }else{
  968. opt_abo.attribute("class") = "font_a";
  969. }
  970. }else if(aborh=="B"){
  971. opt_abo.attribute("class") = "font_b";
  972. }else if(aborh=="O"){
  973. opt_abo.attribute("class") = "font_o";
  974. }else{
  975. // 기타 혈액형
  976. opt_abo.attribute("class") = "font_b";
  977. opt_abo.attribute("font-size") = 28;
  978. }
  979. }
  980. // 준비혈액맨밑줄보이게
  981. grd_prepblood.row = (grd_prepblood.rows-1);
  982. var gridRow = grd_prepblood.rows;
  983. grd_prepblood.topRow = gridRow;
  984. if(grd_prcplist.rows> 1){
  985. if(getPatientInfo("pid") != model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/pid")){
  986. fGetTopInfo();
  987. }
  988. }
  989. model.setFocus("ipt_blodno");
  990. }
  991. // 탑정보 위한 조회
  992. function fGetTopInfo(){
  993. model.setValue("/root/send/pid", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/pid"));
  994. model.setValue("/root/send/prcpdd", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/prcphopedd").substr(0,8));
  995. model.setValue("/root/send/iogbn", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/prcpgenrflag"));
  996. submit("TRLZZ00107");
  997. fUpPatinfo();
  998. }
  999. // 탑정보
  1000. function fUpPatinfo(){
  1001. if(grd_prcplist.rows> 1){
  1002. if(model.getValue("/root/init/prcpinfo/prcpdd")!=""){
  1003. setParameter("errflag", "Y");
  1004. setParameter("condparam", "S" + "▦" + model.getvalue("/root/init/prcpinfo/prcpdd")+ "▦"
  1005. + model.getvalue("/root/init/prcpinfo/execprcpuniqno") + "▦"
  1006. + model.getvalue("/root/init/prcpinfo/instcd"));
  1007. //modal("SPMMO08900");
  1008. modal("SPMMO08900", 1, "", "", "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
  1009. }
  1010. var paminfo = getGlobalVariable("paminfo");
  1011. if(paminfo.length < 1){ //상단정보가 없는 경우
  1012. delPatientInfos(); //환자정보 전체 삭제
  1013. var pid = model.getValue("/root/main/getbloodinfo/getpatinfo/pid");
  1014. var hngnm = model.getValue("/root/main/getbloodinfo/getpatinfo/patnm");
  1015. //상단에 올릴 수 있는 정보가 있으면 아래와 같이 설정해 주시면 됩니다. 없으면 안 해주셔도 되구요..
  1016. setPatientInfo("pid" , pid); //등록번호
  1017. setPatientInfo("pname" , pid + "|" + hngnm); //환자명
  1018. }
  1019. }
  1020. }
  1021. // 임시 최근결과
  1022. function fGetBlodRslt(){
  1023. //model.removeNodeset("/root/main/getbloodinfo/getblodinforslt");
  1024. //grd_lastrslt.rebuild();
  1025. for(i=1; i<=grd_lastrslt.cols; i++){
  1026. grd_lastrslt.colHidden(i) = true;
  1027. }
  1028. var rsltrow = getNodesetCount("/root/main/getbloodinfo/getblodinfolist");
  1029. var newcap = "";
  1030. for(i=0; i< rsltrow; i++){
  1031. grd_lastrslt.colHidden(i) = false;
  1032. //newcap += "^" + model.getValue("/root/main/getbloodinfo/getblodinfolist["+(i+1)+"]/tclsnm");
  1033. newcap += "^" + model.getValue("/root/main/getbloodinfo/getblodinfolist["+(i+1)+"]/tclsnmabbr");
  1034. }
  1035. grd_lastrslt.addRow(false);
  1036. grd_lastrslt.addRow(false);
  1037. for(i=1; i<= rsltrow; i++){
  1038. //model.makeValue("/root/main/getbloodinfo/getblodinforslt/row[1]/a"+i, model.getValue("/root/main/getbloodinfo/getblodinfolist["+i+"]/rslt") + " " + model.getValue("/root/main/getbloodinfo/getblodinfolist["+i+"]/unit"));
  1039. model.makeValue("/root/main/getbloodinfo/getblodinforslt/row[1]/a"+i, model.getValue("/root/main/getbloodinfo/getblodinfolist["+i+"]/rslt"));
  1040. model.makeValue("/root/main/getbloodinfo/getblodinforslt/row[2]/a"+i, model.getValue("/root/main/getbloodinfo/getblodinfolist["+i+"]/dt"));
  1041. grd_lastrslt.colWidth((i-1)) = 90;
  1042. }
  1043. newcap = newcap.substring(1);
  1044. grd_lastrslt.caption = newcap;
  1045. grd_lastrslt.rebuild();
  1046. }
  1047. //바코드출력
  1048. function fExeBarcdPrnt(flag) {
  1049. model.removeNodeset("/root/hidden/barcode");
  1050. var blod = "";
  1051. var iblodrow = "1";
  1052. var bbb = "";
  1053. var tnsacptno = "";
  1054. if(flag == "save") {
  1055. for(i=1; i<grd_prepblood.rows; i++){
  1056. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/chk")=="Y"){
  1057. //alert(grd_prepblood.rowStatus(i));
  1058. if((grd_prepblood.rowStatus(i)=="1" ) || (grd_prepblood.rowStatus(i)=="3" )){
  1059. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/prntyn") == "true" ) {
  1060. if(iblodrow=="1"){
  1061. blod += "'" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/blodno") + "'";
  1062. tnsacptno += "'" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/tnsreqacptno") + "'";
  1063. }else{
  1064. blod += ",'" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/blodno") + "'";
  1065. tnsacptno += ",'" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/tnsreqacptno") + "'";
  1066. }
  1067. iblodrow ++;
  1068. }
  1069. }
  1070. }
  1071. }
  1072. }else if (flag == "re"){
  1073. blod += "'" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+grd_prepblood.row+"]/blodno") + "'";
  1074. tnsacptno += "'" + model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+grd_prepblood.row+"]/tnsreqacptno") + "'";
  1075. }
  1076. //alert(iblodrow);
  1077. //alert(blod);
  1078. //model.setValue("/root/send/pid", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/pid"));
  1079. model.setValue("/root/send/pid", model.getValue("/root/hidden/ref/pid"));
  1080. model.setValue("/root/send/blodno", blod);
  1081. model.setValue("/root/send/tnsacptno", tnsacptno);
  1082. model.setValue("/root/send/barcdflag", "2");
  1083. //alert("blod= " + blod);
  1084. submit("TRLBT10406");
  1085. var vInstance = document.models(0).instances(0);
  1086. var cntHR = vInstance.selectNodes("/root/hidden/barcode/barcodeinfo").length;
  1087. for(i= 1; i <= cntHR; i++) {
  1088. //불출결과저장 일때는 바코드 2장 출력하기 위해..저장플래그 셋팅
  1089. if(flag == "save" && i==1){
  1090. model.makeNode("/root/hidden/barcode/barcodeinfo["+ i +"]/flag");
  1091. model.setValue("/root/hidden/barcode/barcodeinfo["+ i +"]/flag", flag);
  1092. }
  1093. }
  1094. var prtkind = model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/prntkind");
  1095. copyNodeType("/root/hidden/barcode/barcodeinfo", "/root/main/barcdprntsetup/prntsetupinfo/setupinfo", "after");
  1096. if( prtkind == "2" || prtkind == "6" || prtkind == "7"){
  1097. var prntinstcd = getUserInfo("dutplceinstcd");
  1098. if(prntinstcd == "017"){ // 임시로 병원코드 하드코딩
  1099. fLisTnsrBarcodePrint3("/root/hidden/barcode/barcodeinfo"); // 빈센트바코드 sato 인데 강남양식으로
  1100. }else{
  1101. fLisTnsrBarcodePrint2("/root/hidden/barcode/barcodeinfo"); // sato 성가버전
  1102. }
  1103. }else if(prtkind == "8"){
  1104. fLisTnsrBarcodePrint4("/root/hidden/barcode/barcodeinfo"); // B472
  1105. }else{
  1106. fLisTnsrBarcodePrint("/root/hidden/barcode/barcodeinfo"); // zebra 강남양식
  1107. }
  1108. }
  1109. //프린터 설정
  1110. function fSetPrint() {
  1111. var count = getNodesetCount("/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
  1112. if(count == 0) {
  1113. model.makeNode("/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
  1114. }
  1115. open("SPLLC90100_바코드프린터설정.xrw", "", "", "", "", "/root/main/barcdprntsetup/prntsetupinfo/setupinfo", "/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
  1116. }
  1117. // 혈액취소 혈액번호 리딩할수있게 표시
  1118. function fSetBloodCancel(){
  1119. if(model.getValue("/root/hidden/cancel/cancelgbn")=="1"){
  1120. if(model.getValue("/root/hidden/ref/deliveryend")=="1"){ // 수혈내역 선택시 ㅁ신청 ㅁ접수 안보이게
  1121. model.setValue("/root/hidden/cancel/acptgbn", "");
  1122. model.setValue("/root/hidden/cancel/prepLog", "");
  1123. checkbox1.disabled = true;
  1124. chk_acptcancel.disabled = true;
  1125. }else{
  1126. checkbox1.disabled = false;
  1127. chk_acptcancel.disabled = false;
  1128. }
  1129. grp_cancel.visible = true;
  1130. //alert("focus전");
  1131. model.setFocus("ipt_cancelblodno");
  1132. //alert("focus후");
  1133. for(i=1; i<grd_prepblood.rows; i++){
  1134. model.makeNode("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/cancel");
  1135. }
  1136. }else{
  1137. fSetCancelBlodEnd(); // 취소할 혈액번호 그룹 닫기
  1138. }
  1139. }
  1140. // 취소할 혈액번호 그룹 닫기
  1141. function fSetCancelBlodEnd(){
  1142. model.setValue("/root/hidden/cancel/cancelgbn", "");
  1143. model.setValue("/root/hidden/cancel/blodno", "");
  1144. model.setValue("/root/hidden/cancel/acptgbn", "");
  1145. grp_cancel.visible = false;
  1146. chk_cancel.refresh();
  1147. chk_acptcancel.refresh();
  1148. }
  1149. // 취소할 혈액번호 리딩시 설정
  1150. function fSetCancelBlodStat(){
  1151. var cancelblodno = model.getValue("/root/hidden/cancel/blodno");
  1152. var preprow = grd_prepblood.findRow(cancelblodno , 1, 2 , true, true);
  1153. //alert("preprow= " +preprow);
  1154. if(preprow > 0){
  1155. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+preprow+"]/blodcomstat") =="5"){
  1156. grd_prepblood.cellStyle("color", preprow, 1, preprow, 9) = "#EE0000"; // 취소할 혈액번호 빨간색 표시
  1157. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+preprow+"]/cancel", "Y");
  1158. grd_prepblood.rebuild();
  1159. }else if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+preprow+"]/blodcomstat") =="4"){
  1160. grd_prepblood.cellStyle("color", preprow, 1, preprow, 9) = "#EE0000"; // 취소할 혈액번호 빨간색 표시
  1161. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+preprow+"]/cancel", "Y");
  1162. grd_prepblood.rebuild();
  1163. }else{
  1164. messageBox("불출 취소 할 수 있는 혈액이 아닙니다. ", "I");
  1165. return;
  1166. }
  1167. }else{
  1168. messageBox("일치하는 혈액번호가 없습니다. ", "I");
  1169. return;
  1170. }
  1171. }
  1172. function fGetPrepBloodDetllist(row){
  1173. chk_deliveryend.select(0);
  1174. //준비혈액내역조회
  1175. var blodbarcd = model.getValue("/root/main/getbloodinfo/getblooddetllist["+grd_detllist.row+"]/blodbarcd");
  1176. var blodcomcd = model.getValue("/root/main/getbloodinfo/getblooddetllist["+grd_detllist.row+"]/blodcomcd");
  1177. var pid = model.getValue("/root/hidden/ref/pid");
  1178. var prcphopedd = model.getValue("/root/main/getbloodinfo/getblooddetllist["+grd_detllist.row+"]/prcphopedd");
  1179. var iryn = model.getValue("/root/main/getbloodinfo/getblooddetllist["+grd_detllist.row+"]/iryn");
  1180. var prcpgenrflag = model.getValue("/root/main/getbloodinfo/getblooddetllist["+grd_detllist.row+"]/prcpgenrflag");
  1181. var tnsreqacptno = model.getValue("/root/main/getbloodinfo/getblooddetllist["+grd_detllist.row+"]/tnsreqacptno");
  1182. if(iryn == ""){
  1183. iryn = "N";
  1184. }
  1185. model.setValue("/root/send/blodbarcd" ,blodbarcd);
  1186. model.setValue("/root/send/blodcomcd" ,blodcomcd);
  1187. model.setValue("/root/send/pid" ,pid);
  1188. model.setValue("/root/send/prcphopedd" ,prcphopedd);
  1189. model.setValue("/root/send/deliveryend" ,model.getValue("/root/hidden/ref/deliveryend"));
  1190. model.setValue("/root/send/iryn" ,iryn);
  1191. model.setValue("/root/send/iogbn" ,prcpgenrflag);
  1192. model.setValue("/root/send/tnsreqacptno" ,tnsreqacptno);
  1193. submit("TRLBT10408");
  1194. copyNodeType("/root/main/getbloodinfo/getprepblood", "/root/main/temp", "replace");
  1195. grd_prepblood.refresh();
  1196. var count = getNodesetCount("/root/main/getbloodinfo/getprepblood/getprepbloodlist");
  1197. for(i = 1; i <= count; i++) {
  1198. var vali = model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/validt");
  1199. if(vali.substr(8, 6) == "" || vali.substr(8, 4) == "0000") {
  1200. var text = model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/validt") + "235900";
  1201. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/validt", text);
  1202. }
  1203. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodcomstat")=="5"){
  1204. grd_prepblood.cellStyle("color", i, 1, i, 12) = "#999999";
  1205. }
  1206. }
  1207. // 준비혈액맨밑줄보이게
  1208. grd_prepblood.row = (grd_prepblood.rows-1);
  1209. var gridRow = grd_prepblood.rows;
  1210. grd_prepblood.topRow = gridRow;
  1211. //model.setFocus("ipt_blodno");
  1212. }
  1213. // 불출취소
  1214. function fSetDeliveryCancel(){
  1215. var blodnolist = "";
  1216. var acptnolist = "";
  1217. for(i=0; i< grd_prepblood.rows; i++){
  1218. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+ i +"]/cancel")=="Y"){
  1219. if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodcomstat")=="5"){
  1220. blodnolist += model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodno") + "▦" ;
  1221. acptnolist += model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/tnsreqacptno") + "▦" ;
  1222. model.setValue("/root/send/cancelflag", "delivery");
  1223. }else if(model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodcomstat")=="4"){
  1224. /*
  1225. if(model.getValue("/root/hidden/cancel/acptgbn") != "1"){
  1226. var rtn = messageBox("불출대기상태 혈액은 접수취소만 가능합니다. ", "Q003" );
  1227. if(rtn == "7" ){
  1228. return;
  1229. }else if(rtn =="6"){
  1230. model.setValue("/root/hidden/cancel/acptgbn", "1");
  1231. chk_acptcancel.refresh();
  1232. blodnolist += model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodno") + "▦" ;
  1233. model.setValue("/root/send/cancelflag", "deliveryready");
  1234. }
  1235. }else{
  1236. blodnolist += model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodno") + "▦" ;
  1237. }
  1238. */
  1239. if(model.getValue("/root/hidden/cancel/acptgbn")=="1"){
  1240. blodnolist += model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodno") + "▦" ;
  1241. acptnolist += model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/tnsreqacptno") + "▦" ;
  1242. model.setValue("/root/send/cancelflag", "deliveryready");
  1243. }else{
  1244. blodnolist += model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/blodno") + "▦" ;
  1245. acptnolist += model.getValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist["+i+"]/tnsreqacptno") + "▦" ;
  1246. model.setValue("/root/send/cancelflag", "deliveryprep");
  1247. }
  1248. }else{
  1249. messageBox("불출 완료된 혈액만 취소 가능합니다. ", "I");
  1250. return false;
  1251. }
  1252. }
  1253. }
  1254. if(blodnolist==""){
  1255. messageBox("취소할 혈액번호를 입력하십시오. ", "I");
  1256. return false;
  1257. }
  1258. //alert("blodnolist= " +blodnolist);
  1259. model.setValue("/root/send/blodnolist", blodnolist);
  1260. model.setValue("/root/send/acptnolist", acptnolist);
  1261. //model.setValue("/root/send/pid", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/pid"));
  1262. model.setValue("/root/send/pid", model.getValue("/root/hidden/ref/pid"));
  1263. model.setValue("/root/send/tnsreqacptno", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/tnsreqacptno"));
  1264. model.setValue("/root/send/blodcomcd", model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/blodcomcd"));
  1265. model.setValue("/root/send/gbn", model.getValue("/root/hidden/cancel/acptgbn")); // 1=접수취소 else 불출취소
  1266. //model.setValue("/root/send/cancelflag", "delivery");
  1267. model.setValue("/root/send/preplog", model.getValue("/root/hidden/cancel/prepLog"));
  1268. if(model.getValue("/root/hidden/cancel/acptgbn")==""){
  1269. if(model.getValue("/root/hidden/ref/deliveryend") =="1"){
  1270. var rtn = messageBox("불출대기로 " , "Q004"); //불출대기로 전환 하시겠습니까?
  1271. if(rtn == "7" ){
  1272. return;
  1273. }
  1274. }else{
  1275. var rtn = messageBox("준비취소로 " , "Q004"); //불출대기로 전환 하시겠습니까?
  1276. if(rtn == "7" ){
  1277. return;
  1278. }
  1279. }
  1280. }else{
  1281. var rtn = messageBox("접수취소로 " , "Q004"); //접수취소로 전환 하시겠습니까?
  1282. if(rtn == "7" ){
  1283. return;
  1284. }
  1285. }
  1286. if(submit("TXLLB00101")==true){
  1287. model.setValue("/root/hidden/cancel/blodno", ""); // 혈액번호 지우기
  1288. model.setValue("/root/hidden/cancel/acptgbn", ""); // 접수취소 체크없애기
  1289. model.setValue("/root/hidden/cancel/prepLog", ""); // 신청취소 체크없애기
  1290. fGetBloodPrcpList("pid");
  1291. }
  1292. }
  1293. //BMT 실시 정보
  1294. function fGetBMTInfo(gbn){
  1295. //--------------------------------------------------------------------
  1296. // BMT 실시 정보
  1297. model.setValue("/root/send/pid" , model.getValue("/root/main/getblodprcplist["+grd_prcplist.row+"]/pid"));
  1298. model.setValue("/root/send/bmtsearchgbn" , gbn);
  1299. if(gbn == "info"){
  1300. submit("TRLBT10209");
  1301. }else if(gbn == "list"){
  1302. submit("TRLBT10210");
  1303. grp_bmtinfo.visible = true;
  1304. }
  1305. }
  1306. // 환자별 comment 행추가
  1307. function fSetCmtAdd(){
  1308. grd_comment.addRow();
  1309. grd_comment.rowStatus(0) = 1;
  1310. }
  1311. // comment 삭제 - 바로삭제 이력관리 안함
  1312. function fCmtDel(){
  1313. //grd_comment.deleteRow(grd_comment.row);
  1314. grd_comment.rowStatus(grd_comment.row) = 4;
  1315. var cmt = grd_comment.getUpdateData();
  1316. var pid = model.getValue("/root/main/getbloodinfo/getpatinfo/pid");
  1317. model.setValue("/root/send/pid", pid);
  1318. model.setValue("/root/send/cmt", cmt);
  1319. submit("TXLBT10303");
  1320. fGetDeliveryInfo(grd_prcplist.row);
  1321. }
  1322. // comment 저장
  1323. function fCmtSave(){
  1324. var cmt = grd_comment.getUpdateData();
  1325. var pid = model.getValue("/root/main/getbloodinfo/getpatinfo/pid");
  1326. model.setValue("/root/send/pid", pid);
  1327. model.setValue("/root/send/cmt", cmt);
  1328. submit("TXLBT10303");
  1329. fGetDeliveryInfo(grd_prcplist.row);
  1330. }
  1331. ]]>
  1332. </script>
  1333. </xhtml:head>
  1334. <xhtml:body guideline="1,300;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  1335. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
  1336. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:199px; height:13px; ">혈액불출관리</caption>
  1337. </group>
  1338. <group id="grp_biz" scroll="auto" style="left:0px; top:40px; width:1195px; height:744px; ">
  1339. <group id="grp_sea" style="left:0px; top:10px; width:1194px; height:35px; vertical-align:top; ">
  1340. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1194px; height:35px; "/>
  1341. <line id="line13" class="line_4" style="x1:1108px; y1:7px; x2:1108px; y2:29px; "/>
  1342. <caption id="caption16" class="search_name" style="left:567px; top:9px; width:88px; height:17px; ">등록번호 :</caption>
  1343. <caption id="caption8" class="search_name" style="left:290px; top:9px; width:74px; height:17px; ">수령자 :</caption>
  1344. <caption id="caption9" class="search_name" style="left:794px; top:9px; width:86px; height:17px; ">혈액번호 :</caption>
  1345. <caption id="caption2" class="search_name" style="left:16px; top:9px; width:74px; height:17px; ">불출자 :</caption>
  1346. <output id="input2" ref="/root/main/getUsernm/usernm" class="output_search" appearance="output" style="left:175px; top:8px; width:80px; height:19px; "/>
  1347. <output id="input3" ref="/root/main/getuserAnm/acceptnm" class="output_search" appearance="output" style="left:449px; top:8px; width:80px; height:19px; "/>
  1348. <button id="btn_ref" class="btn1_letter2" style="left:1123px; top:7px; width:56px; height:22px; ">
  1349. <caption>조회</caption>
  1350. <script type="javascript" ev:event="DOMActivate">
  1351. <![CDATA[
  1352. fGetBloodPrcpList("btn");
  1353. ]]>
  1354. </script>
  1355. </button>
  1356. <input id="ipt_pid" ref="/root/hidden/ref/pid" class="input_button" inputtype="button" style="left:657px; top:8px; width:100px; height:19px; "/>
  1357. <input id="ipt_blodno" ref="/root/hidden/ref/blodno" class="input_button" inputtype="button" style="left:885px; top:8px; width:100px; height:19px; "/>
  1358. <input id="ipt_accept" ref="/root/hidden/ref/acceptid" class="input_button" inputtype="button" appearance="input" style="left:367px; top:8px; width:80px; height:19px; "/>
  1359. <input id="ipt_delivery" ref="/root/hidden/ref/deliveryid" class="input_button" inputtype="button" appearance="input" style="left:93px; top:8px; width:80px; height:19px; "/>
  1360. </group>
  1361. <line id="line10" class="line_1" style="x1:0px; y1:70px; x2:640px; y2:70px; "/>
  1362. <line id="line12" class="line_1" style="x1:0px; y1:517px; x2:640px; y2:517px; "/>
  1363. <caption id="caption32" class="tit_2" style="left:5px; top:55px; width:131px; height:14px; ">불출대기 리스트</caption>
  1364. <caption id="caption7" class="tit_2" style="left:5px; top:502px; width:70px; height:3px; ">수혈내역</caption>
  1365. <line id="line11" class="line_2" style="x1:645px; y1:137px; x2:1194px; y2:137px; "/>
  1366. <line id="line15" class="line_1" style="x1:645px; y1:70px; x2:1194px; y2:70px; "/>
  1367. <caption id="caption14" class="tit_2" style="left:650px; top:55px; width:70px; height:13px; ">환자정보</caption>
  1368. <caption id="caption17" class="tit_2" style="left:650px; top:171px; width:70px; height:13px; ">혈액정보</caption>
  1369. <caption id="caption15" class="tit_2" style="left:650px; top:399px; width:136px; height:13px; ">준비혈액내역</caption>
  1370. <line id="line2" class="line_1" style="x1:645px; y1:414px; x2:1194px; y2:414px; "/>
  1371. <line id="line3" class="line_1" style="x1:645px; y1:186px; x2:1194px; y2:186px; "/>
  1372. <line id="line7" class="line_3" style="x1:645px; y1:292px; x2:1194px; y2:292px; "/>
  1373. <output id="opt_pid" ref="/root/main/getbloodinfo/getpatinfo/pid" class="font_pid" style="left:645px; top:75px; width:300px; height:65px; text-align:left; "/>
  1374. <output id="opt_patnm" ref="/root/main/getbloodinfo/getpatinfo/patnm" class="font_pid" style="left:948px; top:75px; width:245px; height:65px; text-align:left; "/>
  1375. <datagrid id="grd_prcplist" nodeset="/root/main/getblodprcplist" caption="등록번호^환자명^처방^Type^I^수량^E^예약일자^유효기간여부^tnsreqacptdt^h^acptno^comcd^prcpgenrflag^blodcomstat^abrnblodyn^validtyn" colsep="^" colwidth="80, 90, 160, 40, 30, 35, 30, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0" dataheight="23" defaultrows="1" ellipsis="true" explorerbar="sortshow" fixedcols="0" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" style="left:0px; top:75px; width:640px; height:420px; font-weight:bold; ">
  1376. <col ref="pid" style="text-align:center; "/>
  1377. <col ref="patnm" format="yyyy-mm-dd" style="text-align:center; "/>
  1378. <col ref="tclsscrnm" format="yyyy-mm-dd hh:nn"/>
  1379. <col ref="abo" style="text-align:center; "/>
  1380. <col ref="iryn" type="output" style="font-weight:bold; color:#ff0000; text-align:center; "/>
  1381. <col ref="no" style="text-align:center; "/>
  1382. <col checkvalue="Y,N" disabled="true" ref="erprcpflag" type="checkbox"/>
  1383. <col ref="prcphopedd" format="yyyy-mm-dd hh:nn" style="text-align:left; "/>
  1384. <col ref="validtyn"/>
  1385. <col ref="tnsreqacptdt"/>
  1386. <col ref="h"/>
  1387. <col ref="tnsreqacptno"/>
  1388. <col ref="blodcomcd"/>
  1389. <col ref="prcpgenrflag"/>
  1390. <col ref="blodcomstat"/>
  1391. <col ref="abrnblodyn"/>
  1392. <col ref="validtyn"/>
  1393. <script type="javascript" ev:event="onclick">
  1394. <![CDATA[
  1395. if(grd_prcplist.isCell(event.target) && grd_prcplist.row >= grd_prcplist.fixedRows){
  1396. fGetDeliveryInfo(grd_prcplist.row);
  1397. }
  1398. ]]>
  1399. </script>
  1400. <script type="javascript" ev:event="onaftersort">
  1401. <![CDATA[
  1402. grd_prcplist.gridToInstance();
  1403. ]]>
  1404. </script>
  1405. </datagrid>
  1406. <datagrid id="grd_detllist" nodeset="/root/main/getbloodinfo/getblooddetllist" caption="처방일자^혈액성분^Type^I^처방수량^준비수량^혈액성분코드^blodbarcd^prcpgenrflag^tnsreqacptno" colsep="^" colwidth="119, 199, 75, 30, 92, 79, 0, 0, 0,0" dataheight="23" defaultrows="1" ellipsis="true" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:0px; top:522px; width:640px; height:133px; ">
  1407. <col ref="prcphopedd" format="yyyy-mm-dd"/>
  1408. <col ref="blodcomnm"/>
  1409. <col ref="aborh"/>
  1410. <col ref="iryn" type="output" style="font-weight:bold; color:#ff0000; text-align:center; "/>
  1411. <col ref="reqqty"/>
  1412. <col ref="cno"/>
  1413. <col ref="blodcomcd"/>
  1414. <col ref="blodbarcd"/>
  1415. <col ref="prcpgenrflag"/>
  1416. <col ref="tnsreqacptno"/>
  1417. <script type="javascript" ev:event="onclick">
  1418. <![CDATA[
  1419. //수혈내역 클릭하면 준비혈액내역 조회
  1420. //datagrid click or dbclick 시점에 현재 click target이 data 영역인지 check
  1421. if(isDataCell("grd_detllist")){
  1422. fGetPrepBloodDetllist(grd_detllist.row);
  1423. }
  1424. ]]>
  1425. </script>
  1426. <script type="javascript" ev:event="onaftersort">
  1427. <![CDATA[
  1428. grd_detllist.gridToInstance();
  1429. ]]>
  1430. </script>
  1431. </datagrid>
  1432. <datagrid id="grd_prepblood" nodeset="/root/main/getbloodinfo/getprepblood/getprepbloodlist" caption="No^혈액번호^혈액성분^혈액형^I^유효일시^불출자^불출일자^검사자^적합^CS^검사일자^Comment^교차시험처방예외^요청서출력^cancel^chk^접수일련번호^혈액바코드^성분제제코드^caption1" colsep="^" colwidth="50, 80, 110, 45, 30, 120, 70, 100, 70, 59, 30, 100, 70, 120, 80, 0, 0, 0, 0, 0, 0, 0, 0" dataheight="23" defaultrows="1" ellipsis="true" explorerbar="sortshow" frozencols="3" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" tooptip="true" style="left:645px; top:420px; width:549px; height:320px; font-weight:bold; ">
  1433. <col ref="pno"/>
  1434. <col ref="blodno" type="input"/>
  1435. <col ref="blodcomnm"/>
  1436. <col ref="abo"/>
  1437. <col ref="iryn" type="output" style="font-weight:bold; color:#ff0000; text-align:center; "/>
  1438. <col ref="validt" format="yyyy-mm-dd hh:nn"/>
  1439. <col ref="execid"/>
  1440. <col ref="execdt" format="yyyy-mm-dd"/>
  1441. <col ref="testid"/>
  1442. <col disabled="true" ref="rslt" type="combo">
  1443. <choices>
  1444. <item>
  1445. <label>적합</label>
  1446. <value>1</value>
  1447. </item>
  1448. <item>
  1449. <label>부적합</label>
  1450. <value>2</value>
  1451. </item>
  1452. <item>
  1453. <label>적합(응급)</label>
  1454. <value>3</value>
  1455. </item>
  1456. <item>
  1457. <label>준비</label>
  1458. <value>4</value>
  1459. </item>
  1460. <item>
  1461. <label>검사중</label>
  1462. <value>5</value>
  1463. </item>
  1464. <item>
  1465. <label>보류</label>
  1466. <value>6</value>
  1467. </item>
  1468. <item>
  1469. <label>최소적합</label>
  1470. <value>7</value>
  1471. </item>
  1472. </choices>
  1473. </col>
  1474. <col checkvalue="Y,N" disabled="true" ref="cs" type="checkbox"/>
  1475. <col ref="testdt" format="yyyy-mm-dd"/>
  1476. <col ref="blodcmt" type="input"/>
  1477. <col checkvalue="Y,N" disabled="true" ref="crossprcpyn" type="checkbox"/>
  1478. <col checkvalue="true,false" ref="prntyn" type="checkbox"/>
  1479. <col checkvalue="Y,N" ref="cancel" type="checkbox"/>
  1480. <col checkvalue="Y,N" ref="chk" type="checkbox"/>
  1481. <col ref="tnsreqacptno"/>
  1482. <col ref="blodbarcd"/>
  1483. <col ref="blodcomcd"/>
  1484. <col ref="bftestno"/>
  1485. <col ref="donflag"/>
  1486. <col ref="execprcpuniqno"/>
  1487. <script type="javascript" ev:event="onaftersort">
  1488. <![CDATA[
  1489. grd_prepblood.gridToInstance();
  1490. ]]>
  1491. </script>
  1492. <script type="javascript" ev:event="onclick">
  1493. <![CDATA[
  1494. if(isDataCell("grd_prepblood") && grd_prepblood.col == grd_prepblood.colRef("crossprcpyn")){
  1495. var yn = grd_prepblood.valueMatrix(grd_prepblood.row, grd_prepblood.col);
  1496. for(i = 1; i < grd_prepblood.rows; i++){
  1497. model.setValue("/root/main/getbloodinfo/getprepblood/getprepbloodlist[" + i + "]/crossprcpyn", yn);
  1498. }
  1499. }
  1500. ]]>
  1501. </script>
  1502. </datagrid>
  1503. <output id="opt_abo" ref="/root/main/getbloodinfo/getpatinfo/aborh" class="font_a" style="left:645px; top:216px; width:150px; height:75px; font-size:36pt; word-wrap:word; "/>
  1504. <line id="line4" class="line_2" style="x1:946px; y1:76px; x2:946px; y2:138px; "/>
  1505. <!--<object id="CommAX" visibility="hidden" clsid="{35cc9cfa-e6f8-4b22-b6d2-fe7cd108f943}" style="left:980px; top:40px; width:45px; height:40px; "/>-->
  1506. <output id="opt_date" ref="/root/hidden/ref/today" visibility="hidden" format="yyyy/mm/dd" style="left:870px; top:50px; width:50px; height:19px; "/>
  1507. <output id="opt_time" ref="/root/hidden/ref/datetime" visibility="hidden" format="hh:nn:ss" style="left:925px; top:50px; width:50px; height:19px; "/>
  1508. <datagrid id="grd_lastrslt" nodeset="/root/main/getbloodinfo/getblodinforslt/row" visibility="visible" caption="a^b^c^d^e^f^g^h^i^j^k^l" colsep="^" colwidth="0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0" dataheight="23" defaultrows="2" ellipsis="true" mergecellsfixedrows="bycolrec" rowsep="|" selectionmode="free" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:799px; top:191px; width:395px; height:100px; ">
  1509. <col ref="a1"/>
  1510. <col ref="a2"/>
  1511. <col ref="a3"/>
  1512. <col ref="a4"/>
  1513. <col ref="a5"/>
  1514. <col ref="a6"/>
  1515. <col ref="a7"/>
  1516. <col ref="a8"/>
  1517. <col ref="a9"/>
  1518. <col ref="a10"/>
  1519. <col ref="a11"/>
  1520. <col ref="a12"/>
  1521. <script type="javascript" ev:event="ondblclick">
  1522. <![CDATA[
  1523. if(grd_lastrslt.isCell(event.target) && grd_lastrslt.row >= grd_lastrslt.fixedRows){
  1524. fGetBlodInfoHistory();
  1525. }
  1526. /* var rsltrow = getNodesetCount("/root/main/getbloodinfo/getblodinfolist");
  1527. if(grd_lastrslt.isCell(event.target) && grd_lastrslt.row >= grd_lastrslt.fixedRows){
  1528. var tclsnm = grd_lastrslt.caption;
  1529. var tnm = tclsnm.split("^");
  1530. for(i=0; i< rsltrow; i++){
  1531. if(grd_lastrslt.col == i){
  1532. if(tnm[i] == model.getValue("/root/main/getbloodinfo/getblodinfolist["+(i+1)+"]/tclsnm")){
  1533. model.setValue("/root/send/tclscd", model.getValue("/root/main/getbloodinfo/getblodinfolist["+(i+1)+"]/testcd"));
  1534. model.setValue("/root/send/pid", model.getValue("/root/main/getbloodinfo/getpatinfo/pid"));
  1535. submit("TRLBT10407");
  1536. grp_history.visible = true;
  1537. //fGetBlodInfoHistory();
  1538. }
  1539. }
  1540. }
  1541. }
  1542. */
  1543. ]]>
  1544. </script>
  1545. </datagrid>
  1546. <select id="chk_deliveryend" ref="/root/hidden/ref/deliveryend" visibility="hidden" overflow="visible" appearance="full" style="left:125px; top:54px; width:125px; height:15px; border-style:none; ">
  1547. <choices>
  1548. <item>
  1549. <label>불출완료포함</label>
  1550. <value>1</value>
  1551. </item>
  1552. </choices>
  1553. </select>
  1554. <button id="button2" class="btn2_letter7" style="left:1097px; top:394px; width:97px; height:19px; ">
  1555. <caption>불출라벨재출력</caption>
  1556. <script type="javascript" ev:event="DOMActivate">
  1557. <![CDATA[
  1558. //fExeBarcdPrnt();
  1559. fExeBarcdPrnt("re");
  1560. ]]>
  1561. </script>
  1562. </button>
  1563. <select id="chk_cancel" ref="/root/hidden/cancel/cancelgbn" overflow="visible" appearance="full" style="left:751px; top:398px; width:55px; height:15px; border-style:none; ">
  1564. <choices>
  1565. <item>
  1566. <label>취소</label>
  1567. <value>1</value>
  1568. </item>
  1569. </choices>
  1570. <script type="javascript" ev:event="xforms-value-changed">
  1571. <![CDATA[
  1572. fSetBloodCancel();
  1573. ]]>
  1574. </script>
  1575. </select>
  1576. <output id="output11" ref="/root/main/getBMTInfo/getBMTInfo/trnptdd" class="output_fix" style="left:1114px; top:141px; width:80px; height:19px; "/>
  1577. <output id="output13" ref="/root/main/getBMTInfo/getBMTInfo/btype" class="output_fix" style="left:912px; top:141px; width:60px; height:19px; "/>
  1578. <caption id="caption10" class="cell_1" style="left:1076px; top:139px; width:35px; height:23px; vertical-align:middle; ">일시</caption>
  1579. <caption id="caption11" class="cell_1" style="left:975px; top:139px; width:35px; height:23px; vertical-align:middle; ">Do</caption>
  1580. <output id="output2" ref="/root/main/getbloodinfo/getpatinfo/rstno" class="output_fix" style="left:733px; top:141px; width:95px; height:19px; "/>
  1581. <caption id="caption3" class="cell_1" style="left:645px; top:139px; width:85px; height:23px; vertical-align:middle; ">주민등록번호</caption>
  1582. <caption id="caption18" class="cell_1" style="left:874px; top:139px; width:35px; height:23px; vertical-align:middle; ">Pt</caption>
  1583. <output id="output3" ref="/root/main/getBMTInfo/getBMTInfo/dnorbtype" class="output_fix" style="left:1013px; top:141px; width:60px; height:19px; "/>
  1584. <line id="line1" class="line_3" style="x1:645px; y1:161px; x2:1194px; y2:161px; "/>
  1585. <caption id="caption12" class="cell_1" style="left:645px; top:191px; width:150px; height:23px; vertical-align:middle; ">환자혈액형</caption>
  1586. <button id="button8" class="btn2_letter2" style="left:830px; top:140px; width:42px; height:19px; ">
  1587. <caption>BMT</caption>
  1588. <script type="javascript" ev:event="DOMActivate">
  1589. <![CDATA[
  1590. fGetBMTInfo("list");
  1591. ]]>
  1592. </script>
  1593. </button>
  1594. <line id="line8" class="line_1" style="x1:645px; y1:316px; x2:1193px; y2:316px; "/>
  1595. <button id="button3" class="btn2_letter3" style="left:1095px; top:296px; width:53px; height:19px; ">
  1596. <caption>행삭제</caption>
  1597. <script type="javascript" ev:event="DOMActivate">
  1598. <![CDATA[
  1599. fCmtDel();
  1600. ]]>
  1601. </script>
  1602. </button>
  1603. <datagrid id="grd_comment" nodeset="/root/main/getbloodinfo/getpatcmt" caption="등록일자^Comment" colsep="^" colwidth="119, 390" dataheight="23" defaultrows="1" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" style="left:645px; top:321px; width:548px; height:71px; ">
  1604. <col ref="rgstdt" format="yyyy-mm-dd hh:nn"/>
  1605. <col editmode="input" ref="patcmt" type="combo">
  1606. <choices>
  1607. <itemset nodeset="/root/init/LB0122">
  1608. <label ref="nm"/>
  1609. <value ref="nm"/>
  1610. </itemset>
  1611. </choices>
  1612. </col>
  1613. </datagrid>
  1614. <caption id="caption13" class="tit_2" style="left:650px; top:301px; width:139px; height:13px; ">환자별 Comment</caption>
  1615. <button id="button4" class="btn2_letter2" style="left:1151px; top:296px; width:42px; height:19px; ">
  1616. <caption>저장</caption>
  1617. <script type="javascript" ev:event="DOMActivate">
  1618. <![CDATA[
  1619. fCmtSave();
  1620. ]]>
  1621. </script>
  1622. </button>
  1623. <button id="btn_addrow" class="btn2_letter3" style="left:1039px; top:296px; width:53px; height:19px; ">
  1624. <caption>행추가</caption>
  1625. <script type="javascript" ev:event="DOMActivate">
  1626. <![CDATA[
  1627. fSetCmtAdd();
  1628. ]]>
  1629. </script>
  1630. </button>
  1631. <group id="grp_bmtinfo" visibility="hidden" style="left:865px; top:190px; width:330px; height:215px; border-color:#5abaff; border-width:1px; border-style:solid; ">
  1632. <datagrid id="grd_bmtinfo" nodeset="/root/main/getBMTInfo/getBMTInfoList" caption="이식전 btype^공여자 btype^이식일자^차수" colsep="^" colwidth="100, 80, 80, 40" mergecellsfixedrows="bycolrec" rowsep="|" style="left:0px; top:0px; width:324px; height:190px; ">
  1633. <col ref="btype"/>
  1634. <col ref="dnorbtype"/>
  1635. <col ref="trnptdd" format="yyyy-mm-dd"/>
  1636. <col ref="trnptdg"/>
  1637. </datagrid>
  1638. <button id="button7" class="btn2_letter2" style="left:280px; top:191px; width:42px; height:19px; ">
  1639. <caption>닫기</caption>
  1640. <script type="javascript" ev:event="DOMActivate">
  1641. <![CDATA[
  1642. grp_bmtinfo.visible = false;
  1643. ]]>
  1644. </script>
  1645. </button>
  1646. </group>
  1647. <group id="grp_history" visibility="hidden" style="left:980px; top:215px; width:212px; height:189px; border-color:#5abaff; border-width:1px; border-style:solid; ">
  1648. <datagrid id="datagrid1" nodeset="/root/main/getbloodinfo/blodrslthistory" caption="일자^결과" colsep="^" colwidth="100, 90" mergecellsfixedrows="bycolrec" rowsep="|" style="left:0px; top:-1px; width:210px; height:163px; ">
  1649. <col ref="rsltdt" format="yyyy-mm-dd"/>
  1650. <col ref="rslt"/>
  1651. </datagrid>
  1652. <button id="button1" class="btn2_letter2" style="left:167px; top:166px; width:42px; height:19px; ">
  1653. <caption>닫기</caption>
  1654. <script type="javascript" ev:event="DOMActivate">
  1655. <![CDATA[
  1656. grp_history.visible = false;
  1657. ]]>
  1658. </script>
  1659. </button>
  1660. </group>
  1661. <group id="grp_cancel" visibility="hidden" style="left:805px; top:335px; width:204px; height:75px; border-color:#5abaff; border-style:solid; ">
  1662. <caption id="caption5" class="cell_1" style="left:4px; top:24px; width:70px; height:23px; vertical-align:middle; ">혈액번호</caption>
  1663. <caption id="caption1" class="tit_2" style="left:4px; top:4px; width:169px; height:13px; ">취소할 혈액번호 입력</caption>
  1664. <line id="line5" class="line_1" style="x1:4px; y1:19px; x2:197px; y2:19px; "/>
  1665. <line id="line6" class="line_3" style="x1:4px; y1:46px; x2:197px; y2:46px; "/>
  1666. <button id="btn_cancel" class="btn2_letter2" style="left:110px; top:49px; width:42px; height:19px; ">
  1667. <caption>취소</caption>
  1668. <script type="javascript" ev:event="DOMActivate">
  1669. <![CDATA[
  1670. fSetDeliveryCancel();
  1671. ]]>
  1672. </script>
  1673. </button>
  1674. <input id="ipt_cancelblodno" ref="/root/hidden/cancel/blodno" class="input_button" inputtype="button" style="left:77px; top:25px; width:120px; height:19px; "/>
  1675. <select id="chk_acptcancel" ref="/root/hidden/cancel/acptgbn" overflow="visible" appearance="full" style="left:62px; top:51px; width:45px; height:15px; border-style:none; ">
  1676. <choices>
  1677. <item>
  1678. <label>접수</label>
  1679. <value>1</value>
  1680. </item>
  1681. </choices>
  1682. </select>
  1683. <button id="btn_close" class="btn2_letter2" style="left:155px; top:49px; width:42px; height:19px; ">
  1684. <caption>닫기</caption>
  1685. <script type="javascript" ev:event="DOMActivate">
  1686. <![CDATA[
  1687. fSetCancelBlodEnd();
  1688. ]]>
  1689. </script>
  1690. </button>
  1691. <select id="checkbox1" ref="/root/hidden/cancel/prepLog" disabled="false" visibility="hidden" overflow="visible" appearance="full" style="left:7px; top:51px; width:45px; height:15px; border-style:none; ">
  1692. <choices>
  1693. <item>
  1694. <label>신청</label>
  1695. <value>1</value>
  1696. </item>
  1697. </choices>
  1698. </select>
  1699. </group>
  1700. <caption id="caption19" class="tit_2" style="left:5px; top:661px; width:107px; height:13px; ">의사 전달사항</caption>
  1701. <line id="line9" class="line_1" style="x1:0px; y1:676px; x2:640px; y2:676px; "/>
  1702. <textarea id="tar_prcpremfact" ref="/root/hidden/prcpremfact" style="left:0px; top:681px; width:640px; height:59px; font-weight:bold; color:#ff0000; "/>
  1703. </group>
  1704. <group id="grp_btn" style="left:0px; top:13px; width:1195px; height:27px; ">
  1705. <line id="line32" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  1706. <button id="btn_save" class="btn4_letter4" style="left:1044px; top:3px; width:80px; height:22px; ">
  1707. <caption>결과저장</caption>
  1708. <script type="javascript" ev:event="DOMActivate">
  1709. <![CDATA[
  1710. fExeBlodDelivery();
  1711. ]]>
  1712. </script>
  1713. </button>
  1714. <button id="btn_clear" class="btn4_letter3" style="left:1127px; top:3px; width:68px; height:22px; ">
  1715. <caption>초기화</caption>
  1716. <script type="javascript" ev:event="onclick">
  1717. <![CDATA[
  1718. fSetInit();
  1719. ]]>
  1720. </script>
  1721. </button>
  1722. <button id="btn_prnt" class="btn3_letter5" navindex="18" style="left:0px; top:3px; width:92px; height:22px; ">
  1723. <caption>프린터설정</caption>
  1724. <script type="javascript" ev:event="DOMActivate">
  1725. <![CDATA[
  1726. // 프린터 설정
  1727. fSetPrint();
  1728. ]]>
  1729. </script>
  1730. </button>
  1731. <!--
  1732. <button id="btn_bcdprnt" class="btn4_letter6" style="left:937px; top:3px; width:104px; height:22px; ">
  1733. <caption>바코드재출력</caption>
  1734. <script type="javascript" ev:event="DOMActivate">
  1735. <![CDATA[
  1736. fExeBarcdPrnt("re");
  1737. ]]>
  1738. </script>
  1739. </button>
  1740. -->
  1741. </group>
  1742. <script type="javascript" ev:event="onkeypress">
  1743. <![CDATA[
  1744. fKeyEvent();
  1745. ]]>
  1746. </script>
  1747. <group id="Group_idChk" style="left:466px; top:240px; width:280px; height:165px; background-color:#ff99cc; border-color:#5abaff; border-width:1px; border-style:solid; ">
  1748. <caption id="caption4" style="left:19px; top:19px; width:249px; height:70px; font-size:18pt; font-weight:bold; ">불출자를 입력하세요</caption>
  1749. <textarea id="ID_txt" overflow="hidden" style="left:34px; top:89px; width:195px; height:55px; font-size:22pt; ">
  1750. <script type="javascript" ev:event="onkeypress">
  1751. <![CDATA[
  1752. if(event.keyCode == "13"){
  1753. var I_txt = ID_txt.currentText;
  1754. model.setValue("/root/hidden/ref/deliveryid", (I_txt).toUpperCase());
  1755. model.setValue("/root/hidden/ref/deliveryid", model.getvalue("/root/hidden/ref/deliveryid").replace("\n", ""));
  1756. fGetUsernm("d");
  1757. //model.setFocus("ipt_accept");
  1758. if(model.getValue("/root/main/getUsernm/usernm") == ""){
  1759. }else{
  1760. //model.setFocus("ipt_accept");
  1761. model.setFocus("ipt_blodno");
  1762. ipt_delivery.selBegin = 0;
  1763. ipt_delivery.selEnd = ipt_delivery.currentText.length;
  1764. Group_idChk.visible = false;
  1765. grp_btn.disabled = false;
  1766. }
  1767. }
  1768. ]]>
  1769. </script>
  1770. </textarea>
  1771. <button id="button44" style="left:232px; top:119px; width:42px; height:25px; font-size:8pt; font-weight:bold; color:#003399; text-align:center; background-image:../../../lis\commonweb\images\btn_lis.gif; background-repeat:no-repeat; background-stretch:stretch; ">
  1772. <caption>닫기</caption>
  1773. <script type="javascript" ev:event="onclick">
  1774. <![CDATA[
  1775. Group_idChk.visible = false;
  1776. ]]>
  1777. </script>
  1778. </button>
  1779. </group>
  1780. </xhtml:body>
  1781. </xhtml:html>