代码拉取完成,页面将自动刷新
/*
* @Descripttion:
* @version:
* @Author: lfzxs@qq.com
* @Date: 2023-11-09 15:44:29
* @LastEditors: lfzxs@qq.com
* @LastEditTime: 2023-12-01 17:11:45
*/
/*
* @Descripttion:
* @version:
* @Author: lfzxs@qq.com
* @Date: 2023-11-09 15:44:29
* @LastEditors: lfzxs@qq.com
* @LastEditTime: 2023-12-01 15:38:48
*/
package libService
import (
"context"
"gitee.com/g_boot/chkboot-common/library/liberr"
"github.com/gogf/gf/v2/errors/gerror"
"github.com/gogf/gf/v2/frame/g"
)
type IDao interface {
List(ctx context.Context, pageQuery *PageInp) (res *PageModel, err error)
Search(ctx context.Context, querObject any) (res *PageModel, err error)
}
type BaseDao[T any] struct {
//表名
Table string
}
func (obj *BaseDao[T]) Search(ctx context.Context, querObject any) (res *PageModel, err error) {
var (
pgeinput PageInp
)
ServiceUtil.MakeQueryAndOrderWrapper(querObject, &pgeinput)
model, err := obj.List(ctx, &pgeinput)
return model, err
}
func (obj *BaseDao[T]) List(ctx context.Context, pageQuery *PageInp) (res *PageModel, err error) {
var (
data []T
result PageModel
)
oper := g.Model(obj.Table).Safe().Ctx(ctx)
oper = ServiceUtil.MakeWhereAndOrder(oper, pageQuery)
result.Total, err = oper.Count()
if err != nil {
err = gerror.Wrap(err, liberr.ErrorORM)
return nil, err
}
err = oper.Scan(&data)
if err != nil {
err = gerror.Wrap(err, liberr.ErrorORM)
return nil, err
}
result.List = data
result.Size = len(data)
return &result, err
}
func (obj *BaseDao[T]) Add(ctx context.Context, object any) (err error) {
oper := g.Model(obj.Table).Safe().Ctx(ctx)
adt := ServiceUtil.MakeAddWrapper(object)
oper.Data(adt.Model).Insert()
return
}
func (obj *BaseDao[T]) Edit(ctx context.Context, condition any, object any) (err error) {
// oper := g.Model(obj.Table).Safe().Ctx(ctx)
// oper.Where().Update()
return
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。