Browse Source

合并master,解冲突

liuxiaona 2 years ago
parent
commit
aed06d2aaf
41 changed files with 167 additions and 204 deletions
  1. 3 0
      .idea/workspace.xml
  2. 1 1
      index.html
  3. 1 2
      project/.gitignore
  4. 5 2
      project/src/components/dataBoard/playletData.vue
  5. 22 14
      project/src/components/marketingGuest/batchAddFriend/addFriend/dialogPublic.vue
  6. 16 8
      project/src/components/marketingGuest/batchAddFriend/addFriend/importCustomer.vue
  7. 1 1
      project/src/components/marketingGuest/batchAddFriend/addFriend/importRecord.vue
  8. 8 11
      project/src/components/marketingGuest/batchAddFriend/addFriend/importRecordDetial.vue
  9. 27 50
      project/src/components/marketingGuest/batchAddFriend/addFriend/index.vue
  10. 17 17
      project/src/components/marketingGuest/batchAddFriend/addFriend/setting.vue
  11. 22 53
      project/src/components/marketingGuest/batchAddFriend/dataPreview/index.vue
  12. 1 1
      project/src/components/marketingGuest/batchAddFriend/index.vue
  13. 0 1
      qwh5/dist/css/app.55983f8f.css
  14. 1 0
      qwh5/dist/css/app.66ba47fa.css
  15. 1 1
      qwh5/dist/index.html
  16. 0 1
      qwh5/dist/js/about.0c77b459.js.map
  17. 1 1
      qwh5/dist/js/about.0c77b459.js
  18. 1 0
      qwh5/dist/js/about.f1949232.js.map
  19. 2 0
      qwh5/dist/js/app.1e2fc064.js
  20. 1 0
      qwh5/dist/js/app.1e2fc064.js.map
  21. 0 2
      qwh5/dist/js/app.f361feed.js
  22. 0 1
      qwh5/dist/js/app.f361feed.js.map
  23. 22 23
      qwh5/src/views/HomeView.vue
  24. 1 1
      static/css/app.3315ac4302e2e41ff3d3d579655a853b.css
  25. 1 0
      static/js/0.4139982d345d750d4e29.js
  26. 0 1
      static/js/0.907bc10ff0392762aaf1.js
  27. 1 1
      static/js/3.a699676bfccdb9c1a3b4.js
  28. 1 1
      static/js/33.6285e687afb5909f6052.js
  29. 1 1
      static/js/34.737469607f89d9bf97d0.js
  30. 1 1
      static/js/32.f0196b50bfc25ac146e0.js
  31. 1 1
      static/js/37.3535d9bc2f7a2c1fde55.js
  32. 0 1
      static/js/36.f5fb794ca36a5c2b0d5d.js
  33. 1 1
      static/js/38.0981668fb5e964522854.js
  34. 1 0
      static/js/38.43ba7c27f061719b9428.js
  35. 1 0
      static/js/6.0a0de93812729ee12a76.js
  36. 0 1
      static/js/6.b3da5e9425a4daf5d76e.js
  37. 0 1
      static/js/7.3d1dbbee48487649d2d8.js
  38. 1 0
      static/js/7.5b744e1b049affaa42af.js
  39. 2 2
      static/js/app.6f405954ea664523bc98.js
  40. 1 0
      static/js/manifest.634d43c58d547d8ee4cf.js
  41. 0 1
      static/js/manifest.d6241e2d4a048e9ec36f.js

+ 3 - 0
.idea/workspace.xml

@@ -55,8 +55,11 @@
55 55
       <workItem from="1654653264438" duration="30604000" />
56 56
       <workItem from="1654739102819" duration="11048000" />
57 57
       <workItem from="1654756255993" duration="16970000" />
58
+<<<<<<< HEAD
58 59
       <workItem from="1654774566674" duration="839000" />
59 60
       <workItem from="1654827336655" duration="1043000" />
61
+=======
62
+>>>>>>> master
60 63
     </task>
61 64
     <servers />
62 65
   </component>

+ 1 - 1
index.html

@@ -7,4 +7,4 @@
7 7
         hm.src = "https://hm.baidu.com/hm.js?d61b9e2caf4d46ccda7471b5385e2333";
8 8
         var s = document.getElementsByTagName("script")[0];
9 9
         s.parentNode.insertBefore(hm, s);
10
-      })();</script><link href=./static/css/app.3315ac4302e2e41ff3d3d579655a853b.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.d6241e2d4a048e9ec36f.js></script><script type=text/javascript src=./static/js/app.6f405954ea664523bc98.js></script></body></html>
10
+      })();</script><link href=./static/css/app.5de0d6739deff24102b135896798753b.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.634d43c58d547d8ee4cf.js></script><script type=text/javascript src=./static/js/app.3e23f5bc98b8b494eb2b.js></script></body></html>

+ 1 - 2
project/.gitignore

@@ -1,7 +1,6 @@
1 1
 .DS_Store
2 2
 node_modules/
3
-/dist/
4
-../.idea
3
+../.idea/
5 4
 npm-debug.log*
6 5
 yarn-debug.log*
7 6
 yarn-error.log*

+ 5 - 2
project/src/components/dataBoard/playletData.vue

@@ -110,10 +110,13 @@
110 110
         <div class="dataItem-data">{{dataInfo&&(dataInfo.charge_user_cost||dataInfo.charge_user_cost==0)?$formatNum(dataInfo.charge_user_cost):'-'}}</div>
111 111
       </div>
112 112
     </div>
113
-    <ux-grid ref="plxTableDj" class="djtfqs" key="plxTableDj" :border="false" @row-click="()=>{return}" :header-cell-style="()=>{return { backgroundColor: '#FFFFFF !important', border: 'none!important',height: '50px !important' }}" :height="height+130" show-footer-overflow="tooltip" show-overflow="tooltip" size="mini">
113
+    <ux-grid ref="plxTableDj" class="djtfqs" key="plxTableDj" :border="false" @row-click="()=>{return}"
114
+             :header-cell-style="()=>{return { backgroundColor: '#FFFFFF !important', border: 'none!important',height: '50px !important' }}"
115
+             :height="height+130" show-footer-overflow="tooltip" show-overflow="tooltip" size="mini">
114 116
       <ux-table-column v-for="item in desColDj" :key="item.prop" :resizable="true" :field="item.prop" :title="item.label" :min-width="item.min_width?item.min_width:120" :fixed="item.fixed?item.fixed:''" align="center">
115 117
         <template #header>
116
-          <div :class="['flex-align-jus-center',item.sort?'pointer':'',sort_field==item.prop?'sortFieldStyle':'']" @click="item.sort?sortFieldEvent(item.prop):''">{{item.label}}<i class="el-icon-caret-bottom" v-if="item.sort"></i>
118
+          <div :class="['flex-align-jus-center',item.sort?'pointer':'',sort_field==item.prop?'sortFieldStyle':'']"
119
+               @click="item.sort?sortFieldEvent(item.prop):''">{{item.label}}<i class="el-icon-caret-bottom" v-if="item.sort"></i>
117 120
             <el-tooltip v-if="item.notes" :content="item.notes" placement="top">
118 121
               <div><i class="el-icon-question"></i></div>
119 122
             </el-tooltip>

+ 22 - 14
project/src/components/marketingGuest/batchAddFriend/addFriend/dialogPublic.vue

@@ -36,20 +36,26 @@ export default {
36 36
     }
37 37
   },
38 38
   methods:{
39
-    cancle(num){
39
+    successReset(){//成功后清空数据并关闭
40 40
       this.dialogVisible = false
41
+      this.user_id_list = []
42
+      this.reset = !this.reset
43
+    },
44
+    cancle(num){
41 45
       if(this.type == 'importconfirm'){this.batchAddCustomerImportConfirm(num)}
46
+      this.dialogVisible = false
42 47
     },
43 48
     save(num){
44 49
       if(this.type == 'remindSingle'){
45 50
         this.addCustomer_notice()
46
-      }else if(this.type == 'allotSingle'){
51
+      }
52
+      else if(this.type == 'allotSingle'){
47 53
         if(this.user_id_list && this.user_id_list.length==0){
48 54
           this.$message({
49 55
             message: '分配人员不能为空',
50 56
             type: "warning"
51 57
           })
52
-          return
58
+          return;
53 59
         }
54 60
         this.$emit('dialogPublic_allot_single')
55 61
       }else if(this.type == 'allotMultiple'){
@@ -58,13 +64,15 @@ export default {
58 64
             message: '分配人员不能为空',
59 65
             type: "warning"
60 66
           })
61
-          return
67
+          return;
62 68
         }
63
-        this.$emit('dialogPublic_allot_single')
64
-      }else if(this.type == 'importconfirm'){
69
+        this.$emit('dialogPublic_allot_multiple')
70
+        this.successReset()
71
+      }
72
+      else if(this.type == 'importconfirm'){
65 73
         this.batchAddCustomerImportConfirm(num)
66 74
       }else{
67
-        this.dialogVisible = false
75
+        this.successReset()
68 76
       }
69 77
     },
70 78
     addCustomer_notice(){//单个提醒
@@ -80,9 +88,9 @@ export default {
80 88
         this.loading = false
81 89
         this.$loading(this.$loadingConfig).close();
82 90
         if(res&&res.errno==0){
83
-          this.dialogVisible = false
84
-          // this.$emit('clearuser_ids')
85
-          this.$parent.init(1)
91
+          this.successReset()
92
+          this.$emit('clearuser_ids')
93
+          this.$emit('init')
86 94
         }
87 95
       }).catch((err) => {
88 96
         this.loading = false
@@ -101,11 +109,11 @@ export default {
101 109
         var res = res.data
102 110
         this.loading = false
103 111
         if(res&&res.errno==0){
104
-          this.dialogVisible = false
105
-          if(num == 0){
106
-            this.$parent.dialogVisibleFalse()
112
+          if(num == 1){
113
+            this.successReset()
114
+            this.$emit('dialogVisibleFalse')
115
+            this.$emit('pranentInit')
107 116
           }
108
-          this.$parent.pranentInit()
109 117
         }else{
110 118
           this.$message({
111 119
             message: res.err,

+ 16 - 8
project/src/components/marketingGuest/batchAddFriend/addFriend/importCustomer.vue

@@ -51,7 +51,15 @@
51 51
           <el-button size="mini" type="primary" @click="save()">导 入</el-button>
52 52
         </span>
53 53
     </el-dialog>
54
-    <dialogPublic ref="dialogPublic" :dialogTitle="dialogTitle" :dialogMsg="dialogMsg" :type="dialogType" :new_file_name="new_file_name"></dialogPublic>
54
+    <dialogPublic
55
+      ref="dialogPublic"
56
+      :dialogTitle="dialogTitle"
57
+      :dialogMsg="dialogMsg"
58
+      :type="dialogType"
59
+      :new_file_name="new_file_name"
60
+      @pranentInit="pranentInit"
61
+      @dialogVisibleFalse="()=>{dialogVisible = false}"
62
+    ></dialogPublic>
55 63
   </div>
56 64
 </template>
57 65
 
@@ -73,8 +81,6 @@ export default {
73 81
       afferent_tag_obj: {
74 82
         tag_id_list: []
75 83
       },
76
-      repeatNum:0,
77
-      fileUpload: null,
78 84
       new_file_name:'',
79 85
       original_file_name:'',
80 86
       ext:'',
@@ -87,8 +93,13 @@ export default {
87 93
       excleList:[]
88 94
     }
89 95
   },
96
+  watch:{
97
+    dialogVisible(){
98
+      this.pranentInit('dialogVisible')
99
+    }
100
+  },
90 101
   methods:{
91
-    pranentInit(){//dialogPublic在用
102
+    pranentInit(type){//dialogPublic在用
92 103
       this.afferent_tag_obj.tag_id_list = []
93 104
       this.user_id_list = []
94 105
       this.excleList = []
@@ -96,10 +107,7 @@ export default {
96 107
       this.ext=''
97 108
       this.new_file_name = ''
98 109
       this.reset = !this.reset
99
-      this.$parent.init(1)
100
-    },
101
-    dialogVisibleFalse(){//dialogPublic在用
102
-      this.dialogVisible = false
110
+      if(type == 'dialogVisible'){}else{this.$parent.init(1)}
103 111
     },
104 112
     save(){
105 113
       if(this.original_file_name == '' || this.ext=='' || this.new_file_name == '' || this.excleList==[]){

+ 1 - 1
project/src/components/marketingGuest/batchAddFriend/addFriend/importRecord.vue

@@ -61,7 +61,7 @@
61 61
         <el-table-column label="操作" align="center">
62 62
           <template slot-scope="scope">
63 63
             <div style="display: flex;align-items: center;justify-content: center">
64
-              <div class="c-00B38A pointer" @click="remindCustomer(scope.row.id)">提醒</div>
64
+<!--              <div class="c-00B38A pointer" @click="remindCustomer(scope.row.id)">提醒</div>-->
65 65
               <div class="c-00B38A pointer lMar10" @click="deleCustomer(scope.row.id)">删除</div>
66 66
               <div class="c-00B38A pointer lMar10" @click="goDetail(scope.row.id)">详情</div>
67 67
             </div>

+ 8 - 11
project/src/components/marketingGuest/batchAddFriend/addFriend/importRecordDetial.vue

@@ -77,13 +77,13 @@
77 77
         </el-pagination>
78 78
       </div>
79 79
 
80
-      <dialogPublic
81
-        ref="dialogPublic"
82
-        :dialogTitle="dialogTitle"
83
-        :dialogMsg="dialogMsg"
84
-        :type="dialogType"
85
-        :user_ids="user_ids"
86
-        @clearuser_ids="()=>{user_ids = []}"
80
+      <dialogPublic ref="dialogPublic"
81
+                    :dialogTitle="dialogTitle"
82
+                    :dialogMsg="dialogMsg"
83
+                    :type="dialogType"
84
+                    :user_ids="user_ids"
85
+                    @clearuser_ids="()=>{user_ids = []}"
86
+                    @init="()=>{init(1)}"
87 87
       ></dialogPublic>
88 88
 
89 89
     </div>
@@ -134,9 +134,6 @@ export default {
134 134
         this.user_ids.push(user_id)
135 135
       })
136 136
     },
137
-    clearuser_ids(){//dialogPublic在用
138
-      this.user_ids = []
139
-    },
140 137
     init (page, type) {
141 138
       this.page = page ? page : this.page;
142 139
       this.loading = true
@@ -154,7 +151,7 @@ export default {
154 151
         if (res && res.errno == 0) {
155 152
           this.tableData = res.rst.data.list;
156 153
           this.allNum = res.rst.data.total
157
-            this.addedNum = res.rst.data.complete_total
154
+          this.addedNum = res.rst.data.complete_total
158 155
           this.total = res.rst.pageInfo.total;
159 156
           this.pages = res.rst.pageInfo.pages;
160 157
         } else if (res.errno != 4002) {

+ 27 - 50
project/src/components/marketingGuest/batchAddFriend/addFriend/index.vue

@@ -105,7 +105,7 @@
105 105
           <div style="display: flex;align-items: center;justify-content: center;flex-wrap: wrap">
106 106
             <div v-if="scope.row.add_status==3" class="c-00B38A pointer"  @click="goDetail(scope.row,scope.$index)">详情</div>
107 107
             <div class="c-00B38A pointer lMar10" @click="deleCustomer(scope.row.id)">删除</div>
108
-            <div v-if="scope.row.add_status==4" class="lMar10" :class="scope.row.add_status==4 ? 'c-00B38A pointer' : 'c-999 pointer-drop' " @click="allotCustomer(scope.row.id)">分配</div>
108
+            <div v-if="scope.row.add_status==4" class="lMar10" :class="scope.row.add_status==4 ? 'c-00B38A pointer' : 'c-999 pointer-drop' " @click="batchAllot(scope.row.id)">分配</div>
109 109
             <div v-if="scope.row.add_status==1||scope.row.add_status==2" class="c-00B38A pointer lMar10" @click="remindCustomer(scope.row.user_id,scope.row.add_status)">提醒</div>
110 110
           </div>
111 111
         </template>
@@ -123,8 +123,10 @@
123 123
       :dialogMsg="dialogMsg"
124 124
       :type="dialogType"
125 125
       :user_ids="user_ids"
126
-      @dialogPublic_allot_single="dialogPublic_allot_single"
127 126
       @clearuser_ids="()=>{user_ids = []}"
127
+      @init="()=>{init(1)}"
128
+      @dialogPublic_allot_single="dialogPublic_allot_single"
129
+      @dialogPublic_allot_multiple="allot_dele_remind_pack('allot',pageOptionValue,select_id_list,exclude_id_list)"
128 130
     ></dialogPublic>
129 131
     <!--    设置-->
130 132
     <setting ref="settingRef"></setting>
@@ -132,9 +134,10 @@
132 134
     <importCustomer ref="importCustomerRef"></importCustomer>
133 135
     <!--客户详情-->
134 136
     <el-drawer :size="drawerSize" :visible.sync="detialDrawer" :with-header="false">
135
-      <detial @changeDrawerSize="changeDrawerSize" @closeDrawer="closeDrawer" :rowProp="{
136
-        customer_id:rowPro.customer_id,
137
-        user_id:rowPro.user_id
137
+      <detial @changeDrawerSize="()=>{drawerSize = drawerSize == '100%' ? '60%' : '100%'}"
138
+              @closeDrawer="detialDrawer = false" :rowProp="{
139
+              customer_id:rowPro.customer_id,
140
+              user_id:rowPro.user_id
138 141
       }" ref="detial" @tagUpdate='tagUpdate'></detial>
139 142
     </el-drawer>
140 143
   </div>
@@ -206,35 +209,15 @@ export default {
206 209
     this.init(1)
207 210
   },
208 211
   methods:{
209
-    changeDrawerSize () {
210
-      this.drawerSize = this.drawerSize == '100%' ? '60%' : '100%'
211
-    },
212
-    closeDrawer () {
213
-      this.detialDrawer = false
214
-    },
215 212
     tagUpdate (val) {//标签回调
216 213
       this.$set(this.rowPro, 'tag_list', val)
217 214
       this.$set(this.tableData, this.rowPro.self_index, this.rowPro)
218 215
     },
219
-    pageOptionSelect (val) {//选择
216
+    pageOptionSelect (val) {//选择1,全部,当前页面0
220 217
       this.pageOptionValue = val
221
-
222
-      if (this.pageOptionValue == 1) {
223
-        this.$nextTick(()=>{
224
-          this.tableData.forEach((row) => {
225
-            this.$refs.multipleTable.toggleRowSelection(row, true);
226
-          })
227
-        })
228
-
229
-      } else {//选择当前页面
230
-        this.$nextTick(()=>{
231
-          this.tableData.forEach((row) => {
232
-            this.$refs.multipleTable.toggleRowSelection(row, false);
233
-          })
234
-        })
235
-
236
-      }
237
-
218
+      this.tableData.forEach((row) => {
219
+        this.$refs.multipleTable.toggleRowSelection(row, this.pageOptionValue == 1 ? true : false);
220
+      })
238 221
     },
239 222
     noChooseCustomeTips(){//没有选择客户提示
240 223
       this.noChooseFlag = false
@@ -294,6 +277,7 @@ export default {
294 277
         this.allot_dele_remind_pack('remind',this.pageOptionValue,this.select_id_list,this.exclude_id_list)
295 278
       })
296 279
     },
280
+
297 281
     remindCustomer(user_id,status){//单个提醒,走的接口二
298 282
       this.$nextTick(()=>{
299 283
         this.$refs.dialogPublic.dialogVisible = true
@@ -305,28 +289,23 @@ export default {
305 289
       })
306 290
     },
307 291
 
308
-    batchAllot(){//批量分配,单个分配
309
-      this.noChooseCustomeTips()
310
-      if(this.noChooseFlag){
311
-        return
292
+    batchAllot(id){//批量分配,单个分配
293
+      //单个分配
294
+      if(id){}else{//批量
295
+        this.noChooseCustomeTips()
296
+        if(this.noChooseFlag){
297
+          return
298
+        }
312 299
       }
313 300
       this.$nextTick(()=>{
314 301
         this.$refs.dialogPublic.dialogVisible = true
315
-        this.dialogType = 'allotMultiple'
302
+        this.dialogType = id ? 'allotSingle' : 'allotMultiple'
316 303
         this.dialogTitle = '分配'
317 304
         this.dialogMsg = ''
318 305
         this.user_id_list = []
319
-      })
320
-
321
-    },
322
-    allotCustomer(id){//单个分配
323
-      this.$nextTick(()=>{
324
-        this.$refs.dialogPublic.dialogVisible = true
325
-        this.dialogType = 'allotSingle'
326
-        this.dialogTitle = '分配'
327
-        this.dialogMsg = ''
328
-        this.user_id_list = []
329
-        this.allotId = id
306
+        if(id){
307
+          this.allotId = id
308
+        }
330 309
       })
331 310
     },
332 311
 
@@ -335,9 +314,6 @@ export default {
335 314
       ids.push(this.allotId)
336 315
       this.allot_dele_remind_pack('allot',0,ids)
337 316
     },
338
-    dialogPublic_allot_multiple(){//多选分配
339
-      this.allot_dele_remind_pack('allot',this.pageOptionValue,this.select_id_list,this.exclude_id_list)
340
-    },
341 317
 
342 318
     allot_dele_remind_pack(type,select_all,select_id_list,exclude_id_list){//分配,删除,提醒,多选及单个
343 319
       this.loading=true
@@ -367,8 +343,9 @@ export default {
367 343
         })
368 344
         if(res&&res.errno==0){
369 345
           this.init(1)
370
-          this.$refs.dialogPublic.dialogVisible = false
371
-          this.$refs.dialogPublic.reset = !this.$refs.dialogPublic.reset
346
+          if(type == 'allot'){
347
+            this.$refs.dialogPublic.successReset()
348
+          }
372 349
         }
373 350
       }).catch((err) => {
374 351
         this.loading = false

+ 17 - 17
project/src/components/marketingGuest/batchAddFriend/addFriend/setting.vue

@@ -5,7 +5,7 @@
5 5
         :visible.sync="dialogVisible"
6 6
         width="40%">
7 7
 
8
-        <el-tabs v-model="activeName" type="card" @tab-click="handleClick" v-loading="loading">
8
+        <el-tabs v-model="activeName" type="card" v-loading="loading">
9 9
           <el-tab-pane label="自动提醒" name="first">
10 10
 <!--      未分配提醒      -->
11 11
             <template>
@@ -76,7 +76,9 @@
76 76
               </el-switch>
77 77
             </div>
78 78
             <div v-if="config_list.auto_recycle.enable" class="line40">
79
-              超过 <el-input v-model="config_list.auto_recycle.threshold" size="mini" class="dayIpt" @change="(val)=>val ? config_list.auto_recycle.threshold = val : config_list.auto_recycle.threshold = 1"></el-input> 天,<span class="fWeight600 c-000">客户未通过好友申请</span>,自动转移到待分配
79
+              超过 <el-input v-model="config_list.auto_recycle.threshold" size="mini" class="dayIpt"
80
+                           @change="(val)=>val ? config_list.auto_recycle.threshold = val : config_list.auto_recycle.threshold = 1"></el-input> 天,
81
+              <span class="fWeight600 c-000">客户未通过好友申请</span>,自动转移到待分配
80 82
             </div>
81 83
           </el-tab-pane>
82 84
         </el-tabs>
@@ -130,16 +132,12 @@ export default {
130 132
   },
131 133
   watch:{
132 134
     user_id_list(){
133
-      this.config_list.assigned.notice_users = this.user_id_list&&this.user_id_list.length>0 ? (this.user_id_list.length==1?this.user_id_list[0]:this.user_id_list.join()) : ''
135
+      this.config_list.assigned.notice_users =
136
+        this.user_id_list&&this.user_id_list.length>0 ?
137
+          (this.user_id_list.length==1?this.user_id_list[0]:this.user_id_list.join()) : ''
134 138
     }
135 139
   },
136
-  created(){
137
-
138
-  },
139 140
   methods:{
140
-    handleClick(){
141
-
142
-    },
143 141
     save(){
144 142
       if(this.user_id_list&&this.user_id_list.length==0 || this.config_list.assigned.notice_users==''){
145 143
         this.$message({
@@ -150,15 +148,16 @@ export default {
150 148
       }
151 149
       this.newSetting()
152 150
     },
153
-
154
-    newSetting(){
151
+    newSetting(){//新建设置
155 152
       this.loading=true
156
-      // this.$loading(this.$loadingConfig)
153
+      // 需要将天数转化为分钟数传给后台
157 154
       let config_list_finally=[]
158
-      this.config_list.assigned.threshold = this.config_list.assigned.threshold*1440
159
-      this.config_list.charged.threshold = this.config_list.charged.threshold*1440
160
-      this.config_list.auto_recycle.threshold = this.config_list.auto_recycle.threshold*1440
161
-      config_list_finally.push(this.config_list.assigned,this.config_list.charged,this.config_list.auto_recycle)
155
+      let assigned = this.config_list.assigned,charged = this.config_list.charged,auto_recycle = this.config_list.auto_recycle
156
+      assigned.threshold = assigned.threshold*1440
157
+      charged.threshold = charged.threshold*1440
158
+      auto_recycle.threshold = auto_recycle.threshold*1440
159
+      config_list_finally.push(assigned,charged,auto_recycle)
160
+
162 161
       this.$axios.post(this.URL.BASEURL + this.URL.editConfig, {
163 162
         config_list:config_list_finally
164 163
       }).then((res) => {
@@ -167,7 +166,6 @@ export default {
167 166
           message: res.err,
168 167
           type: "warning"
169 168
         })
170
-        // this.$loading(this.$loadingConfig).close()
171 169
         this.loading=false
172 170
         this.dialogVisible = false
173 171
       }).catch((err) => {
@@ -186,6 +184,8 @@ export default {
186 184
           let configData = this.config_list
187 185
 
188 186
 
187
+
188
+
189 189
           if(res.rst.assigned.enable == 1){
190 190
             configData.assigned = res.rst.assigned
191 191
 

+ 22 - 53
project/src/components/marketingGuest/batchAddFriend/dataPreview/index.vue

@@ -27,48 +27,21 @@
27 27
               :data="tableData"
28 28
               tooltip-effect="dark"
29 29
               style="width: 100%">
30
-      <el-table-column label="成员" align="center" show-overflow-tooltip>
31
-        <template slot-scope="scope">
32
-          <div>{{scope.row.name ? scope.row.name : '-'}}</div>
33
-        </template>
34
-      </el-table-column>
35
-      <el-table-column min-width="120" label="分配客户数" show-overflow-tooltip align="center">
36
-        <template slot-scope="scope">
37
-          <div>{{scope.row.assign_count||scope.row.assign_count==0 ? scope.row.assign_count : '-'}}</div>
38
-        </template>
39
-      </el-table-column>
40
-      <el-table-column min-width="120" label="待添加客户数" show-overflow-tooltip align="center">
41
-        <template slot-scope="scope">
42
-          <div>{{scope.row.waiting_add_count||scope.row.waiting_add_count==0 ? scope.row.waiting_add_count : '-'}}</div>
43
-        </template>
44
-      </el-table-column>
45
-      <el-table-column min-width="120" show-overflow-tooltip align="center">
46
-        <template #header>
47
-          待通过客户数
48
-          <el-tooltip class="disinblock" content="已发送好友申请,等待客户通过" placement="top">
49
-            <i class="el-icon-question"></i>
50
-          </el-tooltip>
51
-        </template>
52
-        <template slot-scope="scope">
53
-          <div>{{scope.row.passed_count||scope.row.passed_count==0 ? scope.row.passed_count : '-'}}</div>
54
-        </template>
55
-      </el-table-column>
56
-      <el-table-column min-width="120" label="已添加客户数" show-overflow-tooltip align="center">
57
-        <template slot-scope="scope">
58
-          <div>{{scope.row.added_count||scope.row.added_count==0 ? scope.row.added_count : '-'}}</div>
59
-        </template>
60
-      </el-table-column>
61
-      <el-table-column min-width="120" label="回收客户数" show-overflow-tooltip align="center">
62
-        <template slot-scope="scope">
63
-          <div>{{scope.row.recycled_count||scope.row.recycled_count==0 ? scope.row.recycled_count : '-'}}</div>
64
-        </template>
65
-      </el-table-column>
66
-      <el-table-column min-width="120" label="添加完成率" show-overflow-tooltip align="center">
67
-        <template slot-scope="scope">
68
-          <div>{{scope.row.add_rate ? scope.row.add_rate : '-'}}</div>
69
-        </template>
70
-      </el-table-column>
71
-
30
+      <template v-for="item in desCol">
31
+        <el-table-column :key="item.prop" :label="item.label" align="center"
32
+                         :show-overflow-tooltip="item.showOverTooltip"
33
+                         :min-width="item.min_width?item.min_width:120">
34
+          <template #header v-if="item.tooltip">
35
+            {{item.label?item.label:'-'}}
36
+            <el-tooltip class="disinblock" :content="item.tooltip" placement="top">
37
+              <i class="el-icon-question"></i>
38
+            </el-tooltip>
39
+          </template>
40
+          <template slot-scope="scope">
41
+            <div>{{scope.row[item.prop] ? scope.row[item.prop] : '-'}}</div>
42
+          </template>
43
+        </el-table-column>
44
+      </template>
72 45
       <el-table-column label="操作" align="center">
73 46
         <template slot-scope="scope">
74 47
           <div class="c-00B38A pointer" @click="goDetial(scope.row)">详情</div>
@@ -83,7 +56,11 @@
83 56
 
84 57
     <!--客服详情-->
85 58
     <el-drawer :size="drawerSize" :visible.sync="userDetailFlag" :with-header="false">
86
-      <user-detail v-if="userDetailFlag" @changeDrawerSize="changeDrawerSize" @closeDrawer="closeDrawer" :user_id="user_detail_id"></user-detail>
59
+      <user-detail
60
+        v-if="userDetailFlag"
61
+        @changeDrawerSize="()=>{drawerSize = drawerSize == '100%' ? '60%' : '100%'}"
62
+        @closeDrawer="detialDrawer = false"
63
+        :user_id="user_detail_id"></user-detail>
87 64
     </el-drawer>
88 65
   </div>
89 66
 
@@ -158,12 +135,11 @@ export default {
158 135
         { prop: "name", label: "成员" },
159 136
         { prop: "assign_count", label: "分配客户数" },
160 137
         { prop: "waiting_add_count", label: "待添加客户数" },
161
-        { prop: "passed_count", label: "待通过客户数" },
138
+        { prop: "passed_count", label: "待通过客户数",tooltip:'已发送好友申请,等待客户通过' },
162 139
         { prop: "added_count", label: "已添加客户数" },
163 140
         { prop: 'recycled_count', label: "回收客户数",  },
164 141
         { prop: 'add_rate', label: "添加完成率",  },
165 142
       ],
166
-
167 143
     }
168 144
   },
169 145
   created() {
@@ -178,12 +154,6 @@ export default {
178 154
     }
179 155
   },
180 156
   methods:{
181
-    changeDrawerSize () {
182
-      this.drawerSize = this.drawerSize == '100%' ? '60%' : '100%'
183
-    },
184
-    closeDrawer () {
185
-      this.detialDrawer = false
186
-    },
187 157
     goDetial (data) {
188 158
       this.userDetailFlag = true
189 159
       this.user_detail_id = data.user_id;
@@ -192,8 +162,7 @@ export default {
192 162
       this.$store.state.batchTime = this.time
193 163
       this.$store.state.batchStatus = id
194 164
       this.$nextTick(()=>{
195
-        this.$parent.changeType(1)
196
-        // Bus.$emit('chooseStatus',id)
165
+        this.$emit('changeType',1)
197 166
       })
198 167
     },
199 168
     changeTime (time) {//筛选时间变化

+ 1 - 1
project/src/components/marketingGuest/batchAddFriend/index.vue

@@ -7,7 +7,7 @@
7 7
       </div>
8 8
     </div>
9 9
     <addFriend v-if="tagType==1"></addFriend>
10
-    <dataPreview v-if="tagType==2"></dataPreview>
10
+    <dataPreview v-if="tagType==2" @changeType="(val)=>changeType(val)"></dataPreview>
11 11
   </div>
12 12
 </template>
13 13
 

File diff suppressed because it is too large
+ 0 - 1
qwh5/dist/css/app.55983f8f.css


File diff suppressed because it is too large
+ 1 - 0
qwh5/dist/css/app.66ba47fa.css


File diff suppressed because it is too large
+ 1 - 1
qwh5/dist/index.html


File diff suppressed because it is too large
+ 0 - 1
qwh5/dist/js/about.0c77b459.js.map


+ 1 - 1
qwh5/dist/js/about.0c77b459.js

@@ -1,2 +1,2 @@
1 1
 "use strict";(self["webpackChunkqwh5"]=self["webpackChunkqwh5"]||[]).push([[443],{4335:function(n,u,t){t.r(u),t.d(u,{default:function(){return f}});var a=t(3396);const e={class:"about"},r=(0,a._)("h1",null,"This is an about page",-1),s=[r];function c(n,u){return(0,a.wg)(),(0,a.iD)("div",e,s)}var i=t(89);const h={},o=(0,i.Z)(h,[["render",c]]);var f=o}}]);
2
-//# sourceMappingURL=about.0c77b459.js.map
2
+//# sourceMappingURL=about.f1949232.js.map

File diff suppressed because it is too large
+ 1 - 0
qwh5/dist/js/about.f1949232.js.map


File diff suppressed because it is too large
+ 2 - 0
qwh5/dist/js/app.1e2fc064.js


File diff suppressed because it is too large
+ 1 - 0
qwh5/dist/js/app.1e2fc064.js.map


File diff suppressed because it is too large
+ 0 - 2
qwh5/dist/js/app.f361feed.js


File diff suppressed because it is too large
+ 0 - 1
qwh5/dist/js/app.f361feed.js.map


+ 22 - 23
qwh5/src/views/HomeView.vue

@@ -31,7 +31,7 @@
31 31
                :infinite-scroll-distance="20"
32 32
                v-loading.body="tableLoading"
33 33
                class="infinite-list">
34
-            <div class="table_body" v-for="(item,index) in tableData" :key="index">
34
+            <div class="table_body" v-for="(item,index) in tableData" :key="index" :style="item.copyReport ? 'color:#999' : ''">
35 35
               <div>{{ item.phone ? item.phone : '-' }}</div>
36 36
               <div>
37 37
                 <span v-if="item.add_status == 1">待添加</span>
@@ -41,7 +41,11 @@
41 41
                 <span v-else-if="!item.add_status">-</span>
42 42
                 <span v-else>-</span>
43 43
               </div>
44
-              <div><span class="copy" :class="item.add_status == 2?'c-b8733d':(item.add_status == 3?'c-999':'')" @click="goAddCustomer(item)">复制</span></div>
44
+              <div>
45
+                <span class="copy" :style="item.copyReport ? 'color:#999;border: 1px solid #999' : ''" @click="goAddCustomer(item)">
46
+                  复制
47
+                </span>
48
+              </div>
45 49
             </div>
46 50
           </div>
47 51
           <p class="infinite-tips" v-if="load_loading">加载中...</p>
@@ -120,23 +124,18 @@ export default class HomeView extends Vue {
120 124
   }
121 125
 
122 126
   copyDomText (data) { //复制到粘贴板
123
-    // const node = document.getElementById(id)
124
-    // if (node) {
125
-    //   let createRange = document.createRange()
126
-    //   createRange.selectNodeContents(document.getElementById(id))
127
-    //   const selection = document.getSelection()
128
-    //   selection.removeAllRanges()
129
-    //   selection.addRange(createRange)
130
-    //   document.execCommand('Copy')
131
-    //   selection.removeAllRanges()
132
-    // }
133
-
134 127
     var input = document.createElement("input");// 创建input
135 128
     input.value = data; // 赋值
136 129
     document.body.appendChild(input); // 添加dom
137 130
     input.select(); // 选中input
138 131
     document.execCommand("Copy"); // 复制到剪贴板
139 132
     document.body.removeChild(input); // 清除input
133
+    ElMessage({
134
+      showClose:true,
135
+      message: '复制成功,即将跳转!',
136
+      type: 'success',
137
+      duration:3000
138
+    })
140 139
   }
141 140
 
142 141
   loadMore () {
@@ -188,15 +187,6 @@ export default class HomeView extends Vue {
188 187
   }
189 188
 
190 189
   async goAddCustomer (item) { // 复制
191
-    // if(item.add_status == 3){
192
-    //   ElMessage({
193
-    //     showClose:true,
194
-    //     message: '本客户已添加!',
195
-    //     type: 'info',
196
-    //     duration:3000
197
-    //   })
198
-    //   return
199
-    // }
200 190
     this.loading = true
201 191
     this.copyDomText(item.phone)
202 192
     await this.getAuthInfo(item)
@@ -225,13 +215,16 @@ export default class HomeView extends Vue {
225 215
         if (resNew.rst.data.list.length < 20) {
226 216
           this.noMore = true
227 217
         }
218
+        resNew.rst.data.list.forEach((item)=>{
219
+          item.copyReport = false
220
+        })
228 221
         this.customer_total = resNew.rst.data.customer_total
229 222
         this.tableData = [...this.tableData, ...resNew.rst.data.list]
230 223
         this.load_loading = false
231 224
       }else{
232 225
         ElMessage({
233 226
           showClose:true,
234
-          message: '没有获取到链接参数,请联系管理员',
227
+          message: resNew.err,
235 228
           type: 'warning',
236 229
           duration:5000
237 230
         })
@@ -258,7 +251,9 @@ export default class HomeView extends Vue {
258 251
       }
259 252
     }).then((res) => {
260 253
       const resNew = res.data
254
+      this.loading = false
261 255
       if(item.add_status == 1 || item.add_status == 2){
256
+        item.copyReport = true
262 257
         this.initQYConfig()
263 258
       }
264 259
     }).catch((err) => {
@@ -278,6 +273,7 @@ export default class HomeView extends Vue {
278 273
       jsApiList: ['navigateToAddCustomer'] // 必填,需要使用的JS接口列表,凡是要调用的接口都需要传进来
279 274
     })
280 275
     wx.ready(function () {
276
+      console.log('111');
281 277
       _this.initYYConfig()
282 278
     })
283 279
     wx.error(function (res) {
@@ -287,6 +283,7 @@ export default class HomeView extends Vue {
287 283
   }
288 284
 
289 285
   initYYConfig () { // 应用
286
+    console.log('222');
290 287
     const _this = this
291 288
     wx.agentConfig({
292 289
       corpid: this.authInfo.corpid, // 必填,企业微信的corpid,必须与当前登录的企业一致
@@ -296,9 +293,11 @@ export default class HomeView extends Vue {
296 293
       signature: this.authInfo.app_signature, // 必填,签名,见附录-JS-SDK使用权限签名算法  应用签名
297 294
       jsApiList: ['navigateToAddCustomer'], // 必填,传入需要使用的接口名称
298 295
       success: function (res) {
296
+        console.log('333');
299 297
         // 回调
300 298
         wx.invoke('navigateToAddCustomer', {}, function (res) {
301 299
           // console.log(res, 'wx.invoke,navigateToAddCustomer')
300
+          console.log('444');
302 301
         })
303 302
         _this.loading = false
304 303
       },

File diff suppressed because it is too large
+ 1 - 1
static/css/app.3315ac4302e2e41ff3d3d579655a853b.css


File diff suppressed because it is too large
+ 1 - 0
static/js/0.4139982d345d750d4e29.js


File diff suppressed because it is too large
+ 0 - 1
static/js/0.907bc10ff0392762aaf1.js


File diff suppressed because it is too large
+ 1 - 1
static/js/3.a699676bfccdb9c1a3b4.js


File diff suppressed because it is too large
+ 1 - 1
static/js/33.6285e687afb5909f6052.js


File diff suppressed because it is too large
+ 1 - 1
static/js/34.737469607f89d9bf97d0.js


File diff suppressed because it is too large
+ 1 - 1
static/js/32.f0196b50bfc25ac146e0.js


File diff suppressed because it is too large
+ 1 - 1
static/js/37.3535d9bc2f7a2c1fde55.js


File diff suppressed because it is too large
+ 0 - 1
static/js/36.f5fb794ca36a5c2b0d5d.js


File diff suppressed because it is too large
+ 1 - 1
static/js/38.0981668fb5e964522854.js


File diff suppressed because it is too large
+ 1 - 0
static/js/38.43ba7c27f061719b9428.js


File diff suppressed because it is too large
+ 1 - 0
static/js/6.0a0de93812729ee12a76.js


File diff suppressed because it is too large
+ 0 - 1
static/js/6.b3da5e9425a4daf5d76e.js


File diff suppressed because it is too large
+ 0 - 1
static/js/7.3d1dbbee48487649d2d8.js


File diff suppressed because it is too large
+ 1 - 0
static/js/7.5b744e1b049affaa42af.js


File diff suppressed because it is too large
+ 2 - 2
static/js/app.6f405954ea664523bc98.js


File diff suppressed because it is too large
+ 1 - 0
static/js/manifest.634d43c58d547d8ee4cf.js


File diff suppressed because it is too large
+ 0 - 1
static/js/manifest.d6241e2d4a048e9ec36f.js