zhengjinyi 2 роки тому
батько
коміт
2b0ef38df1
1 змінених файлів з 50 додано та 27 видалено
  1. 50 27
      src/views/user/record/list.vue

+ 50 - 27
src/views/user/record/list.vue

@@ -77,12 +77,12 @@
         </div>
         <div class="filter-control">
           <span>关联供应商:</span>
-          <el-select v-model="listQuery.accessClient" clearable @change="getList">
+          <el-select v-model="listQuery.relevanceShop" clearable @change="getList">
             <el-option
               v-for="item in supplierList"
               :key="item.shopId"
               :label="item.shopName"
-              :value="item.shopId"
+              :value="item.shopName"
             />
           </el-select>
         </div>
@@ -151,6 +151,21 @@
             {{ row.spName ? row.spName : '---' }}
           </template>
         </el-table-column>
+        <el-table-column prop="relevanceShop" label="关联供应商" align="center">
+          <template slot-scope="{ row }">
+            {{ row.relevanceShop ? row.relevanceShop : '---' }}
+          </template>
+        </el-table-column>
+        <el-table-column prop="spName" label="标签" align="center">
+          <template slot-scope="{ row }">
+            {{ row.label ? row.label : '---' }}
+          </template>
+        </el-table-column>
+        <el-table-column prop="addTime" label="注册时间" align="center">
+          <template slot-scope="{ row }">
+            {{ row.addTime ? row.addTime : '---' }}
+          </template>
+        </el-table-column>
         <el-table-column prop="numbers" label="访问页面数量" align="center" width="50">
           <template slot-scope="{ row }">
             {{ row.numbers ? row.numbers : '0' }}
@@ -178,7 +193,7 @@
 </template>
 
 <script>
-import { parseTime } from '@/utils'
+import { downloadWithUrl } from '@/utils'
 import { fetchRecordList } from '@/api/user/record/record'
 import { fetchShopRelevanceList, searchBehaviorList } from '@/api/user/supplier/supplier'
 import { export_json_to_excel } from '@/vendor/Export2Excel'
@@ -264,6 +279,8 @@ export default {
         corporateName: '', // 公司名称
         companyType: '', // 公司类型
         accessClient: '', // 访问客户端
+        relevanceShop: '', // 供应商名称
+        label: '', // 标签
         contacts: '', //  联系人
         phoneNumber: '', // 手机号
         spName: '', // 协销
@@ -310,9 +327,9 @@ export default {
       }
     },
     handleTagsOptions(arr) {
-      this.listQuery.tags = arr.join(',')
+      this.listQuery.label = arr.join(',')
       this.getList()
-      console.log('tags', this.listQuery.tags)
+      console.log('label', this.listQuery.label)
     },
     // 获取行为记录列表
     getList() {
@@ -369,34 +386,40 @@ export default {
 
     // 导出
     async handleExport() {
-      try {
-        await this.$confirm('确定将用户行为记录导出为xlsx?', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消',
-          type: 'warning'
-        })
-        // 导出数据格式化
-        const filterVal = ['index', 'keyword', 'frequency', 'searchTime', 'labelStatus']
-        const data = this.formatJson(filterVal, this.currentList.slice(0))
-        export_json_to_excel({
-          header: ['序号', '标签', '搜索次数', '最近搜索时间', '标签库状态'],
-          data,
-          filename: '关键词列表'
-        })
-      } catch (error) {
-        this.$message.info('已取消导出操作')
+      if (this.tabsCurrent === 0) {
+        // 导出今日数据
+        downloadWithUrl('sdadasda', '用户行为记录')
+      } else {
+        // 导出以往当前数据
+        try {
+          await this.$confirm('确定将用户行为记录导出为xlsx?', {
+            confirmButtonText: '确定',
+            cancelButtonText: '取消',
+            type: 'warning'
+          })
+          // 导出数据格式化
+          const filterVal = ['ip', 'region', 'accessClient', 'companyType', 'corporateName', 'contacts', 'phoneNumber', 'spName', 'relevanceShop', 'label', 'addTime', 'numbers', 'accessDuration', 'accessDate']
+          const data = this.formatJson(filterVal, this.list.slice(0))
+          export_json_to_excel({
+            header: ['IP', '地区', '访问客户端', '公司类型', '公司名称', '联系人', '手机号', '所属协销', '关联供应商', '标签', '注册时间', '访问页面数量', '总时长', '访问日期'],
+            data,
+            filename: '用户行为记录'
+          })
+        } catch (error) {
+          console.log(error)
+          this.$message.info('已取消导出操作')
+        }
       }
     },
-
     formatJson(filterVal, jsonData) {
       return jsonData.map((v, index) =>
         filterVal.map((key) => {
-          if (['searchTime'].includes(key)) {
-            return parseTime(v[key])
+          if (key === 'accessClient') {
+            const t = ['网站', '小程序']
+            return t[v[key]]
           }
-          if (key === 'index') return index + 1
-          if (key === 'labelStatus') {
-            const t = ['未添加', '已添加', '导入']
+          if (key === 'companyType') {
+            const t = ['游客', '机构', '供应商']
             return t[v[key]]
           }
           return v[key]