|
@@ -1920,30 +1920,45 @@ func (this *CompanyApplyController) ApplyContract() {
|
|
|
companyId := approvalRecord.CompanyId
|
|
|
|
|
|
if productId == 1 {
|
|
|
- for _, v := range utils.PermissionFiccClassifyArr {
|
|
|
- checkList := make([]int, 0)
|
|
|
- plist := new(company.PermissionLookList)
|
|
|
- items, err := company.GetPermissionLookItems(productId, v)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取权限信息失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- for _, n := range items {
|
|
|
- count, err := company.GetCompanyContractPermissionCheckByContractId(companyId, contractItem.CompanyContractId, n.ChartPermissionId)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取权限信息失败,Err:" + err.Error()
|
|
|
- return
|
|
|
+ allFiccPermissions, e := company.GetPermissionLookItemsByProductId(utils.COMPANY_PRODUCT_FICC_ID)
|
|
|
+ if e != nil {
|
|
|
+ br.Msg = "获取权限信息失败"
|
|
|
+ br.ErrMsg = "获取权限信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ permissionMap := make(map[int][]*company.PermissionLookItem, 0)
|
|
|
+ permissionCheckMap := make(map[int][]int, 0)
|
|
|
+ for _, v := range allFiccPermissions {
|
|
|
+ if v.ParentId > 0 {
|
|
|
+ permissionMap[v.ParentId] = append(permissionMap[v.ParentId], v)
|
|
|
+ if v.IsPublic == 1 {
|
|
|
+ permissionCheckMap[v.ParentId] = append(permissionCheckMap[v.ParentId], v.ChartPermissionId)
|
|
|
}
|
|
|
- if count > 0 {
|
|
|
- checkList = append(checkList, n.ChartPermissionId)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for _, v := range allFiccPermissions {
|
|
|
+ if v.ParentId == 0 {
|
|
|
+ checkList := make([]int, 0)
|
|
|
+ plist := new(company.PermissionLookList)
|
|
|
+ items, ok := permissionMap[v.ChartPermissionId]
|
|
|
+ if ok {
|
|
|
+ plist.Items = items
|
|
|
+ for _, n := range items {
|
|
|
+ count, err := company.GetCompanyContractPermissionCheckByContractId(companyId, contractItem.CompanyContractId, n.ChartPermissionId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取权限信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if count > 0 {
|
|
|
+ checkList = append(checkList, n.ChartPermissionId)
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
+ plist.ClassifyName = v.PermissionName
|
|
|
+ plist.CheckList = checkList
|
|
|
+ contractItem.PermissionList = append(contractItem.PermissionList, plist)
|
|
|
}
|
|
|
- plist.Items = items
|
|
|
- plist.ClassifyName = v
|
|
|
- plist.CheckList = checkList
|
|
|
- contractItem.PermissionList = append(contractItem.PermissionList, plist)
|
|
|
}
|
|
|
}
|
|
|
|