车流---0.0.1

develop
Angel 9 months ago
parent 904d3f36dc
commit df15e866eb

@ -0,0 +1,25 @@
package com.ssf.mysqloracletest.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
@TableName(value = "people_vehicle_flow")
@Data
public class PeopleVehicleFlow implements Serializable {
/**
*
* */
private String date;
/**
*
* */
private String flow;
/**
* (1:/2:)
* */
private Integer type;
}

@ -0,0 +1,10 @@
package com.ssf.mysqloracletest.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ssf.mysqloracletest.domain.PeopleVehicleFlow;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface PeopleVehicleFlowMapper extends BaseMapper<PeopleVehicleFlow> {
}

@ -0,0 +1,7 @@
package com.ssf.mysqloracletest.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ssf.mysqloracletest.domain.PeopleVehicleFlow;
public interface PeopleVehicleFlowService extends IService<PeopleVehicleFlow> {
}

@ -0,0 +1,13 @@
package com.ssf.mysqloracletest.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ssf.mysqloracletest.domain.PeopleVehicleFlow;
import com.ssf.mysqloracletest.mapper.PeopleVehicleFlowMapper;
import com.ssf.mysqloracletest.service.PeopleVehicleFlowService;
import org.springframework.stereotype.Service;
@Service
@DS("mysql")
public class PeopleVehicleFlowServiceImpl extends ServiceImpl<PeopleVehicleFlowMapper,PeopleVehicleFlow> implements PeopleVehicleFlowService {
}

@ -0,0 +1,66 @@
package com.ssf.mysqloracletest.task;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ssf.mysqloracletest.domain.PeopleVehicleFlow;
import com.ssf.mysqloracletest.domain.TMotorvehicle;
import com.ssf.mysqloracletest.service.PeopleVehicleFlowService;
import com.ssf.mysqloracletest.service.TMotorvehicleService;
import com.ssf.mysqloracletest.service.TStrhEntityInfoKsService;
import com.ssf.mysqloracletest.utils.ConfigParam;
import com.ssf.mysqloracletest.utils.StringKit;
import lombok.RequiredArgsConstructor;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.slf4j.Logger;
import org.springframework.stereotype.Service;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
@Component
@RequiredArgsConstructor
public class PeopleVehicleFlowTask {
private static final Logger logger = LoggerFactory.getLogger(PeopleVehicleFlowTask.class);
//元表车
private final TMotorvehicleService tMotorvehicleService;
//元表人
private final TStrhEntityInfoKsService tStrhEntityInfoKsService;
//人车流量业表
private final PeopleVehicleFlowService peopleVehicleFlowService;
@Scheduled(initialDelay = 100, fixedDelay = 3000)
public void setVehicleFlowService() {
if (!"true".equals(ConfigParam.vehicleFlowSwitch)) {
return;
}
try {
//获取当前日期
// LocalDateTime currentDate = LocalDateTime.now();//例如2023-10-10 00:00:00
// LocalDateTime startOfDay = currentDate.withHour(0).withMinute(0).withSecond(0);
LocalDate localDate = LocalDate.now();
//循环迭代7天
for (int i = 0; i < 7; i++) {
//构造查询条件
QueryWrapper<TMotorvehicle> queryWrapper = new QueryWrapper<>();
// 减去 i 天并设置查询条件的日期字段
// LocalDateTime targetDate = currentDate.minusDays(i);
LocalDate date = localDate.minusDays(i);
// 将日期部分格式化为数据库存储格式
String formattedDate = date.format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss"));
queryWrapper.between("passtime", formattedDate,date.plusDays(1).format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")));
int count = tMotorvehicleService.count(queryWrapper);
PeopleVehicleFlow peopleVehicleFlow = new PeopleVehicleFlow();
peopleVehicleFlow.setFlow(String.valueOf(count));
peopleVehicleFlow.setType(2);
peopleVehicleFlow.setDate(date.toString());
peopleVehicleFlowService.save(peopleVehicleFlow);
}
} catch (Exception e) {
logger.info(StringKit.getTrace(e));
}
}
}
Loading…
Cancel
Save