SMLOR00100_위탁검사결과보고.xrw 55 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMLOR00200_위탁검사결과관리.xrw
  4. * 설 명 : 위탁검사결과관리
  5. * 설 계 자 : (주)에이씨케이 -
  6. * 작 성 자 : (주)에이씨케이 - 박정은
  7. * 작 성 일 : 2007.07.03
  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/>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <list>
  20. <outerlist>
  21. <workdd/>
  22. <instcd/>
  23. <pid/>
  24. <bcno/>
  25. <patnm/>
  26. <testcd/>
  27. <inptrslt/>
  28. <rsltstat/>
  29. <srvstat/>
  30. <imgyn/>
  31. <imgnm/>
  32. <rkey/>
  33. <imgfull/>
  34. <imgwidt/>
  35. <imght/>
  36. <imgrslt/>
  37. <testnm/>
  38. <imgtrue/>
  39. <descrslt/>
  40. </outerlist>
  41. </list>
  42. <list2>
  43. <outerlist>
  44. <chk/>
  45. <workdd/>
  46. <instcd/>
  47. <pid/>
  48. <bcno/>
  49. <patnm/>
  50. <testcd/>
  51. <inptrslt/>
  52. <rsltstat/>
  53. <srvstat/>
  54. <imgyn/>
  55. <imgnm/>
  56. <rkey/>
  57. <imgfull/>
  58. <imgwidt/>
  59. <imght/>
  60. <imgrslt/>
  61. <testnm/>
  62. <imgtrue/>
  63. <descrslt/>
  64. </outerlist>
  65. </list2>
  66. <msglist>
  67. <msg/>
  68. </msglist>
  69. <view>
  70. <imgnm/>
  71. <imgrslt/>
  72. <imgwidt/>
  73. <imght/>
  74. <rsltseqno/>
  75. <savdelflag>1</savdelflag>
  76. </view>
  77. </main>
  78. <send>
  79. <attach>
  80. <file/>
  81. <bcno/>
  82. <rsltstat/>
  83. <imght/>
  84. <imgwidt/>
  85. <testcd/>
  86. <imgrslt/>
  87. </attach>
  88. <codeflag/>
  89. <outerrslt>
  90. </outerrslt>
  91. <data3/>
  92. <bcnolist/>
  93. <testcdlist/>
  94. <cnfmdata/>
  95. <refparam/>
  96. <savegbn/>
  97. <deptflag/>
  98. <data2/>
  99. <testlist/>
  100. </send>
  101. <init>
  102. </init>
  103. <hidden>
  104. <filename/>
  105. <imgname/>
  106. <cnfmlist>
  107. <bcno/>
  108. <testcd/>
  109. <rsltstat/>
  110. <rkey/>
  111. </cnfmlist>
  112. <ResultFlag>
  113. <error/>
  114. </ResultFlag>
  115. <cmt>
  116. <cd>00</cd>
  117. <cnts/>
  118. </cmt>
  119. <tclslist>
  120. <tclscd/>
  121. <tclsnm/>
  122. <tclsabbrnm/>
  123. </tclslist>
  124. <refparam>
  125. <startdd/>
  126. <enddd/>
  127. <sectcd/>
  128. <tsectcd/>
  129. <rstflag>0</rstflag>
  130. <extrcd/>
  131. </refparam>
  132. <rsltstat2/>
  133. <spcltestinfo>
  134. <bcno/>
  135. <testcd/>
  136. <spccd/>
  137. <tclscd/>
  138. <pid/>
  139. <rsltstat/>
  140. </spcltestinfo>
  141. </hidden>
  142. </root>
  143. </instance>
  144. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  145. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  146. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  147. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  148. <script type="javascript" ev:event="xforms-ready">
  149. <![CDATA[
  150. //grd_outer.deleteRow(1, false);
  151. /////grd_outer.removeRow();
  152. grd_outer2.fixedcellcheckbox(0,1) = true; // 전체체크박스 만들기
  153. //grd_outer2.fixedcellischeck(0,1) = true; // 전체체크박스에 체크표시
  154. //model.removeNodeset("/root/main/outerlist");
  155. model.removeNodeset("/root/main/list/outerlist");
  156. model.removeNodeset("/root/main/list2/outerlist");
  157. model.removeNodeset("/root/hidden/cnfmlist");
  158. grd_attach.removeRow();
  159. model.resetInstanceNode("/root/send");
  160. // 초기정보 조회
  161. model.setValue("/root/send/codeflag", "0210|0111|0106|0000|0110|"); //0210 소견코드 0111 시행부서 0106 상세시행부서 0110 위탁기관
  162. submit("TRLZZ00101");
  163. model.makeValue("/root/send/basecdid", model.getValue("/root/init/LB0000/nm"));
  164. model.setValue("/root/send/codeflag", "0134|"); // 0134 외부기관 핵의학구분
  165. submit("TRLZZ00101");
  166. model.setValue("/root/hidden/refparam/startdd", getCurrentDate());
  167. model.setValue("/root/hidden/refparam/enddd", getCurrentDate());
  168. model.setValue("/root/hidden/refparam/sectcd", "X");
  169. combo4.choices.itemset.attribute("nodeset") = "/root/init/LB0106[cd= '00' or etc01='"+ "X" +"']";
  170. model.setvalue("/root/hidden/refparam/tsectcd" , "00");
  171. combo4.disabled = false;
  172. model.refresh();
  173. ]]>
  174. </script>
  175. <!-- 기초코드 조회-->
  176. <submission id="TRLZZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/LB0210"/>
  177. <submission id="TXLOR00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden/ResultFlag"/>
  178. <submission id="TRLOR00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden/cnfmlist"/>
  179. <submission id="TXTSS00201" mediatype="multipart/form-data" method="form-data-post" ref="/root/send"/>
  180. <submission id="TXLOR00202" mediatype="multipart/form-data" method="form-data-post" ref="/root/send/attach"/>
  181. <submission id="TRLOR00202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden/tclslist"/>
  182. <submission id="TRLOR00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/list2/outerlist"/>
  183. </model>
  184. <script type="javascript">
  185. <![CDATA[
  186. // 파일 가져오기
  187. //2010-03-18 박정은 수정 변경요청번호 3430 체크박스 표시되도록
  188. function fGetFileName(){
  189. var fileName = window.fileDialog("open", ",", false, "", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls|CSV Files(*.csv)|*.csv");
  190. if (fileName == "" || fileName == null) {
  191. alert("파일을 선택하세요");
  192. return;
  193. }
  194. model.setValue("/root/hidden/filename", fileName);
  195. opt_file.refresh();
  196. //grd_outer.loadExcel(fileName, 1, true);
  197. grd_outer.loadExcel(fileName); // 엑셀파일 그리드로 가져오기
  198. grd_outer.deleteRow(1);
  199. grd_outer.refresh();
  200. if(grd_outer.rows < 1){
  201. alert("입력할 데이터가 없습니다. 엑셀파일을 확인하세요 ");
  202. return;
  203. }
  204. // 검사명 조회하기
  205. //if(grd_outer.rows > 1){
  206. var bcnolist = "";
  207. var tclscdlist = "";
  208. for(j=1; j<grd_outer.rows; j++){
  209. bcnolist += "'" + model.getValue("/root/main/list/outerlist["+j+"]/bcno") + "'" + ",";
  210. tclscdlist += "'" + model.getValue("/root/main/list/outerlist["+j+"]/testcd") + "'" + ",";
  211. //요셉
  212. //model.setValue("/root/main/list/outerlist["+j+"]/descrslt" , model.getValue("/root/main/list/outerlist["+j+"]/descrslt").replace("<", "〈").replace(">", "〉"));
  213. }
  214. model.setValue("/root/send/bcnolist", bcnolist.substr(0, (bcnolist.length-1)) );
  215. model.setValue("/root/send/testcdlist", tclscdlist.substr(0, (tclscdlist.length-1)) );
  216. submit("TRLOR00202");
  217. ///for(q=1; q< grd_outer.rows; q++){
  218. // var tcd = model.getValue("/root/main/list/outerlist["+q+"]/testcd").getTrim()
  219. // model.setValue("/root/main/list/outerlist["+q+"]/testnm", model.getValue("/root/hidden/tclslist[testcd="+tcd+"]/tclsnm"));
  220. //}
  221. /*
  222. var tclsrow = getNodesetCount("/root/hidden/tclslist");
  223. for(j= 1; j<=tclsrow; j++){
  224. for(k=1; k<grd_outer.rows; k++){
  225. if(model.getValue("/root/hidden/tclslist["+j+"]/testcd")==model.getValue("/root/main/list/outerlist["+k+"]/testcd")){
  226. model.setValue("/root/main/list/outerlist["+k+"]/testnm", model.getValue("/root/hidden/tclslist["+j+"]/tclsnm"));
  227. model.setValue("/root/main/list/outerlist["+k+"]/tclscd", model.getValue("/root/hidden/tclslist["+j+"]/tclscd"));
  228. model.setValue("/root/main/list/outerlist["+k+"]/spccd", model.getValue("/root/hidden/tclslist["+j+"]/spccd"));
  229. }
  230. }
  231. }
  232. */
  233. //} // grd_outer.rows > 1
  234. /* for(i=1; i<grd_outer.rows; i++){
  235. var tcd = model.getValue("/root/main/list/outerlist["+i+"]/testcd").getTrim();
  236. model.setValue("/root/main/list/outerlist["+i+"]/testnm", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/tclsnm"));
  237. model.setValue("/root/main/list/outerlist["+i+"]/tclscd", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/tclscd"));
  238. model.setValue("/root/main/list/outerlist["+i+"]/spccd", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/spccd"));
  239. model.setValue("/root/main/list/outerlist["+i+"]/srvstat", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/rsltstat"));
  240. //grd_outer.rowStatus(i) = 1;
  241. var bcbc = model.getValue("/root/main/list/outerlist["+i+"]/bcno");
  242. var tctc = model.getValue("/root/main/list/outerlist["+i+"]/testcd");
  243. model.setValue("/root/main/list/outerlist["+i+"]/rkey", bcbc + tctc);
  244. grd_outer2.rowStatus(i) = 1;
  245. //grd_outer2.fixedcellischeck(i,1) = true;
  246. }
  247. */
  248. model.copyNode("/root/main/list2", "/root/main/list");
  249. for(j=1; j<grd_outer.rows; j++){
  250. var tcd = model.getValue("/root/main/list/outerlist["+j+"]/testcd");
  251. var sbcno = model.getValue("/root/main/list/outerlist["+j+"]/bcno");
  252. // JJH 2011-03-15
  253. // XML기호 오류료 변환하여 삽입
  254. var vDesc = model.getValue("/root/main/list2/outerlist["+j+"]/descrslt");
  255. //alert( "Befor :" + vDesc );
  256. vDesc = vDesc.setReplaceWord("<" , "〈") ;
  257. vDesc = vDesc.setReplaceWord(">", " 〉");
  258. vDesc = vDesc.setReplaceWord("&", "&");
  259. // vDesc = vDesc.replace("<", "〈");
  260. // vDesc = vDesc.replace(">", "〉");
  261. // vDesc = vDesc.replace("<", "&#60;");
  262. // vDesc = vDesc.replace(">", "&#62;");
  263. //vDesc = vDesc.replace("&", "&");
  264. //alert( "After :" + vDesc);
  265. model.setValue ("/root/main/list2/outerlist["+j+"]/descrslt", vDesc);
  266. model.setValue("/root/main/list2/outerlist["+j+"]/testnm", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/tclsnm"));
  267. model.setValue("/root/main/list2/outerlist["+j+"]/tclscd", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/tclscd"));
  268. model.setValue("/root/main/list2/outerlist["+j+"]/spccd", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/spccd"));
  269. model.setValue("/root/main/list2/outerlist["+j+"]/srvstat", model.getValue("/root/hidden/tclslist[bcno='"+sbcno+"' and testcd='"+ tcd +"']/rsltstat"));
  270. var bcbc = model.getValue("/root/main/list2/outerlist["+j+"]/bcno");
  271. var tctc = model.getValue("/root/main/list2/outerlist["+j+"]/testcd");
  272. model.setValue("/root/main/list2/outerlist["+j+"]/rkey", bcbc + tctc);
  273. model.makeValue("/root/main/list2/outerlist["+j+"]/tclskind", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/tclskind"));
  274. if( (model.getValue("/root/main/list2/outerlist["+j+"]/srvstat") =="4" ) || (model.getValue("/root/main/list2/outerlist["+j+"]/srvstat") =="5" )){ // 최종보고나 수정보고일때
  275. model.makeValue("/root/main/list2/outerlist["+j+"]/chk", "N");
  276. }else{
  277. if(model.getValue("/root/main/list2/outerlist["+j+"]/tclskind")=="1"){
  278. model.makeValue("/root/main/list2/outerlist["+j+"]/chk", "N");
  279. }else{
  280. model.makeValue("/root/main/list2/outerlist["+j+"]/chk", "Y");
  281. }
  282. }
  283. grd_outer2.rowStatus(j) = 1;
  284. }
  285. grd_outer2.refresh();
  286. model.setValue("/root/send/savegbn", "F"); // File로 저장시
  287. }
  288. // 이미지경로 가져오기
  289. function fGetImgPath(){
  290. var folderName = window.folderDialog("");
  291. if (folderName == "" || folderName == null) {
  292. alert("폴더를 선택하세요");
  293. return;
  294. }
  295. //model.setValue("/root/hidden/imgname", folderName + "\\");
  296. model.setValue("/root/hidden/imgname", folderName);
  297. opt_img.refresh();
  298. }
  299. // 이미지 업로드
  300. function fSetImgUpload(){
  301. var vCnt = 0;
  302. var imgPath = new Array();
  303. var maxsize = upload1.attribute("filesize");
  304. for(i=1; i<grd_outer2.rows; i++){
  305. if(model.getValue("/root/main/list2/outerlist["+i+"]/imgyn")=="Y"){
  306. if(model.getValue("/root/main/list2/outerlist["+i+"]/imgnm")!= ""){
  307. var imglennm = model.getValue("/root/main/list2/outerlist["+i+"]/imgnm") + ",";
  308. var imglen = imglennm.split(",");
  309. for(var imgRow = 0 ; imgRow < imglen.length - 1 ; imgRow++){
  310. fChangeImage(model.getValue("/root/hidden/imgname") + "\\" + imglen[imgRow].getTrim());
  311. grd_attach.addRow(); // grd_attach 업로드용 그리드
  312. grd_attach.valueMatrix(grd_attach.rows - 1, 0) = model.getValue("/root/hidden/imgname") + "\\" + model.getValue("/root/main/list2/outerlist["+i+"]/imgnm");
  313. grd_attach.valueMatrix(grd_attach.rows - 1, 1) = model.getValue("/root/main/list2/outerlist["+i+"]/bcno");
  314. grd_attach.valueMatrix(grd_attach.rows - 1, 2) = model.getValue("/root/main/list2/outerlist["+i+"]/testcd");
  315. grd_attach.valueMatrix(grd_attach.rows - 1, 3) = model.getValue("/root/main/list2/outerlist["+i+"]/rsltstat");
  316. //grd_attach.valueMatrix(grd_attach.rows - 1, 4) = "450";
  317. //grd_attach.valueMatrix(grd_attach.rows - 1, 5) = "317";
  318. grd_attach.valueMatrix(grd_attach.rows - 1, 4) = model.getValue("/root/main/view/imght");
  319. grd_attach.valueMatrix(grd_attach.rows - 1, 5) = model.getValue("/root/main/view/imgwidt");
  320. grd_attach.valueMatrix(grd_attach.rows - 1, 6) = model.getValue("/root/main/view/imgrslt");
  321. if (!checkFileSize(upload1)){
  322. grd_attach.removeItem();
  323. messageBox("파일 크기가 최대치("+maxsize+"Byte)를", "E003");
  324. }
  325. }
  326. }
  327. }
  328. }
  329. }
  330. function fChangeImage(imgsrc){ // 이미지 전환
  331. var vimg = imgsrc.getTrim();
  332. var vimg2 = vimg.setReplaceWord("\n" , "");
  333. img2.src = vimg2
  334. //img2.src = model.getValue("/root/hidden/imgname") + "\\" + vimg2;
  335. //이재오 막다 2012 5월 9일 //
  336. //img2.src = imgsrc;
  337. //이재오 막다 2012 5월 9일 //
  338. var data = img2.getbase64data();
  339. var imgSize = getImageSize(imgsrc);
  340. model.setValue("/root/main/view/imgrslt",data,true);
  341. //model.setValue("/root/main/view/imgrslt", data);
  342. // setImageRefInstance("/root/main/view/imgrslt");
  343. if( imgSize.split("^")[0] >= 2500){
  344. model.setValue("/root/main/view/imgwidt", parseInt(imgSize.split("^")[0] * 0.3) );
  345. model.setValue("/root/main/view/imght", parseInt(imgSize.split("^")[1] * 0.3) );
  346. }else if( imgSize.split("^")[0] > 2000 && imgSize.split("^")[0] < 2500){
  347. model.setValue("/root/main/view/imgwidt", parseInt(imgSize.split("^")[0] * 0.4) );
  348. model.setValue("/root/main/view/imght", parseInt(imgSize.split("^")[1] * 0.4) );
  349. }else{
  350. model.setValue("/root/main/view/imgwidt", imgSize.split("^")[0]);
  351. model.setValue("/root/main/view/imght", imgSize.split("^")[1]);
  352. }
  353. model.refresh();
  354. }
  355. // 결과전송
  356. function fExeOuterRslt(){
  357. // 이미지 결과 Y인것 업로드 하기
  358. //fGetImgFile();
  359. for(i=1; i<grd_outer2.rows; i++){
  360. if(model.getValue("/root/main/list2/outerlist["+i+"]/chk")=="Y"){ // 체크된것만 보내기
  361. grd_outer2.rowStatus(i) = 1;
  362. }
  363. }
  364. var grdouter = grd_outer2.getUpdateData();
  365. model.setValue("/root/send/outerrslt", grdouter);
  366. //model.copyNode("/root/send/data3", "/root/hidden/cmt");
  367. fSetImgUpload();
  368. if(submit("TXLOR00201", false)){
  369. //model.removeNodeset("/root/main/outerlist");
  370. //model.resetInstanceNode("/root/main/outerlist");
  371. model.resetInstanceNode("/root/main/list2/outerlist");
  372. model.resetInstanceNode("/root/main/view");
  373. }
  374. //submit("TXLOR00202",false);
  375. model.removeNodeset("/root/send/attach");
  376. model.resetInstanceNode("/root/send");
  377. model.refresh();
  378. }
  379. // 전송확인
  380. function fGetOuterRsltConfirm(){
  381. model.removeNodeset("/root/hidden/cnfmlist");
  382. if(grd_outer2.rows < 2){
  383. //alert("전송확인할 항목이 없습니다.");
  384. messageBox("전송확인할 항목이 ", "I004", "");
  385. return;
  386. }
  387. var keylist = model.getValue("/root/main/list2/outerlist[1]/rkey");
  388. var bcnolist = model.getValue("/root/main/list2/outerlist[1]/bcno");
  389. var testlist = model.getValue("/root/main/list2/outerlist[1]/testcd");
  390. for(i=2; i<grd_outer2.rows; i++ ){
  391. keylist = keylist + "','" + model.getValue("/root/main/list2/outerlist["+i+"]/rkey");
  392. bcnolist = bcnolist + "','" + model.getValue("/root/main/list2/outerlist["+i+"]/bcno");
  393. testlist = testlist + "','" + model.getValue("/root/main/list2/outerlist["+i+"]/testcd");
  394. }
  395. model.setValue("/root/send/cnfmdata", "'" + keylist + "'");
  396. model.setValue("/root/send/bcnolist", "'" + bcnolist + "'");
  397. model.setValue("/root/send/testlist", "'" + testlist + "'");
  398. //alert("aaa= " + model.getValue("/root/send/cnfmdata"));
  399. if(submit("TRLOR00201")){
  400. var refRow = getNodesetCount("/root/hidden/cnfmlist");
  401. /*for(j=1; j<=refRow; j++){
  402. for(i=1; i<grd_outer2.rows; i++ ){
  403. if(model.getValue("/root/main/list2/outerlist["+j+"]/rkey")==model.getValue("/root/hidden/cnfmlist["+i+"]/rkey")){
  404. model.setValue("/root/main/list2/outerlist["+i+"]/srvstat", model.getValue("/root/hidden/cnfmlist["+j+"]/rsltstat"));
  405. }
  406. }
  407. }
  408. */
  409. for(j=1; j<grd_outer2.rows; j++){
  410. var tcd = model.getValue("/root/main/list/outerlist["+j+"]/testcd");
  411. var sbcno = model.getValue("/root/main/list/outerlist["+j+"]/bcno");
  412. //model.setValue("/root/main/list2/outerlist["+j+"]/testnm", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/tclsnm"));
  413. //model.setValue("/root/main/list2/outerlist["+j+"]/tclscd", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/tclscd"));
  414. //model.setValue("/root/main/list2/outerlist["+j+"]/spccd", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/spccd"));
  415. model.setValue("/root/main/list2/outerlist["+j+"]/srvstat", model.getValue("/root/hidden/tclslist[bcno='"+sbcno+"' and testcd='"+ tcd +"']/rsltstat"));
  416. //var bcbc = model.getValue("/root/main/list2/outerlist["+j+"]/bcno");
  417. //var tctc = model.getValue("/root/main/list2/outerlist["+j+"]/testcd");
  418. //model.setValue("/root/main/list2/outerlist["+j+"]/rkey", bcbc + tctc);
  419. //model.makeValue("/root/main/list2/outerlist["+j+"]/tclskind", model.getValue("/root/hidden/tclslist[testcd='"+ tcd +"']/tclskind"));
  420. }
  421. }else{
  422. alert("조회오류");
  423. }
  424. }
  425. // 소견콤보 선택시 textarea 로 보여주기
  426. function fSetCmt(){
  427. var cmtcnt = model.getValue("/root/init/LB0210[etc01='X' and cd=" + "'"+cmb_cmt.value+"'" + "]/etc03");
  428. model.setValue("/root/hidden/cmt/cnts", cmtcnt);
  429. tar_cmt.refresh();
  430. }
  431. // 초기화
  432. function fSetReset(){
  433. model.reset();
  434. }
  435. // 엑셀 저장
  436. function fExeExcel(pGridId) {
  437. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  438. if (fileName != "")
  439. {
  440. pGridId.saveExcel(fileName);
  441. }
  442. }
  443. // 이미지 있을때 업로드 하기
  444. function fGetImgFile(){
  445. var maxsize = upload1.attribute("filesize");
  446. //alert("maxsize= " + maxsize);
  447. //files = window.fileDialog("open", "|", true);
  448. //filelist = files.split("|");
  449. var imgpath = model.getValue("/root/hidden/imgname");
  450. var filefullName = imgpath + "\\" + model.getValue("/root/main/list2/outerlist/imgnm");
  451. model.setValue("/root/main/list2/outerlist/imgfull", filefullName);
  452. img2.src = filefullName;
  453. var data = img2.getbase64data();
  454. //alert("data= " + data);
  455. var imgsize = getImageSize(filefullName);
  456. //alert("imgsize= " + imgsize);
  457. model.setValue("/root/main/view/imgrslt", data, true);
  458. setImageRefInstance("/root/main/view/imgrslt");
  459. model.setValue("/root/main/view/imgwidt", imgsize.split("^")[0]);
  460. model.setValue("/root/main/view/imght", imgsize.split("^")[1]);
  461. img2.attribute("width")= imgsize.split("^")[0];
  462. img2.attribute("height")= imgsize.split("^")[1];
  463. model.copyNode("/root/send/data2" , "/root/main/view" )
  464. model.refresh();
  465. /*for(i=1; i<grd_outer.rows; i++ ){
  466. //alert("i= " + i + " rows= " + grd_outer.rows);
  467. if(("Y" == model.getValue("/root/main/outerlist["+i+"]/imgyn")) || ("" != model.getValue("/root/main/outerlist["+i+"]/imgnm"))){
  468. if(imgpath == ""){
  469. alert("이미지 경로가 없습니다.");
  470. return;
  471. }
  472. var filefullName = imgpath + "\\" + model.getValue("/root/main/outerlist["+i+"]/imgnm");
  473. model.setValue("/root/main/outerlist["+i+"]/imgfull", filefullName);
  474. img2.src = filefullName;
  475. var data = img2.getbase64data();
  476. //alert("data= " + data);
  477. var imgsize = getImageSize(filefullName);
  478. //alert("imgsize= " + imgsize);
  479. model.setValue("/root/main/outerlist["+i+"]/imgrslt", data, true);
  480. model.setValue("/root/main/outerlist["+i+"]/imgwidt", imgsize.split("^")[0]);
  481. model.setValue("/root/main/outerlist["+i+"]/imght", imgsize.split("^")[1]);
  482. if (!checkFileSize(upload1)){
  483. //grd_attach.removeItem();
  484. messageBox("파일 크기가 최대치("+maxsize+"Byte)를", "E003");
  485. return;
  486. }
  487. }
  488. }*/
  489. }
  490. // 조회기간 3일간만 조회가능
  491. function fSetRefFromdd() {
  492. var fromdd = model.getValue("/root/hidden/refparam/startdd");
  493. var todd = model.getValue("/root/hidden/refparam/enddd");
  494. var mDate = todd.toDate("YYYYMMDD").getAddDate(-3);
  495. if(mDate.getDateFormat("YYYYMMDD") > fromdd) {
  496. messageBox("3일 이내의 기간만 검색","I006");
  497. return false;
  498. }else if(todd < fromdd) {
  499. messageBox("기간설정이 잘못", "E005");
  500. return false;
  501. }else {
  502. return true;
  503. }
  504. }
  505. // 위탁검사 시행부서별 조회
  506. function fGetWiTakRslt(){
  507. //if(!fSetRefFromdd()){ // 3일 내로만 조회되게
  508. // return;
  509. //}
  510. model.copynode("/root/send/refparam", "/root/hidden/refparam");
  511. model.setValue("/root/send/deptflag", model.getValue("/root/init/LB0000/nm"));
  512. submit("TRLOR00101");
  513. for(i=1; i<grd_outer2.rows; i++){
  514. grd_outer2.rowStatus(i) = 1;
  515. }
  516. model.setValue("/root/send/savegbn", "R"); // 조회했을때
  517. model.refresh();
  518. }
  519. // 저장상태 변경
  520. function fSetRsltStat(){
  521. if(grd_outer2.rows> 1){
  522. for(i=1; i<grd_outer2.rows; i++){
  523. if( (model.getValue("/root/main/list2/outerlist["+i+"]/srvstat") =="4" ) || (model.getValue("/root/main/list2/outerlist["+i+"]/srvstat") =="5" )){ // 최종보고나 수정보고일때
  524. model.setValue("/root/main/list2/outerlist["+i+"]/rsltstat", "-");
  525. }else{
  526. if( model.getValue("/root/main/list2/outerlist["+i+"]/tclskind")=="1"){ // 판넬일때는
  527. model.setValue("/root/main/list2/outerlist["+i+"]/rsltstat", "-"); // 저장안해도됨
  528. }else{
  529. model.setValue("/root/main/list2/outerlist["+i+"]/rsltstat", model.getValue("/root/hidden/rsltstat2"));
  530. }
  531. }
  532. }
  533. model.refresh();
  534. }else{
  535. alert("변경할 내용이 없습니다. ");
  536. }
  537. }
  538. // 이미지결과 보여주기
  539. function fSetImgRsltView(){
  540. //model.resetInstanceNode("/root/hidden/spcltestinfo");
  541. var row = "";
  542. if(model.getValue("/root/send/savegbn")=="F"){ // 파일로딩했을때
  543. row = grd_outer2.row;
  544. }else{ // 조회했을때
  545. //row = grd_outer.row + 2;
  546. row = grd_outer2.row ;
  547. }
  548. //alert("row=" + row);
  549. if(row> 0){
  550. if(model.getValue("/root/main/list2/outerlist["+row+"]/imgyn")=="Y"){
  551. model.setValue("/root/hidden/spcltestinfo/bcno", model.getValue("/root/main/list2/outerlist["+row+"]/bcno"));
  552. model.setValue("/root/hidden/spcltestinfo/testcd", model.getValue("/root/main/list2/outerlist["+row+"]/testcd"));
  553. model.setValue("/root/hidden/spcltestinfo/spccd", model.getValue("/root/main/list2/outerlist["+row+"]/spccd"));
  554. model.setValue("/root/hidden/spcltestinfo/tclscd", model.getValue("/root/main/list2/outerlist["+row+"]/tclscd"));
  555. model.setValue("/root/hidden/spcltestinfo/pid", model.getValue("/root/main/list2/outerlist["+row+"]/pid"));
  556. model.setValue("/root/hidden/spcltestinfo/rsltstat", model.getValue("/root/main/list2/outerlist["+row+"]/rsltstat"));
  557. modal("SMLRR01500","", "", "","", "/root/hidden/spcltestinfo", "/root/hidden/spcltestinfo");
  558. }
  559. }
  560. }
  561. ]]>
  562. </script>
  563. </xhtml:head>
  564. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  565. <group id="group1" scroll="auto" style="left:0px; top:40px; width:1195px; height:744; ">
  566. <datagrid id="datagrid1" nodeset="/root/main/outerlist" class="datagrid" caption="의뢰일자^기관코드^등록번호^검체번호^성명^검사코드^결과^상태구분^서버상태^이미지결과^이미지명^rkey^imgfull^imgwidt^imght^imgrslt^검사명^이미지결과^tclscd^spccd" colsep="^" colwidth="80, 80, 71, 86, 70, 70, 110, 92, 70, 80, 100, 10, 10, 10, 10, 10, 140, 64, 22, 19" dataheight="23" defaultrows="0" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:0px; top:109px; width:1195px; height:471px; ">
  567. <col ref="workdd" format="yyyy-mm-dd"/>
  568. <col ref="instcd" type="combo">
  569. <choices>
  570. <itemset nodeset="/root/init/LB0110">
  571. <label ref="nm"/>
  572. <value ref="cd"/>
  573. </itemset>
  574. </choices>
  575. </col>
  576. <col ref="pid"/>
  577. <col ref="bcno"/>
  578. <col ref="patnm"/>
  579. <col ref="testcd"/>
  580. <col ref="inptrslt"/>
  581. <col ref="rsltstat" type="combo">
  582. <choices>
  583. <item>
  584. <label>-</label>
  585. <value>-</value>
  586. </item>
  587. <item>
  588. <label>저장</label>
  589. <value>1</value>
  590. </item>
  591. <item>
  592. <label>중간보고</label>
  593. <value>2</value>
  594. </item>
  595. <item>
  596. <label>최종보고중</label>
  597. <value>3</value>
  598. </item>
  599. <item>
  600. <label>최종보고</label>
  601. <value>4</value>
  602. </item>
  603. <item>
  604. <label>수정보고</label>
  605. <value>5</value>
  606. </item>
  607. </choices>
  608. </col>
  609. <col disabled="true" ref="srvstat" type="combo">
  610. <choices>
  611. <item>
  612. <label>-</label>
  613. <value>-</value>
  614. </item>
  615. <item>
  616. <label>저장</label>
  617. <value>1</value>
  618. </item>
  619. <item>
  620. <label>중간보고</label>
  621. <value>2</value>
  622. </item>
  623. <item>
  624. <label>최종보고중</label>
  625. <value>3</value>
  626. </item>
  627. <item>
  628. <label>최종보고</label>
  629. <value>4</value>
  630. </item>
  631. <item>
  632. <label>수정보고</label>
  633. <value>5</value>
  634. </item>
  635. </choices>
  636. </col>
  637. <col ref="imgyn"/>
  638. <col ref="imgnm" style="left:940px; top:23px; width:100px; height:23px; "/>
  639. <col ref="rkey"/>
  640. <col ref="imgfull"/>
  641. <col ref="imgwidt"/>
  642. <col ref="imght"/>
  643. <col ref="imgrslt"/>
  644. <col ref="testnm"/>
  645. <col ref="imgtrue" type="inputbutton"/>
  646. <col ref="tclscd"/>
  647. <col ref="spccd"/>
  648. <script type="javascript" ev:event="onbuttonclick">
  649. <![CDATA[
  650. fSetImgRsltView();
  651. ]]>
  652. </script>
  653. </datagrid>
  654. <line id="line7" class="line_1" style="x1:0px; y1:104px; x2:1195px; y2:104px; "/>
  655. <shape id="roundrect2" class="roundrect_search" appearance="roundrect" style="left:0px; top:10px; width:1195px; height:69px; "/>
  656. <caption id="caption13" class="search_name" style="left:15px; top:19px; width:86px; height:17px; ">파일경로 :</caption>
  657. <line id="line8" class="line_4" style="x1:1108px; y1:51px; x2:1108px; y2:73px; "/>
  658. <caption id="caption14" class="tit_2" style="left:5px; top:89px; width:131px; height:13px; ">검체코드상세내역</caption>
  659. <button id="button9" class="btn2_letter4" style="left:1131px; top:83px; width:64px; height:19px; ">
  660. <caption>엑셀저장</caption>
  661. <script type="javascript" ev:event="DOMActivate">
  662. <![CDATA[
  663. fExeExcel(grd_outer);
  664. ]]>
  665. </script>
  666. </button>
  667. <caption id="caption15" class="search_name" style="left:605px; top:19px; width:99px; height:17px; ">이미지경로 :</caption>
  668. <caption id="caption16" class="tit_2" style="left:710px; top:592px; width:131px; height:14px; ">소견입력</caption>
  669. <line id="line9" class="line_1" style="x1:705px; y1:607px; x2:1195px; y2:607px; "/>
  670. <caption id="caption17" class="tit_2" style="left:0px; top:592px; width:131px; height:13px; ">결과전송상태</caption>
  671. <line id="line10" class="line_1" style="x1:0px; y1:607px; x2:700px; y2:607px; "/>
  672. <line id="line12" class="line_2" style="x1:705px; y1:634px; x2:1195px; y2:634px; "/>
  673. <line id="line13" class="line_3" style="x1:705px; y1:727px; x2:1195px; y2:727px; "/>
  674. <input id="input3" ref="/root/hidden/filename" class="output_search" appearance="input" style="left:108px; top:18px; width:442px; height:19px; "/>
  675. <output id="output1" ref="/root/hidden/imgname" class="output_search" style="left:715px; top:18px; width:435px; height:19px; "/>
  676. <datagrid id="datagrid2" nodeset="/root/hidden/ResultFlag" caption="Message" colsep="^" colwidth="677" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:0px; top:612px; width:700px; height:115; ">
  677. <col ref="error"/>
  678. </datagrid>
  679. <col ref="rsltstat" type="combo">
  680. <choices>
  681. <item>
  682. <label>-</label>
  683. <value>-</value>
  684. </item>
  685. <item>
  686. <label>저장</label>
  687. <value>1</value>
  688. </item>
  689. <item>
  690. <label>중간보고</label>
  691. <value>2</value>
  692. </item>
  693. <item>
  694. <label>최종보고중</label>
  695. <value>3</value>
  696. </item>
  697. <item>
  698. <label>????</label>
  699. <value>4</value>
  700. </item>
  701. <item>
  702. <label>최종보고</label>
  703. <value>5</value>
  704. </item>
  705. </choices>
  706. </col>
  707. <select1 id="combo6" ref="/root/hidden/cmt/cd" class="combo_default" appearance="minimal" style="left:705px; top:612px; width:490px; height:19px; ">
  708. <choices>
  709. <itemset nodeset="/root/init/LB0210">
  710. <label ref="nm"/>
  711. <value ref="cd"/>
  712. </itemset>
  713. </choices>
  714. <script type="javascript" ev:event="xforms-select">
  715. <![CDATA[
  716. fSetCmt();
  717. ]]>
  718. </script>
  719. </select1>
  720. <textarea id="textarea1" ref="/root/hidden/cmt/cnts" style="left:705px; top:637px; width:490px; height:87px; "/>
  721. <button id="button10" class="icon_search" appearance="button" style="left:1158px; top:20px; width:16px; height:16px; ">
  722. <script type="javascript" ev:event="DOMActivate">
  723. <![CDATA[
  724. //이미지 경로 가져오기
  725. fGetImgPath();
  726. ]]>
  727. </script>
  728. <caption/>
  729. </button>
  730. <button id="button11" visibility="visible" style="left:185px; top:380px; width:115px; height:20px; ">
  731. <caption>이미지업로드 임시용</caption>
  732. <script type="javascript" ev:event="DOMActivate">
  733. <![CDATA[
  734. fSetImgUpload();
  735. ]]>
  736. </script>
  737. </button>
  738. <upload id="upload2" nodeset="/root/send/attach/file" ext="zip" filecount="5" filesize="5242880" validate="true" style="left:305px; top:380px; width:25px; height:20px; "/>
  739. <datagrid id="datagrid3" nodeset="/root/send/attach" visibility="visible" caption="파일경로^bcno^testcd^rsltstat^imght^imgwidt^" colwidth="415, 100, 100, 100, 100, 100" extendlastcol="scroll" mergecellsfixedrows="bycolrec" style="left:0px; top:415px; width:930px; height:150px; ">
  740. <col ref="file"/>
  741. <col ref="bcno"/>
  742. <col ref="testcd"/>
  743. <col ref="rsltstat"/>
  744. <col ref="imght"/>
  745. <col ref="imgwidt"/>
  746. </datagrid>
  747. <button id="button12" class="btn5_letter4" visibility="hidden" style="left:600px; top:390px; width:64px; height:19px; ">
  748. <caption>upload</caption>
  749. <script type="javascript" ev:event="DOMActivate">
  750. <![CDATA[
  751. if (submit("TXTSS00201")) {
  752. //model.removeNodeset("/root/send/attach");
  753. //model.resetInstanceNode("/root/send/title");
  754. model.refresh();
  755. }
  756. ]]>
  757. </script>
  758. </button>
  759. <button id="button13" class="btn2_letter4" visibility="hidden" style="left:530px; top:390px; width:64px; height:19px; ">
  760. <caption>addfile</caption>
  761. <script type="javascript" ev:event="DOMActivate">
  762. <![CDATA[
  763. var maxsize = upload1.attribute("filesize");
  764. files = window.fileDialog("open", "|", true);
  765. filelist = files.split("|");
  766. for(var i = 0 ; i < filelist.length ; i++ ) {
  767. grd_attach.addRow(false);
  768. grd_attach.valueMatrix(grd_attach.rows - 1, 0) = filelist[i];
  769. }
  770. ]]>
  771. </script>
  772. </button>
  773. <caption id="caption18" class="search_name" style="left:15px; top:50px; width:86px; height:17px; ">작업일자 :</caption>
  774. <input id="input4" ref="/root/hidden/refparam/startdd" class="input_search" inputtype="date" style="left:105px; top:51px; width:90px; height:19px; "/>
  775. <input id="input5" ref="/root/hidden/refparam/enddd" class="input_search" inputtype="date" style="left:210px; top:51px; width:90px; height:19px; "/>
  776. <caption id="caption19" class="search_no_b" style="left:196px; top:51px; width:12px; height:17px; ">~</caption>
  777. <line id="line14" class="line_7" style="x1:14px; y1:44px; x2:1180px; y2:44px; "/>
  778. <select1 id="combo7" ref="/root/hidden/refparam/sectcd" class="combo_default" appearance="minimal" style="left:410px; top:51px; width:100px; height:19px; ">
  779. <choices>
  780. <itemset nodeset="/root/init/LB0111">
  781. <label ref="nm"/>
  782. <value ref="cd"/>
  783. </itemset>
  784. </choices>
  785. <script type="javascript" ev:event="xforms-value-changed">
  786. <![CDATA[
  787. var etc = model.getvalue("/root/hidden/refparam/sectcd");
  788. if(etc == "00"){
  789. combo4.choices.itemset.attribute("nodeset") = "/root/init/LB0106";
  790. model.setvalue("/root/hidden/refparam/tsectcd" , "00");
  791. combo4.disabled = true;
  792. }
  793. else{
  794. combo4.choices.itemset.attribute("nodeset") = "/root/init/LB0106[cd= '00' or etc01='"+ etc +"']";
  795. model.setvalue("/root/hidden/refparam/tsectcd" , "00");
  796. combo4.disabled = false;
  797. }
  798. combo4.refresh();
  799. ]]>
  800. </script>
  801. </select1>
  802. <select1 id="combo8" ref="/root/hidden/refparam/tsectcd" class="combo_default" appearance="minimal" style="left:515px; top:51px; width:105px; height:19px; ">
  803. <choices>
  804. <itemset nodeset="/root/init/LB0106">
  805. <label ref="nm"/>
  806. <value ref="cd"/>
  807. </itemset>
  808. </choices>
  809. </select1>
  810. <caption id="caption20" class="search_name" style="left:320px; top:52px; width:94px; height:17px; ">시행부서 :</caption>
  811. <caption id="caption21" class="search_name" style="left:640px; top:52px; width:94px; height:17px; ">결과구분 :</caption>
  812. <select1 id="combo9" ref="/root/hidden/refparam/rstflag" class="combo_default" appearance="minimal" style="left:730px; top:51px; width:95px; height:19px; ">
  813. <choices>
  814. <item>
  815. <label>전체</label>
  816. <value>0</value>
  817. </item>
  818. <item>
  819. <label>미검사</label>
  820. <value>1</value>
  821. </item>
  822. <item>
  823. <label>미완료</label>
  824. <value>2</value>
  825. </item>
  826. <item>
  827. <label>최종보고</label>
  828. <value>3</value>
  829. </item>
  830. </choices>
  831. </select1>
  832. <button id="button14" class="btn1_letter2" style="left:1124px; top:51px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn1_letter2.gif; ">
  833. <caption>조회</caption>
  834. <script type="javascript" ev:event="DOMActivate">
  835. <![CDATA[
  836. fGetWiTakRslt();
  837. ]]>
  838. </script>
  839. </button>
  840. <caption id="caption22" class="search_name" style="left:850px; top:52px; width:92px; height:17px; ">위탁기관 :</caption>
  841. <select1 id="combo10" ref="/root/hidden/refparam/extrcd" class="combo_default" appearance="minimal" style="left:940px; top:51px; width:120px; height:19px; ">
  842. <choices>
  843. <itemset nodeset="/root/init/LB0110">
  844. <label ref="nm"/>
  845. <value ref="cd"/>
  846. </itemset>
  847. </choices>
  848. </select1>
  849. <button id="button15" class="btn2_letter7" style="left:658px; top:83px; width:97px; height:19px; ">
  850. <caption>↓저장상태변경</caption>
  851. <script type="javascript" ev:event="DOMActivate">
  852. <![CDATA[
  853. fSetRsltStat();
  854. ]]>
  855. </script>
  856. </button>
  857. <select1 id="combo11" ref="/root/hidden/rsltstat2" appearance="minimal" style="left:570px; top:83px; width:85px; height:19px; ">
  858. <choices>
  859. <item>
  860. <label>-</label>
  861. <value>-</value>
  862. </item>
  863. <item>
  864. <label>저장</label>
  865. <value>1</value>
  866. </item>
  867. <item>
  868. <label>중간보고</label>
  869. <value>2</value>
  870. </item>
  871. <item>
  872. <label>최종보고</label>
  873. <value>4</value>
  874. </item>
  875. <item>
  876. <label>수정보고</label>
  877. <value>5</value>
  878. </item>
  879. </choices>
  880. </select1>
  881. <caption id="caption23" class="tit_2" style="left:445px; top:86px; width:126px; height:13px; ">저장상태일괄변경</caption>
  882. <button id="button16" class="icon_search" appearance="button" style="left:557px; top:20px; width:16px; height:16px; ">
  883. <script type="javascript" ev:event="DOMActivate">
  884. <![CDATA[
  885. //결과 파일명 가져오기
  886. fGetFileName();
  887. ]]>
  888. </script>
  889. <caption/>
  890. </button>
  891. </group>
  892. <group id="group3" scroll="auto" style="left:0px; top:40px; width:1195px; height:744; ">
  893. <line id="line1" class="line_1" style="x1:0px; y1:104px; x2:1195px; y2:104px; "/>
  894. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" style="left:0px; top:10px; width:1195px; height:69px; "/>
  895. <caption id="caption2" class="search_name" style="left:15px; top:19px; width:86px; height:17px; ">파일경로 :</caption>
  896. <line id="line11" class="line_4" style="x1:1108px; y1:51px; x2:1108px; y2:73px; "/>
  897. <caption id="caption1" class="tit_2" style="left:5px; top:89px; width:131px; height:13px; ">검체코드상세내역</caption>
  898. <button id="button2" class="btn2_letter4" style="left:1131px; top:83px; width:64px; height:19px; ">
  899. <caption>엑셀저장</caption>
  900. <script type="javascript" ev:event="DOMActivate">
  901. <![CDATA[
  902. fExeExcel(grd_outer);
  903. ]]>
  904. </script>
  905. </button>
  906. <caption id="caption4" class="search_name" style="left:605px; top:19px; width:99px; height:17px; ">이미지경로 :</caption>
  907. <caption id="caption3" class="tit_2" style="left:710px; top:602px; width:131px; height:13px; ">소견입력</caption>
  908. <line id="line2" class="line_1" style="x1:705px; y1:617px; x2:1195px; y2:617px; "/>
  909. <caption id="caption5" class="tit_2" style="left:0px; top:602px; width:131px; height:13px; ">결과전송상태</caption>
  910. <line id="line3" class="line_1" style="x1:0px; y1:617px; x2:700px; y2:617px; "/>
  911. <line id="line4" class="line_2" style="x1:705px; y1:644px; x2:1195px; y2:644px; "/>
  912. <line id="line5" class="line_3" style="x1:705px; y1:737px; x2:1195px; y2:737px; "/>
  913. <input id="opt_file" ref="/root/hidden/filename" class="output_search" appearance="input" style="left:108px; top:18px; width:442px; height:19px; "/>
  914. <output id="opt_img" ref="/root/hidden/imgname" class="output_search" style="left:715px; top:18px; width:435px; height:19px; "/>
  915. <datagrid id="grd_outer" nodeset="/root/main/list/outerlist" class="datagrid" caption="의뢰일자^기관코드^등록번호^검체번호^성명^검사코드^결과^상태구분^서버상태^이미지결과^이미지명^rkey^imgfull^imgwidt^imght^imgrslt^검사명^img결과^서술결과^tclscd^spccd" colsep="^" colwidth="72, 72, 70, 82, 64, 66, 140, 70, 70, 62, 100, 0, 0, 0, 0, 0, 130, 60, 90, 0, 0" dataheight="23" defaultrows="0" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:0px; top:109px; width:1195px; height:481px; ">
  916. <col ref="workdd" format="yyyy-mm-dd"/>
  917. <col ref="instcd" type="combo">
  918. <choices>
  919. <itemset nodeset="/root/init/LB0110">
  920. <label ref="nm"/>
  921. <value ref="cd"/>
  922. </itemset>
  923. </choices>
  924. </col>
  925. <col ref="pid"/>
  926. <col ref="bcno"/>
  927. <col ref="patnm"/>
  928. <col ref="testcd"/>
  929. <col ref="inptrslt"/>
  930. <col ref="rsltstat" type="combo">
  931. <choices>
  932. <item>
  933. <label>-</label>
  934. <value>-</value>
  935. </item>
  936. <item>
  937. <label>저장</label>
  938. <value>1</value>
  939. </item>
  940. <item>
  941. <label>중간보고</label>
  942. <value>2</value>
  943. </item>
  944. <item>
  945. <label>최종보고중</label>
  946. <value>3</value>
  947. </item>
  948. <item>
  949. <label>최종보고</label>
  950. <value>4</value>
  951. </item>
  952. <item>
  953. <label>수정보고</label>
  954. <value>5</value>
  955. </item>
  956. </choices>
  957. </col>
  958. <col disabled="true" ref="srvstat" type="combo">
  959. <choices>
  960. <item>
  961. <label>-</label>
  962. <value>-</value>
  963. </item>
  964. <item>
  965. <label>저장</label>
  966. <value>1</value>
  967. </item>
  968. <item>
  969. <label>중간보고</label>
  970. <value>2</value>
  971. </item>
  972. <item>
  973. <label>최종보고중</label>
  974. <value>3</value>
  975. </item>
  976. <item>
  977. <label>최종보고</label>
  978. <value>4</value>
  979. </item>
  980. <item>
  981. <label>수정보고</label>
  982. <value>5</value>
  983. </item>
  984. </choices>
  985. </col>
  986. <col ref="imgyn" type="combo">
  987. <choices>
  988. <item>
  989. <label>Y</label>
  990. <value>Y</value>
  991. </item>
  992. <item>
  993. <label>N</label>
  994. <value>N</value>
  995. </item>
  996. </choices>
  997. </col>
  998. <col ref="imgnm" style="left:940px; top:23px; width:100px; height:23px; "/>
  999. <col ref="rkey"/>
  1000. <col ref="imgfull"/>
  1001. <col ref="imgwidt"/>
  1002. <col ref="imght"/>
  1003. <col ref="imgrslt"/>
  1004. <col ref="testnm"/>
  1005. <col ref="imgtrue" type="inputbutton"/>
  1006. <col ref="descrslt"/>
  1007. <col ref="tclscd"/>
  1008. <col ref="spccd"/>
  1009. <script type="javascript" ev:event="onbuttonclick">
  1010. <![CDATA[
  1011. fSetImgRsltView();
  1012. ]]>
  1013. </script>
  1014. </datagrid>
  1015. <datagrid id="grd_rsltstat" nodeset="/root/hidden/ResultFlag" caption="Message" colsep="^" colwidth="677" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:0px; top:622px; width:700px; height:116px; ">
  1016. <col ref="error"/>
  1017. </datagrid>
  1018. <col ref="rsltstat" type="combo">
  1019. <choices>
  1020. <item>
  1021. <label>-</label>
  1022. <value>-</value>
  1023. </item>
  1024. <item>
  1025. <label>저장</label>
  1026. <value>1</value>
  1027. </item>
  1028. <item>
  1029. <label>중간보고</label>
  1030. <value>2</value>
  1031. </item>
  1032. <item>
  1033. <label>최종보고중</label>
  1034. <value>3</value>
  1035. </item>
  1036. <item>
  1037. <label>????</label>
  1038. <value>4</value>
  1039. </item>
  1040. <item>
  1041. <label>최종보고</label>
  1042. <value>5</value>
  1043. </item>
  1044. </choices>
  1045. </col>
  1046. <select1 id="cmb_cmt" ref="/root/hidden/cmt/cd" class="combo_default" appearance="minimal" style="left:705px; top:622px; width:490px; height:19px; ">
  1047. <choices>
  1048. <itemset nodeset="/root/init/LB0210[etc01='X']">
  1049. <label ref="nm"/>
  1050. <value ref="cd"/>
  1051. </itemset>
  1052. </choices>
  1053. <script type="javascript" ev:event="xforms-select">
  1054. <![CDATA[
  1055. fSetCmt();
  1056. ]]>
  1057. </script>
  1058. </select1>
  1059. <textarea id="tar_cmt" ref="/root/hidden/cmt/cnts" style="left:705px; top:647px; width:490px; height:87px; "/>
  1060. <button id="button6" class="icon_search" appearance="button" style="left:1158px; top:20px; width:16px; height:16px; ">
  1061. <script type="javascript" ev:event="DOMActivate">
  1062. <![CDATA[
  1063. //이미지 경로 가져오기
  1064. fGetImgPath();
  1065. ]]>
  1066. </script>
  1067. <caption/>
  1068. </button>
  1069. <button id="button7" visibility="hidden" style="left:185px; top:380px; width:115px; height:20px; ">
  1070. <caption>이미지업로드 임시용</caption>
  1071. <script type="javascript" ev:event="DOMActivate">
  1072. <![CDATA[
  1073. fSetImgUpload();
  1074. ]]>
  1075. </script>
  1076. </button>
  1077. <upload id="upload1" nodeset="/root/send/attach/file" ext="zip" filecount="5" filesize="5242880" validate="true" style="left:305px; top:380px; width:25px; height:20px; "/>
  1078. <datagrid id="grd_attach" nodeset="/root/send/attach" visibility="hidden" caption="파일경로^bcno^testcd^rsltstat^imght^imgwidt^imgrslt^" colwidth="415, 100, 100, 100, 100, 100, 100" extendlastcol="scroll" mergecellsfixedrows="bycolrec" style="left:0px; top:415px; width:1080px; height:150px; ">
  1079. <col ref="file"/>
  1080. <col ref="bcno"/>
  1081. <col ref="testcd"/>
  1082. <col ref="rsltstat"/>
  1083. <col ref="imght"/>
  1084. <col ref="imgwidt"/>
  1085. <col ref="imgrslt"/>
  1086. </datagrid>
  1087. <button id="btn_upload" class="btn5_letter4" visibility="hidden" style="left:600px; top:390px; width:64px; height:19px; ">
  1088. <caption>upload</caption>
  1089. <script type="javascript" ev:event="DOMActivate">
  1090. <![CDATA[
  1091. if (submit("TXTSS00201")) {
  1092. //model.removeNodeset("/root/send/attach");
  1093. //model.resetInstanceNode("/root/send/title");
  1094. model.refresh();
  1095. }
  1096. ]]>
  1097. </script>
  1098. </button>
  1099. <button id="btn_addfile" class="btn2_letter4" visibility="hidden" style="left:530px; top:390px; width:64px; height:19px; ">
  1100. <caption>addfile</caption>
  1101. <script type="javascript" ev:event="DOMActivate">
  1102. <![CDATA[
  1103. var maxsize = upload1.attribute("filesize");
  1104. files = window.fileDialog("open", "|", true);
  1105. filelist = files.split("|");
  1106. for(var i = 0 ; i < filelist.length ; i++ ) {
  1107. grd_attach.addRow(false);
  1108. grd_attach.valueMatrix(grd_attach.rows - 1, 0) = filelist[i];
  1109. }
  1110. ]]>
  1111. </script>
  1112. </button>
  1113. <caption id="caption7" class="search_name" style="left:15px; top:50px; width:86px; height:17px; ">작업일자 :</caption>
  1114. <input id="input1" ref="/root/hidden/refparam/startdd" class="input_search" inputtype="date" style="left:105px; top:51px; width:90px; height:19px; "/>
  1115. <input id="input2" ref="/root/hidden/refparam/enddd" class="input_search" inputtype="date" style="left:210px; top:51px; width:90px; height:19px; "/>
  1116. <caption id="caption8" class="search_no_b" style="left:196px; top:51px; width:12px; height:17px; ">~</caption>
  1117. <line id="line6" class="line_7" style="x1:14px; y1:44px; x2:1180px; y2:44px; "/>
  1118. <select1 id="combo3" ref="/root/hidden/refparam/sectcd" class="combo_default" appearance="minimal" style="left:410px; top:51px; width:100px; height:19px; ">
  1119. <choices>
  1120. <itemset nodeset="/root/init/LB0111">
  1121. <label ref="nm"/>
  1122. <value ref="cd"/>
  1123. </itemset>
  1124. </choices>
  1125. <script type="javascript" ev:event="xforms-value-changed">
  1126. <![CDATA[
  1127. var etc = model.getvalue("/root/hidden/refparam/sectcd");
  1128. if(etc == "00"){
  1129. combo4.choices.itemset.attribute("nodeset") = "/root/init/LB0106";
  1130. model.setvalue("/root/hidden/refparam/tsectcd" , "00");
  1131. combo4.disabled = true;
  1132. }
  1133. else{
  1134. combo4.choices.itemset.attribute("nodeset") = "/root/init/LB0106[cd= '00' or etc01='"+ etc +"']";
  1135. model.setvalue("/root/hidden/refparam/tsectcd" , "00");
  1136. combo4.disabled = false;
  1137. }
  1138. combo4.refresh();
  1139. ]]>
  1140. </script>
  1141. </select1>
  1142. <select1 id="combo4" ref="/root/hidden/refparam/tsectcd" class="combo_default" appearance="minimal" style="left:515px; top:51px; width:105px; height:19px; ">
  1143. <choices>
  1144. <itemset nodeset="/root/init/LB0106">
  1145. <label ref="nm"/>
  1146. <value ref="cd"/>
  1147. </itemset>
  1148. </choices>
  1149. </select1>
  1150. <caption id="caption9" class="search_name" style="left:320px; top:52px; width:94px; height:17px; ">시행부서 :</caption>
  1151. <caption id="caption10" class="search_name" style="left:640px; top:52px; width:94px; height:17px; ">결과구분 :</caption>
  1152. <select1 id="combo2" ref="/root/hidden/refparam/rstflag" class="combo_default" appearance="minimal" style="left:730px; top:51px; width:95px; height:19px; ">
  1153. <choices>
  1154. <item>
  1155. <label>전체</label>
  1156. <value>0</value>
  1157. </item>
  1158. <item>
  1159. <label>미검사</label>
  1160. <value>1</value>
  1161. </item>
  1162. <item>
  1163. <label>미완료</label>
  1164. <value>2</value>
  1165. </item>
  1166. <item>
  1167. <label>최종보고</label>
  1168. <value>3</value>
  1169. </item>
  1170. </choices>
  1171. </select1>
  1172. <button id="button8" class="btn1_letter2" style="left:1124px; top:51px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn1_letter2.gif; ">
  1173. <caption>조회</caption>
  1174. <script type="javascript" ev:event="DOMActivate">
  1175. <![CDATA[
  1176. fGetWiTakRslt();
  1177. ]]>
  1178. </script>
  1179. </button>
  1180. <caption id="caption11" class="search_name" style="left:850px; top:52px; width:92px; height:17px; ">위탁기관 :</caption>
  1181. <select1 id="combo1" ref="/root/hidden/refparam/extrcd" class="combo_default" visibility="hidden" appearance="minimal" style="left:940px; top:51px; width:120px; height:19px; ">
  1182. <choices>
  1183. <itemset nodeset="/root/init/LB0110">
  1184. <label ref="nm"/>
  1185. <value ref="cd"/>
  1186. </itemset>
  1187. </choices>
  1188. </select1>
  1189. <button id="button1" class="btn2_letter7" style="left:658px; top:83px; width:97px; height:19px; ">
  1190. <caption>↓저장상태변경</caption>
  1191. <script type="javascript" ev:event="DOMActivate">
  1192. <![CDATA[
  1193. fSetRsltStat();
  1194. ]]>
  1195. </script>
  1196. </button>
  1197. <select1 id="combo5" ref="/root/hidden/rsltstat2" appearance="minimal" style="left:570px; top:83px; width:85px; height:19px; ">
  1198. <choices>
  1199. <item>
  1200. <label>-</label>
  1201. <value>-</value>
  1202. </item>
  1203. <item>
  1204. <label>저장</label>
  1205. <value>1</value>
  1206. </item>
  1207. <item>
  1208. <label>중간보고</label>
  1209. <value>2</value>
  1210. </item>
  1211. <item>
  1212. <label>최종보고</label>
  1213. <value>4</value>
  1214. </item>
  1215. <item>
  1216. <label>수정보고</label>
  1217. <value>5</value>
  1218. </item>
  1219. </choices>
  1220. <script type="javascript" ev:event="xforms-select">
  1221. <![CDATA[
  1222. fSetRsltStat();
  1223. ]]>
  1224. </script>
  1225. </select1>
  1226. <caption id="caption12" class="tit_2" style="left:445px; top:86px; width:126px; height:13px; ">저장상태일괄변경</caption>
  1227. <img id="img2" visibility="hidden" style="left:795px; top:210px; width:140px; height:120px; background-color:#ff6600; background-stretch:stretch; "/>
  1228. <button id="bt1" class="icon_search" appearance="button" style="left:557px; top:20px; width:16px; height:16px; ">
  1229. <script type="javascript" ev:event="DOMActivate">
  1230. <![CDATA[
  1231. //결과 파일명 가져오기
  1232. fGetFileName();
  1233. ]]>
  1234. </script>
  1235. <caption/>
  1236. </button>
  1237. <img id="img1" ref="/root/main/view/imgrslt" visibility="hidden" style="left:620px; top:210px; width:155px; height:130px; background-color:#800000; background-stretch:stretch; "/>
  1238. <select1 id="combo12" ref="/root/hidden/refparam/extrcd" navindex="6" appearance="minimal" style="left:940px; top:51px; width:120px; height:19px; ">
  1239. <choices>
  1240. <itemset nodeset="/root/init/LB0134">
  1241. <label ref="nm"/>
  1242. <value ref="cd"/>
  1243. </itemset>
  1244. </choices>
  1245. </select1>
  1246. <datagrid id="grd_outer2" nodeset="/root/main/list2/outerlist" class="datagrid" caption="^의뢰일자^기관코드^등록번호^검체번호^성명^검사코드^결과^상태구분^서버상태^이미지결과^이미지명^rkey^imgfull^imgwidt^imght^imgrslt^검사명^img결과^서술결과^tclscd^spccd" colsep="^" colwidth="24, 72, 72, 70, 82, 64, 66, 140, 70, 70, 62, 100, 0, 0, 0, 0, 0, 130, 60, 90, 0, 0" dataheight="23" defaultrows="0" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:0px; top:109px; width:1195px; height:481px; ">
  1247. <col checkvalue="Y,N" ref="chk" type="checkbox"/>
  1248. <col ref="workdd" format="yyyy-mm-dd"/>
  1249. <col ref="instcd" type="combo">
  1250. <choices>
  1251. <itemset nodeset="/root/init/LB0110">
  1252. <label ref="nm"/>
  1253. <value ref="cd"/>
  1254. </itemset>
  1255. </choices>
  1256. </col>
  1257. <col ref="pid" type="input"/>
  1258. <col ref="bcno" type="input"/>
  1259. <col ref="patnm"/>
  1260. <col ref="testcd"/>
  1261. <col ref="inptrslt"/>
  1262. <col ref="rsltstat" type="combo">
  1263. <choices>
  1264. <item>
  1265. <label>-</label>
  1266. <value>-</value>
  1267. </item>
  1268. <item>
  1269. <label>저장</label>
  1270. <value>1</value>
  1271. </item>
  1272. <item>
  1273. <label>중간보고</label>
  1274. <value>2</value>
  1275. </item>
  1276. <item>
  1277. <label>최종보고중</label>
  1278. <value>3</value>
  1279. </item>
  1280. <item>
  1281. <label>최종보고</label>
  1282. <value>4</value>
  1283. </item>
  1284. <item>
  1285. <label>수정보고</label>
  1286. <value>5</value>
  1287. </item>
  1288. </choices>
  1289. </col>
  1290. <col disabled="true" ref="srvstat" type="combo">
  1291. <choices>
  1292. <item>
  1293. <label>-</label>
  1294. <value>-</value>
  1295. </item>
  1296. <item>
  1297. <label>저장</label>
  1298. <value>1</value>
  1299. </item>
  1300. <item>
  1301. <label>중간보고</label>
  1302. <value>2</value>
  1303. </item>
  1304. <item>
  1305. <label>최종보고중</label>
  1306. <value>3</value>
  1307. </item>
  1308. <item>
  1309. <label>최종보고</label>
  1310. <value>4</value>
  1311. </item>
  1312. <item>
  1313. <label>수정보고</label>
  1314. <value>5</value>
  1315. </item>
  1316. </choices>
  1317. </col>
  1318. <col ref="imgyn" type="combo">
  1319. <choices>
  1320. <item>
  1321. <label>Y</label>
  1322. <value>Y</value>
  1323. </item>
  1324. <item>
  1325. <label>N</label>
  1326. <value>N</value>
  1327. </item>
  1328. </choices>
  1329. </col>
  1330. <col ref="imgnm" style="left:940px; top:23px; width:100px; height:23px; "/>
  1331. <col ref="rkey"/>
  1332. <col ref="imgfull"/>
  1333. <col ref="imgwidt"/>
  1334. <col ref="imght"/>
  1335. <col ref="imgrslt"/>
  1336. <col ref="testnm"/>
  1337. <col ref="imgtrue" type="inputbutton"/>
  1338. <col ref="descrslt"/>
  1339. <col ref="tclscd"/>
  1340. <col ref="spccd"/>
  1341. <script type="javascript" ev:event="onbuttonclick">
  1342. <![CDATA[
  1343. if(grd_outer2.col !="1"){
  1344. fSetImgRsltView();
  1345. }
  1346. ]]>
  1347. </script>
  1348. </datagrid>
  1349. <caption id="caption24" visibility="hidden" style="left:880px; top:85px; width:226px; height:20px; ">엑셀load하는 grd_outer 그리드 숨어있음</caption>
  1350. </group>
  1351. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:185px; height:13px; ">위탁검사결과보고</caption>
  1352. <group id="group4" scroll="auto" style="left:0px; top:13px; width:1195px; height:27px; ">
  1353. <button id="button5" class="btn4_letter3" style="left:1127px; top:3px; width:68px; height:22px; ">
  1354. <caption>초기화</caption>
  1355. <script type="javascript" ev:event="DOMActivate">
  1356. <![CDATA[
  1357. fSetReset();
  1358. ]]>
  1359. </script>
  1360. </button>
  1361. <line id="line17" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  1362. <button id="button3" class="btn4_letter4" style="left:961px; top:3px; width:80px; height:22px; ">
  1363. <caption>결과전송</caption>
  1364. <script type="javascript" ev:event="DOMActivate">
  1365. <![CDATA[
  1366. fExeOuterRslt();
  1367. ]]>
  1368. </script>
  1369. </button>
  1370. <button id="button4" class="btn4_letter4" style="left:1044px; top:3px; width:80px; height:22px; ">
  1371. <caption>전송확인</caption>
  1372. <script type="javascript" ev:event="DOMActivate">
  1373. <![CDATA[
  1374. fGetOuterRsltConfirm();
  1375. ]]>
  1376. </script>
  1377. </button>
  1378. <caption id="caption25" style="left:12px; top:8px; width:359px; height:16px; color:#3333cc; ">※ 판넬검사는 세부검사만 결과저장하면 최종보고 됩니다.</caption>
  1379. </group>
  1380. </xhtml:body>
  1381. </xhtml:html>