UploadFileLogServiceImpl.java 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. package com.jiayue.passback.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  4. import com.jiayue.passback.entity.UploadFileLog;
  5. import com.jiayue.passback.entity.eunm.FileStatusEnum;
  6. import com.jiayue.passback.mapper.UploadFileLogMapper;
  7. import com.jiayue.passback.service.UploadFileLogService;
  8. import lombok.extern.slf4j.Slf4j;
  9. import org.springframework.beans.factory.annotation.Value;
  10. import org.springframework.stereotype.Service;
  11. import javax.annotation.Resource;
  12. import java.util.*;
  13. @Service
  14. @Slf4j
  15. public class UploadFileLogServiceImpl extends ServiceImpl<UploadFileLogMapper, UploadFileLog> implements UploadFileLogService {
  16. @Value("${tunnelNo}")
  17. private String tunnelNo;
  18. @Value("${dqType}")
  19. private String dqType;
  20. @Value("${cdqType}")
  21. private String cdqType;
  22. @Value("${cdqUpMin}")
  23. private int cdqUpMin;
  24. @Resource
  25. private UploadFileLogMapper uploadFileLogMapper;
  26. @Override
  27. public Map<String, Object> GenerateData(Date date) {
  28. Date cdqStartTime = new Date(date.getTime() - cdqUpMin * 60 * 1000);
  29. Date cdqEndTime = new Date(date.getTime() + 15 * 60 * 1000);
  30. Date dqStartTime = new Date(date.getTime() - 15 * 60 * 1000);
  31. Date dqEndTime = new Date(date.getTime() + 15 * 60 * 1000);
  32. Map<String, Object> map = new HashMap<>();
  33. if (list(lambdaQuery()
  34. .between(UploadFileLog::getCreatTime, cdqStartTime, cdqEndTime)
  35. .eq(UploadFileLog::getFileTypeEnum, cdqType)
  36. .eq(UploadFileLog::getFileStatusEnum, FileStatusEnum.E2.name())
  37. .eq(UploadFileLog::getUploadObjectNo, tunnelNo)
  38. .getWrapper()).size() > 0) {
  39. map.put("cdqStatus", 1);
  40. } else {
  41. map.put("cdqStatus", 0);
  42. }
  43. if (list(lambdaQuery()
  44. .between(UploadFileLog::getCreatTime, dqStartTime, dqEndTime)
  45. .eq(UploadFileLog::getFileTypeEnum, dqType)
  46. .eq(UploadFileLog::getUploadObjectNo, tunnelNo)
  47. .eq(UploadFileLog::getFileStatusEnum, "E2")
  48. .getWrapper()).size() > 0) {
  49. map.put("dqStatus", 1);
  50. } else {
  51. map.put("dqStatus", 0);
  52. }
  53. log.info("获取短期上报状态:{},获取超短期上报状态:{}", map.get("dqStatus"), map.get("cdqStatus"));
  54. return map;
  55. }
  56. /**
  57. * 根据文件类型获取最新的上报文件信息
  58. *
  59. * @param type
  60. * @return
  61. */
  62. @Override
  63. public UploadFileLog getNewDateByType(String[] type) {
  64. UploadFileLog uploadFileLog = new UploadFileLog();
  65. LambdaQueryWrapper<UploadFileLog> lambdaQueryWrapper = new LambdaQueryWrapper<>();
  66. lambdaQueryWrapper.in(UploadFileLog::getFileTypeEnum, type);
  67. lambdaQueryWrapper.orderByDesc(UploadFileLog::getCreatTime);
  68. List<UploadFileLog> uploadFileLogList = uploadFileLogMapper.selectList(lambdaQueryWrapper);
  69. if (uploadFileLogList != null && uploadFileLogList.size() > 0) {
  70. uploadFileLog = uploadFileLogList.get(0);
  71. }
  72. return uploadFileLog;
  73. }
  74. }