瀏覽代碼

增开试用BUG修复

hbchen 1 年之前
父節點
當前提交
2278bcc010

+ 45 - 14
src/views/custom_manage/compontents/CauthList.vue

@@ -24,7 +24,7 @@
 						:indeterminate="scope.row.PermissionTypeName.isIndeterminate"></el-checkbox>
 					</template>
 				</el-table-column>
-				<el-table-column align="center">
+				<el-table-column align="center" v-if="autharr[0].existIds.includes(22)">
 					<template slot-scope="scope">
 						<el-checkbox v-if="scope.row.medicine.value === '医药'" :label="scope.row.medicine.value" :indeterminate="scope.row.medicine.isIndeterminate"
 						@change="handleCheckQY(scope.row.medicine)" v-model="scope.row.medicine.isCheckAll" :disabled="scope.row.medicine.isDisabled"></el-checkbox>
@@ -34,7 +34,7 @@
 						</el-checkbox-group>
 					</template>
 				</el-table-column>
-				<el-table-column align="center">
+				<el-table-column align="center" v-if="autharr[0].existIds.includes(21)">
 					<template slot-scope="scope">
 						<el-checkbox v-if="scope.row.consumption.value === '消费'" :label="scope.row.consumption.value" :indeterminate="scope.row.consumption.isIndeterminate"
 						@change="handleCheckQY(scope.row.consumption)" v-model="scope.row.consumption.isCheckAll" :disabled="scope.row.consumption.isDisabled"></el-checkbox>
@@ -44,7 +44,7 @@
 						</el-checkbox-group>
 					</template>
 				</el-table-column>
-				<el-table-column align="center">
+				<el-table-column align="center" v-if="autharr[0].existIds.includes(20)">
 					<template slot-scope="scope">
 						<el-checkbox v-if="scope.row.technology.value === '科技'" :label="scope.row.technology.value" :indeterminate="scope.row.technology.isIndeterminate"
 						@change="handleCheckQY(scope.row.technology)" v-model="scope.row.technology.isCheckAll" :disabled="scope.row.technology.isDisabled"></el-checkbox>
@@ -54,7 +54,7 @@
 						</el-checkbox-group>
 					</template>
 				</el-table-column>
-				<el-table-column align="center">
+				<el-table-column align="center" v-if="autharr[0].existIds.includes(19)">
 					<template slot-scope="scope">
 						<el-checkbox v-if="scope.row.smart.value === '智造'" :label="scope.row.smart.value" :indeterminate="scope.row.smart.isIndeterminate"
 						@change="handleCheckQY(scope.row.smart)" v-model="scope.row.smart.isCheckAll" :disabled="scope.row.smart.isDisabled"></el-checkbox>
@@ -64,7 +64,7 @@
 						</el-checkbox-group>
 					</template>
 				</el-table-column>
-				<el-table-column align="center">
+				<el-table-column align="center" v-if="autharr[0].existIds.includes(23)">
 					<template slot-scope="scope">
 						<span v-if="scope.row.strategy.value === '策略'">
 							{{scope.row.strategy.value}}
@@ -75,7 +75,7 @@
 						</el-checkbox-group>
 					</template>
 				</el-table-column>
-				<el-table-column align="center">
+				<el-table-column align="center" v-if="autharr[0].existIds.includes(29)">
 					<template slot-scope="scope">
 						<span v-if="scope.row.experts.value === '专家'">
 							{{scope.row.experts.value}}
@@ -86,7 +86,7 @@
 						</el-checkbox-group>
 					</template>
 				</el-table-column>
-				<el-table-column align="center">
+				<el-table-column align="center" v-if="autharr[0].existIds.includes(30)">
 					<template slot-scope="scope">
 						<span v-if="scope.row.roadshow.value === '路演服务'">
 							{{scope.row.roadshow.value}}
@@ -97,7 +97,18 @@
 						</el-checkbox-group>
 					</template>
 				</el-table-column>
-				<el-table-column align="center">
+				<el-table-column align="center" v-if="autharr[0].existIds.includes(53)">
+					<template slot-scope="scope">
+						<span v-if="scope.row.fixedCrop.value === '固收'">
+							{{scope.row.fixedCrop.value}}
+						</span>
+						<el-checkbox-group v-model="qyCheckList" v-else >
+							<el-checkbox :label="scope.row.fixedCrop.value" class="checkbox-flex"
+							:disabled="scope.row.fixedCrop.isDisabled">{{''}}</el-checkbox>
+						</el-checkbox-group>
+					</template>
+				</el-table-column>
+				<el-table-column align="center" v-if="autharr[0].existIds.includes(31)">
 					<template slot-scope="scope">
 						<span v-if="scope.row.choose.value === '研选订阅'">
 							{{scope.row.choose.value}}
@@ -108,7 +119,7 @@
 						</el-checkbox-group>
 					</template>
 				</el-table-column>
-				<el-table-column align="center" width="100px">
+				<el-table-column align="center" width="100px" v-if="autharr[0].existIds.includes(52)">
 					<template slot-scope="scope">
 						<span v-if="scope.row.points.value === '研选扣点包'">
 							{{scope.row.points.value}}
@@ -130,6 +141,20 @@
 </template>
 
 <script>
+// 权益的ID:
+/**
+ * 科技-主观(20)-客观(37)
+ * 消费-主观(21)-客观(38)
+ * 医药-主观(22)-客观(39)
+ * 智造-主观(19)-客观(36)
+ * 策略(23)
+ * 专家(29)
+ * 固收(53)
+ * 调研(54)
+ * 路演服务(30)
+ * 研选订阅(31)
+ * 研选扣点包(52)
+ */
 import { customInterence } from '@/api/api.js'
 export default {
 	name:'',
@@ -185,7 +210,13 @@ export default {
 	},
 	data () {
 		return {
-			qyCheckList:[]
+			qyCheckList:[],
+			permissionIds:{
+				19:36, //智造
+				20:37, //科技
+				21:38, //消费
+				22:39, //医药
+			} //主观:客观
 		};
 	},
 	methods: {
@@ -230,16 +261,16 @@ export default {
 				item.Items.map((it,i)=>{
 					if(item.CheckList.includes(it.ChartPermissionId) && it.PermissionType==1){
 						// 主观被选上,将客观的ID也push上
-						item.CheckList.push(item.Items[i+1].ChartPermissionId)
+						item.CheckList.push(this.permissionIds[it.ChartPermissionId])
 					}else if(!item.CheckList.includes(it.ChartPermissionId) && it.PermissionType==1){
-						if(item.CheckList.indexOf(item.Items[i+1].ChartPermissionId)!=-1){
-							item.CheckList.splice(item.CheckList.indexOf(item.Items[i+1].ChartPermissionId),1)
+						if(item.CheckList.indexOf(this.permissionIds[it.ChartPermissionId])!=-1){
+							item.CheckList.splice(item.CheckList.indexOf(this.permissionIds[it.ChartPermissionId]),1)
 						}
 					}
 				})
 			}
 			item.CheckList = [...new Set(item.CheckList)]
-			let len = item.CheckList.length;
+			let len = item.Items.filter(it => item.CheckList.includes(it.ChartPermissionId)).length
 			item.checkAll = len === item.Items.length;
 			item.isIndeterminate = len > 0 && len < item.Items.length;
 		},

+ 83 - 63
src/views/custom_manage/customList/customList.vue

@@ -1878,10 +1878,24 @@ ShareListDialog},
 						auth.push(obj)
 					}):
 					// 权益 RaiMerge 0不管 1合并 2拆分 所传入的数据结构不一样
+					/**权益权限ID
+					 * 科技-主观(20)-客观(37)
+					 * 消费-主观(21)-客观(38)
+					 * 医药-主观(22)-客观(39)
+					 * 智造-主观(19)-客观(36)
+					 * 策略(23)
+					 * 专家(29)
+					 * 固收(53)
+					 * 调研(54)
+					 * 路演服务(30)
+					 * 研选订阅(31)
+					 * 研选扣点包(52)
+					 */
 					res.Data.ListRai[0].RaiMerge==1?res.Data.ListRai.forEach(item=> { // 合并
+						let checkedLen = item.Items.filter(it => item.CheckList && item.CheckList.includes(it.ChartPermissionId)).length
 						let obj = {
-							checkAll:item.CheckList&&item.CheckList.length===item.Items.length?true:false,
-							isIndeterminate:item.CheckList&&item.CheckList.length>0 && item.CheckList.length<item.Items.length,
+							checkAll:checkedLen === item.Items.length,
+							isIndeterminate:checkedLen > 0 && checkedLen < item.Items.length,
 							defaultAuth:item.CheckList,
 							...item,
 						}
@@ -1898,27 +1912,28 @@ ShareListDialog},
 								PermissionTypeName:'',
 								medicine:{
 									value:'医药',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[1].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[1].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[1].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [22,39].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [22,39].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [22,39].includes(id)).length ==2,
+									isHide:item.CheckList.includes(52)
 								},
 								consumption:{
 									value:'消费',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[2].ChartPermissionId,obj.Items[3].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[2].ChartPermissionId,obj.Items[3].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[2].ChartPermissionId,obj.Items[3].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [21,38].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [21,38].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [21,38].includes(id)).length ==2
 								},
 								technology:{
 									value:'科技',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[4].ChartPermissionId,obj.Items[5].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[4].ChartPermissionId,obj.Items[5].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[4].ChartPermissionId,obj.Items[5].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [20,37].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [20,37].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [20,37].includes(id)).length ==2
 								},
 								smart:{
 									value:'智造',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[6].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[6].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[6].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [19,36].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [19,36].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [19,36].includes(id)).length ==2
 								},
 								strategy:{
 									value:'策略'
@@ -1929,6 +1944,9 @@ ShareListDialog},
 								roadshow:{
 									value:'路演服务'
 								},
+								fixedCrop:{
+									value:'固收'
+								},
 								choose:{
 									value:'研选订阅'
 								},
@@ -1939,99 +1957,101 @@ ShareListDialog},
 							{
 								PermissionTypeName:{
 									value:'主观',
-									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[2].ChartPermissionId,
-										obj.Items[4].ChartPermissionId,obj.Items[6].ChartPermissionId].includes(id)).length),
-									isCheckAll:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[2].ChartPermissionId,
-										obj.Items[4].ChartPermissionId,obj.Items[6].ChartPermissionId].includes(id)).length == 4,
-									isDisabled:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[2].ChartPermissionId,
-										obj.Items[4].ChartPermissionId,obj.Items[6].ChartPermissionId].includes(id)).length ==4
+									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [19,20,21,22].includes(id)).length),
+									isCheckAll:item.CheckList.filter(id => [19,20,21,22].includes(id)).length == 4,
+									isDisabled:item.CheckList.filter(id => [19,20,21,22].includes(id)).length ==4
 								},
 								medicine:{
-									value:obj.Items[0].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[0].ChartPermissionId)
+									value:22,
+									isDisabled:item.CheckList.includes(22)
 								},
 								consumption:{
-									value:obj.Items[2].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[2].ChartPermissionId)
+									value:21,
+									isDisabled:item.CheckList.includes(21)
 								},
 								technology:{
-									value:obj.Items[4].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[4].ChartPermissionId)
+									value:20,
+									isDisabled:item.CheckList.includes(20)
 								},
 								smart:{
-									value:obj.Items[6].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[6].ChartPermissionId)
+									value:19,
+									isDisabled:item.CheckList.includes(19)
 								},
 								strategy:{
-									value:obj.Items[8].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[8].ChartPermissionId)
+									value:23,
+									isDisabled:item.CheckList.includes(23)
 								},
 								experts:{
-									value:obj.Items[9].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[9].ChartPermissionId)
+									value:29,
+									isDisabled:item.CheckList.includes(29)
 								},
 								roadshow:{
-									value:obj.Items[10].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[10].ChartPermissionId)
+									value:30,
+									isDisabled:item.CheckList.includes(30)
+								},
+								fixedCrop:{
+									value:53,
+									isDisabled:item.CheckList.includes(53)
 								},
 								choose:{
-									value:obj.Items[11].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[11].ChartPermissionId)
+									value:31,
+									isDisabled:item.CheckList.includes(31)
 								},
 								points:{
-									value:obj.Items[12].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[12].ChartPermissionId)
+									value:52,
+									isDisabled:item.CheckList.includes(52)
 								}
 							},
 							{
 								PermissionTypeName:{
 									value:'客观',
-									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [obj.Items[1].ChartPermissionId,obj.Items[3].ChartPermissionId,
-										obj.Items[5].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length),
-									isCheckAll:item.CheckList.filter(id => [obj.Items[1].ChartPermissionId,obj.Items[3].ChartPermissionId,
-										obj.Items[5].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length == 4,
-									isDisabled:item.CheckList.filter(id => [obj.Items[1].ChartPermissionId,obj.Items[3].ChartPermissionId,
-										obj.Items[5].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length ==4
+									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [36,37,38,39].includes(id)).length),
+									isCheckAll:item.CheckList.filter(id => [36,37,38,39].includes(id)).length == 4,
+									isDisabled:item.CheckList.filter(id => [36,37,38,39].includes(id)).length ==4
 								},
 								medicine:{
-									value:obj.Items[1].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[1].ChartPermissionId)
+									value:39,
+									isDisabled:item.CheckList.includes(39)
 								},
 								consumption:{
-									value:obj.Items[3].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[3].ChartPermissionId)
+									value:38,
+									isDisabled:item.CheckList.includes(38)
 								},
 								technology:{
-									value:obj.Items[5].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[5].ChartPermissionId)
+									value:37,
+									isDisabled:item.CheckList.includes(37)
 								},
 								smart:{
-									value:obj.Items[7].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[7].ChartPermissionId)
+									value:36,
+									isDisabled:item.CheckList.includes(36)
 								},
 								strategy:{
-									value:obj.Items[8].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[8].ChartPermissionId)
+									value:23,
+									isDisabled:item.CheckList.includes(23)
 								},
 								experts:{
-									value:obj.Items[9].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[9].ChartPermissionId)
+									value:53,
+									isDisabled:item.CheckList.includes(53)
 								},
 								roadshow:{
-									value:obj.Items[10].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[10].ChartPermissionId)
+									value:30,
+									isDisabled:item.CheckList.includes(30)
+								},
+								fixedCrop:{
+									value:53,
+									isDisabled:item.CheckList.includes(53)
 								},
 								choose:{
-									value:obj.Items[11].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[11].ChartPermissionId)
+									value:31,
+									isDisabled:item.CheckList.includes(31)
 								},
 								points:{
-									value:obj.Items[12].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[12].ChartPermissionId)
+									value:52,
+									isDisabled:item.CheckList.includes(52)
 								}
 							}
 						]
-
+						obj.existIds=item.Items.map(ite => ite.ChartPermissionId)
 						auth.push(obj)
 					})
 					this.authList = auth;

+ 81 - 62
src/views/custom_manage/customList/customShareList.vue

@@ -855,6 +855,19 @@ export default {
 						auth.push(obj)
 					}):
 					// 权益 RaiMerge 0不管 1合并 2拆分 所传入的数据结构不一样
+					/**权益权限ID
+					 * 科技-主观(20)-客观(37)
+					 * 消费-主观(21)-客观(38)
+					 * 医药-主观(22)-客观(39)
+					 * 智造-主观(19)-客观(36)
+					 * 策略(23)
+					 * 专家(29)
+					 * 固收(53)
+					 * 调研(54)
+					 * 路演服务(30)
+					 * 研选订阅(31)
+					 * 研选扣点包(52)
+					 */
 					res.Data.ListRai[0].RaiMerge==1?res.Data.ListRai.forEach(item=> { // 合并
 						let obj = {
 							checkAll:item.CheckList&&item.CheckList.length===item.Items.length?true:false,
@@ -871,31 +884,32 @@ export default {
 						}	
 						// 组合所需的数据格式
 						obj.dataList=[
-							{
+						{
 								PermissionTypeName:'',
 								medicine:{
 									value:'医药',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[1].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[1].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[1].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [22,39].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [22,39].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [22,39].includes(id)).length ==2,
+									isHide:item.CheckList.includes(52)
 								},
 								consumption:{
 									value:'消费',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[2].ChartPermissionId,obj.Items[3].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[2].ChartPermissionId,obj.Items[3].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[2].ChartPermissionId,obj.Items[3].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [21,38].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [21,38].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [21,38].includes(id)).length ==2
 								},
 								technology:{
 									value:'科技',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[4].ChartPermissionId,obj.Items[5].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[4].ChartPermissionId,obj.Items[5].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[4].ChartPermissionId,obj.Items[5].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [20,37].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [20,37].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [20,37].includes(id)).length ==2
 								},
 								smart:{
 									value:'智造',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[6].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[6].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[6].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [19,36].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [19,36].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [19,36].includes(id)).length ==2
 								},
 								strategy:{
 									value:'策略'
@@ -906,6 +920,9 @@ export default {
 								roadshow:{
 									value:'路演服务'
 								},
+								fixedCrop:{
+									value:'固收'
+								},
 								choose:{
 									value:'研选订阅'
 								},
@@ -916,99 +933,101 @@ export default {
 							{
 								PermissionTypeName:{
 									value:'主观',
-									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[2].ChartPermissionId,
-										obj.Items[4].ChartPermissionId,obj.Items[6].ChartPermissionId].includes(id)).length),
-									isCheckAll:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[2].ChartPermissionId,
-										obj.Items[4].ChartPermissionId,obj.Items[6].ChartPermissionId].includes(id)).length == 4,
-									isDisabled:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[2].ChartPermissionId,
-										obj.Items[4].ChartPermissionId,obj.Items[6].ChartPermissionId].includes(id)).length ==4
+									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [19,20,21,22].includes(id)).length),
+									isCheckAll:item.CheckList.filter(id => [19,20,21,22].includes(id)).length == 4,
+									isDisabled:item.CheckList.filter(id => [19,20,21,22].includes(id)).length ==4
 								},
 								medicine:{
-									value:obj.Items[0].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[0].ChartPermissionId)
+									value:22,
+									isDisabled:item.CheckList.includes(22)
 								},
 								consumption:{
-									value:obj.Items[2].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[2].ChartPermissionId)
+									value:21,
+									isDisabled:item.CheckList.includes(21)
 								},
 								technology:{
-									value:obj.Items[4].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[4].ChartPermissionId)
+									value:20,
+									isDisabled:item.CheckList.includes(20)
 								},
 								smart:{
-									value:obj.Items[6].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[6].ChartPermissionId)
+									value:19,
+									isDisabled:item.CheckList.includes(19)
 								},
 								strategy:{
-									value:obj.Items[8].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[8].ChartPermissionId)
+									value:23,
+									isDisabled:item.CheckList.includes(23)
 								},
 								experts:{
-									value:obj.Items[9].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[9].ChartPermissionId)
+									value:29,
+									isDisabled:item.CheckList.includes(29)
 								},
 								roadshow:{
-									value:obj.Items[10].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[10].ChartPermissionId)
+									value:30,
+									isDisabled:item.CheckList.includes(30)
+								},
+								fixedCrop:{
+									value:53,
+									isDisabled:item.CheckList.includes(53)
 								},
 								choose:{
-									value:obj.Items[11].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[11].ChartPermissionId)
+									value:31,
+									isDisabled:item.CheckList.includes(31)
 								},
 								points:{
-									value:obj.Items[12].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[12].ChartPermissionId)
+									value:52,
+									isDisabled:item.CheckList.includes(52)
 								}
 							},
 							{
 								PermissionTypeName:{
 									value:'客观',
-									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [obj.Items[1].ChartPermissionId,obj.Items[3].ChartPermissionId,
-										obj.Items[5].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length),
-									isCheckAll:item.CheckList.filter(id => [obj.Items[1].ChartPermissionId,obj.Items[3].ChartPermissionId,
-										obj.Items[5].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length == 4,
-									isDisabled:item.CheckList.filter(id => [obj.Items[1].ChartPermissionId,obj.Items[3].ChartPermissionId,
-										obj.Items[5].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length ==4
+									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [36,37,38,39].includes(id)).length),
+									isCheckAll:item.CheckList.filter(id => [36,37,38,39].includes(id)).length == 4,
+									isDisabled:item.CheckList.filter(id => [36,37,38,39].includes(id)).length ==4
 								},
 								medicine:{
-									value:obj.Items[1].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[1].ChartPermissionId)
+									value:39,
+									isDisabled:item.CheckList.includes(39)
 								},
 								consumption:{
-									value:obj.Items[3].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[3].ChartPermissionId)
+									value:38,
+									isDisabled:item.CheckList.includes(38)
 								},
 								technology:{
-									value:obj.Items[5].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[5].ChartPermissionId)
+									value:37,
+									isDisabled:item.CheckList.includes(37)
 								},
 								smart:{
-									value:obj.Items[7].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[7].ChartPermissionId)
+									value:36,
+									isDisabled:item.CheckList.includes(36)
 								},
 								strategy:{
-									value:obj.Items[8].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[8].ChartPermissionId)
+									value:23,
+									isDisabled:item.CheckList.includes(23)
 								},
 								experts:{
-									value:obj.Items[9].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[9].ChartPermissionId)
+									value:53,
+									isDisabled:item.CheckList.includes(53)
 								},
 								roadshow:{
-									value:obj.Items[10].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[10].ChartPermissionId)
+									value:30,
+									isDisabled:item.CheckList.includes(30)
+								},
+								fixedCrop:{
+									value:53,
+									isDisabled:item.CheckList.includes(53)
 								},
 								choose:{
-									value:obj.Items[11].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[11].ChartPermissionId)
+									value:31,
+									isDisabled:item.CheckList.includes(31)
 								},
 								points:{
-									value:obj.Items[12].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[12].ChartPermissionId)
+									value:52,
+									isDisabled:item.CheckList.includes(52)
 								}
 							}
 						]
-
+						obj.existIds=item.Items.map(ite => ite.ChartPermissionId)
 						auth.push(obj)
 					})
 					this.authList = auth;

+ 85 - 65
src/views/custom_manage/customSearch.vue

@@ -1341,10 +1341,24 @@ export default {
 						auth.push(obj)
 					}):
 					// 权益 RaiMerge 0不管 1合并 2拆分 所传入的数据结构不一样
-					res.Data.ListRai[0].RaiMerge==1?res.Data.ListRai.forEach(item=> { // 合并
+						/**权益权限ID
+						 * 科技-主观(20)-客观(37)
+						 * 消费-主观(21)-客观(38)
+						 * 医药-主观(22)-客观(39)
+						 * 智造-主观(19)-客观(36)
+						 * 策略(23)
+						 * 专家(29)
+						 * 固收(53)
+						 * 调研(54)
+						 * 路演服务(30)
+						 * 研选订阅(31)
+						 * 研选扣点包(52)
+						*/
+					 	res.Data.ListRai[0].RaiMerge==1?res.Data.ListRai.forEach(item=> { // 合并
+						let checkedLen = item.Items.filter(it => item.CheckList && item.CheckList.includes(it.ChartPermissionId)).length
 						let obj = {
-							checkAll:item.CheckList&&item.CheckList.length===item.Items.length?true:false,
-							isIndeterminate:item.CheckList&&item.CheckList.length>0 && item.CheckList.length<item.Items.length,
+							checkAll:checkedLen === item.Items.length,
+							isIndeterminate:checkedLen > 0 && checkedLen < item.Items.length,
 							defaultAuth:item.CheckList,
 							...item,
 						}
@@ -1357,31 +1371,32 @@ export default {
 						}	
 						// 组合所需的数据格式
 						obj.dataList=[
-							{
+						{
 								PermissionTypeName:'',
 								medicine:{
 									value:'医药',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[1].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[1].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[1].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [22,39].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [22,39].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [22,39].includes(id)).length ==2,
+									isHide:item.CheckList.includes(52)
 								},
 								consumption:{
 									value:'消费',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[2].ChartPermissionId,obj.Items[3].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[2].ChartPermissionId,obj.Items[3].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[2].ChartPermissionId,obj.Items[3].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [21,38].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [21,38].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [21,38].includes(id)).length ==2
 								},
 								technology:{
 									value:'科技',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[4].ChartPermissionId,obj.Items[5].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[4].ChartPermissionId,obj.Items[5].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[4].ChartPermissionId,obj.Items[5].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [20,37].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [20,37].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [20,37].includes(id)).length ==2
 								},
 								smart:{
 									value:'智造',
-									isIndeterminate:item.CheckList.filter(id => [obj.Items[6].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length ==1,
-									isCheckAll:item.CheckList.filter(id => [obj.Items[6].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length == 2,
-									isDisabled:item.CheckList.filter(id => [obj.Items[6].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length ==2
+									isIndeterminate:item.CheckList.filter(id => [19,36].includes(id)).length ==1,
+									isCheckAll:item.CheckList.filter(id => [19,36].includes(id)).length == 2,
+									isDisabled:item.CheckList.filter(id => [19,36].includes(id)).length ==2
 								},
 								strategy:{
 									value:'策略'
@@ -1392,6 +1407,9 @@ export default {
 								roadshow:{
 									value:'路演服务'
 								},
+								fixedCrop:{
+									value:'固收'
+								},
 								choose:{
 									value:'研选订阅'
 								},
@@ -1402,99 +1420,101 @@ export default {
 							{
 								PermissionTypeName:{
 									value:'主观',
-									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[2].ChartPermissionId,
-										obj.Items[4].ChartPermissionId,obj.Items[6].ChartPermissionId].includes(id)).length),
-									isCheckAll:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[2].ChartPermissionId,
-										obj.Items[4].ChartPermissionId,obj.Items[6].ChartPermissionId].includes(id)).length == 4,
-									isDisabled:item.CheckList.filter(id => [obj.Items[0].ChartPermissionId,obj.Items[2].ChartPermissionId,
-										obj.Items[4].ChartPermissionId,obj.Items[6].ChartPermissionId].includes(id)).length ==4
+									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [19,20,21,22].includes(id)).length),
+									isCheckAll:item.CheckList.filter(id => [19,20,21,22].includes(id)).length == 4,
+									isDisabled:item.CheckList.filter(id => [19,20,21,22].includes(id)).length ==4
 								},
 								medicine:{
-									value:obj.Items[0].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[0].ChartPermissionId)
+									value:22,
+									isDisabled:item.CheckList.includes(22)
 								},
 								consumption:{
-									value:obj.Items[2].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[2].ChartPermissionId)
+									value:21,
+									isDisabled:item.CheckList.includes(21)
 								},
 								technology:{
-									value:obj.Items[4].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[4].ChartPermissionId)
+									value:20,
+									isDisabled:item.CheckList.includes(20)
 								},
 								smart:{
-									value:obj.Items[6].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[6].ChartPermissionId)
+									value:19,
+									isDisabled:item.CheckList.includes(19)
 								},
 								strategy:{
-									value:obj.Items[8].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[8].ChartPermissionId)
+									value:23,
+									isDisabled:item.CheckList.includes(23)
 								},
 								experts:{
-									value:obj.Items[9].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[9].ChartPermissionId)
+									value:29,
+									isDisabled:item.CheckList.includes(29)
 								},
 								roadshow:{
-									value:obj.Items[10].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[10].ChartPermissionId)
+									value:30,
+									isDisabled:item.CheckList.includes(30)
+								},
+								fixedCrop:{
+									value:53,
+									isDisabled:item.CheckList.includes(53)
 								},
 								choose:{
-									value:obj.Items[11].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[11].ChartPermissionId)
+									value:31,
+									isDisabled:item.CheckList.includes(31)
 								},
 								points:{
-									value:obj.Items[12].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[12].ChartPermissionId)
+									value:52,
+									isDisabled:item.CheckList.includes(52)
 								}
 							},
 							{
 								PermissionTypeName:{
 									value:'客观',
-									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [obj.Items[1].ChartPermissionId,obj.Items[3].ChartPermissionId,
-										obj.Items[5].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length),
-									isCheckAll:item.CheckList.filter(id => [obj.Items[1].ChartPermissionId,obj.Items[3].ChartPermissionId,
-										obj.Items[5].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length == 4,
-									isDisabled:item.CheckList.filter(id => [obj.Items[1].ChartPermissionId,obj.Items[3].ChartPermissionId,
-										obj.Items[5].ChartPermissionId,obj.Items[7].ChartPermissionId].includes(id)).length ==4
+									isIndeterminate:[1,2,3].includes(item.CheckList.filter(id => [36,37,38,39].includes(id)).length),
+									isCheckAll:item.CheckList.filter(id => [36,37,38,39].includes(id)).length == 4,
+									isDisabled:item.CheckList.filter(id => [36,37,38,39].includes(id)).length ==4
 								},
 								medicine:{
-									value:obj.Items[1].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[1].ChartPermissionId)
+									value:39,
+									isDisabled:item.CheckList.includes(39)
 								},
 								consumption:{
-									value:obj.Items[3].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[3].ChartPermissionId)
+									value:38,
+									isDisabled:item.CheckList.includes(38)
 								},
 								technology:{
-									value:obj.Items[5].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[5].ChartPermissionId)
+									value:37,
+									isDisabled:item.CheckList.includes(37)
 								},
 								smart:{
-									value:obj.Items[7].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[7].ChartPermissionId)
+									value:36,
+									isDisabled:item.CheckList.includes(36)
 								},
 								strategy:{
-									value:obj.Items[8].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[8].ChartPermissionId)
+									value:23,
+									isDisabled:item.CheckList.includes(23)
 								},
 								experts:{
-									value:obj.Items[9].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[9].ChartPermissionId)
+									value:53,
+									isDisabled:item.CheckList.includes(53)
 								},
 								roadshow:{
-									value:obj.Items[10].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[10].ChartPermissionId)
+									value:30,
+									isDisabled:item.CheckList.includes(30)
+								},
+								fixedCrop:{
+									value:53,
+									isDisabled:item.CheckList.includes(53)
 								},
 								choose:{
-									value:obj.Items[11].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[11].ChartPermissionId)
+									value:31,
+									isDisabled:item.CheckList.includes(31)
 								},
 								points:{
-									value:obj.Items[12].ChartPermissionId,
-									isDisabled:item.CheckList.includes(obj.Items[12].ChartPermissionId)
+									value:52,
+									isDisabled:item.CheckList.includes(52)
 								}
 							}
 						]
-
+						obj.existIds=item.Items.map(ite => ite.ChartPermissionId)
 						auth.push(obj)
 					})
 					this.authList = auth;