zwxi 1 年間 前
コミット
9f25efb171

+ 20 - 6
controllers/company.go

@@ -3069,15 +3069,28 @@ func (this *CompanyController) Detail() {
 	}
 	// CRM8.8-是否为编辑页的客户详情
 	isEdit, _ := this.GetBool("IsEdit")
+
+	productId := services.GetProductId(sysUser.RoleTypeCode)
 	item, err := company.GetCompanyDetailById(companyId)
 	if err != nil {
 		br.Msg = "获取信息失败"
 		br.ErrMsg = "获取数据失败,Err:" + err.Error()
 		return
 	}
-	shareSellerId := item.ShareSellerId
+	shareSellerId := 0
+	var productItem *company.CompanyProduct
+	if productId > 0 {
+		var  e  error
+		productItem, e = company.GetCompanyProductByCompanyIdAndProductId(companyId, productId)
+		if e != nil {
+			br.Msg = "客户信息有误"
+			br.ErrMsg = "获取客户信息失败, Err: " + e.Error()
+			return
+		}
+		shareSellerId = productItem.ShareSellerId
+	}
+
 	var productName string
-	productId := services.GetProductId(sysUser.RoleTypeCode)
 	if productId == 1 {
 		productName = utils.COMPANY_PRODUCT_FICC_NAME
 	} else if productId == 2 {
@@ -3120,7 +3133,7 @@ func (this *CompanyController) Detail() {
 						break
 					}
 					// 分享的客户 也有权限
-					if item.IsShare == 1 && item.ShareSellerId == sysUser.AdminId {
+					if productItem.IsShare == 1 && productItem.ShareSellerId == sysUser.AdminId {
 						isOk = true
 						break
 					}
@@ -3502,7 +3515,7 @@ func (this *CompanyController) DetailByCreditCode() {
 		br.Data = resp
 		return
 	}
-	shareSellerId := item.ShareSellerId
+
 	companyId := item.CompanyId
 	var productName string
 	productId := services.GetProductId(sysUser.RoleTypeCode)
@@ -3688,7 +3701,8 @@ func (this *CompanyController) DetailByCreditCode() {
 				resp.IsButtonShow = 1
 			}
 		}
-		btnItem := services.GetCompanyPermissionButton(roleTypeCode, item.Status, strconv.Itoa(item.SellerId), strconv.Itoa(item.GroupId), item.GroupId, sysUser.GroupId, item.SellerId, sysUser.AdminId, sysUser.Authority, item.ProductId, shareSellerId)
+		btnItem := services.GetCompanyPermissionButton(roleTypeCode, item.Status, strconv.Itoa(item.SellerId), strconv.Itoa(item.GroupId),
+			item.GroupId, sysUser.GroupId, item.SellerId, sysUser.AdminId, sysUser.Authority, item.ProductId, item.ShareSellerId)
 		//if itemLen > 1 {
 		//	btnDetailItem.BtnEdit = false
 		//	btnDetailItem.BtnDelete = false
@@ -3714,7 +3728,7 @@ func (this *CompanyController) DetailByCreditCode() {
 
 		//联系人操作权限
 		if resp.IsContractButtonShow == false {
-			resp.IsContractButtonShow = services.CheckCompanyUserButton(sysUser.RoleTypeCode, item.SellerId, sysUser.AdminId, item.ProductId, shareSellerId, item.Status)
+			resp.IsContractButtonShow = services.CheckCompanyUserButton(sysUser.RoleTypeCode, item.SellerId, sysUser.AdminId, item.ProductId, item.ShareSellerId, item.Status)
 		}
 	}
 

+ 16 - 18
controllers/company_user.go

@@ -201,6 +201,16 @@ func (this *CompanyUserController) AddUser() {
 			}
 			companyProductList = append(companyProductList, tmpCompanyProduct)
 		} else if req.Source == "add_user" {
+			shareSellerId := 0
+			if req.CompanyId > 0 {
+				item, e := company.GetCompanyProductByCompanyIdAndProductId(req.CompanyId, productId)
+				if e != nil {
+					br.Msg = "客户信息有误"
+					br.ErrMsg = "获取客户信息失败, Err: " + e.Error()
+					return
+				}
+				shareSellerId = item.ShareSellerId
+			}
 			//获取当前操作员产品权限
 			tmpCompanyProductList, productErr := getSysCompanyProductList(productId, req.CompanyId)
 			if productErr != nil {
@@ -1628,16 +1638,11 @@ func (this *CompanyUserController) EditUser() {
 		br.ErrMsg = "获取当前操作员找不到产品权限"
 		return
 	}
-	item, err := company.GetCompanyDetailById(wxUser.CompanyId)
-	if err != nil {
-		br.Msg = "获取信息失败"
-		br.ErrMsg = "获取数据失败,Err:" + err.Error()
-		return
-	}
+
 	//操作权限校验
 	for _, v := range companyProductList {
-		companyUserStatus := services.CheckCompanyUserButton(sysUser.RoleTypeCode, v.SellerId, sysUser.AdminId, v.ProductId, item.ShareSellerId, v.Status)
-		if item.ShareSellerId == sysUser.AdminId {
+		companyUserStatus := services.CheckCompanyUserButton(sysUser.RoleTypeCode, v.SellerId, sysUser.AdminId, v.ProductId, v.ShareSellerId, v.Status)
+		if v.ShareSellerId == sysUser.AdminId {
 			companyUserStatus = true
 		}
 		if companyUserStatus == false {
@@ -5018,13 +5023,10 @@ func checkOpCompanyUserByUserId(userId, productId, opId int, roleTypeCode string
 		err = errors.New("删除失败,获取当前操作员找不到产品权限")
 		return
 	}
-	item, err := company.GetCompanyDetailById(userInfo.CompanyId)
-	if err != nil {
-		return
-	}
+
 	//操作权限校验
 	for _, v := range companyProductList {
-		companyUserStatus := services.CheckCompanyUserButton(roleTypeCode, v.SellerId, opId, v.ProductId, item.ShareSellerId, v.Status)
+		companyUserStatus := services.CheckCompanyUserButton(roleTypeCode, v.SellerId, opId, v.ProductId, v.ShareSellerId, v.Status)
 		if companyUserStatus == false {
 			errMsg = "没有操作权限"
 			err = errors.New("没有操作权限")
@@ -5048,13 +5050,9 @@ func checkOpCompanyUserByCompanyId(companyId, productId, opId int, roleTypeCode
 		err = errors.New("删除失败,获取当前操作员找不到产品权限")
 		return
 	}
-	item, err := company.GetCompanyDetailById(companyId)
-	if err != nil {
-		return
-	}
 	//操作权限校验
 	for _, v := range companyProductList {
-		companyUserStatus := services.CheckCompanyUserButton(roleTypeCode, v.SellerId, opId, v.ProductId, item.ShareSellerId, v.Status)
+		companyUserStatus := services.CheckCompanyUserButton(roleTypeCode, v.SellerId, opId, v.ProductId, v.ShareSellerId, v.Status)
 		if companyUserStatus == false {
 			errMsg = "没有操作权限"
 			err = errors.New("没有操作权限")

+ 4 - 4
controllers/full_company.go

@@ -2312,7 +2312,6 @@ func (this *FullCompanyController) Detail() {
 		br.ErrMsg = "获取数据失败,Err:" + err.Error()
 		return
 	}
-	shareSellerId := item.ShareSellerId
 	var productName string
 	productId := services.GetProductId(sysUser.RoleTypeCode)
 	// 销售经理赋予admin查看权限
@@ -2361,7 +2360,7 @@ func (this *FullCompanyController) Detail() {
 				if item.Status == utils.COMPANY_STATUS_FREEZE || item.Status == utils.COMPANY_STATUS_LOSE {
 					btnDetailItem.BtnHistoryList = true
 				} else {
-					if item.SellerId == sysUser.AdminId || shareSellerId == sysUser.AdminId {
+					if item.SellerId == sysUser.AdminId || item.ShareSellerId == sysUser.AdminId {
 						btnDetailItem.BtnHistoryList = true
 					}
 					if sysUser.Authority > 0 {
@@ -2469,7 +2468,8 @@ func (this *FullCompanyController) Detail() {
 				resp.IsButtonShow = 1
 			}
 		}
-		btnItem := services.GetCompanyPermissionButton(roleTypeCode, item.Status, strconv.Itoa(item.SellerId), strconv.Itoa(item.GroupId), item.GroupId, sysUser.GroupId, item.SellerId, sysUser.AdminId, sysUser.Authority, item.ProductId, shareSellerId)
+		btnItem := services.GetCompanyPermissionButton(roleTypeCode, item.Status, strconv.Itoa(item.SellerId), strconv.Itoa(item.GroupId),
+			item.GroupId, sysUser.GroupId, item.SellerId, sysUser.AdminId, sysUser.Authority, item.ProductId, item.ShareSellerId)
 		//if itemLen > 1 {
 		//	btnDetailItem.BtnEdit = false
 		//	btnDetailItem.BtnDelete = false
@@ -2495,7 +2495,7 @@ func (this *FullCompanyController) Detail() {
 
 		//联系人操作权限
 		if resp.IsContractButtonShow == false {
-			resp.IsContractButtonShow = services.CheckCompanyUserButton(sysUser.RoleTypeCode, item.SellerId, sysUser.AdminId, item.ProductId, shareSellerId, item.Status)
+			resp.IsContractButtonShow = services.CheckCompanyUserButton(sysUser.RoleTypeCode, item.SellerId, sysUser.AdminId, item.ProductId, item.ShareSellerId, item.Status)
 		}
 	}
 

+ 0 - 3
models/company/company.go

@@ -583,9 +583,6 @@ type CompanyDetail struct {
 	Address         string `description:"详细地址"`
 	RegionType      string `description:"地区类型,1:国内,2:国外"`
 	OpenCompanyCode string `description:"开放给第三方的客户编码,不让第三方定位我们的客户信息"`
-	IsShare         int    `description:"0:非共享用户,1:共享客户"`
-	ShareSeller     string `description:"共享销售员"`
-	ShareSellerId   int    `description:"共享销售员id"`
 	IsScrounge      int    `description:"是否白嫖 0不是 1是"`
 	Nation          string `description:"所属国家"`
 }