From 9486e47be87d7b804796c5b54f38f58b87414af9 Mon Sep 17 00:00:00 2001
From: liuleilei <234@qq.com>
Date: 星期五, 22 十二月 2023 13:35:18 +0800
Subject: [PATCH] 员工列表
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncImgServiceImpl.java | 184 ++++++++++++++++++++++++++++++++++------------
1 files changed, 136 insertions(+), 48 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..ba0a311 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,6 +48,8 @@
private DeviceEventMapper deviceEventMapper;
@Autowired
private VisitEventMapper visitEventMapper;
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
@Override
public String downHKImgs(int type){
if(Constants.DEALING_HK_IMG){
@@ -48,13 +59,12 @@
try {
//鏌ヨ鎵�鏈夎瀹簨浠惰褰曚腑鎵�鏈変笅杞界殑娴峰悍绔� 鎶撴媿鐓х墖 鍜� 鐓х墖
startDealVisitImg();
-
//鏌ヨ鎵�鏈夊仠杞﹀満浜嬩欢璁板綍涓墍鏈変笅杞界殑娴峰悍绔� 杞︾墝鍥剧墖 鍜� 杞﹁締鍥剧墖
startDealCarImg();
//鏌ヨ鎵�鏈夐棬绂佷簨浠惰褰曚腑鎵�鏈変笅杞界殑娴峰悍绔� 鎶撴媿鐓х墖 鍜� 韬唤璇佸浘鐗嘦RL
startDealDeviceImg();
}catch (Exception e){
-
+ e.printStackTrace();
}finally {
Constants.DEALING_HK_IMG =false;
}
@@ -64,29 +74,40 @@
private void startDealDeviceImg() {
List<DeviceEvent> deviceEventList = deviceEventMapper.selectList(new QueryWrapper<DeviceEvent>().lambda()
.eq(DeviceEvent::getIsdeleted,Constants.ZERO)
- .and(wrapper ->{wrapper.likeLeft(DeviceEvent::getExtEventPictureURL,HKConstants.IMG_INDEX)
+ .and(wrapper ->{wrapper.likeRight(DeviceEvent::getExtEventPictureURL,HKConstants.IMG_INDEX)
.or()
- .likeLeft(DeviceEvent::getExtEventIDCardPictureURL,HKConstants.IMG_INDEX) ;}));
+ .likeRight(DeviceEvent::getExtEventIDCardPictureURL,HKConstants.IMG_INDEX) ;}));
Date date= new Date();
if(deviceEventList !=null && deviceEventList.size()>0){
for(DeviceEvent model:deviceEventList){
- String img1 = model.getExtEventPictureURL();
- String img2 = model.getExtEventIDCardPictureURL();
String serverIndex = model.getSvrIndexCode();//鏈嶅姟鍣ㄧ紪鐮�
- String rs1 = downHkImgToFtp(img1,serverIndex,Constants.DEVICE_EVENT_IMG);
- String rs2 = downHkImgToFtp(img2,serverIndex,Constants.DEVICE_EVENT_IMG);
+ if(StringUtils.isBlank(serverIndex)){
+ continue;
+ }
+ String rs1 = null;
+ String rs2 = null;
DeviceEvent event = new DeviceEvent();
event.setId(model.getId());
event.setEditDate(date);
- if(StringUtils.isNotBlank(rs1)){
- event.setExtEventPictureURL(rs1);
- }else{
- event.setExtEventPictureURL(img1.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+
+ if(StringUtils.isNotBlank(model.getExtEventPictureURL())){
+ String img1 = model.getExtEventPictureURL().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, "");
+ rs1 = downHkImgToFtp(img1,serverIndex,Constants.DEVICE_EVENT_IMG);
+ if(StringUtils.isNotBlank(rs1)){
+ event.setExtEventPictureURL(rs1);
+ }else{
+ event.setExtEventPictureURL(model.getExtEventPictureURL().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ }
}
- if(StringUtils.isNotBlank(rs2)){
- event.setExtEventIDCardPictureURL(rs2);
- }else{
- event.setExtEventIDCardPictureURL(img2.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ if(StringUtils.isNotBlank(model.getExtEventIDCardPictureURL())){
+ String img2 = model.getExtEventIDCardPictureURL().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, "");
+ rs2 = downHkImgToFtp(img2,serverIndex,Constants.DEVICE_EVENT_IMG);
+
+ if(StringUtils.isNotBlank(rs2)){
+ event.setExtEventIDCardPictureURL(rs2);
+ }else{
+ event.setExtEventIDCardPictureURL(model.getExtEventIDCardPictureURL().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ }
}
deviceEventMapper.updateById(event);
}
@@ -97,30 +118,41 @@
private void startDealCarImg() {
List<CarEvent> carEventList = carEventMapper.selectList(new QueryWrapper<CarEvent>().lambda()
.eq(CarEvent::getIsdeleted,Constants.ZERO)
- .and(wrapper ->{wrapper.likeLeft(CarEvent::getPlatePicUrl,HKConstants.IMG_INDEX)
+ .and(wrapper ->{wrapper.likeRight(CarEvent::getPlatePicUrl,HKConstants.IMG_INDEX)
.or()
- .likeLeft(CarEvent::getVehiclePicUrl,HKConstants.IMG_INDEX) ;}));
+ .likeRight(CarEvent::getVehiclePicUrl,HKConstants.IMG_INDEX) ;}));
Date date= new Date();
if(carEventList !=null && carEventList.size()>0){
for(CarEvent model:carEventList){
- String img1 = model.getPlatePicUrl();
- String img2 = model.getVehiclePicUrl();
String serverIndex = model.getSvrIndex();//鏈嶅姟鍣ㄧ紪鐮�
- String rs1 = downHkImgToFtp(img1,serverIndex,Constants.CAR_EVENT_IMG);
- String rs2 = downHkImgToFtp(img2,serverIndex,Constants.CAR_EVENT_IMG);
+ if(StringUtils.isBlank(serverIndex)){
+ continue;
+ }
CarEvent event = new CarEvent();
event.setId(model.getId());
event.setEditDate(date);
- if(StringUtils.isNotBlank(rs1)){
- event.setPlatePicUrl(rs1);
- }else{
- event.setPlatePicUrl(img1.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ String rs1 = null;
+ String rs2 = null;
+
+ if(StringUtils.isNotBlank(model.getPlatePicUrl())){
+ String img1 = model.getPlatePicUrl().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, "");
+ rs1 = downHkImgToFtp(img1,serverIndex,Constants.CAR_EVENT_IMG);
+ if(StringUtils.isNotBlank(rs1)){
+ event.setPlatePicUrl(rs1);
+ }else{
+ event.setPlatePicUrl(model.getPlatePicUrl().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ }
}
- if(StringUtils.isNotBlank(rs2)){
- event.setVehiclePicUrl(rs2);
- }else{
- event.setVehiclePicUrl(img2.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ if(StringUtils.isNotBlank(model.getVehiclePicUrl())){
+ String img2 = model.getVehiclePicUrl().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, "");
+ rs2 = downHkImgToFtp(img2,serverIndex,Constants.CAR_EVENT_IMG);
+ if(StringUtils.isNotBlank(rs2)){
+ event.setVehiclePicUrl(rs2);
+ }else{
+ event.setVehiclePicUrl(model.getVehiclePicUrl().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ }
}
+
carEventMapper.updateById(event);
}
}
@@ -130,40 +162,96 @@
private void startDealVisitImg() {
List<VisitEvent> visitEventList = visitEventMapper.selectList(new QueryWrapper<VisitEvent>().lambda()
.eq(VisitEvent::getIsdeleted,Constants.ZERO)
- .and(wrapper ->{wrapper.likeLeft(VisitEvent::getCaptureUrl,HKConstants.IMG_INDEX)
+ .and(wrapper ->{wrapper.likeRight(VisitEvent::getCaptureUrl,HKConstants.IMG_INDEX)
.or()
- .likeLeft(VisitEvent::getPhotoUrl,HKConstants.IMG_INDEX) ;}));
+ .likeRight(VisitEvent::getPhotoUrl,HKConstants.IMG_INDEX) ;}));
Date date= new Date();
if(visitEventList !=null && visitEventList.size()>0){
for(VisitEvent model:visitEventList){
- String img1 = model.getCaptureUrl();
- String img2 = model.getPhotoUrl();
String serverIndex = model.getSvrIndexCode();//鏈嶅姟鍣ㄧ紪鐮�
- String rs1 = downHkImgToFtp(img1,serverIndex,Constants.VISIT_EVENT_IMG);
- String rs2 = downHkImgToFtp(img2,serverIndex,Constants.VISIT_EVENT_IMG);
+ if(StringUtils.isBlank(serverIndex)){
+ continue;
+ }
VisitEvent event = new VisitEvent();
event.setId(model.getId());
event.setEditDate(date);
- if(StringUtils.isNotBlank(rs1)){
- event.setCaptureUrl(rs1);
- }else{
- event.setCaptureUrl(img1.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ String rs1 = null;
+ String rs2 = null;
+ if(StringUtils.isNotBlank(model.getCaptureUrl())){
+ String img1 = model.getCaptureUrl().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, "");
+ rs1 = downHkImgToFtp(img1,serverIndex,Constants.VISIT_EVENT_IMG);
+ if(StringUtils.isNotBlank(rs1)){
+ event.setCaptureUrl(rs1);
+ }else{
+ event.setCaptureUrl(model.getCaptureUrl().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ }
}
- if(StringUtils.isNotBlank(rs2)){
- event.setPhotoUrl(rs2);
- }else{
- event.setPhotoUrl(img2.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ if(StringUtils.isNotBlank(model.getPhotoUrl())){
+ String img2 = model.getPhotoUrl().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, "");
+ rs2 = downHkImgToFtp(img2,serverIndex,Constants.VISIT_EVENT_IMG);
+ if(StringUtils.isNotBlank(rs2)){
+ event.setPhotoUrl(rs2);
+ }else{
+ event.setPhotoUrl(model.getPhotoUrl().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR));
+ }
}
+
visitEventMapper.updateById(event);
}
}
}
- private String downHkImgToFtp(String img1, String serverIndex, String visitEventImg) {
- //
-
+ public static FtpUtil ftp = null;
+ private String downHkImgToFtp(String img1, String serverIndex, String folder_code) {
+ String folder = systemDictDataBiz.queryByCode(Constants.FTP,folder_code).getCode();
+ InputStream is = null;
+ if(StringUtils.equals(folder_code,Constants.CAR_EVENT_IMG)){
+ //鍋滆溅鍦烘姄鎷嶅浘
+ CarPictureRequest param = new CarPictureRequest();
+ param.setPicUri(img1.replace(HKConstants.IMG_INDEX_ERROR,"").replace(HKConstants.IMG_INDEX,""));
+ param.setAswSyscode(serverIndex);
+ is = HKService.getCarPicture(param);
+ }else if(StringUtils.equals(folder_code,Constants.DEVICE_EVENT_IMG)){
+ //闂ㄧ浜嬩欢鍥剧墖
+ DevicePictureRequest param = new DevicePictureRequest();
+ param.setPicUri(img1.replace(HKConstants.IMG_INDEX_ERROR,"").replace(HKConstants.IMG_INDEX,""));
+ param.setSvrIndexCode(serverIndex);
+ is = HKService.getDevicePicture(param);
+ }else if(StringUtils.equals(folder_code,Constants.VISIT_EVENT_IMG)){
+ //璁垮浜嬩欢鍥剧墖
+ VisitPictureRequest param = new VisitPictureRequest();
+ param.setPicUri(img1.replace(HKConstants.IMG_INDEX_ERROR,"").replace(HKConstants.IMG_INDEX,""));
+ param.setSvrIndexCode(serverIndex);
+ is = HKService.getVisitPicture(param);
+ }
+ if(is ==null){
+ return null;
+ }
+ //TODO------jiangping---------
+ try {
+ if(ftp == null){
+ 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());
+ }else{
+ ftp.connect();
+ }
+ String date = DateUtil.getNowShortDate();
+ String fName = date+"/"+ 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