caipin преди 4 години
родител
ревизия
40d010fb99
променени са 3 файла, в които са добавени 44 реда и са изтрити 8 реда
  1. 30 5
      lib/permission.json
  2. 5 2
      services/bid_account_service.go
  3. 9 1
      web/api/project_setting_auth_api.go

+ 30 - 5
lib/permission.json

@@ -1,15 +1,40 @@
 {
     "contract": {
         "add": [
-            "1",
-            "2",
-            "3"
+            "/api/contract/income/create",
+            "/api/contract/income/update",
+            "/api/contract/return/create",
+            "/api/contract/return/update",
+            "/api/contract/close",
+            "/api/contract/unlock",
+            "/api/contract/expenditure/create",
+            "/api/contract/expenditure/update",
+            "/api/contract/paid/create",
+            "/api/contract/paid/update",
+            "/api/contract/section/add",
+            "/api/contract/section/depth",
+            "/api/contract/section/save",
+            "/api/contract/section/serial",
+            "/api/contract/section/serial/update",
+            "/api/contract/section/template"
         ],
         "access": [
-            "/api/contract/survey"
+            "/api/contract/survey",
+            "/api/contract/income",
+            "/api/contract/income/section/all",
+            "/api/contract/return/list",
+            "/api/contract/return/way",
+            "/api/contract/survey",
+            "/api/contract/expenditure",
+            "/api/contract/expenditure/section/all",
+            "/api/contract/paid/list"
         ],
         "delete":[
-
+            "/api/contract",
+            "/api/contract/return/delete",
+            "/api/contract/expenditure",
+            "/api/contract/piad/delete",
+            "/api/contract/section"
         ]
     },
     "safe": {

+ 5 - 2
services/bid_account_service.go

@@ -20,7 +20,7 @@ import (
 //定义项目用户Service接口
 type BidAccountService interface {
 	ValidRule(ctx iris.Context) (viewmodels.BidAccount, error)
-	Create(viewBidAccount viewmodels.BidAccount, projectId int) error
+	Create(viewBidAccount viewmodels.BidAccount, projectId int, accountId int) error
 	Delete(viewBidAccount viewmodels.BidAccount, projectId int) error
 }
 
@@ -62,13 +62,16 @@ func (s *bidAccountService) ValidRule(ctx iris.Context) (viewmodels.BidAccount,
 }
 
 // 新增标段于账号的关系
-func (s *bidAccountService) Create(viewBidAccount viewmodels.BidAccount, projectId int) error {
+func (s *bidAccountService) Create(viewBidAccount viewmodels.BidAccount, projectId int, loginAccountId int) error {
 	// 写入关系表-标段的成员数量-账号表中标段ID
 	// 1.检查账号合法性
 	accountId, err := utils.GetDecryptId(viewBidAccount.AccountId)
 	if err != nil {
 		return err
 	}
+	if loginAccountId == accountId {
+		return errors.New("不能添加自己")
+	}
 	accountData := s.projectAccountDao.Get(accountId, projectId)
 	if accountData.Id == 0 {
 		return errors.New("添加的账号不合法")

+ 9 - 1
web/api/project_setting_auth_api.go

@@ -91,8 +91,16 @@ func (c *ProjectSettingApi) PostBidAccountCreate() {
 		c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)})
 		return
 	}
+
+	// 获得账号ID
+	accountId, err := utils.GetProjectAccountId(c.Ctx)
+	if err != nil {
+		c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)})
+		return
+	}
+
 	// 创建标段和账号的关系
-	err = c.ServiceBidAccount.Create(BidAccountData, projectIdInt)
+	err = c.ServiceBidAccount.Create(BidAccountData, projectIdInt, accountId)
 	if err != nil {
 		c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)})
 		return