55 lines
1.2 KiB
Go
55 lines
1.2 KiB
Go
package service
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"be.ems/src/modules/trace/model"
|
|
"be.ems/src/modules/trace/repository"
|
|
)
|
|
|
|
// 实例化数据层 TraceData 结构体
|
|
var NewTraceData = &TraceData{
|
|
traceDataRepository: repository.NewTraceData,
|
|
}
|
|
|
|
// TraceData 跟踪_数据 服务层处理
|
|
type TraceData struct {
|
|
// 跟踪_数据信息
|
|
traceDataRepository *repository.TraceData
|
|
}
|
|
|
|
// FindByPage 根据条件分页查询
|
|
func (r *TraceData) FindByPage(query map[string]string) ([]model.TraceData, int64) {
|
|
return r.traceDataRepository.SelectByPage(query)
|
|
}
|
|
|
|
// FindById 通过ID查询
|
|
func (r *TraceData) FindById(id int64) model.TraceData {
|
|
tasks := r.traceDataRepository.SelectByIds([]int64{id})
|
|
if len(tasks) > 0 {
|
|
return tasks[0]
|
|
}
|
|
return model.TraceData{}
|
|
}
|
|
|
|
// Insert 新增信息
|
|
func (r *TraceData) Insert(task model.TraceData) int64 {
|
|
return r.traceDataRepository.Insert(task)
|
|
}
|
|
|
|
// DeleteByIds 批量删除信息
|
|
func (r *TraceData) DeleteByIds(ids []int64) (int64, error) {
|
|
// 检查是否存在
|
|
rows := r.traceDataRepository.SelectByIds(ids)
|
|
if len(rows) <= 0 {
|
|
return 0, fmt.Errorf("not data")
|
|
}
|
|
|
|
if len(rows) == len(ids) {
|
|
rows := r.traceDataRepository.DeleteByIds(ids)
|
|
return rows, nil
|
|
}
|
|
// 删除信息失败!
|
|
return 0, fmt.Errorf("delete fail")
|
|
}
|