74 lines
2.0 KiB
Go
74 lines
2.0 KiB
Go
package service
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"joylink.club/bj-rtsts-server/db/dbquery"
|
|
"joylink.club/bj-rtsts-server/db/model"
|
|
"joylink.club/bj-rtsts-server/dto"
|
|
)
|
|
|
|
// 查询列车信息列表
|
|
func PageTrainInfoQuery(query *dto.PageTrainInfoReqDto) *dto.PageDto {
|
|
d := dbquery.TrainInfo
|
|
dq := d.Where()
|
|
if query.Name != "" {
|
|
dq = dq.Where(d.Name.Like(fmt.Sprintf("%%%s%%", query.Name)))
|
|
}
|
|
records, total, err := dq.Debug().Select(d.ID, d.Name, d.Proto, d.Description).FindByPage(query.Offset(), query.Size)
|
|
if err != nil {
|
|
panic(dto.ErrorDto{Code: dto.QueryDBError, Message: err.Error()})
|
|
}
|
|
return &dto.PageDto{Total: int(total), PageQueryDto: query.PageQueryDto, Records: dto.ConvertToTrainInfoDto(records)}
|
|
}
|
|
|
|
// 查询列车信息列表
|
|
func ListTrainInfoQuery(query *dto.TrainInfoReqDto) []*model.TrainInfo {
|
|
d := dbquery.TrainInfo
|
|
dq := d.Where()
|
|
if query.Name != "" {
|
|
dq = dq.Where(d.Name.Like(fmt.Sprintf("%%%s%%", query.Name)))
|
|
}
|
|
records, err := dq.Debug().Select(d.ID, d.Name, d.Proto).Find()
|
|
if err != nil {
|
|
panic(dto.ErrorDto{Code: dto.QueryDBError, Message: err.Error()})
|
|
}
|
|
return records
|
|
}
|
|
|
|
// 创建列车信息
|
|
func CreateTrainInfo(td *dto.TrainInfoDto) bool {
|
|
d := dto.ConvertTrainInfoFromDto(td)
|
|
err := dbquery.TrainInfo.Save(d)
|
|
if err != nil {
|
|
panic(dto.ErrorDto{Code: dto.QueryDBError, Message: err.Error()})
|
|
}
|
|
return true
|
|
}
|
|
|
|
// 查询列车信息
|
|
func QueryTrainInfo(id int32) *dto.TrainInfoDto {
|
|
dt := dbquery.TrainInfo
|
|
data, err := dt.Where(dt.ID.Eq(id)).Debug().First()
|
|
if err != nil {
|
|
panic(dto.ErrorDto{Code: dto.QueryDBError, Message: err.Error()})
|
|
}
|
|
return dto.ConvertDtoFromTrainInfo(data)
|
|
}
|
|
|
|
// 更新列车信息
|
|
func UpdateTrainInfo(id int32, td *dto.TrainInfoDto) bool {
|
|
d := dto.ConvertTrainInfoFromDto(td)
|
|
d.ID = id
|
|
_, err2 := dbquery.TrainInfo.Updates(d)
|
|
if err2 != nil {
|
|
panic(dto.ErrorDto{Code: dto.QueryDBError, Message: err2.Error()})
|
|
}
|
|
return true
|
|
}
|
|
|
|
// 删除列车信息
|
|
func DeleteTrainInfoById(id int) {
|
|
_, _ = dbquery.TrainInfo.Debug().Where(dbquery.TrainInfo.ID.Eq(int32(id))).Delete()
|
|
}
|