Files
customer-server/service/data_service.go

70 lines
1.8 KiB
Go
Raw Permalink Normal View History

2026-03-14 10:02:49 +08:00
// Package service - 对话数据服务
// 功能对话记录查询、导出Excel
package service
import (
"context"
"customer-server/dao"
"customer-server/model/dto"
"customer-server/model/entity"
"gitea.com/red-future/common/utils"
"github.com/gogf/gf/v2/os/gtime"
)
var Data = new(data)
type data struct{}
// Add 添加数据
// 参数: ctx - 上下文req - 添加数据请求
// 返回: res - 添加成功后的数据IDerr - 错误信息
// 功能: 创建新的数据记录
func (s *data) Add(ctx context.Context, req *dto.AddDataReq) (res *dto.AddDataRes, err error) {
data := &entity.Data{}
if err = utils.Struct(req, data); err != nil {
return
}
// 设置基础字段
now := gtime.Now().Time
data.CreatedAt = &now // 取地址赋值给指针类型
data.UpdatedAt = &now // 取地址赋值给指针类型
data.IsDeleted = false
// 注意Creator、Updater、TenantId 保持零值,不设置
if err = dao.Data.Insert(ctx, data); err != nil {
return
}
res = &dto.AddDataRes{Id: data.Id.Hex()}
return
}
// Update 更新数据
// 参数: ctx - 上下文req - 更新数据请求
// 返回: err - 错误信息
// 功能: 更新数据记录内容
func (s *data) Update(ctx context.Context, req *dto.UpdateDataReq) (err error) {
return dao.Data.Update(ctx, req)
}
// // Delete 删除数据
// func (s *data) Delete(ctx context.Context, req *dto.DeleteDataReq) (err error) {
// return dao.Data.Delete(ctx, req)
// }
// List 获取数据列表
// 参数: ctx - 上下文req - 列表查询请求
// 返回: res - 数据列表及分页信息err - 错误信息
// 功能: 分页查询数据记录
func (s *data) List(ctx context.Context, req *dto.ListDataReq) (res *dto.ListDataRes, err error) {
list, total, err := dao.Data.List(ctx, req)
if err != nil {
return
}
res = &dto.ListDataRes{
List: list,
Total: int(total),
}
return
}