|
@ -4,10 +4,16 @@ import cn.hutool.core.date.DateUtil; |
|
|
import com.alibaba.fastjson.JSONObject; |
|
|
import com.alibaba.fastjson.JSONObject; |
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
import com.yxt.supervise.monitor.api.entity.Device; |
|
|
import com.yxt.supervise.monitor.api.entity.Device; |
|
|
|
|
|
import com.yxt.supervise.monitor.api.entity.DeviceImage; |
|
|
|
|
|
import com.yxt.supervise.monitor.api.entity.WareHouse; |
|
|
|
|
|
import com.yxt.supervise.monitor.api.vo.DeviceVo; |
|
|
|
|
|
import com.yxt.supervise.monitor.api.vo.PushPoliceImageAllVo; |
|
|
import com.yxt.supervise.monitor.biz.device.YDeviceService; |
|
|
import com.yxt.supervise.monitor.biz.device.YDeviceService; |
|
|
import com.yxt.supervise.monitor.biz.deviceImage.YDeviceImageService; |
|
|
import com.yxt.supervise.monitor.biz.deviceImage.YDeviceImageService; |
|
|
|
|
|
import com.yxt.supervise.monitor.biz.pushPoliceInfo.PushPoliceInfoService; |
|
|
import com.yxt.supervise.monitor.biz.util.HttpUtils; |
|
|
import com.yxt.supervise.monitor.biz.util.HttpUtils; |
|
|
import com.yxt.supervise.monitor.biz.util.ImageDownloadUtil; |
|
|
import com.yxt.supervise.monitor.biz.util.ImageDownloadUtil; |
|
|
|
|
|
import com.yxt.supervise.monitor.biz.wareHouse.YWareHouseService; |
|
|
import lombok.Data; |
|
|
import lombok.Data; |
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
import org.slf4j.Logger; |
|
|
import org.slf4j.Logger; |
|
@ -24,11 +30,9 @@ import org.springframework.scheduling.support.CronTrigger; |
|
|
import org.springframework.stereotype.Component; |
|
|
import org.springframework.stereotype.Component; |
|
|
|
|
|
|
|
|
import java.io.IOException; |
|
|
import java.io.IOException; |
|
|
|
|
|
import java.text.SimpleDateFormat; |
|
|
import java.time.LocalDateTime; |
|
|
import java.time.LocalDateTime; |
|
|
import java.util.Date; |
|
|
import java.util.*; |
|
|
import java.util.HashMap; |
|
|
|
|
|
import java.util.List; |
|
|
|
|
|
import java.util.Map; |
|
|
|
|
|
|
|
|
|
|
|
@Data |
|
|
@Data |
|
|
@Slf4j |
|
|
@Slf4j |
|
@ -45,6 +49,12 @@ public class SyncDetection implements SchedulingConfigurer { |
|
|
@Autowired |
|
|
@Autowired |
|
|
YDeviceImageService yDeviceImageService; |
|
|
YDeviceImageService yDeviceImageService; |
|
|
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
|
|
YWareHouseService yWareHouseService; |
|
|
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
|
|
private PushPoliceInfoService pushPoliceInfoService; |
|
|
|
|
|
|
|
|
@Autowired |
|
|
@Autowired |
|
|
YDeviceService yDeviceService; |
|
|
YDeviceService yDeviceService; |
|
|
|
|
|
|
|
@ -58,11 +68,42 @@ public class SyncDetection implements SchedulingConfigurer { |
|
|
QueryWrapper<Device> queryWrapper = new QueryWrapper<>(); |
|
|
QueryWrapper<Device> queryWrapper = new QueryWrapper<>(); |
|
|
queryWrapper.eq("type", "1"); //1 摄像头
|
|
|
queryWrapper.eq("type", "1"); //1 摄像头
|
|
|
queryWrapper.eq("isDelete", 0); |
|
|
queryWrapper.eq("isDelete", 0); |
|
|
// List<Device> list = yDeviceService.list(queryWrapper);
|
|
|
List<Device> list = yDeviceService.list(queryWrapper); |
|
|
// L.info("获取 {} 个摄像头信息,准备抓取图片");
|
|
|
List<DeviceImage> imageDeviceList = new ArrayList<>(); |
|
|
// for (Device device : list) {
|
|
|
L.info("获取 {} 个摄像头信息,准备抓取图片"); |
|
|
// yDeviceImageService.getImage(device);
|
|
|
for (Device device : list) { |
|
|
// }
|
|
|
DeviceImage deviceImage = yDeviceImageService.getImage(device); |
|
|
|
|
|
System.out.println(deviceImage); |
|
|
|
|
|
if (deviceImage != null) { |
|
|
|
|
|
imageDeviceList.add(deviceImage); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
List<WareHouse> wareHouses = yWareHouseService.getNeedPushWareHouses(); |
|
|
|
|
|
|
|
|
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss"); |
|
|
|
|
|
for (WareHouse wareHouse : wareHouses) { |
|
|
|
|
|
List<DeviceVo> deviceVos = new ArrayList<>(); |
|
|
|
|
|
for (DeviceImage ed : imageDeviceList) { |
|
|
|
|
|
if (wareHouse.getSid().equals(ed.getCkId())) { |
|
|
|
|
|
DeviceVo deviceVo = new DeviceVo(); |
|
|
|
|
|
deviceVo.setName(ed.getName()); |
|
|
|
|
|
deviceVo.setSimilarity(ed.getSimilarity()); |
|
|
|
|
|
deviceVo.setStartImage(ed.getImgBefore()); |
|
|
|
|
|
deviceVo.setEndImage(ed.getImgAfter()); |
|
|
|
|
|
deviceVo.setStartTime(sdf.format(ed.getCreateTime())); |
|
|
|
|
|
deviceVo.setEndTime(sdf.format(ed.getModifyTime())); |
|
|
|
|
|
deviceVos.add(deviceVo); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
PushPoliceImageAllVo pushPoliceImageAllVo = new PushPoliceImageAllVo(); |
|
|
|
|
|
pushPoliceImageAllVo.setSid(wareHouse.getSid()); |
|
|
|
|
|
pushPoliceImageAllVo.setName(wareHouse.getName()); |
|
|
|
|
|
pushPoliceImageAllVo.setDeviceImages(deviceVos); |
|
|
|
|
|
pushPoliceImageAllVo.setSendTime(sdf.format(new Date())); |
|
|
|
|
|
pushPoliceInfoService.pushPoliceImageMessage(pushPoliceImageAllVo); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
new Trigger() { |
|
|
new Trigger() { |
|
|