3 Incheckningar 6a0fcec882 ... c4427fca74

Upphovsman SHA1 Meddelande Datum
  lk c4427fca74 企微客户管理所有的标签弹窗搜索功能异常 1 dag sedan
  lk f403e0aa4e Merge branch 'master' of http://1.14.104.71:10880/root/ylrz_his_scrm_companyUI 1 dag sedan
  lk 9922e79101 企微客户--增加批量添加标签(筛选条件),按钮及功能 1 dag sedan
2 ändrade filer med 65 tillägg och 26 borttagningar
  1. 9 0
      src/api/qw/tagGroup.js
  2. 56 26
      src/views/qw/externalContact/index.vue

+ 9 - 0
src/api/qw/tagGroup.js

@@ -16,6 +16,15 @@ export function allListTagGroup(query) {
   })
 }
 
+// 模糊查询分页searchTags
+export function allListTagGroupPage(data) {
+  return request({
+    url: '/qw/tagGroup/allListPage',
+    method: 'get',
+    params: data
+  })
+}
+
 // 查询企微客户标签组详细
 export function getTagGroup(id) {
   return request({

+ 56 - 26
src/views/qw/externalContact/index.vue

@@ -134,15 +134,7 @@
       </el-form-item>
       <el-form-item label="状态" prop="status">
 
-<!--        <el-select v-model="queryParams.status" placeholder="状态" clearable size="small">-->
-<!--          <el-option-->
-<!--            v-for="dict in statusOptions"-->
-<!--            :key="dict.dictValue"-->
-<!--            :label="dict.dictLabel"-->
-<!--            :value="dict.dictValue"-->
-<!--          />-->
-<!--        </el-select>-->
-        <el-select v-model="statusMulti" placeholder="状态" clearable size="small" multiple collapse-tags>
+        <el-select v-model="queryParams.status" placeholder="状态" clearable size="small">
           <el-option
             v-for="dict in statusOptions"
             :key="dict.dictValue"
@@ -318,6 +310,15 @@
           v-hasPermi="['qw:externalContact:addTag']"
         >批量添加标签</el-button>
       </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          size="mini"
+          @click="addUserTagFilter"
+          v-hasPermi="['qw:externalContact:addTag']"
+        >批量添加标签(筛选条件)</el-button>
+      </el-col>
       <el-col :span="1.5">
         <el-button
           type="primary"
@@ -591,7 +592,7 @@
 
       <div>搜索标签:
         <el-input v-model="queryTagParams.name" placeholder="请输入标签名称" clearable size="small" style="width: 200px;margin-right: 10px" />
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleSearchTags(queryTagParams.name)">搜索</el-button>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="getPageListTagGroup()">搜索</el-button>
         <el-button type="primary" icon="el-icon-plus" size="mini" @click="cancelSearchTags">重置</el-button>
       </div>
       <div v-for="item in tagGroupList" :key="item.id"  >
@@ -628,8 +629,8 @@
 
     <el-dialog title="批量添加标签" :visible.sync="tagOpen" width="800px" append-to-body>
       <div>搜索标签:
-        <el-input v-model="tagChange.tagName" placeholder="请输入标签名称" clearable size="small" style="width: 200px;margin-right: 10px" />
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleSearchTags(tagChange.tagName)">搜索</el-button>
+        <el-input v-model="queryTagParams.name" placeholder="请输入标签名称" clearable size="small" style="width: 200px;margin-right: 10px" />
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="getPageListTagGroup()">搜索</el-button>
         <el-button type="primary" icon="el-icon-plus" size="mini" @click="cancelSearchTags">重置</el-button>
       </div>
       <el-form ref="form" :model="addTagForm"  label-width="80px">
@@ -714,8 +715,8 @@
 
     <el-dialog title="批量移除标签" :visible.sync="tagDelOpen" width="800px" append-to-body>
       <div>搜索标签:
-        <el-input v-model="tagChange.tagName" placeholder="请输入标签名称" clearable size="small" style="width: 200px;margin-right: 10px" />
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleSearchTags(tagChange.tagName)">搜索</el-button>
+        <el-input v-model="queryTagParams.name" placeholder="请输入标签名称" clearable size="small" style="width: 200px;margin-right: 10px" />
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="getPageListTagGroup()">搜索</el-button>
         <el-button type="primary" icon="el-icon-plus" size="mini" @click="cancelSearchTags">重置</el-button>
       </div>
       <el-form ref="form" :model="addTagForm"  label-width="80px">
@@ -941,8 +942,8 @@ import {
   unBindUserId, updateExternalContactCall,updateExternalContactStatus,getWatchLogList
 } from '@/api/qw/externalContact'
 import {getMyQwUserList, getMyQwCompanyList, updateUser,getQwUserListLikeName} from "@/api/qw/user";
-import {listTag, getTag, searchTags,} from "@/api/qw/tag";
-import { allListTagGroup} from "@/api/qw/tagGroup";
+import {listTag, getTag, searchTags} from "@/api/qw/tag";
+import { allListTagGroup,allListTagGroupPage} from "@/api/qw/tagGroup";
 import mycustomer from '@/views/qw/externalContact/mycustomer'
 import customerDetails from '@/views/qw/externalContact/customerDetails'
 import SopDialog from '@/views/course/sop/SopDialog.vue'
@@ -1071,7 +1072,9 @@ export default {
 
       addTagForm:{
         userIds:[],
-        tagIds:[]
+        tagIds:[],
+        filter: false,
+        addType: 0,
       },
 
       myQwCompanyList:[],
@@ -1134,7 +1137,7 @@ export default {
       },
 
       tagTotal:0,
-      statusMulti: [], //状态数组,多选
+      tagFilter:false,
       // 查询参数
       queryParams: {
         pageNum: 1,
@@ -1158,7 +1161,6 @@ export default {
         corpId: null,
         companyId: null,
         status:null,
-        statuses: null, // 多选的状态,id拼接,用于传到后端
         transferStatus:null,
         isBind:null,
         isBindMini:null,
@@ -1493,13 +1495,37 @@ export default {
 
 
       this.tagOpen = true;
+      this.tagFilter = false;
 
     },
 
+    addUserTagFilter(){
+
+      if(this.externalContactList.length == 0){
+        return  this.$message('无可添加标签客户');
+      }
+
+      this.getPageListTagGroup();
+
+      setTimeout(() => {
+
+        for (let i = 0; i < this.tagGroupList.length; i++) {
+          for (let x = 0; x < this.tagGroupList[i].tag.length; x++) {
+            this.tagGroupList[i].tag[x].isSelected=false;
+          }
+        }
+      }, 200);
+
+
+      this.tagOpen = true;
+      this.tagFilter = true;
+    },
+
 
     getPageListTagGroup(){
+      
       this.queryTagParams.corpId=this.queryParams.corpId
-      allListTagGroup(this.queryTagParams).then(response => {
+      allListTagGroupPage(this.queryTagParams).then(response => {
         this.tagGroupList = response.rows;
         this.tagTotal = response.total;
       });
@@ -1705,7 +1731,12 @@ export default {
 
       this.addTagForm.corpId=this.queryParams.corpId
       this.addTagForm.userIds=this.ids;
-
+      this.addTagForm.filter = this.tagFilter;
+      let obj = JSON.parse(JSON.stringify(this.queryParams))
+      if(obj.tagIds !== null && obj.tagIds !== undefined && obj.tagIds !== ''){
+        obj.tagIds = obj.tagIds.split(",");
+      }
+      this.addTagForm.param = obj;
 
       let loadingRock = this.$loading({
         lock: true,
@@ -1720,8 +1751,10 @@ export default {
        this.tagOpen = false;
         loadingRock.close();
        this.addTagForm={
-         userIds:[],
-         tagIds:[]
+        filter: false,
+        addType: 0,
+        userIds:[],
+        tagIds:[]
        };
        this.getList()
      }).finally(res=>{
@@ -1846,7 +1879,6 @@ export default {
       }
 
       this.queryParams.pageNum = 1;
-      this.queryParams.statuses =this.statusMulti.join(",");
       this.getList();
     },
     handleSearchTags(name){
@@ -1950,8 +1982,6 @@ export default {
 	   this.createTime=null;
 	  this.queryParams.sTime=null;
 	  this.queryParams.eTime=null;
-      this.queryParams.statuses=null;
-      this.statusMulti = [];
       this.handleQuery();
     },
     // 多选框选中数据