package logic import ( "service/api/consts" "github.com/gin-gonic/gin" #{moduleName}_proto "service/api/proto/#{moduleName}/proto" goproto "google.golang.org/protobuf/proto" "service/app/mix/dao" "service/dbstruct" "service/library/idgenerator" "service/library/logger" "time" ) type #{EntityName} struct { store *dao.Store } func New#{EntityName}(store *dao.Store) (a *#{EntityName}) { a = &#{EntityName}{ store: store, } return } func (p *#{EntityName}) OpCreate(ctx *gin.Context, req *#{moduleName}_proto.OpCreateReq) error { //产生id idSeq, err := p.store.GetAndUpdate#{EntityName}IdSeq(ctx) if err != nil { logger.Error("GetAndUpdate#{EntityName}IdSeq failed : %v", err) return err } req.#{EntityName}.Id = goproto.Int64(idSeq.Seq) req.#{EntityName}.Id = goproto.Int64(idgenerator.Gen#{EntityName}Id()) req.#{EntityName}.Ct = goproto.Int64(time.Now().Unix()) req.#{EntityName}.Ut = goproto.Int64(time.Now().Unix()) req.#{EntityName}.DelFlag = goproto.Int64(consts.Exist) err := p.store.Create#{EntityName}(ctx, req.#{EntityName}) if err != nil { logger.Error("Create#{EntityName} fail, err: %v", err) return err } return nil } func (p *#{EntityName}) OpUpdate(ctx *gin.Context, req *#{moduleName}_proto.OpUpdateReq) error { err := p.store.Update#{EntityName}(ctx, req.#{EntityName}) if err != nil { logger.Error("Update#{EntityName} fail, err: %v", err) return err } return nil } func (p *#{EntityName}) OpDelete(ctx *gin.Context, id int64) error { err := p.store.Delete#{EntityName}(ctx, id) if err != nil { logger.Error("Delete#{EntityName} fail, err: %v", err) return err } return nil } func (p *#{EntityName}) OpList(ctx *gin.Context, req *#{moduleName}_proto.OpListReq) ([]*dbstruct.#{EntityName}, error) { list, err := p.store.Get#{EntityName}List(ctx, req) if err != nil { logger.Error("Get#{EntityName}List fail, err: %v", err) return make([]*dbstruct.#{EntityName}, 0), err } return list, nil } func (p *#{EntityName}) GetById(ctx *gin.Context, id int64) (*dbstruct.#{EntityName}, error) { one, err := p.store.Get#{EntityName}ById(ctx, id) if err != nil { logger.Error("Get#{EntityName}ByIds fail, id: %v, err: %v", id, err) return nil, err } return one, nil } func (p *#{EntityName}) GetByIds(ctx *gin.Context, ids []int64) ([]*dbstruct.#{EntityName}, error) { list, err := p.store.Get#{EntityName}ListByIds(ctx, ids) if err != nil { logger.Error("Get#{EntityName}ListByIds fail, ids: %v, err: %v", ids, err) return make([]*dbstruct.#{EntityName}, 0), err } return list, nil }