如何设置对象的状态

时间:2020-04-25 06:17:07

标签: java spring hibernate

我正在开发一个简单的包裹服务系统。在设置包裹状态时,我不完全了解如何执行此部分。登录后,您可以看到所有可用订单。作为快递,您可以将新订单标记为“已接受”或“已拒绝”。您可以将“接受的”订单标记为“运输中”。您可以将“运输中”订单标记为“已交付”或“未交付”。我的问题是我是否需要创建一个字段“ status”并每次设置某种字符串,还是应该创建一个布尔字段?顺便说一句,如果我会“拒绝”订单。我怎么能“记住”这个快递员已经拒绝了这个特殊的事情,并且不向他展示?谢谢您的想法。

2 个答案:

答案 0 :(得分:2)

在您的Order对象中创建一个Enum并定义该类型的变量,然后您的业务逻辑应进行设置并解释应用程序中的枚举值。

public enum ORDER_STATUS {
    ACCEPTED,REJECTED,DELIVERED,FAILED_TO_DELIVER,REJECT;
}

public class Order {
   private Long id;
   private ORDER_STATUS orderStatus;
}

答案 1 :(得分:1)

您可以将枚举作为内部静态类。它更简单,更快捷,因为您不必创建ORDER_STATUS对象。

public class Order {

  private final String id;
  private final String name;
  private final ORDER_STATUS  order_status;

  public static enum ORDER_STATUS  {
    ACCEPTED,REJECTED,DELIVERED,FAILED_TO_DELIVER,REJECT;
  }
}