feat:完善项目信息

This commit is contained in:
henry
2022-01-06 22:02:09 +08:00
parent a92801b1ce
commit 657fdc5750
31 changed files with 177 additions and 612 deletions

View File

@ -1,8 +1,8 @@
package user
import (
"SciencesServer/app/api/admin/controller"
"SciencesServer/app/api/admin/model"
"SciencesServer/app/basic/controller"
model2 "SciencesServer/app/common/model"
"SciencesServer/app/service"
"SciencesServer/app/session"
@ -138,7 +138,7 @@ func (c *Instance) Info() (*InstanceUserInfo, error) {
}
// Index 列表信息
func (c *Instance) Index(name, mobile string, status, page, pageSize int) (*controller.ReturnPages, error) {
func (c *Instance) Index(name, mobile string, departmentIDs []uint64, status, page, pageSize int) (*controller.ReturnPages, error) {
where := []*model2.ModelWhere{model2.NewWhere("u.tenant_id", c.TenantID)}
if name != "" {
@ -147,6 +147,9 @@ func (c *Instance) Index(name, mobile string, status, page, pageSize int) (*cont
if mobile != "" {
where = append(where, model2.NewWhereLike("u.mobile", mobile))
}
if len(departmentIDs) > 0 {
where = append(where, model2.NewWhereIn("d.id", departmentIDs))
}
if status > 0 {
where = append(where, model2.NewWhere("u.status", status))
}

View File

@ -3,14 +3,14 @@ package user
import (
"SciencesServer/app/api/admin/model"
model2 "SciencesServer/app/common/model"
"SciencesServer/app/service"
"SciencesServer/app/session"
"errors"
"time"
)
type Person struct{ *service.Session }
type Person struct{ *session.Admin }
type PersonHandle func(session *service.Session) *Person
type PersonHandle func(session *session.Admin) *Person
// EditPassword 修改密码
func (c *Person) EditPassword(oldPassword, password, repeatPwd string) error {
@ -41,7 +41,7 @@ func (c *Person) EditPassword(oldPassword, password, repeatPwd string) error {
}
func NewPerson() PersonHandle {
return func(session *service.Session) *Person {
return &Person{Session: session}
return func(session *session.Admin) *Person {
return &Person{Admin: session}
}
}

View File

@ -1,79 +0,0 @@
package user
import (
"SciencesServer/app/api/admin/controller"
model3 "SciencesServer/app/api/admin/model"
model2 "SciencesServer/app/common/model"
"SciencesServer/app/service"
"SciencesServer/serve/orm"
"SciencesServer/utils"
"gorm.io/gorm"
)
type Role struct{ *controller.Platform }
type RoleHandle func(session *service.Session) *Role
// List 列表信息
func (c *Role) List(uid uint64) ([]*model3.SysRoleUserInfo, error) {
mSysRole := model3.NewSysRole()
out, err := mSysRole.UserRole(uid)
if err != nil {
return nil, err
}
return out, nil
}
// Bind 绑定角色
func (c *Role) Bind(uid uint64, roleIDs []uint64) error {
mSysUserRole := model3.NewSysUserRole()
return orm.GetDB().Transaction(func(tx *gorm.DB) error {
err := model2.DeleteWhere(mSysUserRole.SysUserRole, []*model2.ModelWhere{model2.NewWhere("uid", uid)}, tx)
if err != nil {
return err
}
roles := make([]*model2.SysUserRole, 0)
obj := make([]string, 0)
mark := make(map[uint64]uint64, 0)
for _, v := range roleIDs {
if _, has := mark[v]; has {
continue
}
obj = append(obj, utils.UintToString(v))
roles = append(roles, &model2.SysUserRole{
UID: uid, RoleID: v,
})
mark[v] = v
}
if err = model2.Creates(mSysUserRole.SysUserRole, roles, tx); err != nil {
return err
}
go utils.TryCatch(func() {
//permission := service.NewPermission(obj)(c.TenantKey, utils.UintToString(uid))
//
//if _, err = permission.DeleteRolesForUser(false); err != nil {
// logger.ErrorF("删除用户【%d】角色权限错误%v", uid, err)
// return
//}
//if _, err = permission.AddRoleForUser(); err != nil {
// logger.ErrorF("添加用户【%d】角色权限错误%v", uid, err)
// return
//}
})
return nil
})
}
func NewRole() RoleHandle {
return func(session *service.Session) *Role {
return &Role{Platform: &controller.Platform{Session: session}}
}
}