UploadFileLogServiceImpl.java 3.4 KB

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