如何根据日期和时间自动标记数组列表中的相关记录?

问题描述

我正在设计一个简单的 covid 19 跟踪系统。每次客户(ArrayList 中的对象)访问 Shop(ArrayList 中的对象)时,系统都会创建存储在 ArrayList 中的 Visits 对象。

超类详细信息。

public class Details {

  private String name;
  private String phoneNumber;
  private Status status;

  // Customer
  public Details(String name,String phoneNumber,Status status) {
    this.name = name;
    this.phoneNumber = phoneNumber;
    this.status = status;
  }

我正在使用 java.time 包来创建日期时间以及像这样的访问对象

public class Visit extends Details {
    
    private String dateTimeFinal;
    private String shopName;
    
    public Visit(String name,String shopName,Status status) {
        super(name,phoneNumber,status);
        this.shopName = shopName;
        LocalDateTime dateTime = LocalDateTime.now();
        DateTimeFormatter dateTimeFormatted = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss");
        dateTimeFinal = dateTime.format(dateTimeFormatted);
    }

我的客户类构造函数看起来像这样

public class Customer extends Details {
  
  private String password;

  public Customer (String name,String password,Status status){
    super(name,status);
    this.password = password;
  }

我的商店类构造函数看起来像这样

public class Shop extends Details{

  private String managerName;
  
  public Shop(String name,Status status,String managerName){
    super(name,status);
    this.managerName = managerName;
  }

我在另一个文件中也有一个状态枚举,看起来像这样

public enum Status{
  NORMAL,CASE,CLOSE    
}

我现在想要完成的是,如果一个被标记为 CASE 的客户访问了一家商店,那么在之前和之后的 1 小时时间范围内也访问该商店的所有客户都会自动被标记为密切接触者(关)。我还想知道如何创建不是 localdatetime.now 的时间和日期,因为我需要生成访问来测试标记算法是否有效。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)