UasEisApplicationTests.java 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. package com.uas.eis;
  2. import com.uas.eis.dao.BaseDao;
  3. import com.uas.eis.entity.EquipConfig;
  4. import com.uas.eis.service.DataDealService;
  5. import com.uas.eis.service.EDCBakService;
  6. import com.uas.eis.task.FileParseTask;
  7. import com.uas.eis.utils.CollectionUtil;
  8. import com.uas.eis.utils.SmbUtil;
  9. import com.uas.eis.utils.SmbUtilSmb1;
  10. import jcifs.CIFSContext;
  11. import jcifs.CIFSException;
  12. import jcifs.config.PropertyConfiguration;
  13. import jcifs.context.BaseContext;
  14. import jcifs.smb.SmbException;
  15. import jcifs.smb.SmbFile;
  16. import org.junit.Test;
  17. import org.junit.runner.RunWith;
  18. import org.slf4j.Logger;
  19. import org.slf4j.LoggerFactory;
  20. import org.springframework.beans.factory.annotation.Autowired;
  21. import org.springframework.boot.test.context.SpringBootTest;
  22. import org.springframework.jdbc.core.BeanPropertyRowMapper;
  23. import org.springframework.test.context.junit4.SpringRunner;
  24. import java.io.IOException;
  25. import java.net.MalformedURLException;
  26. import java.util.Date;
  27. import java.util.List;
  28. import java.util.Map;
  29. import java.util.Properties;
  30. import java.util.concurrent.CountDownLatch;
  31. @RunWith(SpringRunner.class)
  32. @SpringBootTest(classes = {UasEisApplication.class})
  33. public class UasEisApplicationTests {
  34. private final Logger logger = LoggerFactory.getLogger(this.getClass());
  35. @Autowired
  36. private DataDealService dataDealService;
  37. @Autowired
  38. private EDCBakService edcBakService;
  39. @Autowired
  40. private BaseDao baseDao;
  41. @Autowired
  42. private FileParseTask fileParseTask;
  43. @Test
  44. public void contextLoads() {
  45. fileParseTask.dataDeal();
  46. }
  47. //@Test
  48. /* public void contextLoads() {
  49. Date date = new Date();
  50. List<DataChip> dataChips = baseDao.getJdbcTemplate().query("select id_,chipcode_,counterpath_,datapath_,testdate_ from (select id_,chipcode_,counterpath_,datapath_,testdate_ from datacenter$chip where chipcode_='F20025075#04' and nvl(readstatus_,0)=0 and testdate_ is not null order by testdate_ desc) where rownum<=50",
  51. new BeanPropertyRowMapper<DataChip>(DataChip.class));
  52. if(dataChips.size()>0){
  53. List<Integer> IDS = dataChips.stream().map(DataChip::getId_).collect(Collectors.toList());
  54. final CountDownLatch countDownLatch = new CountDownLatch(IDS.size());
  55. baseDao.execute("UPDATE DATACENTER$CHIP SET READSTATUS_=-90 WHERE ID_ IN ("+String.join(",", IDS.stream().map(String::valueOf).collect(Collectors.toList()))+")");
  56. try {
  57. dataChips.stream().forEach(dataChip -> {
  58. dataDealService.EDCDataDeal(dataChip,countDownLatch);
  59. });
  60. countDownLatch.await();
  61. } catch (InterruptedException e) {
  62. e.printStackTrace();
  63. }
  64. }
  65. logger.info("Data文件解析执行结束:用时"+((new Date().getTime()-date.getTime())/1000));
  66. }
  67. //@Test
  68. public void EDCBak(){
  69. logger.info("文件归档开始");
  70. Date date = new Date();
  71. baseDao.callProcedure("DATACENTER_SYNC",new Object[]{""});
  72. //所有设备
  73. List<EquipConfig> EquipConfigs = baseDao.getJdbcTemplate().query("select ec_ip,ec_counterpath,ec_datapath,ec_counterbak,ec_databak,ed_devcode,ed_teststep from EQUIPCONFIGDETAIL LEFT JOIN EQUIPCONFIG ON ED_ECID=EC_ID where ec_databak is not null and ec_ip='172.24.3.155' order by ec_ip",
  74. new BeanPropertyRowMapper<EquipConfig>(EquipConfig.class));
  75. Map<String,List<EquipConfig>> ecMap = CollectionUtil.groupBy(EquipConfigs,EquipConfig::getEc_ip);
  76. final CountDownLatch countDownLatch = new CountDownLatch(EquipConfigs.size());
  77. try {
  78. for(String key : ecMap.keySet()){
  79. edcBakService.EDCBak(ecMap.get(key),countDownLatch);
  80. }
  81. countDownLatch.await();
  82. }catch (Exception e){
  83. e.printStackTrace();
  84. }
  85. logger.info("文件归档结束:用时"+((new Date().getTime()-date.getTime())/1000));
  86. }
  87. @Test
  88. public void test(){
  89. String ip = "172.16.3.17";
  90. SmbFile sb = SmbUtil.getRootFile(ip,"c$");
  91. try {
  92. System.out.println(ip+"测试连接");
  93. sb.exists();
  94. System.out.println(ip+"测试ok连接");
  95. } catch (SmbException e) {
  96. System.out.println(ip+"连接失败");
  97. e.printStackTrace();
  98. }
  99. }*/
  100. /*@Test
  101. public void test2(){
  102. NtlmPasswordAuthentication npa = new NtlmPasswordAuthentication(null,"administrator","0DlbAdmin0");
  103. try {
  104. SmbFile sf = new SmbFile(SmbUtil.getSmbRootUrl("172.16.3.22","c$"),npa);
  105. sf.connect();
  106. } catch (MalformedURLException e) {
  107. e.printStackTrace();
  108. } catch (IOException e) {
  109. e.printStackTrace();
  110. }
  111. }*/
  112. /* //@Test
  113. public void test3 (){
  114. Properties ps = new Properties();
  115. ps.setProperty("jcifs.smb.client.domain", "172.16.3.22");
  116. ps.setProperty("jcifs.smb.client.username", "administrator");
  117. ps.setProperty("jcifs.smb.client.password", "0DlbAdmin0");
  118. // 这个 disable 属性默认为 false , 不设置为 true 的话读取共享文件会比较慢
  119. ps.setProperty("jcifs.smb.client.dfs.disabled", "true");
  120. CIFSContext cifs = null;
  121. try {
  122. cifs = new BaseContext(new PropertyConfiguration(ps));
  123. } catch (CIFSException e) {
  124. e.printStackTrace();
  125. }
  126. for (int i =0 ;i<100;i++){
  127. //SmbFile sb = SmbUtil.getCurrentFile("172.16.3.22","c$/c"+i);
  128. SmbFile sb = null;
  129. try {
  130. //sb = SmbUtil.getCurrentFile("172.16.3.22","c$/c"+i);
  131. sb = new SmbFile(SmbUtil.getSmbRootUrl("172.16.3.22","c$/c"+i),cifs);
  132. } catch (Exception e) {
  133. e.printStackTrace();
  134. }
  135. try {
  136. sb.exists();
  137. System.out.println("-----"+i);
  138. } catch (SmbException e) {
  139. e.printStackTrace();
  140. }
  141. };
  142. }
  143. //@Test
  144. public void test4(){
  145. List<EquipConfig> EquipConfigs = baseDao.getJdbcTemplate().query("select ec_ip,ec_counterpath,ec_datapath,ec_counterbak,ec_databak,ed_devcode,ed_teststep from EQUIPCONFIGDETAIL LEFT JOIN EQUIPCONFIG ON ED_ECID=EC_ID where ec_databak is not null order by ec_ip",
  146. new BeanPropertyRowMapper<EquipConfig>(EquipConfig.class));
  147. for(EquipConfig ec : EquipConfigs ){
  148. SmbFile dataFile = SmbUtil.getCurrentFile(ec.getEc_ip(),"c$");
  149. try {
  150. dataFile.connect();
  151. System.out.println(ec.getEc_ip()+"连接通过");
  152. } catch (Exception e) {
  153. System.out.println(ec.getEc_ip()+"连接失败,"+e.getMessage());
  154. e.printStackTrace();
  155. }
  156. }
  157. }*/
  158. @Test
  159. public void EDCBak(){
  160. logger.info("文件归档开始");
  161. Date date = new Date();
  162. //baseDao.callProcedure("DATACENTER_SYNC",new Object[]{""});
  163. //所有设备
  164. List<EquipConfig> EquipConfigs = baseDao.getJdbcTemplate().query("select ec_ip,ec_counterpath,ec_datapath,ec_counterbak,ec_databak,ed_devcode,ed_teststep from EQUIPCONFIGDETAIL LEFT JOIN EQUIPCONFIG ON ED_ECID=EC_ID where ec_databak is not null and ec_ip='172.16.3.32' order by ec_ip",
  165. new BeanPropertyRowMapper<EquipConfig>(EquipConfig.class));
  166. Map<String,List<EquipConfig>> ecMap = CollectionUtil.groupBy(EquipConfigs,EquipConfig::getEc_ip);
  167. final CountDownLatch countDownLatch = new CountDownLatch(EquipConfigs.size());
  168. try {
  169. for(String key : ecMap.keySet()){
  170. edcBakService.EDCBak(ecMap.get(key),countDownLatch);
  171. }
  172. countDownLatch.await();
  173. }catch (Exception e){
  174. e.printStackTrace();
  175. }
  176. logger.info("文件归档结束:用时"+((new Date().getTime()-date.getTime())/1000));
  177. }
  178. //@Test
  179. public void test123(){
  180. }
  181. }