create_position_logic.go 977 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package position
  2. import (
  3. "context"
  4. "github.com/suyuan32/simple-admin-core/api/internal/svc"
  5. "github.com/suyuan32/simple-admin-core/api/internal/types"
  6. "github.com/suyuan32/simple-admin-core/rpc/types/core"
  7. "github.com/zeromicro/go-zero/core/logx"
  8. )
  9. type CreatePositionLogic struct {
  10. logx.Logger
  11. ctx context.Context
  12. svcCtx *svc.ServiceContext
  13. }
  14. func NewCreatePositionLogic(ctx context.Context, svcCtx *svc.ServiceContext) *CreatePositionLogic {
  15. return &CreatePositionLogic{
  16. Logger: logx.WithContext(ctx),
  17. ctx: ctx,
  18. svcCtx: svcCtx,
  19. }
  20. }
  21. func (l *CreatePositionLogic) CreatePosition(req *types.PositionInfo) (resp *types.BaseMsgResp, err error) {
  22. data, err := l.svcCtx.CoreRpc.CreatePosition(l.ctx,
  23. &core.PositionInfo{
  24. Status: req.Status,
  25. Sort: req.Sort,
  26. Name: req.Name,
  27. Code: req.Code,
  28. Remark: req.Remark,
  29. })
  30. if err != nil {
  31. return nil, err
  32. }
  33. return &types.BaseMsgResp{Msg: l.svcCtx.Trans.Trans(l.ctx, data.Msg)}, nil
  34. }