You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
3.2 KiB
81 lines
3.2 KiB
package {{.pkgName}}
|
|
|
|
import (
|
|
{{.imports}}
|
|
// "项目名称/orm/model" // 引入model包
|
|
|
|
// "github.com/jinzhu/copier" // 用于复制结构体
|
|
// "github.com/spf13/cast" // 用于类型转换
|
|
// "github.com/dromara/carbon/v2" // 用于时间操作
|
|
)
|
|
|
|
type {{.logic}} struct {
|
|
logx.Logger
|
|
ctx context.Context
|
|
svcCtx *svc.ServiceContext
|
|
}
|
|
|
|
{{if .hasDoc}}{{.doc}}{{end}}
|
|
func New{{.logic}}(ctx context.Context, svcCtx *svc.ServiceContext) *{{.logic}} {
|
|
return &{{.logic}}{
|
|
Logger: logx.WithContext(ctx),
|
|
ctx: ctx,
|
|
svcCtx: svcCtx,
|
|
}
|
|
}
|
|
|
|
func (l *{{.logic}}) {{.function}}({{.request}}) {{.responseType}} {
|
|
// 这里编写业务逻辑,要注意错误处理,写好注释
|
|
// 示例1. 新增一条记录
|
|
// var {{.pkgName}} model.XXX // 定义一个结构体,用于存储查询结果
|
|
// copier.Copy(&{{.pkgName}}, &req) // 将请求参数复制到结构体中,或者逐个定义: xxx.Name = req.Name
|
|
// gormRes := l.svcCtx.GormDb.Create(&{{.pkgName}}) // 调用Gorm的Create方法,新增一条记录
|
|
|
|
// 示例2. 查询一条记录
|
|
// var {{.pkgName}} model.XXX // 定义一个结构体,用于存储查询结果
|
|
// gormRes := l.svcCtx.GormDb.Where("id = ?",req.Id).First(&{{.pkgName}}) // 调用Gorm的First方法,查询一条记录
|
|
|
|
// 示例3. 更新一条记录
|
|
// var {{.pkgName}} model.XXX // 定义一个结构体,用于存储查询结果
|
|
// gormRes := l.svcCtx.GormDb.Where("id = ?",req.Id).First(&{{.pkgName}}) // 调用Gorm的First方法,查询一条记录
|
|
// copier.Copy(&{{.pkgName}}, &req) // 将请求参数复制到结构体中,或者逐个定义: xxx.Name = req.Name
|
|
// gormRes := l.svcCtx.GormDb.Save(&{{.pkgName}}) // 调用Gorm的Save方法,更新一条记录
|
|
|
|
// 示例4. 删除一条记录
|
|
// var {{.pkgName}} model.XXX // 定义一个结构体,用于存储查询结果
|
|
// gormRes := l.svcCtx.GormDb.Where("id = ?",req.Id).Delete(&{{.pkgName}}) // 调用Gorm的delete方法,删除一条记录
|
|
|
|
// 示例5. 查询多条记录
|
|
// var {{.pkgName}} []model.XXX // 定义一个结构体,用于存储查询结果
|
|
// gormRes := l.svcCtx.GormDb.Where("name = ?",req.Name).Offset((req.Page -1) * req.PageSize).Limit(req.PageSize).Find(&{{.pkgName}}) // 调用Gorm的Find方法,查询多条记录
|
|
|
|
// // 判断是否发生错误
|
|
// if gormRes.Error != nil { // 如果操作数据发生错误,则返回错误信息
|
|
// return &types.Response{
|
|
// Success: false,
|
|
// Code : 500,
|
|
// Msg: "{{if .hasDoc}}{{.doc}}{{end}}"+"操作失败", // 修改错误时返回信息
|
|
// Data: gormRes.Error.Error(),
|
|
// },nil
|
|
// }
|
|
|
|
// // 判断是否未找到数据
|
|
// if gormRes.RowsAffected == 0 { // 如果未找到数据,则返回错误信息
|
|
// return &types.Response{
|
|
// Success: false,
|
|
// Code : 404,
|
|
// Msg: "{{if .hasDoc}}{{.doc}}{{end}}"+"未找到数据", // 修改未找到数据时返回信息
|
|
// Data: "未找到数据",
|
|
// },nil
|
|
// }
|
|
|
|
// 返回正确信息
|
|
return &types.Response{
|
|
Success: true,
|
|
Code : 200,
|
|
Msg: "{{if .hasDoc}}{{.doc}}{{end}}"+"操作成功", // 修改正确时返回信息
|
|
//Data: {{.pkgName}}, // 修改返回数据,如:上面定义的 {{.pkgName}}
|
|
},nil
|
|
|
|
|
|
}
|
|
|