Browse Source

Merge branch 'master' into feature/0104

zhengxy 2 years ago
parent
commit
9b52c3c365

+ 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.067c894c87f7fb5626db96d0c2be9cca.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.3337631854e28a387d94.js></script><script type=text/javascript src=./static/js/app.1360f3b36d73951e3ad4.js></script></body></html>
10
+      })();</script><link href=./static/css/app.36c59ec2fa9bb72d6d3972eccf573072.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.63a72d58013acb28f530.js></script><script type=text/javascript src=./static/js/app.f847d487a33554edf2c4.js></script></body></html>

+ 83 - 5
project/src/components/manage/memberManage.vue

@@ -1,10 +1,21 @@
1 1
 <template>
2 2
   <div>
3
+    <div class="flex-align-center" style="background: #fff;padding: 0 16px;margin-bottom: 10px;">
4
+      <!-- S 激活状态 -->
5
+      <div class="flex" style="margin-right: 20px;">
6
+        <span style="font-size: 14px; color: #666; margin-right: 8px;">激活状态</span>
7
+        <el-select class="select-cls" v-model="is_active" size="small" placeholder="请选择激活状态" clearable filterable :style="{width: '210px'}" @change="onChangeActiveStatus">
8
+          <el-option v-for="item in activeStatusOptions" :key="item.value" :label="item.label" :value="item.value" />
9
+        </el-select>
10
+      </div>
11
+      <!-- E 激活状态 -->
12
+      <selfCustomerservice labelWidth="auto" style="margin-right: 20px;" title="成员" @customerDefine="onChangeUserIds" />
13
+      <selfinput :hasLabel="false" @inputChange="inputChange"></selfinput>
14
+    </div>
3 15
     <div class="tableInfo">
4 16
       <div class="flex">
5 17
         <!-- 客户数据统计 -->
6 18
         <div v-if="isShowCustomerData" class="totalCustom">
7
-          <i class="el-icon-user-solid" />
8 19
           共<span>{{ customerData.customer_count }}</span>个客户;
9 20
           昨日新增<span>{{ customerData.user_add_yesterday }}</span>;
10 21
           昨日流失<span>{{ customerData.user_loss_yesterday }}</span>;
@@ -15,11 +26,8 @@
15 26
           共<span>{{total}}</span>个成员
16 27
         </div>
17 28
       </div>
18
-      <div class="flex">
19
-        <selfCustomerservice style="margin-right: 20px;" title="成员" @customerDefine="onChangeUserIds" />
20
-        <selfinput :hasLabel="false" @inputChange="inputChange"></selfinput>
21
-      </div>
22 29
     </div>
30
+
23 31
     <div style="display: flex;">
24 32
       <div style="width: 300px;flex-shrink: 0;margin-right: 10px;background-color: #fff;padding: 15px">
25 33
         <div class="fWeight600">
@@ -76,6 +84,31 @@
76 84
           </el-table-column>
77 85
           <el-table-column label="昨日流失客户数" prop="loss_contact_cnt" min-width="120" align="center" />
78 86
           <el-table-column label="昨日新增客户数" prop="new_contact_cnt" min-width="120" align="center" />
87
+
88
+          <el-table-column label="激活时间" min-width="170" align="center">
89
+            <template slot-scope="{ row }">
90
+              <span>{{ row.active_time || '-' }}</span>
91
+            </template>
92
+          </el-table-column>
93
+          <el-table-column label="过期时间" min-width="170" align="center">
94
+            <!-- <template slot="header">
95
+              <span>过期时间</span>
96
+              <el-tooltip class="disinblock" placement="top">
97
+                <div slot="content">系统根据过期时间判断许可到期时间,到期前14天通知续费</div>
98
+                <i class="el-icon-question"></i>
99
+              </el-tooltip>
100
+            </template> -->
101
+            <template slot-scope="{ row }">
102
+              <div v-if="row.expire_time">
103
+                <div>{{ row.expire_time }}</div>
104
+                <!-- 无可用状态码 目前通过后端返回的文案判断 -->
105
+                <div v-if="row.active_desc === '已到期'" class="expired-tips">已到期</div>
106
+                <div v-if="row.active_desc === '即将到期'" class="expired-tips danger">即将到期</div>
107
+              </div>
108
+              <span v-else> - </span>
109
+            </template>
110
+          </el-table-column>
111
+
79 112
           <el-table-column label="操作" align="center" min-width="110" fixed="right">
80 113
             <template slot-scope="scope">
81 114
               <span class="c-00B38A pointer" @click="detailEvent(scope.row)">详情</span>
@@ -160,6 +193,12 @@ const orderTypeDesc = new Map([
160 193
   [String(orderTypeOptions.ADQ), 'ADQ'],
161 194
 ])
162 195
 
196
+// 激活状态选项
197
+const activeStatusOptions = [
198
+  { label: '未激活', value: 0 },
199
+  { label: '已激活', value: 1 },
200
+]
201
+
163 202
 export default {
164 203
   name: 'memberManage',
165 204
   components: {
@@ -196,6 +235,9 @@ export default {
196 235
         user_add_yesterday: 0,
197 236
         user_loss_yesterday: 0,
198 237
       },
238
+
239
+      is_active: '', // 激活状态
240
+      activeStatusOptions: Object.freeze(activeStatusOptions), // 激活状态选项
199 241
     }
200 242
   },
201 243
   computed: {
@@ -249,6 +291,7 @@ export default {
249 291
           user_name: keyword,
250 292
           department_list: this.checkVals,
251 293
           user_ids: this.user_ids ? this.user_ids.join(',') : '',
294
+          is_active: this.is_active,
252 295
           page: this.page,
253 296
           page_size: this.page_size
254 297
         }
@@ -336,11 +379,34 @@ export default {
336 379
       this.user_ids = val ? val : []
337 380
       this.init(1, this.keyword)
338 381
     },
382
+    // 监听激活状态变化
383
+    onChangeActiveStatus(val) {
384
+      this.is_active = val
385
+      this.init(1, this.keyword)
386
+    },
339 387
   }
340 388
 }
341 389
 </script>
342 390
 <style lang="scss" scoped>
343 391
 @import "@/style/list.scss";
392
+.select-cls {
393
+  /deep/ .el-input__inner {
394
+    height: 30px;
395
+    line-height: 30px;
396
+  }
397
+  /deep/ .el-input__suffix {
398
+    border-top-right-radius: 4px;
399
+    border-bottom-right-radius: 4px;
400
+    border: 1px solid #DCDFE6;
401
+    right: 0;
402
+    width: 30px;
403
+    background-color: #F1F1F1;
404
+    .el-input__icon {
405
+      line-height: 26px;
406
+      color: #909399;
407
+    }
408
+  }
409
+}
344 410
 .ml-6 {
345 411
   margin-left: 6px;
346 412
 }
@@ -364,4 +430,16 @@ export default {
364 430
     flex-shrink: 0;
365 431
   }
366 432
 }
433
+
434
+.expired-tips {
435
+  display: inline-block;
436
+  padding: 0 4px;
437
+  border-radius: 2px;
438
+  background-color: #F2F2F2;
439
+  color: #AAAAAA;
440
+  &.danger {
441
+    background-color: #FDE3E3;
442
+    color: #EC808D;
443
+  }
444
+}
367 445
 </style>

File diff suppressed because it is too large
+ 1 - 0
static/css/app.36c59ec2fa9bb72d6d3972eccf573072.css


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


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


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