2026-01-09 12:20:24 +08:00
|
|
|
|
package com.xjhs.findmemerchant.entity;
|
|
|
|
|
|
|
|
|
|
|
|
import com.xjhs.findmemerchant.common.jpa.AbstractBaseEntity;
|
|
|
|
|
|
import jakarta.persistence.*;
|
|
|
|
|
|
import lombok.Getter;
|
|
|
|
|
|
import lombok.Setter;
|
|
|
|
|
|
import org.hibernate.annotations.Comment;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 门店营业时间段
|
|
|
|
|
|
* 对应表:business_periods
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Getter
|
|
|
|
|
|
@Setter
|
|
|
|
|
|
@Entity
|
|
|
|
|
|
@Table(
|
|
|
|
|
|
name = "business_periods",
|
|
|
|
|
|
indexes = {
|
|
|
|
|
|
@Index(name = "idx_business_periods_store_id", columnList = "store_id")
|
|
|
|
|
|
}
|
|
|
|
|
|
)
|
|
|
|
|
|
public class BusinessPeriod extends AbstractBaseEntity {
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 门店
|
|
|
|
|
|
*/
|
|
|
|
|
|
@ManyToOne(fetch = FetchType.LAZY)
|
|
|
|
|
|
@JoinColumn(name = "store_id", insertable = false, updatable = false)
|
|
|
|
|
|
@Comment("门店Id")
|
|
|
|
|
|
private Store store;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 周几:0=周日 ... 6=周六
|
|
|
|
|
|
*/
|
2026-01-09 12:20:44 +08:00
|
|
|
|
@Column(name = "day_of_week")
|
2026-01-09 12:20:24 +08:00
|
|
|
|
@Comment("周几:0周日 1周一 ... 6周六")
|
2026-01-09 12:20:44 +08:00
|
|
|
|
private Integer dayOfWeek;
|
2026-01-09 12:20:24 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 开始时间,HH:MM
|
|
|
|
|
|
*/
|
2026-01-09 12:20:44 +08:00
|
|
|
|
@Column(name = "start_time", length = 5)
|
2026-01-09 12:20:24 +08:00
|
|
|
|
@Comment("开始时间,HH:MM")
|
|
|
|
|
|
private String startTime;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 结束时间,HH:MM
|
|
|
|
|
|
*/
|
2026-01-09 12:20:44 +08:00
|
|
|
|
@Column(name = "end_time", length = 5)
|
2026-01-09 12:20:24 +08:00
|
|
|
|
@Comment("结束时间,HH:MM")
|
|
|
|
|
|
private String endTime;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 是否启用
|
|
|
|
|
|
*/
|
2026-01-09 12:20:44 +08:00
|
|
|
|
@Column(name = "is_enabled")
|
2026-01-09 12:20:24 +08:00
|
|
|
|
@Comment("是否启用")
|
|
|
|
|
|
private Boolean isEnabled = Boolean.TRUE;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// ========== 业务方法 ==========
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 中文周几,比如:周一
|
|
|
|
|
|
*/
|
|
|
|
|
|
public String getDayName() {
|
|
|
|
|
|
if (dayOfWeek == null) {
|
|
|
|
|
|
return "未知";
|
|
|
|
|
|
}
|
|
|
|
|
|
return switch (dayOfWeek) {
|
|
|
|
|
|
case 0 -> "周日";
|
|
|
|
|
|
case 1 -> "周一";
|
|
|
|
|
|
case 2 -> "周二";
|
|
|
|
|
|
case 3 -> "周三";
|
|
|
|
|
|
case 4 -> "周四";
|
|
|
|
|
|
case 5 -> "周五";
|
|
|
|
|
|
case 6 -> "周六";
|
|
|
|
|
|
default -> "未知";
|
|
|
|
|
|
};
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|