123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- package model
- import (
- "fmt"
- operationPb "kpt-tmr-group/proto/go/backend/operation"
- "net/http"
- "strconv"
- "strings"
- "time"
- )
- type SystemUser struct {
- Id int64 `json:"id"`
- Name string `json:"name"`
- EmployeeName string `json:"employee_name"`
- Phone string `json:"phone"`
- Password string `json:"password"`
- RoleIds string `json:"role_ids"`
- CreateUser string `json:"create_user"`
- IsShow operationPb.IsShow_Kind `json:"is_show"`
- IsDelete operationPb.IsShow_Kind `json:"is_delete"`
- CreatedAt int64 `json:"created_at"`
- UpdatedAt int64 `json:"updated_at"`
- }
- func (s *SystemUser) TableName() string {
- return "system_user"
- }
- func (s *SystemUser) SystemUserFormat(userRoles []*SystemRole, pastures []*operationPb.UserPasture) *operationPb.UserAuth {
- roles := make([]*operationPb.UserRole, len(userRoles))
- for k, v := range userRoles {
- roles[k] = &operationPb.UserRole{
- Id: int32(v.Id),
- Name: v.Name,
- }
- }
- return &operationPb.UserAuth{
- Code: http.StatusOK,
- Msg: "ok",
- Data: &operationPb.UserAuthData{
- UserName: s.Name,
- Phone: s.Phone,
- EmployeeName: s.EmployeeName,
- Roles: roles,
- Pastures: pastures,
- },
- }
- }
- func (s *SystemUser) SystemUserRoleFormat(req *operationPb.AddSystemUser) {
- roleIds := ""
- for _, role := range req.Roles {
- roleIds += fmt.Sprintf("%d,", role.Id)
- }
- if roleIds != "" {
- s.RoleIds = strings.TrimRight(roleIds, ",")
- }
- }
- func (s *SystemUser) SystemUserRoleToSlice() []int {
- roleIds := make([]int, 0)
- if s.RoleIds != "" {
- roleIdsStr := strings.Split(s.RoleIds, ",")
- for _, v := range roleIdsStr {
- roleIdsInt, _ := strconv.Atoi(v)
- roleIds = append(roleIds, roleIdsInt)
- }
- }
- return roleIds
- }
- type SystemUserSlice []*SystemUser
- func (s SystemUserSlice) ToPB(roleList []*SystemRole) []*operationPb.AddSystemUser {
- res := make([]*operationPb.AddSystemUser, len(s))
- for i, v := range s {
- res[i] = &operationPb.AddSystemUser{
- Id: int32(v.Id),
- Name: v.Name,
- Phone: v.Phone,
- EmployeeName: v.EmployeeName,
- CreateUser: v.CreateUser,
- IsShow: v.IsShow,
- CreatedAt: int32(v.CreatedAt),
- CreatedAtFormat: time.Unix(v.CreatedAt, 0).Format(LayoutTime),
- RoleName: strings.TrimRight(v.UserRoleFormat(roleList), ","),
- }
- }
- return res
- }
- func (s *SystemUser) UserRoleFormat(roleList []*SystemRole) string {
- ids := strings.Split(s.RoleIds, ",")
- roleListName := ""
- for _, id := range ids {
- for _, r := range roleList {
- if fmt.Sprintf("%d", r.Id) != id {
- continue
- }
- roleListName += fmt.Sprintf("%s,", r.Name)
- }
- }
- return roleListName
- }
- func (s *SystemUser) ToPb() *operationPb.AddSystemUser {
- roles := make([]int32, 0)
- roleIds := strings.Split(s.RoleIds, ",")
- for _, roleId := range roleIds {
- id, _ := strconv.Atoi(roleId)
- roles = append(roles, int32(id))
- }
- return &operationPb.AddSystemUser{
- Id: int32(s.Id),
- Name: s.Name,
- Phone: s.Phone,
- CreateUser: s.CreateUser,
- EmployeeName: s.EmployeeName,
- IsShow: s.IsShow,
- CreatedAt: int32(s.CreatedAt),
- CreatedAtFormat: time.Unix(s.CreatedAt, 0).Format(LayoutTime),
- RoleIds: roles,
- }
- }
|