浏览代码

修复导出bug

zhuoning 4 年之前
父节点
当前提交
7435230875

+ 18 - 4
huimv-video/huimv-video-manager/src/main/java/com/huimv/manager/controller/ImageManagerController.java

@@ -7,6 +7,8 @@ import com.huimv.manager.service.IImageService;
 import com.huimv.manager.utils.DateUtil;
 import com.huimv.manager.utils.ImageByteUtil;
 //import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;
+import com.huimv.manager.utils.Result;
+import com.huimv.manager.utils.ResultCode;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.compress.archivers.ArchiveException;
 import org.apache.commons.compress.archivers.ArchiveOutputStream;
@@ -109,6 +111,7 @@ public class ImageManagerController {
             imageJo.put("imgPath", imageEntity.getImgPath());
             imageJo.put("name", imageEntity.getName());
             imageJo.put("relativePath", imageEntity.getRelativePath());
+            imageJo.put("pigQuantity", imageEntity.getPigQuantity());
             imageJa.add(imageJo);
         }
         // 读取记录数
@@ -129,8 +132,14 @@ public class ImageManagerController {
      * @Time : 19:09
      */
     @RequestMapping(value = "/getPreviousImage", method = RequestMethod.GET)
-    public JSONObject getPreviousImage(@RequestParam(value = "imageId", required = true) int imageId) {
-        return imageService.getOneImage("previous", imageId);
+    public Result getPreviousImage(@RequestParam(value = "imageId", required = true) int imageId) {
+        //
+        ImagePathEntity imagePathEntity = imageService.getOneImage("previous", imageId);
+        if(imagePathEntity == null){
+            return new Result(10001,"未查询到任何记录.",false);
+        }else{
+            return new Result(ResultCode.SUCCESS,(JSONObject)JSONObject.toJSON(imagePathEntity));
+        }
     }
 
     /**
@@ -143,9 +152,14 @@ public class ImageManagerController {
      * @Time : 19:09
      */
     @RequestMapping(value = "/getNextImage", method = RequestMethod.GET)
-    public JSONObject getNextImage(@RequestParam(value = "imageId", required = true) int imageId) {
+    public Result getNextImage(@RequestParam(value = "imageId", required = true) int imageId) {
         //
-        return imageService.getOneImage("next", imageId);
+        ImagePathEntity imagePathEntity = imageService.getOneImage("next", imageId);
+        if(imagePathEntity == null){
+            return new Result(10001,"未查询到任何记录.",false);
+        }else{
+            return new Result(ResultCode.SUCCESS,(JSONObject)JSONObject.toJSON(imagePathEntity));
+        }
     }
 
     @Deprecated

+ 14 - 17
huimv-video/huimv-video-manager/src/main/java/com/huimv/manager/dao/entity/ImagePathEntity.java

@@ -70,6 +70,12 @@ public class ImagePathEntity implements Serializable {
     private Timestamp createDate;
 
     /**
+     * 识别出猪的数量
+     */
+    @Column(name = "pig_quantity")
+    private Integer pigQuantity;
+
+    /**
      * 主键
      */
     public void setId(Integer id) {
@@ -203,27 +209,17 @@ public class ImagePathEntity implements Serializable {
         return createDate;
     }
 
-//    @Override
-//    public String toString() {
-//        return "ImagePathEntity{" +
-//                "id=" + id + '\'' +
-//                "name=" + name + '\'' +
-//                "imgPath=" + imgPath + '\'' +
-//                "relativePath=" + relativePath + '\'' +
-//                "fileName=" + fileName + '\'' +
-//                "effective=" + effective + '\'' +
-//                "aiResult=" + aiResult + '\'' +
-//                "aiTimeUsed=" + aiTimeUsed + '\'' +
-//                "aiData=" + aiData + '\'' +
-//                "createDate=" + createDate + '\'' +
-//                '}';
-//    }
+    public Integer getPigQuantity() {
+        return pigQuantity;
+    }
 
+    public void setPigQuantity(Integer pigQuantity) {
+        this.pigQuantity = pigQuantity;
+    }
 
     @Override
     public String toString() {
-//        return "ImagePathEntity{" +
-        return "{" +
+        return "ImagePathEntity{" +
                 "id=" + id +
                 ", name='" + name + '\'' +
                 ", imgPath='" + imgPath + '\'' +
@@ -234,6 +230,7 @@ public class ImagePathEntity implements Serializable {
                 ", aiTimeUsed=" + aiTimeUsed +
                 ", aiData='" + aiData + '\'' +
                 ", createDate=" + createDate +
+                ", pigQuantity=" + pigQuantity +
                 '}';
     }
 }

+ 2 - 2
huimv-video/huimv-video-manager/src/main/java/com/huimv/manager/dao/repo/ImagePathRepo.java

@@ -35,10 +35,10 @@ public interface ImagePathRepo extends JpaRepository<ImagePathEntity, Integer>,
     @Query(nativeQuery = true, value = "SELECT * FROM image_path WHERE effective=1 ORDER BY create_date ASC LIMIT 1")
     ImagePathEntity getNextImage();
 
-    @Query(nativeQuery = true, value = "SELECT id,name,img_path,relative_path,file_name,effective,ai_result,ai_time_used,ai_data,create_date FROM image_path WHERE DATE_FORMAT(create_date,'%Y-%m-%d')>=DATE_FORMAT(:startDate,'%Y-%m-%d') AND DATE_FORMAT(create_date,'%Y-%m-%d')<=DATE_FORMAT(:endDate,'%Y-%m-%d') ORDER BY create_date DESC LIMIT :pageNo,:pageSize")
+    @Query(nativeQuery = true, value = "SELECT id,name,img_path,relative_path,file_name,effective,ai_result,ai_time_used,ai_data,create_date,pig_quantity FROM image_path WHERE DATE_FORMAT(create_date,'%Y-%m-%d')>=DATE_FORMAT(:startDate,'%Y-%m-%d') AND DATE_FORMAT(create_date,'%Y-%m-%d')<=DATE_FORMAT(:endDate,'%Y-%m-%d') ORDER BY create_date DESC LIMIT :pageNo,:pageSize")
     List<ImagePathEntity> listImage(String startDate, String endDate,int pageNo,int pageSize);
 
-    @Query(nativeQuery = true, value = "SELECT id,name,img_path,relative_path,file_name,effective,ai_result,ai_time_used,ai_data,create_date FROM image_path WHERE DATE_FORMAT(create_date,'%Y-%m-%d')>=DATE_FORMAT(:startDate,'%Y-%m-%d') AND DATE_FORMAT(create_date,'%Y-%m-%d')<=DATE_FORMAT(:endDate,'%Y-%m-%d') ORDER BY create_date DESC LIMIT :pageNo,:pageSize")
+    @Query(nativeQuery = true, value = "SELECT id,name,img_path,relative_path,file_name,effective,ai_result,ai_time_used,ai_data,create_date,pig_quantity FROM image_path WHERE DATE_FORMAT(create_date,'%Y-%m-%d')>=DATE_FORMAT(:startDate,'%Y-%m-%d') AND DATE_FORMAT(create_date,'%Y-%m-%d')<=DATE_FORMAT(:endDate,'%Y-%m-%d') ORDER BY create_date DESC LIMIT :pageNo,:pageSize")
     List<ImagePathEntity> listImage2(String startDate, String endDate,int pageNo,int pageSize);
 
     @Query(nativeQuery = true, value = "SELECT count(id) FROM image_path WHERE DATE_FORMAT(create_date,'%Y-%m-%d')>=DATE_FORMAT(:startDate,'%Y-%m-%d') AND DATE_FORMAT(create_date,'%Y-%m-%d')<=DATE_FORMAT(:endDate,'%Y-%m-%d')")

+ 1 - 1
huimv-video/huimv-video-manager/src/main/java/com/huimv/manager/service/IImageService.java

@@ -76,7 +76,7 @@ public interface IImageService {
      * @Date        : 2021/1/23       
      * @Time        : 19:25
      */
-    JSONObject getOneImage(String type, int imageId);
+    ImagePathEntity getOneImage(String type, int imageId);
 
     /**
      * @Method      : getOneImageDetail

+ 3 - 3
huimv-video/huimv-video-manager/src/main/java/com/huimv/manager/service/impl/ImageServiceImpl.java

@@ -119,13 +119,13 @@ public class ImageServiceImpl implements IImageService {
     }
 
     @Override
-    public JSONObject getOneImage(String type, int imageId) {
+    public ImagePathEntity getOneImage(String type, int imageId) {
         if(type.trim().equalsIgnoreCase("next")){
             // 读取下一张照片
-            return  (JSONObject)JSONObject.toJSON(imagePathRepo.getNextImageById(imageId));
+            return  imagePathRepo.getNextImageById(imageId);
         }else{
             // 读取上一张照片
-            return  (JSONObject)JSONObject.toJSON(imagePathRepo.getPreviousImageById(imageId));
+            return  imagePathRepo.getPreviousImageById(imageId);
         }
     }
 

+ 79 - 0
huimv-video/huimv-video-manager/src/main/java/com/huimv/manager/utils/Result.java

@@ -0,0 +1,79 @@
+package com.huimv.manager.utils;
+
+import java.io.Serializable;
+
+public class Result implements Serializable {
+
+    private boolean success;
+    private Integer code;
+    private String message;
+
+    public boolean isSuccess() {
+        return success;
+    }
+
+    public void setSuccess(boolean success) {
+        this.success = success;
+    }
+
+    public Integer getCode() {
+        return code;
+    }
+
+    public void setCode(Integer code) {
+        this.code = code;
+    }
+
+    public String getMessage() {
+        return message;
+    }
+
+    public void setMessage(String message) {
+        this.message = message;
+    }
+
+    public Object getData() {
+        return data;
+    }
+
+    public void setData(Object data) {
+        this.data = data;
+    }
+
+    private Object data;
+
+    //不需要返回数据时使用
+    public Result(ResultCode code) {
+        this.success = code.success;
+        this.code = code.code;
+        this.message = code.message;
+    }
+
+    public Result(ResultCode code, Object data) {
+        this.success = code.success;
+        this.code = code.code;
+        this.message = code.message;
+        this.data = data;
+    }
+
+    public Result(Integer code, String message, boolean success) {
+        this.code = code;
+        this.message = message;
+        this.success = success;
+    }
+
+    /*
+     * 调用ResultCode类封装常用的返回数据
+     */
+    public static Result SUCCESS(){
+        return new Result(ResultCode.SUCCESS);
+    }
+
+    public static Result ERROR(){
+        return new Result(ResultCode.SERVER_ERROR);
+    }
+
+    public static Result FAIL(){
+        return new Result(ResultCode.FAIL);
+    }
+}

+ 41 - 0
huimv-video/huimv-video-manager/src/main/java/com/huimv/manager/utils/ResultCode.java

@@ -0,0 +1,41 @@
+package com.huimv.manager.utils;
+
+public enum ResultCode {
+    SUCCESS(true,10000,"操作成功!"),
+    //---系统错误返回码-----
+    FAIL(false,10001,"操作失败"),
+    UNAUTHENTICATED(false,10002,"您还未登录"),
+    UNAUTHORISE(false,10003,"权限不足"),
+    SERVER_ERROR(false,99999,"抱歉,系统繁忙,请稍后重试!"),
+
+    //---用户操作返回码  2xxxx----
+    MOBILEORPASSWORDERROR(false,20001,"用户名或密码错误");
+    //---企业操作返回码  3xxxx----
+    //---权限操作返回码----
+    //---其他操作返回码----
+
+    //操作是否成功
+    boolean success;
+    //操作代码
+    int code;
+    //提示信息
+    String message;
+
+    ResultCode(boolean success,int code, String message){
+        this.success = success;
+        this.code = code;
+        this.message = message;
+    }
+
+    public boolean success() {
+        return success;
+    }
+
+    public int code() {
+        return code;
+    }
+
+    public String message() {
+        return message;
+    }
+}

+ 3 - 2
huimv-video/huimv-video-process/src/main/java/com/huimv/process/controller/ImageController.java

@@ -36,7 +36,7 @@ public class ImageController {
     @RequestMapping(value = "/upload", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
     public void uploadImage(@RequestBody JSONObject paramJo) throws IOException {
         log.info("# 输入参数name>>" + paramJo.getString("name"));
-        log.info("# 输入参数image>>" + paramJo.getString("image"));
+//        log.info("# 输入参数image>>" + paramJo.getString("image"));
         String name = paramJo.getString("name");
         if (name == null) {
             log.error("出错:参数name为null");
@@ -63,9 +63,10 @@ public class ImageController {
             }
             int aiTimeUsed = aiResultJo.getInteger("timeUsed");
             JSONArray aiPiggyJa = aiResultJo.getJSONArray("piggy");
+            int pigQuantity = aiPiggyJa.size();
             Timestamp createTime = new Timestamp(new Date().getTime());
             // 图片入库
-            if(imageService.addImage(name, imgPath, relativePath, fileName,aiResult,aiTimeUsed,aiPiggyJa.toString(),createTime)){
+            if(imageService.addImage(name, imgPath, relativePath, fileName,aiResult,aiTimeUsed,aiPiggyJa.toString(),createTime,pigQuantity)){
                 log.info("图片入库成功.");
             }else{
                 log.info("图片入库出错.");

+ 25 - 10
huimv-video/huimv-video-process/src/main/java/com/huimv/process/dao/entity/ImagePathEntity.java

@@ -70,6 +70,12 @@ public class ImagePathEntity implements Serializable {
     private Timestamp createDate;
 
     /**
+     * 识别出猪的数量
+     */
+    @Column(name = "pig_quantity")
+    private Integer pigQuantity;
+
+    /**
      * 主键
      */
     public void setId(Integer id) {
@@ -206,16 +212,25 @@ public class ImagePathEntity implements Serializable {
     @Override
     public String toString() {
         return "ImagePathEntity{" +
-                "id=" + id + '\'' +
-                "name=" + name + '\'' +
-                "imgPath=" + imgPath + '\'' +
-                "relativePath=" + relativePath + '\'' +
-                "fileName=" + fileName + '\'' +
-                "effective=" + effective + '\'' +
-                "aiResult=" + aiResult + '\'' +
-                "aiTimeUsed=" + aiTimeUsed + '\'' +
-                "aiData=" + aiData + '\'' +
-                "createDate=" + createDate + '\'' +
+                "id=" + id +
+                ", name='" + name + '\'' +
+                ", imgPath='" + imgPath + '\'' +
+                ", relativePath='" + relativePath + '\'' +
+                ", fileName='" + fileName + '\'' +
+                ", effective=" + effective +
+                ", aiResult='" + aiResult + '\'' +
+                ", aiTimeUsed=" + aiTimeUsed +
+                ", aiData='" + aiData + '\'' +
+                ", createDate=" + createDate +
+                ", pigQuantity=" + pigQuantity +
                 '}';
     }
+
+    public Integer getPigQuantity() {
+        return pigQuantity;
+    }
+
+    public void setPigQuantity(Integer pigQuantity) {
+        this.pigQuantity = pigQuantity;
+    }
 }

+ 1 - 1
huimv-video/huimv-video-process/src/main/java/com/huimv/process/service/IImageService.java

@@ -30,7 +30,7 @@ public interface IImageService {
      * @Date        : 2021/1/21       
      * @Time        : 14:23
      */
-    boolean addImage(String name, String imgPath, String relativePath, String fileName, String aiResult, int aiTimeUsed, String aiData, Timestamp createTime);
+    boolean addImage(String name, String imgPath, String relativePath, String fileName, String aiResult, int aiTimeUsed, String aiData, Timestamp createTime,int pigQuantity);
 
     /**
      * @Method      : getAIResult2

+ 2 - 1
huimv-video/huimv-video-process/src/main/java/com/huimv/process/service/impl/ImageServiceImpl.java

@@ -98,7 +98,7 @@ public class ImageServiceImpl implements IImageService {
      * @Time : 17:31
      */
     @Override
-    public boolean addImage(String name, String imgPath, String relativePath, String fileName, String aiResult, int aiTimeUsed, String aiData, Timestamp createDate) {
+    public boolean addImage(String name, String imgPath, String relativePath, String fileName, String aiResult, int aiTimeUsed, String aiData, Timestamp createDate,int pigQuantity) {
         ImagePathEntity imagePathEntity = new ImagePathEntity();
         imagePathEntity.setName(name);
         imagePathEntity.setImgPath(imgPath);
@@ -109,6 +109,7 @@ public class ImageServiceImpl implements IImageService {
         imagePathEntity.setAiTimeUsed(aiTimeUsed);
         imagePathEntity.setAiData(aiData);
         imagePathEntity.setCreateDate(createDate);
+        imagePathEntity.setPigQuantity(pigQuantity);
         imagePathRepo.saveAndFlush(imagePathEntity);
         return true;
     }