bding 1 年之前
父节点
当前提交
079834c609

+ 101 - 0
src/views/custom_manage/compontents/permissionDetail.vue

@@ -0,0 +1,101 @@
+<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="tableData" border style="margin: 20px 0" height="500">
+        <el-table-column label="行业" align="center" prop="PermissionName"> </el-table-column>
+        <el-table-column label="状态" align="center" prop="Status"> </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" prop="ExpireDay"> </el-table-column>
+      </el-table>
+      <div style="margin-bottom: 20px">
+        <span>研选服务点数</span>
+        <span>3333</span>
+        <span class="editsty" @click="lookNumber">明细>></span>
+      </div>
+    </el-dialog>
+    <el-dialog title="研选服务点数明细" :visible.sync="isShowResearchNumber" width="80%" v-dialogDrag :close-on-click-modal="false" :modal-append-to-body="false" center @close="handleClose">
+      <el-table style="margin-bottom: 30px" :data="tableListResearch" border height="500">
+        <el-table-column align="center" prop="Content" label="事项"></el-table-column>
+        <el-table-column align="center" prop="CreateTime" label="时间"></el-table-column>
+        <el-table-column align="center" prop="RealName" label="参会人" width="150"></el-table-column>
+        <el-table-column align="center" prop="minNumber" label="小计" width="100">
+          <template slot-scope="{ row }">
+            <span :style="{ color: row.BillDetailed > 0 ? '#31c640' : '#ec808d' }"> {{ row.BillDetailed > 0 ? "+" + row.BillDetailed : row.BillDetailed }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column align="center" prop="Points" label="合计" width="100"></el-table-column>
+      </el-table>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { customInterence, equityContacts, raiInterface } from "@/api/api.js";
+export default {
+  name: "",
+  components: {},
+  props: {
+    isPermissionDetailShow: {
+      default: false,
+      type: Boolean,
+    },
+    // remindList: {
+    //   default: {},
+    //   type: Object,
+    // },
+  },
+  data() {
+    return {
+      tableData: [],
+
+      isShowResearchNumber: false, // 研选服务点数明细 弹框
+      tableListResearch: [], // 严选数据
+    };
+  },
+  computed: {},
+  watch: {},
+  created() {},
+  mounted() {},
+  methods: {
+    // 弹框关闭的事件
+    cancelHandle() {
+      this.$parent.isShowRemindDlg = false;
+      this.$emit("update:remindList", {});
+    },
+    /* 获取客户详情 */
+    async getDetailList() {
+      const res = await customInterence.customDetail({
+        // CompanyId: this.companyId,
+      });
+      if (res.Ret !== 200) return;
+      this.tableData = res.Data.RaiItem.PermissionList[0].Items;
+    },
+    // 查看
+    lookNumber() {
+      this.isShowResearchNumber = true;
+      this.getDataList();
+    },
+    // 明细弹框关闭
+    handleClose() {
+      this.isShowResearchNumber = false;
+      this.tableListResearch = [];
+    },
+    // 获取表格数据
+    async getDataList() {
+      const res = await raiInterface.activityPointsBill({
+        //  CompanyId: this.dataForm.CompanyId
+      });
+      if (res.Ret === 200) {
+        this.tableList = res.Data.List || [];
+      }
+    },
+  },
+};
+</script>
+<style scoped lang="scss">
+.container-remindDlg {
+  display: block;
+}
+</style>

+ 79 - 0
src/views/custom_manage/contacts/compontents/remindDlg.vue

@@ -0,0 +1,79 @@
+<template>
+  <div class="container-remindDlg">
+    <el-dialog
+      :title="remindList.IsRemind ? '取消提醒' : '互动提醒'"
+      v-dialogDrag
+      :visible.sync="isShowRemindDlg"
+      :close-on-click-modal="false"
+      :modal-append-to-body="false"
+      @close="cancelHandle"
+      center
+      width="500px"
+    >
+      <div>
+        <p v-if="remindList.IsRemind">请选择取消范围</p>
+        <p v-else>设置提醒后,联系人的互动行为都将通过【查研观向小助手】提醒你,请选择设置范围</p>
+        <div style="margin-top: 20px">
+          <el-radio-group v-model="remindRadio">
+            <el-radio :label="3" style="display: block">{{ remindList.IsRemind ? "单独取消此联系人的提醒" : "对此联系人单独设置" }}</el-radio>
+            <el-radio :label="6" style="margin: 20px 0">{{ remindList.IsRemind ? "对该机构下的联系人批量取消" : "对该机构下的联系人批量设置" }}</el-radio>
+          </el-radio-group>
+        </div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="cancelHandle">取 消</el-button>
+        <el-button type="primary" @click="remindBtnHandler">确 定</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { customInterence, equityContacts } from "@/api/api.js"; 
+export default {
+  name: "",
+  components: {},
+  props: {
+    isShowRemindDlg: {
+      default: false,
+      type: Boolean,
+    },
+    remindList: {
+      default: {},
+      type: Object,
+    },
+  },
+  data() {
+    return {
+      remindRadio: 3,
+    };
+  },
+  computed: {},
+  watch: {},
+  created() {},
+  mounted() {},
+  methods: {
+    // 弹框关闭的事件
+    cancelHandle() {
+      this.$parent.isShowRemindDlg = false;
+      this.$emit("update:remindList", {});
+    },
+    // 确认事件
+    async remindBtnHandler() {
+      this.cancelHandle();
+      return;
+      const result = await equityContacts.postUserRemind({
+        UserId: remindList.UserId,
+      });
+      if (res.Ret === 200) {
+        this.$message.success("操作成功!");
+      }
+    },
+  },
+};
+</script>
+<style scoped lang="scss">
+.container-remindDlg {
+  display: block;
+}
+</style>

+ 15 - 34
src/views/custom_manage/contacts/contactsList.vue

@@ -1,13 +1,7 @@
 <template>
   <div class="container-contactsList">
     <div class="top-wrap">
-      <el-input
-        style="width: 200px; margin-right: 20px"
-        v-model="contactWay"
-        placeholder="手机号/邮箱/姓名/公司名"
-        prefix-icon="el-icon-search"
-        clearable
-      ></el-input>
+      <el-input style="width: 200px; margin-right: 20px" v-model="contactWay" placeholder="手机号/邮箱/姓名/公司名" prefix-icon="el-icon-search" clearable></el-input>
       <el-select v-model="decisionValue" placeholder="是否决策人" @change="handelGetData" clearable>
         <el-option v-for="item in decisionOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option>
       </el-select>
@@ -104,20 +98,14 @@
               <el-tag
                 size="mini"
                 style="margin: 5px 8px; cursor: pointer"
-                v-for="item,index in lookLabelListNumber(row)"
+                v-for="(item, index) in lookLabelListNumber(row)"
                 :key="index"
-                :type="userLabel == item ?'danger':''"
+                :type="userLabel == item ? 'danger' : ''"
                 @click="labelChildren(item, row)"
               >
                 {{ item }}
               </el-tag>
-              <span
-                @click="showLabelDlg(row)"
-                style="font-weight: 700; padding: 5px 10px"
-                class="editsty"
-                v-if="row.Labels && row.Labels.split(',').length > 10"
-                >...</span
-              >
+              <span @click="showLabelDlg(row)" style="font-weight: 700; padding: 5px 10px" class="editsty" v-if="row.Labels && row.Labels.split(',').length > 10">...</span>
             </div>
           </template>
         </el-table-column>
@@ -142,21 +130,9 @@
         <m-page :total="total" :page_no="page_no" :pageSize="10" @handleCurrentChange="handleCurrentChange" />
       </el-col>
     </el-card>
-    <el-dialog
-      v-dialogDrag
-      :visible.sync="remarkDlgShow"
-      :close-on-click-modal="false"
-      :modal-append-to-body="false"
-      @close="cancelHandle"
-      center
-      :width="addRemarFrom.IsShowSee ? '800px' : '500px'"
-    >
+    <el-dialog v-dialogDrag :visible.sync="remarkDlgShow" :close-on-click-modal="false" :modal-append-to-body="false" @close="cancelHandle" center :width="addRemarFrom.IsShowSee ? '800px' : '500px'">
       <div slot="title">
-        <i
-          class="el-icon-close"
-          style="fontsize: 24px; cursor: pointer; position: absolute; right: 20px; top: 50%; transform: translateY(-50%)"
-          @click="cancelHandle"
-        ></i>
+        <i class="el-icon-close" style="fontsize: 24px; cursor: pointer; position: absolute; right: 20px; top: 50%; transform: translateY(-50%)" @click="cancelHandle"></i>
         <span style="fontsize: 16px">{{ addRemarFrom.IsShowSee ? "历史备注" : "添加备注" }}</span>
       </div>
       <div v-if="addRemarFrom.IsShowSee">
@@ -177,6 +153,7 @@
     </el-dialog>
     <InteractionDlg :interactionDlg.sync="interactionDlg" :interactionFrom="interactionFrom" />
     <label-dlg :isShowLabelDlg.sync="isShowLabelDlg" :dlgLabelList.sync="dlgLabelList" @labelChildren="labelChildren" :userLabel="userLabel" />
+    <remind-dlg :isShowRemindDlg.sync="isShowRemindDlg" :remindList.sync="remindList" />
   </div>
 </template>
 
@@ -186,9 +163,10 @@ import mPage from "@/components/mPage.vue";
 import mDialog from "@/components/mDialog.vue";
 import InteractionDlg from "./compontents/interactionDlg.vue";
 import LabelDlg from "./compontents/labelDlg.vue";
+import RemindDlg from "./compontents/remindDlg.vue";
 export default {
   name: "",
-  components: { mPage, mDialog, InteractionDlg, LabelDlg },
+  components: { mPage, mDialog, InteractionDlg, LabelDlg, RemindDlg },
   props: {},
   data() {
     return {
@@ -242,6 +220,8 @@ export default {
       organizationTableL: [], //互助量机构的
       isShowLabelDlg: false, //
       dlgLabelList: {}, //
+      isShowRemindDlg: false, // 消息提醒的弹框
+      remindList: {}, // 消息提醒的数据
     };
   },
   computed: {},
@@ -260,9 +240,7 @@ export default {
   created() {},
   mounted() {
     if (sessionStorage.getItem("contactsListBack")) {
-      const { keyword, decisionValue, registerValue, sales, clientStatus, userLabel, isFollowValue } = JSON.parse(
-        sessionStorage.getItem("contactsListBack")
-      );
+      const { keyword, decisionValue, registerValue, sales, clientStatus, userLabel, isFollowValue } = JSON.parse(sessionStorage.getItem("contactsListBack"));
       this.contactWay = keyword;
       this.decisionValue = decisionValue;
       this.registerValue = registerValue;
@@ -440,6 +418,9 @@ export default {
     },
     //点击操作的互助提醒
     async remindHandler(item) {
+      this.remindList = item;
+      this.isShowRemindDlg = true;
+      return;
       if (item.IsRemind) {
         const result = await equityContacts.postUserRemind({
           UserId: item.UserId,

+ 6 - 2
src/views/custom_manage/customSearch.vue

@@ -453,6 +453,8 @@
 			<div style="padding:20px 0;"></div>
 		</el-dialog>
 		<!-- 查看备注弹窗 -->
+		<!-- 权限详情弹框 -->
+		<permission-detail :isPermissionDetailShow.sync="isPermissionDetailShow"/>
 	</div>
 </template>
 
@@ -464,9 +466,10 @@ import Cauthlist from './compontents/CauthList.vue'
 import CompleteInfo from './compontents/CompleteInfo.vue'
 import ContractInfo from './compontents/ContractInfo.vue'
 import mPage from '@/components/mPage.vue'
+import PermissionDetail from './compontents/permissionDetail.vue'
 export default {
 	name:'',
-	components: {Capplydia,Contactdia,Cauthlist,CompleteInfo,ContractInfo,mPage},
+	components: {Capplydia,Contactdia,Cauthlist,CompleteInfo,ContractInfo,mPage, PermissionDetail},
 	computed:{
 		RoleType() {
 			let type = localStorage.getItem('RoleType') || '';
@@ -628,6 +631,7 @@ export default {
 			lookRemarkTextarea:'',//备注的文本框
 			isRemarkLook:false ,////查看备注弹窗
 			lookRemarkItem:{},////查看备注的item项
+			isPermissionDetailShow:true ,// 权限详情 弹框
 		};
 	},
 	/* 页面跳转前记录参数 */
@@ -731,7 +735,7 @@ export default {
 			}).then(res => {
 				if(res.Ret === 200) {
 					this.tableData = res.Data?res.Data.List:[];
-					this.pageinfo.total=res.Data.Paging.Totals
+					this.pageinfo.total=res.Data && res.Data.Paging ? res.Data.Paging.Totals : 0
 					this.tableData.forEach(item => {
 						item.ApproveStatus = item.ApproveStatus=='待审批'?'待审批':''
 					})