bding 1 жил өмнө
parent
commit
59c1f697cb

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

@@ -1,24 +1,7 @@
 <template>
   <div class="container-remindDlg">
     <el-dialog title="权限详情" v-dialogDrag :visible.sync="isPermissionDetailShow" :close-on-click-modal="false" :modal-append-to-body="false" @close="cancelHandle" center width="800px">
-      <el-table :data="filterAuth" ref="authTable" border style="margin-bottom: 20px">
-        <el-table-column label="行业" align="center">
-          <template slot-scope="scope">{{ scope.row.PermissionName }}</template>
-        </el-table-column>
-        <el-table-column label="产品类型" align="center" v-if="isMerge">
-          <template slot-scope="scope">{{ scope.row.PermissionTypeName }}</template>
-        </el-table-column>
-        <el-table-column label="状态" align="center">
-          <template slot-scope="scope">{{ scope.row.Status }}</template>
-        </el-table-column>
-        <el-table-column label="服务期限" align="center">
-          <template slot-scope="scope">{{ scope.row.StartDate + "—" + scope.row.EndDate }}</template>
-        </el-table-column>
-        <el-table-column label="剩余天数" align="center">
-          <template slot-scope="scope">{{ scope.row.ExpireDay }}</template>
-        </el-table-column>
-        <el-table-column v-if="fromType == 'edit'" type="selection" width="70" align="center" label-class-name="DisabledSelection" :selectable="canSelect"> </el-table-column>
-      </el-table>
+      <CpessionTableEquity v-if="tableData.length" fromType="detail" :authList="tableData" style="margin-bottom: 20px" />
       <div style="margin: 20px 0" v-if="Points">
         <span>研选服务点数</span>
         <span>{{ Points }}</span>
@@ -43,9 +26,10 @@
 
 <script>
 import { customInterence, equityContacts, raiInterface } from "@/api/api.js";
+import CpessionTableEquity from "./CpessionTableEquity.vue";
 export default {
   name: "",
-  components: {},
+  components: { CpessionTableEquity },
   props: {
     isPermissionDetailShow: {
       default: false,
@@ -62,13 +46,6 @@ export default {
       isShowResearchNumber: false, // 研选服务点数明细 弹框
       tableListResearch: [], // 严选数据
       Points: "",
-      indexArrEquity: [], //权益
-      spanArrEquity: [], //权益
-      posEquity: 0, //权益
-      filterAuth: [], //权限表格
-      indexArrEquity: [], //权益
-      spanArrEquity: [], //权益
-      posEquity: 0, //权益
     };
   },
   computed: {},
@@ -86,34 +63,26 @@ export default {
     cancelHandle() {
       this.$emit("update:researchDetailId", 0);
       this.$emit("update:isPermissionDetailShow", false);
+      this.tableData = [];
     },
     /* 获取客户详情 */
     async getDetailList() {
-      this.filterAuth = [];
+      this.tableData = [];
       const res = await customInterence.customDetail({
         CompanyId: this.researchDetailId,
       });
       if (res.Ret !== 200) return;
       this.Points = res.Data.RaiItem.Points || "";
-      let arr = res.Data.RaiItem.PermissionList[0].Items;
-      this.filterAuth = arr.filter((item) => {
-        return item.Status === "正式" || item.Status === "试用" || item.Status === "永续" || item.Status == "关闭";
+      let auth = [];
+      res.Data.RaiItem.PermissionList.forEach((item) => {
+        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,
+          ...item,
+        };
+        auth.push(obj);
       });
-      this.getRowSpan();
-    },
-    /* 处理合并数组 */
-    getRowSpan() {
-      const resultMap = new Map();
-
-      this.filterAuth.forEach((item) => {
-        const { PermissionName, PermissionType } = item;
-        if (!resultMap.has(PermissionName) || PermissionType === 1) {
-          resultMap.set(PermissionName, item);
-        }
-      });
-
-      const result = Array.from(resultMap.values());
-      this.filterAuth = result;
+      this.tableData = auth;
     },
     // 查看
     lookNumber() {