From 6f372b9d09a4b3519a3966a62d58d95805d261c2 Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期四, 29 五月 2025 22:49:48 +0800 Subject: [PATCH] 下载字段status --- guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TaskDetailServiceImpl.java | 113 +++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 82 insertions(+), 31 deletions(-) diff --git a/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TaskDetailServiceImpl.java b/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TaskDetailServiceImpl.java index f356efa..5ac589e 100644 --- a/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TaskDetailServiceImpl.java +++ b/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TaskDetailServiceImpl.java @@ -8,10 +8,7 @@ import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.stylefeng.guns.core.util.ToolUtil; import com.stylefeng.guns.modular.system.dao.TaskDetailMapper; -import com.stylefeng.guns.modular.system.model.PatrolTask; -import com.stylefeng.guns.modular.system.model.TaskDetail; -import com.stylefeng.guns.modular.system.model.TaskDetailVehicles; -import com.stylefeng.guns.modular.system.model.TaskDetailVehiclesChannel; +import com.stylefeng.guns.modular.system.model.*; import com.stylefeng.guns.modular.system.model.enums.VideoChannelEnum; import com.stylefeng.guns.modular.system.model.vo.*; import com.stylefeng.guns.modular.system.service.*; @@ -36,6 +33,7 @@ import java.net.URLConnection; import java.net.URLEncoder; import java.text.SimpleDateFormat; +import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.*; import java.util.stream.Collectors; @@ -63,6 +61,9 @@ @Autowired private IUserService userService; + @Autowired + private IIconService iconService; + @@ -85,11 +86,12 @@ */ @Override public void delTaskDetail(List<String> ids) { - this.baseMapper.deleteBatchIds(ids); List<TaskDetail> taskDetails = this.selectBatchIds(ids); for (TaskDetail taskDetail : taskDetails) { JobKey jobKey = new JobKey(taskDetail.getId().toString()); quartzUtil.deleteQuartzTask(jobKey); + taskDetail.setDelFlag(1); + this.updateById(taskDetail); } } @@ -156,25 +158,46 @@ } wrapper.in("vehicleIdUnique", vehicleIdList); } - if(null != vo.getStatus()){ - wrapper.eq("status", vo.getStatus()); + if(null != vo.getStatus() && !vo.getStatus().isEmpty()){ + wrapper.in("status", vo.getStatus()); } - if(null != vo.getSysStatus()){ - List<TaskDetailVehiclesChannel> sys_status = taskDetailVehiclesChannelService.selectList(new EntityWrapper<TaskDetailVehiclesChannel>().eq("sys_status", vo.getSysStatus())); - List<Integer> collect = sys_status.stream().map(TaskDetailVehiclesChannel::getTaskDetailVehiclesId).collect(Collectors.toList()); - if(collect.size() > 0){ - wrapper.in("id", collect); + + if(null != vo.getSysStatus() && !vo.getSysStatus().isEmpty()){ + Wrapper<TaskDetailVehiclesChannel> channelWrapper = new EntityWrapper<TaskDetailVehiclesChannel>() + .in("sys_status", vo.getSysStatus()); + if (null != vo.getHavePic()){ + if(vo.getHavePic()==0){ + channelWrapper.isNull("image_url"); + }else if(vo.getHavePic()==1){ + channelWrapper.isNotNull("image_url"); + } } + List<TaskDetailVehiclesChannel> sys_status = taskDetailVehiclesChannelService.selectList(channelWrapper); + List<Integer> collect = sys_status.stream().map(TaskDetailVehiclesChannel::getTaskDetailVehiclesId).collect(Collectors.toList()); + if(collect.size() == 0){ + collect.add(-1); + } + wrapper.in("id", collect); } - if(null != vo.getArtificialStatus()){ - List<TaskDetailVehiclesChannel> sys_status = taskDetailVehiclesChannelService.selectList(new EntityWrapper<TaskDetailVehiclesChannel>().eq("artificial_status", vo.getArtificialStatus())); - List<Integer> collect = sys_status.stream().map(TaskDetailVehiclesChannel::getTaskDetailVehiclesId).collect(Collectors.toList()); - if(collect.size() > 0){ - wrapper.in("id", collect); + if(null != vo.getArtificialStatus()&& !vo.getArtificialStatus().isEmpty()){ + Wrapper<TaskDetailVehiclesChannel> channelWrapper = new EntityWrapper<TaskDetailVehiclesChannel>() + .in("artificial_status", vo.getArtificialStatus()); + if (null != vo.getHavePic()){ + if(vo.getHavePic()==0){ + channelWrapper.isNull("image_url"); + }else if(vo.getHavePic()==1){ + channelWrapper.isNotNull("image_url"); + } } + List<TaskDetailVehiclesChannel> sys_status = taskDetailVehiclesChannelService.selectList(channelWrapper); + List<Integer> collect = sys_status.stream().map(TaskDetailVehiclesChannel::getTaskDetailVehiclesId).collect(Collectors.toList()); + if(collect.size() == 0){ + collect.add(-1); + } + wrapper.in("id", collect); } - List<TaskDetailVehicles> taskDetailVehiclesList = taskDetailVehiclesService.selectList(wrapper); + List<TaskDetailVehicles> taskDetailVehiclesList = taskDetailVehiclesService.selectList(wrapper.groupBy("vehicleIdUnique")); List<TaskDetailVehicles> vehiclesList = taskDetailVehiclesList.stream().filter(s -> s.getVehicleType() == 1).collect(Collectors.toList()); List<VehicleVo> vehicle = new ArrayList<>(); for (TaskDetailVehicles taskDetailVehicles : vehiclesList) { @@ -215,17 +238,31 @@ } wrapper.in("vehicleIdUnique", vehicleIdList); } - if(null != vo.getStatus()){ - wrapper.eq("status", vo.getStatus()); + if(null != vo.getStatus() && !vo.getStatus().isEmpty()){ + wrapper.in("status", vo.getStatus()); } List<TaskDetailVehicles> taskDetailVehiclesList = taskDetailVehiclesService.selectList(wrapper); List<Integer> collect = taskDetailVehiclesList.stream().map(TaskDetailVehicles::getId).collect(Collectors.toList()); - - List<PictureDetails> pictureDetails = taskDetailVehiclesChannelService.getPictureDetails(pageInfo, collect, vo.getSysStatus(), vo.getArtificialStatus()); + if(collect.size() > 0){ + collect.add(-1); + } + List<PictureDetails> pictureDetails = taskDetailVehiclesChannelService.getPictureDetails(pageInfo, collect, vo.getSysStatus(), vo.getArtificialStatus(),vo.getHavePic()); + List<Icon> icons = iconService.selectList(null); for (PictureDetails pictureDetail : pictureDetails) { String videoChannel = pictureDetail.getVideoChannel(); String name = VideoChannelEnum.getName(Integer.valueOf(videoChannel)); pictureDetail.setVideoChannel(name); + //异常 + if(pictureDetail.getStatus() == 5){ + pictureDetail.setImageUrl(icons.stream().filter(s->s.getType() == 2).findFirst().get().getUrl()); + }else if(ToolUtil.isEmpty(pictureDetail.getImageUrl())){ + //没有图片返回 + pictureDetail.setImageUrl(icons.stream().filter(s->s.getType() == 3).findFirst().get().getUrl()); + } + //离线 + if(pictureDetail.getStatus() == 4){ + pictureDetail.setImageUrl(icons.stream().filter(s->s.getType() == 1).findFirst().get().getUrl()); + } } return pictureDetails; } @@ -237,15 +274,18 @@ * @return */ @Override - public ResultUtil manualAudit(ManualAuditVo vo) { + public ResultUtil manualAudit(ManualAuditVo vo, String userId) { List<TaskDetailVehiclesChannel> taskDetailVehiclesChannels = taskDetailVehiclesChannelService.selectBatchIds(vo.getId()); for (TaskDetailVehiclesChannel taskDetailVehiclesChannel : taskDetailVehiclesChannels) { - if(null != taskDetailVehiclesChannel.getArtificialStatus() && 1 != taskDetailVehiclesChannel.getArtificialStatus()){ + /*if(null != taskDetailVehiclesChannel.getArtificialStatus() && 1 != taskDetailVehiclesChannel.getArtificialStatus()){ return ResultUtil.error("不能重复审核"); - } + }*/ taskDetailVehiclesChannel.setArtificialStatus(vo.getStatus()); taskDetailVehiclesChannel.setRemark(vo.getRemark()); - taskDetailVehiclesChannelService.updateById(taskDetailVehiclesChannel); + taskDetailVehiclesChannel.setArtificialCreateTime(LocalDateTime.now()); + taskDetailVehiclesChannel.setArtificialUserId(Integer.valueOf(userId)); +// taskDetailVehiclesChannelService.updateById(taskDetailVehiclesChannel); + taskDetailVehiclesChannelService.updateAudit(taskDetailVehiclesChannel);//需要将Remark字段设置为null } return ResultUtil.success(); } @@ -259,8 +299,8 @@ * @param response */ @Override - public void downloadTaskRecord(List<String> ids, String code, Integer status, HttpServletResponse response) { - List<Map<String, Object>> mapList = this.baseMapper.getDownloadTaskRecord(ids, code, status); + public void downloadTaskRecord(List<String> ids, String code, List<Integer> status,Integer sysStatus, HttpServletResponse response) { + List<Map<String, Object>> mapList = this.baseMapper.getDownloadTaskRecord(ids, code, status,sysStatus); try { HSSFWorkbook hssfWorkbook = new HSSFWorkbook(); HSSFSheet hssfSheet = hssfWorkbook.createSheet(); @@ -301,7 +341,7 @@ hssfCell.setCellStyle(style); hssfCell.setCellValue(titles.get(l)); } - + List<Icon> icons = iconService.selectList(null); HSSFPatriarch patriarch = hssfSheet.createDrawingPatriarch(); for (int i = 0; i < mapList.size(); i++) { hssfRow = hssfSheet.createRow(i + 2); @@ -345,6 +385,17 @@ Integer status1 = Integer.valueOf(map.get("status").toString()); //执行状态(1=待执行,2=进行中,3=成功,4=失败) hssfCell4.setCellValue(1 == status1 ? "待执行" : 2 == status1 ? "进行中" : 3 == status1 ? "成功" : "失败"); + //异常 + if(status1 == 5){ + map.put("imageUrl", icons.stream().filter(s->s.getType() == 2).findFirst().get().getUrl()); + }else if(ToolUtil.isEmpty(map.get("imageUrl"))){ + //没有图片返回 + map.put("imageUrl", icons.stream().filter(s->s.getType() == 3).findFirst().get().getUrl()); + } + //离线 + if(status1 == 4){ + map.put("imageUrl", icons.stream().filter(s->s.getType() == 1).findFirst().get().getUrl()); + } } //车牌号 HSSFCell hssfCell5 = hssfRow.createCell(5); @@ -417,8 +468,8 @@ hssfCell11.setCellValue(""); if(null != map.get("sysStatus")){ //系统审核状态(1=未执行,2=正常,3=异常) - Integer sysStatus = Integer.valueOf(map.get("sysStatus").toString()); - hssfCell11.setCellValue(1 == sysStatus ? "未执行" : 2 == sysStatus ? "正常" : "异常"); + Integer sysStatus1 = Integer.valueOf(map.get("sysStatus").toString()); + hssfCell11.setCellValue(1 == sysStatus1 ? "未执行" : 2 == sysStatus1 ? "正常" : "异常"); } //系统审核时间 HSSFCell hssfCell12 = hssfRow.createCell(12); -- Gitblit v1.7.1