From 8876bd76201b4be1d82aa77a1ba7f0b25d4239b9 Mon Sep 17 00:00:00 2001
From: ke <893754509@qq.com>
Date: Tue, 03 Dec 2024 09:52:55 +0800
Subject: [PATCH] 白蚁新模块。图片上传接口。更新12-3 10:00
---
skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/nettyUpload/HttpUploadFileHandler.java | 166 +++++++++++++++++++++++++++++++------------------------
1 files changed, 93 insertions(+), 73 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/nettyUpload/HttpUploadFileHandler.java b/skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/nettyUpload/HttpUploadFileHandler.java
index 32f5896..122e875 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/nettyUpload/HttpUploadFileHandler.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/nettyUpload/HttpUploadFileHandler.java
@@ -51,7 +51,17 @@
private static final String UPLOAD_DATA_URL = "/termite/syncDeviceState";
+
+ /***
+ * 新设备传图片接口
+ */
private static final String UPLOAD_FILE_URL = "/termite/termiteDataup";
+ /**
+ * 旧设备传图片接口
+ * 没有Authorization验证
+ */
+ private static final String UPLOAD_FILE_URL_OLD = "/termite/termiteDataupOld";
+
private NettyHttpConfig nettyHttpConfig;
private BaiyiPicService baiyiPicService;
@@ -82,92 +92,38 @@
protected void channelRead0(ChannelHandlerContext ctx, FullHttpRequest fullRequest) throws Exception {
- // Authorization验证
- boolean isRequestValid = isValidHttpRequest(ctx, fullRequest);
- if (!isRequestValid) {
- HttpResponseUtils.sendResponseJson2(ctx, HttpResponseStatus.BAD_REQUEST, "验证失败",null);
- return ;
- }
+
// 请求路径验证
String urlyz = urlyz(ctx, fullRequest);
if (UPLOAD_FILE_URL.equals(urlyz)) { //传图片
- HttpPostMultipartRequestDecoder test = new HttpPostMultipartRequestDecoder(fullRequest);
- List<InterfaceHttpData> bodyHttpDatas = test.getBodyHttpDatas();
- XfByPic xfByPic = new XfByPic();
-
- for (InterfaceHttpData item : bodyHttpDatas ) {
- if ( item instanceof Attribute){
- Attribute attribute = (Attribute)item;
- System.out.println("getName:::"+attribute.getName());
- System.out.println("getValue:::"+attribute.getValue());
- String value = attribute.getValue();
- switch(attribute.getName()){
- case "mnNo":
- xfByPic.setMnNo(value);
- break;
- case "order":
-
- xfByPic.setOrder(value);
- break;
- case "sn":
- xfByPic.setSn(value);
- break;
- case "ap":
- xfByPic.setAp(value);
- break;
- case "camera":
- xfByPic.setCamera(value);
- break;
- case "hardware":
- xfByPic.setHardware(value);
- break;
- case "rssi":
- xfByPic.setRssi(value);
- break;
- case "software":
- xfByPic.setSoftware(value);
- break;
- case "temperature":
- xfByPic.setTemperature(value);
- break;
- case "voltage":
- xfByPic.setVoltage(value);
- break;
- }
-
-
- } else if (item instanceof FileUpload) {
-
- FileUpload file = (FileUpload)item;
- String filename = file.getFilename();
-
- ByteArrayInputStream stream = new ByteArrayInputStream(ByteBufUtil.getBytes(file.getByteBuf()));
- MockMultipartFile multipartFile
- = new MockMultipartFile("11", filename, "application/octet-stream", stream);
-
- String picurl = iOssClient.uploadFile(filename, multipartFile);
- log.info("图片上传地址::"+picurl);
- xfByPic.setImageurl(picurl);
- }
+ // Authorization验证
+ boolean isRequestValid = isValidHttpRequest(ctx, fullRequest);
+ if (!isRequestValid) {
+ HttpResponseUtils.sendResponseJson2(ctx, HttpResponseStatus.BAD_REQUEST, "验证失败",null);
+ return ;
}
- xfByPic.setCreatedAt(new Date());
+
+ XfByPic xfByPic = setEntity(fullRequest);
+
// 保存入库xfByPic
baiyiPicService.inserXfPicUrl(xfByPic);
- } else if(UPLOAD_DATA_URL.equals(urlyz)) { //传数据
+ }else if(UPLOAD_FILE_URL_OLD.equals(urlyz)) { // 旧类型设备上传图片数据接口
+ log.info("UPLOAD_FILE_URL_OLD接口调用成功!!!!:");
+ System.err.println(fullRequest);
+
+ XfByPic xfByPic = setEntity(fullRequest);
+ // 保存入库xfByPic
+ baiyiPicService.inserXfOldPicUrl(xfByPic);
+
+
+ }else if(UPLOAD_DATA_URL.equals(urlyz)) { //传数据
HttpPostMultipartRequestDecoder test = new HttpPostMultipartRequestDecoder(fullRequest);
List<InterfaceHttpData> bodyHttpDatas = test.getBodyHttpDatas();
for (InterfaceHttpData item : bodyHttpDatas ) {
if ( item instanceof Attribute){
-// FileUpload file = (FileUpload)item;
-// String filename = file.getFilename();
-// ByteArrayInputStream stream = new ByteArrayInputStream(ByteBufUtil.getBytes(file.getByteBuf()));
-// MockMultipartFile multipartFile
-// = new MockMultipartFile("11", filename, "application/octet-stream", stream);
-// String picurl = iOssClient.uploadFile(filename, multipartFile);
-// log.info("图片上传地址::"+picurl);
} else if (item instanceof FileUpload) {
System.out.println("Attribute:::"+item.getName());
@@ -184,6 +140,70 @@
HttpResponseUtils.sendResponseJson(ctx, HttpResponseStatus.OK, "上传成功");
}
+ //请求参数注入实体
+ public XfByPic setEntity(FullHttpRequest fullRequest) throws Exception {
+ HttpPostMultipartRequestDecoder test = new HttpPostMultipartRequestDecoder(fullRequest);
+ List<InterfaceHttpData> bodyHttpDatas = test.getBodyHttpDatas();
+ XfByPic xfByPic = new XfByPic();
+ for (InterfaceHttpData item : bodyHttpDatas ) {
+ if (item instanceof Attribute) {
+ Attribute attribute = (Attribute) item;
+ String value = attribute.getValue();
+ switch (attribute.getName()) {
+ case "mnNo":
+ xfByPic.setMnNo(value);
+ break;
+ case "order":
+
+ xfByPic.setOrder(value);
+ break;
+ case "sn":
+ xfByPic.setSn(value);
+ break;
+ case "ap":
+ xfByPic.setAp(value);
+ break;
+ case "camera":
+ xfByPic.setCamera(value);
+ break;
+ case "hardware":
+ xfByPic.setHardware(value);
+ break;
+ case "rssi":
+ xfByPic.setRssi(value);
+ break;
+ case "software":
+ xfByPic.setSoftware(value);
+ break;
+ case "temperature":
+ xfByPic.setTemperature(value);
+ break;
+ case "voltage":
+ xfByPic.setVoltage(value);
+ break;
+ }
+
+
+ } else if (item instanceof FileUpload) {
+
+ FileUpload file = (FileUpload) item;
+ String filename = file.getFilename();
+
+ ByteArrayInputStream stream = new ByteArrayInputStream(ByteBufUtil.getBytes(file.getByteBuf()));
+ MockMultipartFile multipartFile
+ = new MockMultipartFile("11", filename, "application/octet-stream", stream);
+
+ String picurl = iOssClient.uploadFile(filename, multipartFile);
+ log.info("图片上传地址::" + picurl);
+ xfByPic.setImageurl(picurl);
+ }
+ }
+ xfByPic.setCreatedAt(new Date());
+
+ return xfByPic;
+ }
+
+
// 请求路径验证
public String urlyz(ChannelHandlerContext ctx, FullHttpRequest request) {
try {
--
Gitblit v1.9.3