| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- package logic
- import (
- "context"
- "errors"
- "git.i2edu.net/i2/i2-bill-erp/internal/svc"
- "git.i2edu.net/i2/i2-bill-erp/transform"
- "github.com/tal-tech/go-zero/core/logx"
- )
- type GetErpRoleLogic struct {
- ctx context.Context
- svcCtx *svc.ServiceContext
- logx.Logger
- }
- func NewGetErpRoleLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetErpRoleLogic {
- return &GetErpRoleLogic{
- ctx: ctx,
- svcCtx: svcCtx,
- Logger: logx.WithContext(ctx),
- }
- }
- // 获取 erp 用户角色
- func (l *GetErpRoleLogic) GetErpRole(in *transform.GetErpRoleReq) (*transform.GetErpRoleRes, error) {
- // todo: add your logic here and delete this line
- if in.Mobile == "" {
- return nil, errors.New("mobile is empty")
- }
- sql := `select
- sys_user.id user_id,GROUP_CONCAT(sys_role.code) role
- from
- sys_user
- LEFT JOIN
- sys_user_role on sys_user.id=sys_user_role.user_id
- LEFT JOIN sys_role on sys_user_role.role_id= sys_role.id
- where
- sys_user.mobile = ? GROUP BY sys_user.mobile`
- result, err := l.svcCtx.DB.SQL(sql, in.Mobile).Query().List()
- if err != nil {
- return nil, err
- }
- if len(result) == 0 {
- return nil, nil
- }
- user_id, _ := result[0]["user_id"].(string)
- role, _ := result[0]["role"].(string)
- return &transform.GetErpRoleRes{UserId: user_id, Role: role}, nil
- }
|