|
@@ -9,7 +9,6 @@ package services
|
|
|
import (
|
|
|
"encoding/json"
|
|
|
"errors"
|
|
|
- "fmt"
|
|
|
"html"
|
|
|
"log"
|
|
|
"strconv"
|
|
@@ -42,7 +41,7 @@ type ProjectAccountService interface {
|
|
|
GetProjectInfo(id int) (viewmodels.ProjectInfo, error)
|
|
|
Delete(id int, projectId int) error
|
|
|
|
|
|
- SaveAuth(permission viewmodels.Permission, projectId int) error
|
|
|
+ SaveAuth(permission viewmodels.Permission, projectId int, accountId int) error
|
|
|
}
|
|
|
|
|
|
//返回service操作类
|
|
@@ -286,30 +285,50 @@ func (s *projectAccountService) GetProjectInfo(id int) (viewmodels.ProjectInfo,
|
|
|
}
|
|
|
|
|
|
// 保存权限设置
|
|
|
-func (s *projectAccountService) SaveAuth(permission viewmodels.Permission, projectId int) error {
|
|
|
+func (s *projectAccountService) SaveAuth(permission viewmodels.Permission, projectId int, accountId int) error {
|
|
|
// 1.构造权限字符串
|
|
|
+ // 1-1.合同权限
|
|
|
contractPermission := map[string]int{
|
|
|
"add": permission.ContractAdd,
|
|
|
"delete": permission.ContractDelete,
|
|
|
"access": permission.ContractAccess,
|
|
|
}
|
|
|
- // safePermission := map[string]int{
|
|
|
- // "add": permission.SafeAdd,
|
|
|
- // "delete": permission.SafeDelete,
|
|
|
- // "access": permission.SafeAccess,
|
|
|
- // }
|
|
|
- // qualityPermission := map[string]int{
|
|
|
- // "add": permission.QualityAdd,
|
|
|
- // "delete": permission.QualityDelete,
|
|
|
- // "access": permission.QualityAccess,
|
|
|
- // }
|
|
|
-
|
|
|
contractPermissionByte, err := json.Marshal(contractPermission)
|
|
|
if err != nil {
|
|
|
- return errors.New("合同权限解析识别")
|
|
|
+ return errors.New("合同权限解析失败")
|
|
|
}
|
|
|
contractPermissionStr := string(contractPermissionByte)
|
|
|
- fmt.Println(contractPermissionStr)
|
|
|
+ // 1.2 安全巡检权限
|
|
|
+ safePermission := map[string]int{
|
|
|
+ "add": permission.SafeAdd,
|
|
|
+ "delete": permission.SafeDelete,
|
|
|
+ "access": permission.SafeAccess,
|
|
|
+ }
|
|
|
+ safePermissionByte, err := json.Marshal(safePermission)
|
|
|
+ if err != nil {
|
|
|
+ return errors.New("合同权限解析失败")
|
|
|
+ }
|
|
|
+ safePermissionStr := string(safePermissionByte)
|
|
|
+ // 1.3 质量巡检权限
|
|
|
+ qualityPermission := map[string]int{
|
|
|
+ "add": permission.QualityAdd,
|
|
|
+ "delete": permission.QualityDelete,
|
|
|
+ "access": permission.QualityAccess,
|
|
|
+ }
|
|
|
+ qualityPermissionByte, err := json.Marshal(qualityPermission)
|
|
|
+ if err != nil {
|
|
|
+ return errors.New("合同权限解析失败")
|
|
|
+ }
|
|
|
+ qualityPermissionStr := string(qualityPermissionByte)
|
|
|
|
|
|
- return nil
|
|
|
+ // 2.保存权限
|
|
|
+ account := models.CmProjectAccount{}
|
|
|
+ account.Id = accountId
|
|
|
+ account.ProjectId = projectId
|
|
|
+ account.Contractpermission = contractPermissionStr
|
|
|
+ account.Safepermission = safePermissionStr
|
|
|
+ account.Qualitypermission = qualityPermissionStr
|
|
|
+
|
|
|
+ err = s.dao.Update(&account, []string{"Contractpermission", "Safepermission", "Qualitypermission"})
|
|
|
+ return err
|
|
|
}
|