package com.ycl.sccgplatform;
|
|
import com.aliyun.oss.ClientBuilderConfiguration;
|
import com.aliyun.oss.OSS;
|
import com.aliyun.oss.OSSClientBuilder;
|
import com.aliyun.oss.OSSException;
|
import com.aliyun.oss.common.auth.CredentialsProviderFactory;
|
import com.aliyun.oss.common.auth.EnvironmentVariableCredentialsProvider;
|
import com.aliyun.oss.common.comm.SignVersion;
|
import com.aliyuncs.exceptions.ClientException;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.dahua.netsdk.lib.callback.impl.AnalyzerDataCB;
|
import com.ycl.common.util.UtilNumber;
|
import com.ycl.entity.dingding.DingUserInfo;
|
import com.ycl.entity.user.UmsAdmin;
|
import com.ycl.mapper.unlawful.UnlawfulMapper;
|
import com.ycl.service.caseHandler.IBaseCaseService;
|
import com.ycl.service.caseHandler.IViolationsService;
|
import com.ycl.service.oss.OssService;
|
import com.ycl.utils.ConstantPropertiesUtils;
|
import com.ycl.vo.casePool.BaseCaseVO;
|
import net.coobird.thumbnailator.Thumbnails;
|
import org.junit.jupiter.api.Test;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.boot.test.context.SpringBootTest;
|
import org.springframework.context.annotation.ComponentScan;
|
|
import javax.annotation.Resource;
|
import javax.xml.bind.DatatypeConverter;
|
import java.io.*;
|
import java.net.HttpURLConnection;
|
import java.net.URL;
|
import java.time.LocalDateTime;
|
import java.time.format.DateTimeFormatter;
|
import java.util.*;
|
|
@ComponentScan("com.dahua.netsdk")
|
@SpringBootTest
|
public class Test1 {
|
|
@Autowired
|
private IBaseCaseService baseCaseService;
|
|
@Autowired
|
private OssService ossService;
|
|
@Autowired
|
private IViolationsService violationsService;
|
|
@Resource
|
private UnlawfulMapper unlawfuldao;
|
@Autowired
|
UtilNumber utilNumber;
|
|
@Test
|
void test() {
|
String fileUrl = "https://xshlivelesson.oss-cn-shenzhen.aliyuncs.com/2.pptx?Expires=1738857178&OSSAccessKeyId=LTAIxtcfDe3fgfcf&Signature=wTwx6JA6VWbPB0skVySy9MCexog=";
|
// http://zhzfptoss.oss-cn-zjls-lszwy-d01-a.ops.zjlscloud.com/sczf/2023062950465224.jpg?Expires=2634106907&OSSAccessKeyId=Tkf72Q1gdzETsZf6&Signature=ttME%2BeFhss8wPbkRCxAsV%2FPNWGQ%3D
|
|
OSS ossClient = null;
|
try {
|
|
String endpoint = "https://oss-cn-beijing.aliyuncs.com";
|
String accessKeyId = "LTAIxtcfDe3fgfcf";
|
String accessKeySecret = "xHxLVU5dm7USdJuQaCfp1hpcUU1u8v";
|
String bucketName = "huachuang-resource";
|
|
String[] urlArray = fileUrl.split("Expires=");
|
|
String objectName = urlArray[0].replace(ConstantPropertiesUtils.PREFIX_URL, "");
|
objectName = objectName.replace("?", "");
|
|
ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
|
|
|
// 设置签名URL过期时间,单位为毫秒。本示例以设置过期时间为1小时为例。
|
Date expiration = new Date(new Date().getTime() + 3600 * 1000L);
|
// 生成以GET方法访问的签名URL。本示例没有额外请求头,其他人可以直接通过浏览器访问相关内容。
|
URL url = ossClient.generatePresignedUrl(bucketName, objectName, expiration);
|
System.out.println(url);
|
|
//
|
// // http://zhzfptoss.oss-cn-zjls-lszwy-d01-a.ops.zjlscloud.com/sczf/2025020620664017jpg?v=2684887407&OSSAccessKeyId=Tkf72Q1gdzETsZf6&Signature=88dn7R/gDdqxWUCqZdCi/NgSXg8=
|
// OSS ossClient = null;
|
// try {
|
// // 以华东1(杭州)的外网Endpoint为例,其它Region请按实际情况填写。
|
// String endpoint = "https://oss-cn-beijing.aliyuncs.com";
|
// // 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
|
//// EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
|
// // 填写Bucket名称,例如examplebucket。
|
// String bucketName = "huachuang-resource";
|
// // 填写Object完整路径,例如exampleobject.txt。Object完整路径中不能包含Bucket名称。
|
// String objectName = "家庭教育/中国陶行知协会家庭教育专委会.doc";
|
// // 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou。
|
// String region = "cn-beijing";
|
// String accessKeyId = "LTAIxtcfDe3fgfcf";
|
// String accessKeySecret = "xHxLVU5dm7USdJuQaCfp1hpcUU1u8v";
|
// // 创建OSSClient实例。
|
// ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
|
// clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);
|
//
|
// ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
|
//
|
//
|
// // 设置签名URL过期时间,单位为毫秒。本示例以设置过期时间为1小时为例。
|
// Date expiration = new Date(new Date().getTime() + 3600 * 1000L);
|
// // 生成以GET方法访问的签名URL。本示例没有额外请求头,其他人可以直接通过浏览器访问相关内容。
|
// URL url = ossClient.generatePresignedUrl(bucketName, objectName, expiration);
|
//
|
//
|
// try {
|
// HttpURLConnection conn = (HttpURLConnection) url.openConnection();
|
// conn.setRequestMethod("GET");
|
// conn.setConnectTimeout(10 * 1000);
|
// conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
|
//
|
// InputStream input = conn.getInputStream();// 通过输入流获取图片数据
|
//
|
// FileOutputStream downloadFile = new FileOutputStream("D://1.doc");
|
//
|
// int index;
|
// byte[] bytes = new byte[1024];
|
//
|
// while ((index = input.read(bytes)) != -1) {
|
// downloadFile.write(bytes, 0, index);
|
// downloadFile.flush();
|
// }
|
// downloadFile.close();
|
// input.close();
|
|
//
|
// ByteArrayOutputStream outs = new ByteArrayOutputStream();
|
// Thumbnails.of(in).scale(0.6).outputQuality(1).toOutputStream(outs);
|
// InputStream ins = new ByteArrayInputStream(outs.toByteArray());
|
// String picData = ossService.uploadImages(ins, ".png", 0);
|
// System.out.println(picData);
|
|
|
} catch (
|
OSSException oe) {
|
System.out.println("Caught an OSSException, which means your request made it to OSS, "
|
+ "but was rejected with an error response for some reason.");
|
System.out.println("Error Message:" + oe.getErrorMessage());
|
System.out.println("Error Code:" + oe.getErrorCode());
|
System.out.println("Request ID:" + oe.getRequestId());
|
System.out.println("Host ID:" + oe.getHostId());
|
} finally {
|
if (ossClient != null) {
|
ossClient.shutdown();
|
}
|
}
|
|
}
|
|
// List<CategoryDto> data = unlawfuldao.getDataByType(0, 5,"2022-12-14 17:19:01", "2022-12-14 17:19:03");
|
// System.out.println(data);
|
// String url = "http://test.xshcs.com/10%E6%9C%88%E6%8E%92%E6%9C%9F.jpg";
|
// try {
|
// HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
|
// connection.setReadTimeout(5000);
|
// connection.setConnectTimeout(5000);
|
// connection.setRequestMethod("GET");
|
// if (connection.getResponseCode() == HttpURLConnection.HTTP_OK) {
|
// InputStream in = connection.getInputStream();
|
// ByteArrayOutputStream outs = new ByteArrayOutputStream();
|
// Thumbnails.of(in).scale(0.6).outputQuality(1).toOutputStream(outs);
|
// InputStream ins = new ByteArrayInputStream(outs.toByteArray());
|
// String picData = ossService.uploadImages(ins, ".png",0);
|
// System.out.println(picData);
|
// }
|
// } catch (IOException e) {
|
// System.out.println("获取网络图片出现异常,图片路径为:" + url);
|
//
|
// e.printStackTrace();
|
// }
|
//}
|
|
// @Test
|
// void test1(){
|
// List<StatusDto> statusData = unlawfuldao.getStatusData(null, null, 23);
|
// System.out.println(statusData);
|
// }
|
|
@Test
|
void test2() {
|
double v = Double.parseDouble("1.0");
|
double v1 = Double.parseDouble("3.0");
|
System.out.println(v / v1);
|
}
|
|
@Test
|
void test3() {
|
System.out.println("sczf/" + String.valueOf(UUID.randomUUID()));
|
}
|
|
@Test
|
void test4() throws Exception {
|
String extension = "jpg";
|
|
File file = new File("src/main/resources/file.txt");
|
FileInputStream fis = new FileInputStream(file);
|
InputStreamReader isr = new InputStreamReader(fis);
|
BufferedReader br = new BufferedReader(isr);
|
|
String PicData = br.readLine();
|
byte[] data = DatatypeConverter.parseBase64Binary(PicData);
|
InputStream inputStream = new ByteArrayInputStream(data);
|
String s = ossService.uploadImages(inputStream, extension, 0);
|
System.out.println(s);
|
|
br.close();
|
isr.close();
|
fis.close();
|
}
|
|
// @Autowired
|
// AnalyzerDataCB analyzerDataCB;
|
|
@Test
|
void alarmTest() throws UnsupportedEncodingException {
|
|
// analyzerDataCB.invoke(null, 0, null, null, 0, null, 0, null);
|
|
// AlarmDataCB cbMessage = new AlarmDataCB();
|
// String m_strIp = "172.28.194.177";
|
// int m_nPort = 37777;
|
// String m_strUser = "admin";
|
// String m_strPassword = "scdx@123";
|
// LoginModule.login(m_strIp, m_nPort, m_strUser, m_strPassword);
|
// AlarmListenModule.startListen(cbMessage);
|
//
|
// System.out.println(cbMessage.data);
|
|
// https://xshlivelesson.oss-accelerate.aliyuncs.com/sczf/2025-02-28%2015%3A53%3A293732..JPG?Expires=2686809213&OSSAccessKeyId=LTAIDlTWjHW0IVyW&Signature=Q5WO2kQcWRpq0SQiYjBCo6rGyJE%3D"
|
|
// ossService.deleteImages("https://xshlivelesson.oss-cn-shenzhen.aliyuncs.com/sczf/2025022845414037.JPG?Expires=2686811218&OSSAccessKeyId=LTAIDlTWjHW0IVyW&Signature=5SQ7PInLkbd62zJ1aurljeO0c%2Bw%3D");
|
//
|
// int i = 1;
|
// while (true) {
|
// String beginTime = "2025-01-01 00:00:00";
|
// String endTime = LocalDateTime.now().plusDays(-4).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
// Page<BaseCaseVO> page = baseCaseService.selectVideoInspection(i, 10, null, null, beginTime, endTime, null);
|
// if (page.getRecords().size() > 0) {
|
// page.getRecords().forEach(baseCaseVO -> {
|
// String picData = baseCaseVO.getPicData();
|
// String[] urls = picData.split(",");
|
// for (String url : urls) {
|
// ossService.deleteImages(url);
|
//
|
// }
|
// baseCaseService.removeById(baseCaseVO.getBaseId());
|
// violationsService.removeById(baseCaseVO.getBaseId());
|
// });
|
// } else {
|
// break;
|
// }
|
// i++;
|
// }
|
}
|
|
|
}
|