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