zxl
2026-03-25 0b39edb68acc67ed01fbfe5d31bfa776a1b17de1
jyz-base-start/src/main/java/com/tievd/jyz/controller/ActivityController.java
@@ -47,6 +47,9 @@
  @Autowired
  IActOrgRefService actOrgRefService;
  
  @Autowired
  private com.tievd.jyz.mapper.OilRecordMapper oilRecordMapper;
  /**
   * 分页列表查询
   */
@@ -156,6 +159,41 @@
    Activity activity = activityService.getById(id);
    return Result.ok(activity);
  }
  /**
   * 查看车辆加油频次
   */
  @GetMapping("/getVehicleFrequency")
  @Operation(description = "查看车辆加油频次")
  public Result<?> getVehicleFrequency(@RequestParam Integer actId) {
    Activity activity = activityService.getById(actId);
    if (activity == null) {
      return Result.error("活动不存在");
    }
    List<ActOrgRef> orgRefs = actOrgRefService.list(new LambdaQueryWrapper<ActOrgRef>().eq(ActOrgRef::getActId, actId));
    if (orgRefs == null || orgRefs.isEmpty()) {
      return Result.error("活动未关联机构");
    }
    List<String> orgCodes = new ArrayList<>();
    for (ActOrgRef ref : orgRefs) {
      orgCodes.add(ref.getOrgCode());
    }
    java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    String startTimeStr = sdf.format(activity.getStartTime());
    String endTimeStr = sdf.format(activity.getEndTime());
    java.util.Map<String, Object> result = new java.util.HashMap<>();
    result.put("activity", activity);
    result.put("beforeActivity", oilRecordMapper.getVehicleFrequencyBeforeActivity(startTimeStr, orgCodes));
    result.put("duringActivity", oilRecordMapper.getVehicleFrequencyDuringActivity(startTimeStr, endTimeStr, orgCodes));
    result.put("afterActivity", oilRecordMapper.getVehicleFrequencyAfterActivity(endTimeStr, orgCodes));
    return Result.ok(result);
  }
  /**
   * 导出excel