From e2b0e215d7f208a8f40aadb5ff05cd0f3088f0d9 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 15 十二月 2023 09:09:35 +0800
Subject: [PATCH] 海康接口对接开发

---
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 53 insertions(+), 4 deletions(-)

diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java
index f4562f5..643bbd3 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java
@@ -2,28 +2,36 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.haikang.model.HKConstants;
 import com.doumee.core.haikang.model.param.BaseResponse;
-import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest;
+import com.doumee.core.haikang.model.param.request.*;
 import com.doumee.core.haikang.model.param.respose.AcsDeviceInfoResponse;
 import com.doumee.core.haikang.model.param.respose.AcsDeviceListResponse;
 import com.doumee.core.haikang.service.HKService;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DateUtil;
+import com.doumee.core.utils.FtpUtil;
 import com.doumee.dao.business.*;
 import com.doumee.dao.business.model.CarEvent;
 import com.doumee.dao.business.model.Device;
 import com.doumee.dao.business.model.DeviceEvent;
 import com.doumee.dao.business.model.VisitEvent;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.UUID;
 
 /**
  * 璁惧淇℃伅琛⊿ervice瀹炵幇
@@ -31,6 +39,7 @@
  * @date 2023/11/30 15:33
  */
 @Service
+@Slf4j
 public class HkSyncImgServiceImpl extends HkSyncBaseServiceImpl {
 
     @Autowired
@@ -39,7 +48,10 @@
     private DeviceEventMapper deviceEventMapper;
     @Autowired
     private VisitEventMapper visitEventMapper;
+    @Autowired
+    private SystemDictDataBiz systemDictDataBiz;
     @Override
+    @Async
     public  String downHKImgs(int type){
         if(Constants.DEALING_HK_IMG){
             return null ;
@@ -161,9 +173,46 @@
 
     }
 
-    private String downHkImgToFtp(String img1, String serverIndex, String visitEventImg) {
-        //
-
+    private String downHkImgToFtp(String img1, String serverIndex, String folder) {
+        InputStream is = null;
+        if(StringUtils.equals(folder,Constants.CAR_EVENT_IMG)){
+            //鍋滆溅鍦烘姄鎷嶅浘
+            CarPictureRequest param = new CarPictureRequest();
+            param.setPicUri(img1);
+            param.setAswSyscode(serverIndex);
+            is = HKService.getCarPicture(param);
+        }else if(StringUtils.equals(folder,Constants.DEVICE_EVENT_IMG)){
+            //闂ㄧ浜嬩欢鍥剧墖
+            DevicePictureRequest param = new DevicePictureRequest();
+            param.setPicUri(img1);
+            param.setSvrIndexCode(serverIndex);
+            is = HKService.getDevicePicture(param);
+        }else if(StringUtils.equals(folder,Constants.VISIT_EVENT_IMG)){
+            //璁垮浜嬩欢鍥剧墖
+            VisitPictureRequest param = new VisitPictureRequest();
+            param.setPicUri(img1);
+            param.setSvrIndexCode(serverIndex);
+            is = HKService.getVisitPicture(param);
+        }
+        //TODO------jiangping---------
+        try {
+            FtpUtil ftp = new FtpUtil(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_HOST).getCode(),
+                    Integer.parseInt(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_PORT).getCode()),
+                    systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_USERNAME).getCode(),
+                    systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_PWD).getCode());
+            String date = DateUtil.getNowShortDate();
+            String fName = File.separator+date+File.separator+ UUID.randomUUID().toString()+".jpg";
+            String fileName = folder+fName;
+            boolean r = ftp.uploadInputstream(is,fileName);//涓婁紶
+            if(r){
+                log.info("銆愭捣搴峰浘鐗囦笅杞戒笂浼燜TP澶辫触銆�======================" );
+                return  fName;
+            }else{
+                log.error("銆愭捣搴峰浘鐗囦笅杞戒笂浼燜TP澶辫触銆�======================" );
+            }
+        } catch (Exception e) {
+            log.error("銆愭捣搴峰浘鐗囦笅杞戒笂浼燜TP澶辫触銆�======================"+e.getMessage());
+        }
         return  null;
     }
 }

--
Gitblit v1.9.3