From 9906987f77abf2f0669a44a877ad86ac730fdfdd Mon Sep 17 00:00:00 2001
From: 张磊磊 <201175954@qq.com>
Date: 星期二, 12 十二月 2023 12:08:01 +0800
Subject: [PATCH] 图片转换

---
 hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/impl/HelmetServiceImpl.java |  157 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 151 insertions(+), 6 deletions(-)

diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/impl/HelmetServiceImpl.java b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/impl/HelmetServiceImpl.java
index 4309279..fb1a6d3 100644
--- a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/impl/HelmetServiceImpl.java
+++ b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/impl/HelmetServiceImpl.java
@@ -1,25 +1,37 @@
 package com.thhy.materials.modules.biz.helmet.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
+import org.apache.commons.io.FilenameUtils;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.thhy.general.common.BasicResult;
 import com.thhy.materials.modules.biz.helmet.entity.*;
 import com.thhy.materials.modules.biz.helmet.entity.dto.ReportNumDto;
+import com.thhy.materials.modules.biz.helmet.entity.dto.TypeName;
 import com.thhy.materials.modules.biz.helmet.mapper.HelmetMapper;
 import com.thhy.materials.modules.biz.helmet.service.HelmetService;
+import org.csource.common.MyException;
+import org.csource.common.NameValuePair;
+import org.csource.fastdfs.StorageClient;
 import org.springframework.stereotype.Service;
+import sun.misc.Cache;
 
 import javax.annotation.Resource;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import javax.imageio.ImageIO;
+import java.awt.image.BufferedImage;
+import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 @Service
 public class HelmetServiceImpl implements HelmetService {
 
     @Resource
     private HelmetMapper helmetMapper;
-
+    @Resource
+    private StorageClient storageClient;
 
     @Override
     public List<THelmetDevice> helmetServiceList() {
@@ -111,10 +123,10 @@
     }
 
     @Override
-    public BasicResult dataValueInsert(Map<String, Object> values) {
+    public BasicResult dataValueIn(Map<String, Object> values) {
 
 
-        helmetMapper.dataValueInsert(values);
+        helmetMapper.dataValueIn(values);
         return BasicResult.success();
     }
 
@@ -132,4 +144,137 @@
         List<THelmetReport> helmetReports =  helmetMapper.helmetReportUser(values);
         return BasicResult.success(helmetReports);
     }
+
+    @Override
+    public void smockIn(TDataSmock tDataSmock) {
+        System.out.println("参数为---"+tDataSmock.toString());
+        helmetMapper.smockIn(tDataSmock);
+    }
+
+    @Override
+    public BasicResult dataSmockList(Map<String, Object> values) {
+        Integer pageSize = Integer.valueOf(values.get("pageSize").toString());
+        Integer pageNum = Integer.valueOf(values.get("pageNum").toString());
+        PageHelper.startPage(pageNum,pageSize);
+        List<TDataSmock> dataSmocks = helmetMapper.dataSmockList(values);
+        PageInfo<TDataSmock> tDataSmockPageInfo = new PageInfo<>(dataSmocks);
+        return BasicResult.success(tDataSmockPageInfo);
+    }
+
+    @Override
+    public BasicResult dataValuesList(Map<String, Object> values) {
+        Integer pageSize = Integer.valueOf(values.get("pageSize").toString());
+        Integer pageNum = Integer.valueOf(values.get("pageNum").toString());
+        PageHelper.startPage(pageNum,pageSize);
+        List<TDataValue> dataSmocks = helmetMapper.dataValuesList(values);
+        PageInfo<TDataValue> tDataValuePageInfo = new PageInfo<>(dataSmocks);
+        return BasicResult.success(tDataValuePageInfo);
+    }
+
+    @Override
+    public BasicResult dataBox(JSONObject result) throws IOException, MyException {
+
+        Integer type = Integer.valueOf(result.get("type").toString());
+
+        TDataAi tDataAi = new TDataAi();
+        //公共参数
+        tDataAi.setType(type);
+        tDataAi.setTypeName(result.get("typeName").toString());
+        tDataAi.setRtspUrl(result.getString("rtspUrl"));
+        tDataAi.setBoxId(Integer.valueOf(result.get("boxId").toString()));
+        tDataAi.setBoxName(result.get("boxName").toString());
+        tDataAi.setDeviceName(result.get("deviceName").toString());
+        tDataAi.setDeviceId(result.get("deviceId").toString());
+        tDataAi.setEnterName(result.get("enterName").toString());
+        tDataAi.setEnterCode(result.get("enterCode").toString());
+        //图片上传
+        //ByteArrayInputStream bais = null;
+        byte[] bytes = Base64.getDecoder().decode(result.get("signAvatar").toString());
+        //构建字节数组输入流
+        //bais = new ByteArrayInputStream(bytes);
+//        BufferedImage bufferedImage = ImageIO.read(bais);
+//        //通过ImageIO把字节数组输入流转为BufferedImage
+//        //构建文件
+//        File imageFile = new File(imageFileName);
+        NameValuePair[] nv = new NameValuePair[2];
+        nv[0] = new NameValuePair("name","ai报警图片");
+        nv[1] = new NameValuePair("uploadTime",new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
+        String[] paths = storageClient.upload_file(bytes, "jpg",nv);
+        String p1 = paths[0];
+        String p2 = paths[1];
+        String path = p1+"/"+p2;
+        //上边缺少图片处理
+        tDataAi.setSignTime(result.get("signTime").toString());
+        tDataAi.setSignAvatar(path);
+        tDataAi.setSignBigAvatar(result.get("signBigAvatar").toString());
+        tDataAi.setChannelNo(result.get("channelNo").toString());
+        tDataAi.setX(result.getIntValue("x"));
+        tDataAi.setY(result.getIntValue("y"));
+        tDataAi.setW(result.getIntValue("w"));
+        tDataAi.setH(result.getIntValue("h"));
+
+        if(type==1){//人脸
+            tDataAi.setAge(result.getIntValue("age"));
+            tDataAi.setGender(result.getIntValue("gender"));
+            tDataAi.setGlasses(result.getIntValue("glasses"));
+            tDataAi.setMask(result.getIntValue("mask"));
+            //人脸照片 base64 (需要解密)
+            tDataAi.setCertifiedAvatarUrl(result.getString("certifiedAvatarURL"));
+
+            tDataAi.setFaceId(result.getIntValue("faceId"));
+            tDataAi.setPersonType(result.getIntValue("personType"));
+            tDataAi.setFaceMaxSorce(result.getString("faceMaxSorce"));
+            tDataAi.setPersonName(result.getString("personName"));
+
+
+        }else if(type==2){//人体
+
+
+
+
+        }else if(type==3){//车辆
+            tDataAi.setLicensePlateNumber(result.getString("licensePlateNumber"));
+            tDataAi.setIllegalParking(result.getIntValue("illegalParking"));
+
+        }else if(type==4){//电动车
+            tDataAi.setEBike(result.getIntValue("eBike"));
+        }else if(type==5){//烟火
+            tDataAi.setSmoke(result.getIntValue("smoke"));
+            tDataAi.setFire(result.getIntValue("fire"));
+
+        }else if(type==6){//离岗
+            tDataAi.setIsExist(result.getIntValue("isExist"));
+        }else if(type==8){//灭火器
+            tDataAi.setExt(result.getIntValue("ext"));
+        }else if(type==10){//油罐车
+            tDataAi.setTanker(result.getIntValue("tanker"));
+        }else if(type==16){//睡岗
+            //
+
+        } else if(type==23){//杂物堆积
+            tDataAi.setSudire(result.getIntValue("sudire"));
+        }else if(type==24){//摄像头遮挡
+            tDataAi.setCover(result.getIntValue("cover"));
+        }else if(type==26){//消防通道占用
+            tDataAi.setFireControl(result.getIntValue("fireControl"));
+        }
+        helmetMapper.dataBox(tDataAi);
+        return BasicResult.success();
+    }
+
+    @Override
+    public BasicResult dataAIList(Map<String, Object> values) {
+        Integer pageNum = Integer.valueOf(values.get("pageNum").toString());
+        Integer pageSize = Integer.valueOf(values.get("pageSize").toString());
+        PageHelper.startPage(pageNum,pageSize);
+        List<TDataAi> tDataAis = helmetMapper.dataAIList(values);
+        PageInfo<TDataAi> tDataAiPageInfo = new PageInfo<>(tDataAis);
+        return BasicResult.success(tDataAiPageInfo);
+    }
+
+    @Override
+    public BasicResult dataAIType() {
+        List<TypeName> typeNames = helmetMapper.dataAIType();
+        return BasicResult.success(typeNames);
+    }
 }

--
Gitblit v1.9.3