52 lines
1.4 KiB
Plaintext
52 lines
1.4 KiB
Plaintext
|
#{moduleName}proto "service/api/proto/#{moduleName}/proto"
|
||
|
DB#{EntityName} = "#{moduleName}"
|
||
|
COL#{EntityName} = "#{moduleName}"
|
||
|
|
||
|
// #{EntityCNName}表
|
||
|
func (m *Mongo) getCol#{EntityName}() *qmgo.Collection {
|
||
|
return m.clientMix.Database(DB#{EntityName}).Collection(COL#{EntityName})
|
||
|
}
|
||
|
|
||
|
// #{EntityCNName}相关
|
||
|
func (m *Mongo) Create#{EntityName}(ctx *gin.Context, #{moduleName} *dbstruct.#{EntityName}) error {
|
||
|
col := m.getCol#{EntityName}()
|
||
|
_, err := col.InsertOne(ctx, #{moduleName})
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
func (m *Mongo) Update#{EntityName}(ctx *gin.Context, #{moduleName} *dbstruct.#{EntityName}) error {
|
||
|
col := m.getCol#{EntityName}()
|
||
|
set := util.EntityToM(#{moduleName})
|
||
|
set["ut"] = time.Now().Unix()
|
||
|
up := qmgo.M{
|
||
|
"$set": set,
|
||
|
}
|
||
|
err := col.UpdateId(ctx, #{moduleName}.Id, up)
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
func (m *Mongo) Delete#{EntityName}(ctx *gin.Context, id int64) error {
|
||
|
col := m.getCol#{EntityName}()
|
||
|
update := qmgo.M{
|
||
|
"$set": qmgo.M{
|
||
|
"del_flag": 1,
|
||
|
},
|
||
|
}
|
||
|
err := col.UpdateId(ctx, id, update)
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
func (m *Mongo) Get#{EntityName}List(ctx *gin.Context, req *#{moduleName}proto.OpListReq) ([]*dbstruct.#{EntityName}, error) {
|
||
|
list := make([]*dbstruct.#{EntityName}, 0)
|
||
|
col := m.getCol#{EntityName}()
|
||
|
query := qmgo.M{
|
||
|
"del_flag": 0,
|
||
|
}
|
||
|
err := col.Find(ctx, query).Sort("-ct").Skip(int64(req.Offset)).Limit(int64(req.Limit)).All(&list)
|
||
|
if err == qmgo.ErrNoSuchDocuments {
|
||
|
err = nil
|
||
|
return list, err
|
||
|
}
|
||
|
return list, err
|
||
|
}
|