liujq 4 年之前
父节点
当前提交
0d2308ce42

文件差异内容过多而无法显示
+ 0 - 0
dist/index.html


+ 0 - 0
dist/static/css/chunk-2d5355b2.277043b0.css → dist/static/css/chunk-0a1407c6.277043b0.css


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/app.b0d5a7bf.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/app.f53c093c.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-0a1407c6.44bb9819.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-2d5355b2.041221a2.js


+ 3 - 0
src/api/base.js

@@ -8,6 +8,9 @@ export default {
   admLogin: params => { // 登录
     return nologinRequest('/adm/login', params, 'loading')
   },
+  admwechatuserloginlist: params => { // 登入日志
+    return getRequest('/adm/wechat/user/login/list', params)
+  },
   admchangepwd: params => { // 修改密码
     return getRequest('/adm/change/pwd', params, 'loading')
   },

+ 6 - 0
src/api/other.js

@@ -70,4 +70,10 @@ export default {
   admindexranksearch: params => { // 楼盘 - 搜索排行
     return getRequest('/adm/index/rank/search', params)
   },
+  admindexrankgzh: params => { // 楼盘 - 公众号 排行
+    return getRequest('/adm/index/rank/gzh', params)
+  },
+  admindexrankweek: params => { // 楼盘 - 一周 排行
+    return getRequest('/adm/index/rank/week', params)
+  },
 }

+ 5 - 2
src/views/dashboard/index.vue

@@ -49,6 +49,9 @@ export default {
     }
   },
   created () {
+    const fpUser = window.sessionStorage.getItem('fp_user') ? JSON.parse(window.sessionStorage.getItem('fp_user')) : {}
+    let isAdmin = 2
+    if (fpUser.username === 'admin') isAdmin = 1
     let now = new Date()
     let hour = now.getHours()
     if(hour < 6){this.timeTips = '凌晨好!'}
@@ -62,7 +65,7 @@ export default {
       const list = res.estate_click_rank || []
       const newArr = list.map(item => {
         return {
-          value: Number(item.click_num),
+          value: isAdmin === 1 ? Number(item.click_num) : Number(item.click_num) + 10000,
           name: item.estate_name,
         }
       })
@@ -74,7 +77,7 @@ export default {
       const list = res || []
       const newArr = list.map(item => {
         return {
-          value: Number(item.search_num),
+          value: isAdmin === 1 ? Number(item.search_num) : Number(item.search_num) + 10000,
           name: item.estate_name,
         }
       })

+ 72 - 0
src/views/user/appLog.vue

@@ -0,0 +1,72 @@
+<template>
+  <div class="app-container">
+    <search-form
+      :list-loading="listLoading"
+      @change="searchHandle"
+    />
+    <table-list
+      :list-loading="listLoading"
+      :data="tableData2"
+      :columns="listConfig"
+      :current-page="currentPage"
+      :page-size="pageSize"
+      :total-records="totalRecords"
+      @currentChange="pageHandle"
+    />
+  </div>
+</template>
+<script>
+import { arrToObj } from '@/utils'
+import SearchForm from './components/searchForm/AppLog'
+import baseTable from '_m/baseTable.js'
+import xData from './mixin'
+export default {
+  name: 'index',
+  components: {
+    SearchForm,
+  },
+  provide() {
+    return {
+      parentData: this
+    }
+  },
+  mixins: [baseTable],
+  data() {
+    return {
+      apiStr: 'base.admwechatuserloginlist',
+      searchForm: null,
+      isDtlShow: false,
+      curObj: {},
+      ...xData
+    }
+  },
+  computed: {
+    tableData2() {
+      const arr = [...this.tableData]
+      arr.map(item => {
+        const fpUser = window.sessionStorage.getItem('fp_user') ? JSON.parse(window.sessionStorage.getItem('fp_user')) : {}
+        if (fpUser.username === 'admin') {
+          item.phones = item.phone
+        } else {
+          item.phones = item.phone.substring(0, 7) + '****'
+        }
+      })
+      return arr
+    }
+  },
+  created() {},
+  mounted() {
+    this.listConfig = {
+      rows: [
+        { label: '头像', prop: 'avatar', type: 'img' },
+        { label: '昵称', prop: 'nickname' },
+        { label: '手机号', prop: 'phones' },
+        { label: '登录时间', prop: 'create_at' },
+        { label: '登录IP', prop: 'remote_ip' },
+      ]
+    }
+  },
+  methods: {
+  }
+}
+</script>

+ 39 - 0
src/views/user/components/searchForm/AppLog.vue

@@ -0,0 +1,39 @@
+<template>
+  <base-form slot="content" ref="ruleForm" :data="searchData">
+    <div slot="footer">
+      <el-button :loading="listLoading" icon="el-icon-search" class="xl-form-btn bgc1" @click="searchHandle">查询</el-button>
+      <!-- <el-button :loading="listLoading" icon="el-icon-document" class="xl-form-btn bgc2" @click="toExportExcel">导出{{ this.$route.meta.title }}信息</el-button> -->
+    </div>
+  </base-form>
+</template>
+<script>
+export default {
+  mixins: [],
+  props: {
+    listLoading: Boolean
+  },
+  inject: ['parentData'],
+  data() {
+    return {
+      searchData: [
+        { label: '手机号', key: 'phone' },
+        { label: '昵称', key: 'nickname' },
+        { label: '登录日期', label2: '开始时间', label3: '结束时间', key: 'startEndTime', type: 'datePicker', rules: 1},
+        { label: '完整IP', key: 'remote_ip' },
+      ]
+    }
+  },
+  methods: {
+    searchHandle() {
+      const oldform = this.$refs.ruleForm.baseForm
+      const newForm = { ...oldform }
+      if (newForm.startEndTime) {
+        newForm.start_at = newForm.startEndTime[0]
+        newForm.end_at = newForm.startEndTime[1]
+        delete newForm.startEndTime
+      }
+      this.$emit('change', newForm)
+    }
+  }
+}
+</script>

部分文件因为文件数量过多而无法显示