SSMRC03160_LC.xjs 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/*
  3. - =======================================================================================
  4. 전자동의서 Program (SSMRC03160_LC.js)
  5. - Version :
  6. 1) : Ver.1.00.00
  7. - =======================================================================================
  8. */
  9. var fso = null;//inff_fileSystemObject();
  10. function ConsentCStart()
  11. {
  12. var port = opener.frmf_getParameter("SSMRC03170_param_mport"); //포트번호
  13. consentC.Connect_start(port);
  14. }
  15. function flagform()
  16. {
  17. var flag = ds_para_clip.getColumn(0, "flag");
  18. if (utlf_isNull(flag)) flag = ds_send_ocrtreat.getColumn(0,"flag");
  19. if (flag == "S")
  20. { //선택진료
  21. ds_treat.setColumn(0,"treat",opener.ds_inform.getColumn(0,"orddeptnm")); // 주진료과명
  22. //model.makeValue("/root/main/treat/treat","구강악안면방사선과"); // 테스트
  23. var treat = String(ds_treat.getColumn(0,"treat"));
  24. if(treat.length > 6)
  25. {
  26. dsf_makeValue(ds_treat,"treat1","string",treat.substr( 0 , 6));
  27. dsf_makeValue(ds_treat,"treat2","string",treat.substr( 6 , treat.length));
  28. ds_treat.setColumn(0,"treat","");
  29. }
  30. ds_return.setColumn(0,"key","orddeptcd"); // 주진료과id
  31. ds_return.setColumn(0,"value",opener.ds_inform.getColumn(0,"orddeptcd")); // 주진료과코드
  32. ds_treat.setColumn(0,"doctor0",opener.ds_inform.getColumn(0,"orddrnm")); // 주진료의사
  33. ds_return.addRow();
  34. ds_return.setColumn(1,"key","orddrid"); // 주진료의사코드
  35. ds_return.setColumn(1,"value",opener.ds_inform.getColumn(0,"orddeptcd")); // opener.ds_inform.getColumn(0,"orddrcd")); // 주진료과코드
  36. ds_treat.setColumn(0,"doctor1",opener.ds_inform.getColumn(0,"list1specdrnm")); // 진찰 이름
  37. ds_return.addRow();
  38. ds_return.setColumn(2,"key","specdrid01"); // 키
  39. ds_return.setColumn(2,"value",opener.ds_inform.getColumn(0,"list1specdrid")); // 코드
  40. ds_treat.setColumn(0,"doctor2",opener.ds_inform.getColumn(0,"list2specdrnm")); // 검사 이름
  41. ds_return.addRow();
  42. ds_return.setColumn(3,"key","specdrid02"); // 키
  43. ds_return.setColumn(3,"value",opener.ds_inform.getColumn(0,"list2specdrid")); // 코드
  44. ds_treat.setColumn(0,"doctor3",opener.ds_inform.getColumn(0,"list3specdrnm")); // 영상진단 이름
  45. ds_return.addRow();
  46. ds_return.setColumn(4,"key","specdrid03"); // 키
  47. ds_return.setColumn(4,"value",opener.ds_inform.getColumn(0,"list3specdrid")); // 코드
  48. ds_treat.setColumn(0,"doctor4",opener.ds_inform.getColumn(0,"list4specdrnm")); // 방사선치료 이름
  49. ds_return.addRow();
  50. ds_return.setColumn(5,"key","specdrid04"); // 키
  51. ds_return.setColumn(5,"value",opener.ds_inform.getColumn(0,"list4specdrid")); // 코드
  52. ds_treat.setColumn(0,"doctor5",opener.ds_inform.getColumn(0,"list5specdrnm")); // 방사선촬영 이름
  53. ds_return.addRow();
  54. ds_return.setColumn(6,"key","specdrid05"); // 키
  55. ds_return.setColumn(6,"value",opener.ds_inform.getColumn(0,"list5specdrid")); // 코드
  56. ds_treat.setColumn(0,"doctor6",opener.ds_inform.getColumn(0,"list6specdrnm")); // 마취 이름
  57. ds_return.addRow();
  58. ds_return.setColumn(7,"key","specdrid06"); // 키
  59. ds_return.setColumn(7,"value",opener.ds_inform.getColumn(0,"list6specdrid")); // 코드
  60. ds_treat.setColumn(0,"doctor7",opener.ds_inform.getColumn(0,"list7specdrnm")); // 정신요법 이름
  61. ds_return.addRow();
  62. ds_return.setColumn(8,"key","specdrid07"); // 키
  63. ds_return.setColumn(8,"value",opener.ds_inform.getColumn(0,"list7specdrid")); // 코드
  64. ds_treat.setColumn(0,"doctor8",opener.ds_inform.getColumn(0,"list8specdrnm")); // 처치 - 수술 이름
  65. ds_return.addRow();
  66. ds_return.setColumn(9,"key","specdrid08"); // 키
  67. ds_return.setColumn(9,"value",opener.ds_inform.getColumn(0,"list8specdrid")); // 코드
  68. ds_return.addRow();
  69. ds_return.setColumn(10,"key","specordyn"); // 키
  70. ds_return.setColumn(10,"value",opener.ds_inform.getColumn(0,"specordyn")); // 코드
  71. //model.makeValue("/root/main/return[11]/value","N"); // 코드 테스트용
  72. if(opener.ds_inform.getColumn(0,"specordyn") != 'Y')
  73. {
  74. var doctor = ds_treat.getColumn(0,"doctor0");
  75. doctor = doctor + "(비)"
  76. ds_treat.setColumn(0,"doctor0",doctor);
  77. }
  78. ds_return.addRow();
  79. ds_return.setColumn(11,"key","appdd"); // 키
  80. ds_return.setColumn(11,"value",opener.ds_inform.getColumn(0,"appdd")); // 코드
  81. ds_treat.setColumn(0,"appdd",opener.ds_inform.getColumn(0,"appdd"));
  82. var appdd;
  83. var yyyy;
  84. var mm;
  85. var dd;
  86. appdd = utlf_transNullToEmpty(opener.ds_inform.getColumn(0,"appdd"));
  87. yyyy = appdd.substr(0,4);
  88. mm = appdd.substr(4,2);
  89. dd = appdd.substr(6,2);
  90. ds_treat.setColumn(0,"tag1",yyyy);
  91. ds_treat.setColumn(0,"tag2",mm);
  92. ds_treat.setColumn(0,"tag3",dd);
  93. if("031" == sysf_getUserInfo("dutplceinstcd"))
  94. {
  95. ds_treat.setColumn(0,"tag4","경북대학교병원장");
  96. }
  97. else
  98. {
  99. ds_treat.setColumn(0,"tag4","칠곡경북대학교병원장");
  100. }
  101. if(ds_treat.getColumn(0,"io") == "외래")
  102. {
  103. ds_treat.setColumn(0,"tag5","V");
  104. }
  105. // 외래가 아닌 경우 모두 입원처리(DSC, ER)
  106. else //if(ds_treat.getColumn(0,"io") == "입원")
  107. {
  108. ds_treat.setColumn(0,"tag6","V");
  109. }
  110. // dbs227, 원무 연동
  111. // 선택 의사 여부
  112. ds_para_clip.setColumn(0, "specdryn", opener.ds_inform.getColumn(0, "specordyn"));
  113. }
  114. // 입원약정서(일반/기간)
  115. else if(flag == "A" || flag == "T" )
  116. {
  117. ds_return.setColumn(0,"key","todd"); // 키
  118. ds_return.setColumn(0,"value",opener.ds_main_ininfo.getColumn(0,"todd"));
  119. ds_return.addRow();
  120. ds_return.setColumn(1,"key","fromdd"); // 키
  121. ds_return.setColumn(1,"value",opener.ds_main_ininfo.getColumn(0,"fromdd"));
  122. ds_return.addRow();
  123. ds_return.setColumn(2,"key","agmttype"); // 키
  124. ds_return.setColumn(2,"value",opener.ds_main_ininfo.getColumn(0,"agmttype"));
  125. ds_treat.setColumn(0,"tag1", opener.ds_main_ininfo.getColumn(0,"fromdd").substr(0,4) + "/" + opener.ds_main_ininfo.getColumn(0,"fromdd").substr(4,2) + "/" + opener.ds_main_ininfo.getColumn(0,"fromdd").substr(6,2)); //입원일(시작일)
  126. ds_treat.setColumn(0,"tag11",opener.ds_main_ininfo.getColumn(0,"todd").substr(0,4) + "/" + opener.ds_main_ininfo.getColumn(0,"todd").substr(4,2) + "/" + opener.ds_main_ininfo.getColumn(0,"todd").substr(6,2)); //종료일
  127. ds_treat.setColumn(0,"tag2", opener.ds_main_ininfo.getColumn(0,"roomcd")); //병실
  128. ds_treat.setColumn(0,"tag3", opener.ds_main_ininfo.getColumn(0,"bedcnt")); //인실
  129. ds_treat.setColumn(0,"tag4", opener.ds_main_ininfo.getColumn(0,"officetelno")); //진료과전화번호
  130. ds_treat.setColumn(0,"treat",opener.ds_main_ininfo.getColumn(0,"orddeptnm")); // 주진료과명
  131. switch (opener.ds_main_ininfo.getColumn(0,"insukind"))
  132. {
  133. case "11" :
  134. ds_treat.setColumn(0,"tag5","V");
  135. break;
  136. case "21" :
  137. ds_treat.setColumn(0,"tag8","V");
  138. break;
  139. case "31" :
  140. ds_treat.setColumn(0,"tag6","V");
  141. break;
  142. case "41" :
  143. ds_treat.setColumn(0,"tag9","V");
  144. break;
  145. case "51" :
  146. ds_treat.setColumn(0,"tag7","V");
  147. break;
  148. default :
  149. ds_treat.setColumn(0,"tag10","V");
  150. }
  151. if ("031" == sysf_getUserInfo("dutplceinstcd"))
  152. {
  153. ds_treat.setColumn(0,"doctor0","경북대학교병원장");
  154. }
  155. else
  156. {
  157. ds_treat.setColumn(0,"doctor0","칠곡경북대학교병원장");
  158. }
  159. // 결재란 작성
  160. ds_treat.setColumn(0,"tag12", opener.ds_main_ininfo.getColumn(0,"aprv1")); // 담당자 성명
  161. ds_treat.setColumn(0,"tag13", opener.ds_main_ininfo.getColumn(0,"aprv2")); // 팀장 성명
  162. ds_treat.setColumn(0,"tag14", opener.ds_main_ininfo.getColumn(0,"aprv3")); // 과장 성명
  163. //trace("#################opener.ds_main_ininfo:"+opener.ds_main_ininfo.saveXML());
  164. // dbs227, 전자동의서 원무 연동
  165. ds_para_clip.setColumn(0, "ctstartdd", opener.ds_main_ininfo.getColumn(0, "fromdd")); // 약정 시작일
  166. ds_para_clip.setColumn(0, "ctenddd", opener.ds_main_ininfo.getColumn(0, "todd")); // 약정 종료일
  167. ds_para_clip.setColumn(0, "roomcapa", opener.ds_main_ininfo.getColumn(0, "bedcnt")); // 병실 정원
  168. ds_para_clip.setColumn(0, "cttelno", opener.ds_main_ininfo.getColumn(0, "officetelno")); // 진료과 전화번호
  169. ds_para_clip.setColumn(0, "ctstnm1", opener.ds_main_ininfo.getColumn(0, "aprv1")); // 원무 담당자 이름
  170. ds_para_clip.setColumn(0, "ctstnm2", opener.ds_main_ininfo.getColumn(0, "aprv2")); // 원무 팀장 이름
  171. ds_para_clip.setColumn(0, "ctstnm3", opener.ds_main_ininfo.getColumn(0, "aprv3")); // 원무 과장 이름
  172. }
  173. // 이지패스
  174. else if(flag == "V")
  175. {
  176. ds_treat.setColumn(0,"tag1",opener.frmf_getParameter("SSMRC03160_param_cardno1"));
  177. ds_treat.setColumn(0,"tag2",opener.frmf_getParameter("SSMRC03160_param_cardno2"));
  178. ds_treat.setColumn(0,"tag3",opener.frmf_getParameter("SSMRC03160_param_cardno3"));
  179. ds_treat.setColumn(0,"tag4",opener.frmf_getParameter("SSMRC03160_param_cardno4"));
  180. ds_treat.setColumn(0,"tag5",opener.frmf_getParameter("SSMRC03160_param_cardtyy"));
  181. ds_treat.setColumn(0,"tag6",opener.frmf_getParameter("SSMRC03160_param_cardtmm"));
  182. if (opener.frmf_getParameter("SSMRC03160_param_cardoutuse") == "Y")
  183. {
  184. ds_treat.setColumn(0,"tag10","V");
  185. }
  186. if (opener.frmf_getParameter("SSMRC03160_param_cardalluse")=="Y")
  187. {
  188. ds_treat.setColumn(0,"tag11","V");
  189. }
  190. if (opener.frmf_getParameter("SSMRC03160_param_cardtermsame")=="Y")
  191. {
  192. ds_treat.setColumn(0,"tag12","V");
  193. }
  194. else
  195. {
  196. ds_treat.setColumn(0,"tag13","V");
  197. ds_treat.setColumn(0,"tag7",opener.frmf_getParameter("SSMRC03160_param_cardapplyyy"));
  198. ds_treat.setColumn(0,"tag8",opener.frmf_getParameter("SSMRC03160_param_cardapplymm"));
  199. ds_treat.setColumn(0,"tag9",opener.frmf_getParameter("SSMRC03160_param_cardapplydd"));
  200. }
  201. ds_treat.setColumn(0,"year",opener.frmf_getParameter("SSMRC03160_param_cardapplyyy"));
  202. ds_treat.setColumn(0,"month",opener.frmf_getParameter("SSMRC03160_param_cardapplymm"));
  203. ds_treat.setColumn(0,"day",opener.frmf_getParameter("SSMRC03160_param_cardapplydd"));
  204. }
  205. // 환자용 스마트앱 가입 동의서
  206. else if(flag == "M")
  207. {
  208. ds_return.addRow();
  209. ds_return.setColumn(1,"key", "mpphontel"); // 키
  210. ds_return.setColumn(1,"value", ds_treat.getColumn(0,"tag6")); // 코드
  211. }
  212. }
  213. function lf_resize()
  214. {
  215. var m_height;
  216. var m_width;
  217. var m_indx = system.getMonitorIndex(system.clientToScreenX(this, this.position.x), system.clientToScreenX(this, this.position.y))
  218. var s_data = system.getScreenResolution(m_indx); // 잘라야 되는 값..
  219. var array_data = s_data.split(" "); // split 함수사용..
  220. m_width = array_data[0];
  221. m_height = array_data[1];
  222. this.parent.position.x = 0;
  223. this.parent.position.y = 0;
  224. this.parent.position.width = parseInt(m_width)/2 +250;
  225. this.parent.position.height = parseInt(m_height);
  226. }
  227. function padstart()
  228. {
  229. lf_ExistFolder("c:\\receipt", false);
  230. iflag = "1";
  231. //mmbfGetHardCodeInfo("/root/send/reqdata", "/root/init/kocessip", 5978);
  232. dsf_createDs("ds_init_kocessip");
  233. lf_getHardCDList("N", 5978, null, ds_init_kocessip);
  234. var ipaddr = sysf_getUserInfo("ipaddr");
  235. var ipaddrCnt = ds_init_kocessip.getCaseCount("hardcd == '" + ipaddr + "'"); //kocess 사용가능IP
  236. if (ipaddrCnt > 0) {
  237. iflag = "2";
  238. }
  239. if (iflag == "1") {
  240. switch1.tabindex = 0;
  241. switch1.case1.kovanpad.ExitSignpad();
  242. switch1.case1.kovanpad.SetImgName ("../../../../../../receipt/outfile"); // pad
  243. switch1.case1.kovanpad.OpenSign("C:\\receipt\\", 1 ,"서명하세요!");
  244. }
  245. else if ( iflag == "2" )
  246. {
  247. switch1.tabindex = 1;
  248. switch1.case2.kocess.SignRequest(9, 38400, "");
  249. }
  250. }
  251. function ShowMulti()
  252. {
  253. if(ds_variable.getColumn(0,"multiflag")== "FALSE")
  254. {
  255. var m_height;
  256. var m_width;
  257. var m_count = app.monitorNumber;
  258. var s_data = app.monitorCoordinates; // 잘라야 되는 값..
  259. var array_data = s_data.split("|"); // split 함수사용..
  260. var s_data2 = array_data[m_count-1].split(",");
  261. m_height = s_data2[0];
  262. m_width = s_data2[1];
  263. ds_essential.getColumn(0,"Cport","9999");
  264. consent.Sever_start(9999);
  265. var mport = ds_essential.getColumn(0,"Cport");
  266. frmf_setParameter("SSMRC03170_param_mport",mport);
  267. frmf_setParameter("SSMRC03170_param_mheight",m_height);
  268. frmf_setParameter("SSMRC03170_param_mwidth",m_width);
  269. frmf_modal("SSMRC03170", "SSMRC03170", "", "","","","",m_height,m_width,"","","","P");
  270. ds_variable.setColumn(0,"multiflag","TRUE");
  271. //consent.ChangSignArea(0);
  272. }
  273. else
  274. {
  275. // 띄운창 닫히기
  276. frmf_closeChildPop();
  277. //window.children.item(0).close();
  278. ds_variable.setColumn(0,"multiflag","FALSE");
  279. //consent.ChangSignArea(1);
  280. }
  281. }
  282. function ShowPad(lineid)
  283. {
  284. var m_height;
  285. var m_width;
  286. var m_count = system.monitorcount;
  287. var rectObj = system.getScreenRect(m_count);
  288. var file;
  289. var flag;
  290. m_height = 300;
  291. m_width = 300;
  292. m_height2 = rectObj.bottom - rectObj.top;//s_data2[0];
  293. m_width2 = rectObj.right - rectObj.left;//s_data2[1];
  294. if( ds_variable.getColumn(0,"padview") == "TRUE")
  295. {
  296. return;
  297. }
  298. ds_variable.setColumn(0,"padlineid",lineid);
  299. frmf_setParameter("SSMRC03161_param_lineid",lineid);
  300. if(ds_variable.getColumn(0,"multiflag")== "FALSE")
  301. {
  302. ds_variable.setColumn(0,"padview","TRUE");
  303. //window.load("SSMRC03161_LC_SIGNPAD.xrw", "modeless_topmost", "Client", " resize:false;min:hidden;max:hidden;left:"+m_height+"; top:"+m_width+";");
  304. frmf_modal("SSMRC03161", "SSMRC03161", null, false, null, m_height, m_width, null, null, null, null, null, "P");
  305. }
  306. else
  307. {
  308. ds_variable.setColumn(0,"padview","TRUE");
  309. //window.load("SSMRC03161_LC_SIGNPAD.xrw", "modeless_topmost", "Client", " resize:false;min:hidden;max:hidden; left:"+m_height2+"; top:"+m_width2+";");
  310. frmf_modal("SSMRC03161", "SSMRC03161", null, false, null, m_height2, m_width2, null, null, null, null, null, "P");
  311. }
  312. }
  313. function QType()
  314. {
  315. // var instance = document.models(0).instances(0);
  316. var rexpertpage = parseInt(ds_variable.getColumn(0,"RexpertPage"), 10);
  317. var blobpage = ds_fileinfo.rowcount;
  318. var totalpage = rexpertpage + blobpage ;
  319. dsf_makeValue(ds_treat,"totalpage","INT",totalpage);
  320. Select_Template(ds_treat.getColumn(0,"docuname"),
  321. ds_treat.getColumn(0,"patname"),
  322. ds_fileinfo.getColumn(0,"formtypecls"));//formtype
  323. //헤더 푸터 뒷장추가
  324. for(i = 0 ; i<blobpage ; i++)
  325. {
  326. if(ds_forminfo_template.rowcount == i)
  327. {
  328. ds_forminfo_template.addRow();
  329. }
  330. if(ds_imgsize.rowCount == i)
  331. {
  332. ds_imgsize.addRow();
  333. }
  334. ds_forminfo_template.setColumn(rexpertpage, "header2",ds_forminfo_template.getColumn(i, "header"));
  335. ds_imgsize.setColumn(rexpertpage, "width",ds_imgsize.getColumn(i, "width"));
  336. ds_imgsize.setColumn(rexpertpage, "height",ds_imgsize.getColumn(i, "height"));
  337. }
  338. for(i = 0 ; i <rexpertpage ; i++)
  339. {
  340. if(ds_forminfo_template.rowcount == i)
  341. {
  342. ds_forminfo_template.addRow();
  343. }
  344. if(ds_imgsize.rowCount == i)
  345. {
  346. ds_imgsize.addRow();
  347. }
  348. ds_forminfo_template.setColumn(i,"header","");
  349. ds_forminfo_template.setColumn(i,"header2","");
  350. ds_forminfo_template.setColumn(i,"footer","");
  351. ds_imgsize.setColumn(i,"width","");
  352. ds_imgsize.setColumn(i,"height","1050");
  353. }
  354. // dsf_createDs("ds_dummy_fileinfo");
  355. // ds_dummy_fileinfo.addColumn("filepath","string");
  356. // for(var j = 1; j<= rexpertpage; j++)
  357. // {
  358. // ds_dummy_fileinfo.addRow();
  359. // }
  360. var nRow = 0;
  361. //이미지 뒷장추가
  362. for(i = 0 ; i< ds_fileinfo.rowcount ; i++)
  363. {
  364. nRow = ds_dummy_fileinfo.addRow();
  365. ds_dummy_fileinfo.setColumn(nRow,"filepath", ds_fileinfo.getColumn(i,"filepath"));
  366. }
  367. ds_fileinfo.clearData();
  368. for(i = 0 ; i < totalpage ; i++)
  369. {
  370. ds_fileinfo.addRow();
  371. ds_fileinfo.setColumn(i,"filepath", ds_dummy_fileinfo.getColumn(i,"filepath"));
  372. }
  373. ds_send_ocrtreat.setColumn(0, "formcd",ds_dummy.getColumn(0,"formcd"));
  374. // nodelist = instance.selectNodes("/root/main/forminfo");
  375. dsf_createDs("ds_dummy_forminfo");
  376. ds_dummy_forminfo.addColumn("check","string");
  377. ds_dummy_forminfo.addColumn("guide","string");
  378. //벨리데이션 xml 뒷장추가
  379. for(i = 0; i < totalpage ; i++)
  380. {
  381. ds_dummy_forminfo.addRow();
  382. ds_dummy_forminfo.setColumn(i,"check","");
  383. ds_dummy_forminfo.setColumn(i,"guide","");
  384. }
  385. for(i = 0; i <= ds_forminfo.rowcount ; i++)
  386. {
  387. for (j=1; j<= (rexpertpage + i);j++)
  388. {
  389. if(ds_dummy_forminfo.rowcount -1 <= (rexpertpage + i))
  390. {
  391. ds_dummy_forminfo.addRow();
  392. }
  393. }
  394. ds_dummy_forminfo.setColumn((rexpertpage + i), "check",ds_forminfo.getColumn(i,"checkpath"));
  395. ds_dummy_forminfo.setColumn((rexpertpage + i), "guide",ds_forminfo.getColumn(i,"guidepath"));
  396. }
  397. ds_dummy_forminfo.addColumn("check","string");
  398. ds_dummy_forminfo.addColumn("guide","string");
  399. for(i= 0; i < totalpage; i++)
  400. {
  401. if(ds_forminfo.rowcount <= i)
  402. {
  403. ds_forminfo.addRow();
  404. }
  405. ds_forminfo.setColumn(i,"checkpath",ds_dummy_forminfo.getColumn(i,"check"));
  406. ds_forminfo.setColumn(i,"guidepath",ds_dummy_forminfo.getColumn(i,"guide"));
  407. }
  408. }
  409. function OcrPrintCheck()
  410. {
  411. var ocrtag;
  412. ocrtag = ds_paget.getColumn(0,"ocrtag");
  413. ocrtag = ocrtag.replace("+", "");
  414. ocrtag = ocrtag.replace("+", "");
  415. ds_send_ocrhistory.setColumn(0,"ocrtag", ocrtag);
  416. ds_send_ocrhistory.setColumn(0,"delflag", 2);
  417. var oParam = {};
  418. oParam.id = "TXMPL03303";
  419. oParam.service = "imgemrapp.ImgemrBase";
  420. oParam.method = "reqDelOcrHistory";
  421. oParam.inds = "req=ds_send_ocrhistory";
  422. oParam.outds = "";
  423. oParam.async = false;
  424. oParam.callback = "cf_TXMPL03303";
  425. tranf_submit(oParam);
  426. }
  427. function filetransfail(imgpaths)
  428. {
  429. imgpath = imgpaths.split("|"); //저장된 패스 여러장일경우 구분자 '|' 로잘라줘야함
  430. pagecnt = imgpath.length-1;
  431. dsf_createDs("ds_send_delimage");
  432. ds_send_delimage.addColumn("pageno","string");
  433. for (count = 0; count < pagecnt; count++)
  434. {
  435. var nRow = ds_send_delimage.addRow();
  436. ds_send_delimage.setColumn(nRow,ds_data_TXMPL03301.getColumn(count,"pageno"));
  437. }
  438. var oParam = {};
  439. oParam.id = "TXMPL03317";
  440. oParam.service = "imgemrapp.ImgemrBase";
  441. oParam.method = "reqDelChartpaget";
  442. oParam.inds = "req=ds_send_delimage";
  443. oParam.outds = "";
  444. oParam.async = false;
  445. tranf_submit(oParam);
  446. dsf_deleteDs("ds_send_delimage");
  447. }
  448. function wavFilePut() //음성파일 저장
  449. {
  450. var wavdir;
  451. var wavfulldir;
  452. var treatno;
  453. var pid;
  454. treatno = ds_hidden_paget.getColumn(0,"treatno");
  455. pid = ds_send_ocrtreat.getColumn(0,"patid");
  456. if ((wavpaths = consent.Get_recordFilePath()) == "FALSE")
  457. {
  458. }
  459. else
  460. {
  461. wavpath = wavpaths.split("|");
  462. wavdir = ds_ltp_record.getColumn(0,"ltpindexpath") + "\\" +pid + "\\" + treatno + "\\";
  463. if(fso == null){
  464. fso = inff_fileSystemObject();
  465. }
  466. for( count = 0 ;count < wavpath.length-1 ; count++)
  467. {
  468. wavfulldir = wavdir +fso.GetFileName(wavpath[count]);
  469. if (consent.LTPFilePut(wavfulldir,wavpath[count]))
  470. {
  471. }
  472. else
  473. {
  474. alert("저장실패");
  475. return false;
  476. }
  477. }
  478. return true;
  479. }
  480. }
  481. function LTPInit1(server, port, user)
  482. {
  483. if(f_ltp.IsOnline)
  484. {
  485. }
  486. else
  487. {
  488. f_ltp.Server = server;
  489. f_ltp.Port = 2500;
  490. f_ltp.Account = user;
  491. if(f_ltp.Connect())
  492. {
  493. }
  494. else
  495. {
  496. alert("LTP 데몬과의 접속이 실패하였습니다.");
  497. return false;
  498. }
  499. }
  500. }
  501. /*
  502. * 공용 파라미터 세팅
  503. * 공통 파라미터에 존재하지 않는 임의의 값을 설정
  504. * */
  505. function setTags() {
  506. if("031" == sysf_getUserInfo("dutplceinstcd"))
  507. {
  508. ds_treat.setColumn(0,"hospdirector","경북대학교병원장");
  509. }
  510. else
  511. {
  512. ds_treat.setColumn(0,"hospdirector","칠곡경북대학교병원장");
  513. }
  514. var date = utlf_getCurrentDate(); // 오늘날자
  515. ds_treat.setColumn(0,"year",date.substr(0,4));
  516. ds_treat.setColumn(0,"month",date.substr(4,2));
  517. ds_treat.setColumn(0,"day",date.substr(6,2));
  518. var jumin = utlf_transNullToEmpty(ds_treat.getColumn(0,"patjumin")); //주민번호
  519. jumin1 = jumin.substr(0,6)
  520. jumin2 = jumin.substr(7,1) + "xxxxxx"
  521. ds_treat.setColumn(0,"patjumin",jumin1+"-"+jumin2);
  522. ds_treat.setColumn(0,"patjumin1",jumin1);
  523. ds_treat.setColumn(0,"patjumin2",jumin2);
  524. ds_treat.setColumn(0,"tag1", !utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag1"))?opener.frmf_getParameter("SSMRC03160_param_tag1"):ds_treat.getColumn(0,"tag1"));
  525. ds_treat.setColumn(0,"tag2", !utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag2"))?opener.frmf_getParameter("SSMRC03160_param_tag2"):ds_treat.getColumn(0,"tag2"));
  526. ds_treat.setColumn(0,"tag3", !utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag3"))?opener.frmf_getParameter("SSMRC03160_param_tag3"):ds_treat.getColumn(0,"tag3"));
  527. ds_treat.setColumn(0,"tag4", !utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag4"))?opener.frmf_getParameter("SSMRC03160_param_tag4"):ds_treat.getColumn(0,"tag4"));
  528. ds_treat.setColumn(0,"tag5", !utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag5"))?opener.frmf_getParameter("SSMRC03160_param_tag5"):ds_treat.getColumn(0,"tag5"));
  529. ds_treat.setColumn(0,"tag6", !utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag6"))?opener.frmf_getParameter("SSMRC03160_param_tag6"):ds_treat.getColumn(0,"tag6"));
  530. ds_treat.setColumn(0,"tag7", !utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag7"))?opener.frmf_getParameter("SSMRC03160_param_tag7"):ds_treat.getColumn(0,"tag7"));
  531. ds_treat.setColumn(0,"tag8", !utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag8"))?opener.frmf_getParameter("SSMRC03160_param_tag8"):ds_treat.getColumn(0,"tag8"));
  532. ds_treat.setColumn(0,"tag9", !utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag9"))?opener.frmf_getParameter("SSMRC03160_param_tag9"):ds_treat.getColumn(0,"tag9"));
  533. ds_treat.setColumn(0,"tag10",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag10"))?opener.frmf_getParameter("SSMRC03160_param_tag10"):ds_treat.getColumn(0,"tag10"));
  534. ds_treat.setColumn(0,"tag11",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag11"))?opener.frmf_getParameter("SSMRC03160_param_tag11"):ds_treat.getColumn(0,"tag11"));
  535. ds_treat.setColumn(0,"tag12",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag12"))?opener.frmf_getParameter("SSMRC03160_param_tag12"):ds_treat.getColumn(0,"tag12"));
  536. ds_treat.setColumn(0,"tag13",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag13"))?opener.frmf_getParameter("SSMRC03160_param_tag13"):ds_treat.getColumn(0,"tag13"));
  537. ds_treat.setColumn(0,"tag14",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag14"))?opener.frmf_getParameter("SSMRC03160_param_tag14"):ds_treat.getColumn(0,"tag14"));
  538. ds_treat.setColumn(0,"tag15",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag15"))?opener.frmf_getParameter("SSMRC03160_param_tag15"):ds_treat.getColumn(0,"tag15"));
  539. ds_treat.setColumn(0,"tag16",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag16"))?opener.frmf_getParameter("SSMRC03160_param_tag16"):ds_treat.getColumn(0,"tag16"));
  540. ds_treat.setColumn(0,"tag17",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag17"))?opener.frmf_getParameter("SSMRC03160_param_tag17"):ds_treat.getColumn(0,"tag17"));
  541. ds_treat.setColumn(0,"tag18",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag18"))?opener.frmf_getParameter("SSMRC03160_param_tag18"):ds_treat.getColumn(0,"tag18"));
  542. ds_treat.setColumn(0,"tag19",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag19"))?opener.frmf_getParameter("SSMRC03160_param_tag19"):ds_treat.getColumn(0,"tag19"));
  543. ds_treat.setColumn(0,"tag20",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag20"))?opener.frmf_getParameter("SSMRC03160_param_tag20"):ds_treat.getColumn(0,"tag20"));
  544. ds_treat.setColumn(0,"tag21",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag21"))?opener.frmf_getParameter("SSMRC03160_param_tag21"):ds_treat.getColumn(0,"tag21"));
  545. ds_treat.setColumn(0,"tag22",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag22"))?opener.frmf_getParameter("SSMRC03160_param_tag22"):ds_treat.getColumn(0,"tag22"));
  546. ds_treat.setColumn(0,"tag23",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag23"))?opener.frmf_getParameter("SSMRC03160_param_tag23"):ds_treat.getColumn(0,"tag23"));
  547. ds_treat.setColumn(0,"tag24",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag24"))?opener.frmf_getParameter("SSMRC03160_param_tag24"):ds_treat.getColumn(0,"tag24"));
  548. ds_treat.setColumn(0,"tag25",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag25"))?opener.frmf_getParameter("SSMRC03160_param_tag25"):ds_treat.getColumn(0,"tag25"));
  549. ds_treat.setColumn(0,"tag26",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag26"))?opener.frmf_getParameter("SSMRC03160_param_tag26"):ds_treat.getColumn(0,"tag26"));
  550. ds_treat.setColumn(0,"tag27",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag27"))?opener.frmf_getParameter("SSMRC03160_param_tag27"):ds_treat.getColumn(0,"tag27"));
  551. ds_treat.setColumn(0,"tag28",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag28"))?opener.frmf_getParameter("SSMRC03160_param_tag28"):ds_treat.getColumn(0,"tag28"));
  552. ds_treat.setColumn(0,"tag29",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag29"))?opener.frmf_getParameter("SSMRC03160_param_tag29"):ds_treat.getColumn(0,"tag29"));
  553. ds_treat.setColumn(0,"tag30",!utlf_isNull(opener.frmf_getParameter("SSMRC03160_param_tag30"))?opener.frmf_getParameter("SSMRC03160_param_tag30"):ds_treat.getColumn(0,"tag30"));
  554. }
  555. function fBrowserIs()
  556. {
  557. var agt = htmlwindow.navigator.userAgent.toLowerCase();
  558. this.osver = 1.0;
  559. if (agt)
  560. {
  561. var stOSVer = agt.substring(agt.indexOf("windows ") + 11);
  562. this.osver = parseFloat(stOSVer);
  563. ds_init.setColumn(0,"osver",this.osver);
  564. }
  565. }
  566. function fValidateData() {
  567. // 선택진료신청서 필수항목 체크
  568. if (ds_send_ocrtreat.getColumn(0,"flag") == "S") {
  569. var errMsg = "";
  570. for (i = 1; i < 9; i++) {
  571. // 진료지원항목을 선택한 경우에는 위임여부를 반드시 체크
  572. // 위임여부를 체크한 경우 진료지원항목을 반드시 선택
  573. //alert (model.getValue("/root/temp/kind0" + i));
  574. if ((ds_temp.getColumn(0,"kind0" + i) == "Y" && ds_temp.getColumn(0,"choiflag0" + i) != "Y")
  575. || (ds_temp.getColumn(0,"kind0" + i) != "Y" && ds_temp.getColumn(0,"choiflag0" + i) == "Y")) {
  576. if (i == 1) {
  577. errMsg += "진찰 ";
  578. } else if (i == 2) {
  579. errMsg += "검사 ";
  580. } else if (i == 3) {
  581. errMsg += "영상진단 ";
  582. } else if (i == 4) {
  583. errMsg += "방사선치료 ";
  584. } else if (i == 5) {
  585. errMsg += "방사선혈관촬영 ";
  586. } else if (i == 6) {
  587. errMsg += "마취 ";
  588. } else if (i == 7) {
  589. errMsg += "정신요법 ";
  590. } else if (i == 8) {
  591. errMsg += "처치/수술";
  592. }
  593. }
  594. }
  595. if (!utlf_isNull(errMsg)) {
  596. sysf_messageBox("진료지원항목을 선택한 경우 반드시 위임여부를 체크하셔야 하며,\r\n위임여부를 체크한 경우에도 반드시 진료지원항목을 선택하셔야 합니다.\r\n" + errMsg, "C000");
  597. return false;
  598. }
  599. }
  600. }
  601. // 환자쪽 태블릿 스타일 강제지정
  602. function fForceSetPenStyle() {
  603. var cpensize = opener.frmf_getParameter("SSMRC03160_param_cpensize"); // 환자쪽 태블릿 펜굵기 강제설정
  604. if (!utlf_isNull(cpensize)){ // 작성자쪽 펜굵기 강제설정
  605. consent.ChangeCPen(cpensize);
  606. }
  607. var sendmsg = opener.frmf_getParameter("SSMRC03160_param_sendmsg"); // 환자쪽 태블릿 필압설정값 강제설정
  608. if (!utlf_isNull(sendmsg)){ // 작성자쪽 필압적용 강제설정
  609. consent.SendMsg(0, "PRESSUREMODE", sendmsg);
  610. }
  611. }
  612. /****************************************************************************************
  613. * Function : fExistFolder
  614. * Description : 폴더 존재여부 파악
  615. * Argument : 01. folderpath : 생성할 폴더 path
  616. * : 02. pb_recreate : 폴더내 파일 삭제 여부
  617. * retrun type :
  618. * Creator :
  619. ****************************************************************************************/
  620. function lf_ExistFolder(folderpath, pb_recreate){
  621. var objExt2 = new ExtCommon();
  622. if(utlf_isNull(folderpath)){
  623. return;
  624. }
  625. var folderDept = folderpath.split("\\");
  626. var currentPos = folderDept[0];
  627. for(var i =1; i<folderDept.length ; i++){
  628. if(utlf_isNull(folderDept[i])){
  629. break;
  630. }
  631. currentPos += ("\\" + folderDept[i]);
  632. objExt2.checkDirectory(currentPos, 1);
  633. }
  634. if (pb_recreate){
  635. var objFileList = VirtualFile.getFileList(folderpath, "*", VirtualFile.findFileOnly);
  636. for(var i=0; i<objFileList.length; i++){
  637. sFileName = objFileList[i].filename;
  638. bDeleteFile = VirtualFile.delete(folderpath+"\\"+sFileName);
  639. }
  640. }
  641. }]]></Script>