|
@@ -27,6 +27,8 @@ import (
|
|
|
//定义项目用户Service接口
|
|
|
type ProjectAccountService interface {
|
|
|
ValidRule(ctx iris.Context) (viewmodels.ProjectAccount, error)
|
|
|
+ ValidRulePermission(ctx iris.Context) (viewmodels.Permission, error)
|
|
|
+
|
|
|
Get(accountId int, projectId int) *viewmodels.ProjectAccount
|
|
|
GetAll(projectId int) []viewmodels.ProjectAccount
|
|
|
GetBidAccount(bidsectionId int, projectId int, projectAccountId int) []viewmodels.ProjectAccount
|
|
@@ -37,6 +39,8 @@ type ProjectAccountService interface {
|
|
|
ChangeAccount(id int, projectId int, viewAccount viewmodels.ProjectAccount) error
|
|
|
GetProjectInfo(id int) (viewmodels.ProjectInfo, error)
|
|
|
Delete(id int, projectId int) error
|
|
|
+
|
|
|
+ SaveAuth(permission viewmodels.Permission, projectId int) error
|
|
|
}
|
|
|
|
|
|
//返回service操作类
|
|
@@ -53,8 +57,8 @@ func NewProjectAccountService() ProjectAccountService {
|
|
|
return &projectAccountService{
|
|
|
dao: dao.NewProjectAccountDao(datasource.InstanceDbMaster()),
|
|
|
bidAccountDao: dao.NewBidAccountDao(datasource.InstanceDbMaster()),
|
|
|
- validSave: "/api/projectSetting/account/create",
|
|
|
- validAdd: "/api/projectSetting/account/add",
|
|
|
+ validSave: "/api/projectSetting/account/save",
|
|
|
+ validAdd: "/api/projectSetting/account/create",
|
|
|
validPassword: "/api/projectSetting/account/change",
|
|
|
}
|
|
|
}
|
|
@@ -105,6 +109,25 @@ func (s *projectAccountService) ValidRule(ctx iris.Context) (viewmodels.ProjectA
|
|
|
return accountVaild, nil
|
|
|
}
|
|
|
|
|
|
+// 用户规则验证
|
|
|
+func (s *projectAccountService) ValidRulePermission(ctx iris.Context) (viewmodels.Permission, error) {
|
|
|
+ accountVaild := viewmodels.Permission{}
|
|
|
+ err := ctx.ReadJSON(&accountVaild)
|
|
|
+ if err != nil {
|
|
|
+ log.Println("account-ValidRule-ReadForm转换异常, error=", err)
|
|
|
+ return accountVaild, err
|
|
|
+ }
|
|
|
+
|
|
|
+ err = accountVaild.Validate()
|
|
|
+
|
|
|
+ if err != nil {
|
|
|
+ log.Println("权限验证, error=", err)
|
|
|
+ return accountVaild, err
|
|
|
+ }
|
|
|
+
|
|
|
+ return accountVaild, nil
|
|
|
+}
|
|
|
+
|
|
|
// 获得一个项目用户
|
|
|
func (s *projectAccountService) Get(id int, projectId int) *viewmodels.ProjectAccount {
|
|
|
modelsAccount := s.dao.Get(id, projectId)
|
|
@@ -257,6 +280,27 @@ func (s *projectAccountService) ChangeAccount(id int, projectId int, viewAccount
|
|
|
|
|
|
func (s *projectAccountService) GetProjectInfo(id int) (viewmodels.ProjectInfo, error) {
|
|
|
projectInfo, err := s.dao.FindById(id)
|
|
|
- // return new errors("啊啊啊")
|
|
|
return projectInfo, err
|
|
|
}
|
|
|
+
|
|
|
+// 保存权限设置
|
|
|
+func (s *projectAccountService) SaveAuth(permission viewmodels.Permission, projectId int) error {
|
|
|
+ // 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,
|
|
|
+ // }
|
|
|
+
|
|
|
+ return nil
|
|
|
+}
|