|
@@ -7,6 +7,7 @@
|
|
|
package services
|
|
|
|
|
|
import (
|
|
|
+ "errors"
|
|
|
"fmt"
|
|
|
"strconv"
|
|
|
|
|
@@ -23,7 +24,7 @@ type ManagerService interface {
|
|
|
GetAll() (dataList []viewmodels.Manager, total int64)
|
|
|
CountAll() int64
|
|
|
Get(id int) *viewmodels.Manager
|
|
|
- Update(data *models.CmManager, columns []string) error
|
|
|
+ Update(id int, groupId int) error
|
|
|
Create(data *models.CmManager) error
|
|
|
Enable(id int, canLogin int) error
|
|
|
}
|
|
@@ -65,6 +66,27 @@ func (s *managerService) Get(id int) *viewmodels.Manager {
|
|
|
return &data
|
|
|
}
|
|
|
|
|
|
+func (s *managerService) Update(id int, groupId int) error {
|
|
|
+
|
|
|
+ // 1.查询是否有该权限组
|
|
|
+ groupDao := dao.NewGroupDao(datasource.InstanceDbMaster())
|
|
|
+ groupData := groupDao.Get(groupId)
|
|
|
+ if groupData.Id == 0 {
|
|
|
+ return errors.New("未找到管理组")
|
|
|
+ }
|
|
|
+
|
|
|
+ updateData := models.CmManager{}
|
|
|
+ updateData.Id = id
|
|
|
+ updateData.GroupId = groupId
|
|
|
+
|
|
|
+ // 要填写字段名称必须要更新的字段
|
|
|
+ if err := s.dao.Update(&updateData, []string{"group_id"}); err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return err
|
|
|
+ }
|
|
|
+ return nil
|
|
|
+}
|
|
|
+
|
|
|
func (s *managerService) Enable(id int, canLogin int) error {
|
|
|
Manager := models.CmManager{}
|
|
|
Manager.Id = id
|
|
@@ -77,9 +99,6 @@ func (s *managerService) Enable(id int, canLogin int) error {
|
|
|
return nil
|
|
|
}
|
|
|
|
|
|
-func (s *managerService) Update(data *models.CmManager, columns []string) error {
|
|
|
- return s.dao.Update(data, columns)
|
|
|
-}
|
|
|
func (s *managerService) Create(data *models.CmManager) error {
|
|
|
return s.dao.Create(data)
|
|
|
}
|
|
@@ -88,12 +107,13 @@ func (s *managerService) Create(data *models.CmManager) error {
|
|
|
func makeManagerVM(projectCM *models.CmManager) viewmodels.Manager {
|
|
|
modelsVM := viewmodels.Manager{}
|
|
|
id, _ := comm.AesEncrypt(strconv.Itoa(projectCM.Id), conf.SignSecret)
|
|
|
- // userId, _ := comm.AesEncrypt(strconv.Itoa(projectCM.UserId), conf.SignSecret)
|
|
|
+ groupId, _ := comm.AesEncrypt(strconv.Itoa(projectCM.GroupId), conf.SignSecret)
|
|
|
|
|
|
modelsVM.Id = id
|
|
|
modelsVM.Username = projectCM.Username
|
|
|
modelsVM.Category = projectCM.Category
|
|
|
- modelsVM.GroupId = projectCM.GroupId
|
|
|
+ modelsVM.GroupId = groupId
|
|
|
+ modelsVM.IsAdmin = projectCM.IsAdmin
|
|
|
modelsVM.RealName = projectCM.RealName
|
|
|
modelsVM.Telephone = projectCM.Telephone
|
|
|
modelsVM.LoginIp = projectCM.LoginIp
|