预约时间修正

This commit is contained in:
yan.y 2025-02-18 18:13:25 +08:00
parent 0080963f2b
commit 1898623537
3 changed files with 24 additions and 1 deletions

View File

@ -177,7 +177,7 @@ func DataInit() {
GoodsMap = GoodsMapC1 GoodsMap = GoodsMapC1
zap_server.ZAPLOG.Info("dataInit GoodsMap : ", zap.Any("GoodsMap", GoodsMap)) zap_server.ZAPLOG.Info("dataInit GoodsMap : ", zap.Any("GoodsMap", GoodsMap))
var carList []models.ServiceCar var carList []models.ServiceCar
database.Instance().Model(&models.ServiceCar{}).Find(&carList) database.Instance().Model(&models.ServiceCar{}).Where("car_status = 1").Find(&carList)
var CarMapC1 = make(map[int]models.ServiceCar) var CarMapC1 = make(map[int]models.ServiceCar)
for _, value := range carList { for _, value := range carList {
CarMapC1[value.Id] = value CarMapC1[value.Id] = value

View File

@ -219,6 +219,7 @@ type ServiceCar struct {
CreateTime time.Time `gorm:"type:timestamp;default:CURRENT_TIMESTAMP" json:"-"` //创建时间 CreateTime time.Time `gorm:"type:timestamp;default:CURRENT_TIMESTAMP" json:"-"` //创建时间
UpdateTime time.Time `gorm:"type:timestamp;default:CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP" json:"-"` //更新时间 UpdateTime time.Time `gorm:"type:timestamp;default:CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP" json:"-"` //更新时间
ServiceAddr ServiceAddr `gorm:"-" json:"serviceAddr"` //当前服务区域 ServiceAddr ServiceAddr `gorm:"-" json:"serviceAddr"` //当前服务区域
CarStatus int `gorm:"not null"` //车辆状态 1在线 2下线
} }
// CarOrder 车辆订单 // CarOrder 车辆订单

View File

@ -217,6 +217,28 @@ func ProcessOrders(orders []OrderTemp, maxCars int, maxDays int) OrderServiceTim
isOccupied = true isOccupied = true
} }
// 获取当前时间
currentTime := time.Now()
// 指定时区,例如 "Asia/Shanghai"
location, err := time.LoadLocation("Asia/Shanghai")
if err != nil {
fmt.Println("Error loading location:", err)
continue
}
// 如果当前时间 >= 当前时间段的开始时间,则直接标记为占用
slotTime, err := time.ParseInLocation("2006-01-02 15:04:05", slot, location)
if err != nil {
fmt.Println("Error parsing time slot:", err)
continue
}
// 如果当前时间大于等于这个时间段的开始时间,则表示该时间段已经占用
if currentTime.UnixMilli() >= slotTime.UnixMilli() {
isOccupied = true
}
// 提取日期作为 key // 提取日期作为 key
date := slot[:10] date := slot[:10]