index.vue 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. <template>
  2. <div class="padding-20">
  3. <div class="search-box">
  4. <el-form
  5. ref="form"
  6. :inline="true"
  7. :model="searchForm"
  8. clearable
  9. class="mt-10">
  10. <el-form-item label="用户手机:">
  11. <el-input v-model="searchForm.user_phone" placeholder="请输入用户手机" clearable></el-input>
  12. </el-form-item>
  13. <el-form-item label="注册时间:">
  14. <el-date-picker
  15. :editable="false"
  16. v-model="time"
  17. @change="timearr => {timearr ? (searchForm.register_start_time = timearr[0] + ' 00:00:00', searchForm.register_end_time = timearr[1] + ' 23:59:59') : searchForm.register_start_time = searchForm.register_end_time = undefined}"
  18. type="daterange"
  19. value-format="yyyy-MM-dd"
  20. start-placeholder="开始时间"
  21. end-placeholder="结束时间"
  22. ></el-date-picker>
  23. </el-form-item>
  24. <el-form-item class="ml-10">
  25. <el-button icon="el-icon-search" type="primary" @click="searchSubmit">查询</el-button>
  26. </el-form-item>
  27. </el-form>
  28. </div>
  29. <el-table :data="tableData"
  30. stripe
  31. v-loading="tableLoading"
  32. fit class="marginT-10 order-table"
  33. border
  34. :max-height="vheight">
  35. <el-table-column label="ID" prop="id" width="80"></el-table-column>
  36. <el-table-column label="头像">
  37. <template slot-scope="scope">
  38. <el-image style="width: 100px; height: 100px"
  39. :src="scope.row.user_head_url"
  40. :preview-src-list="[scope.row.user_head_url]">
  41. </el-image>
  42. </template>
  43. </el-table-column>
  44. <el-table-column label="昵称" prop="user_name" width="160"></el-table-column>
  45. <el-table-column label="手机号" prop="user_phone" width="120"></el-table-column>
  46. <el-table-column label="生日" prop="user_birthday"></el-table-column>
  47. <el-table-column label="性别" prop="user_sex"></el-table-column>
  48. <el-table-column label="注册时间" prop="created_at" width="160"></el-table-column>
  49. <el-table-column label="最近一次登录时间" prop="user_login_at" width="160"></el-table-column>
  50. <el-table-column label="操作">
  51. <template slot-scope="scope">
  52. <el-button type="text" v-permission="'ums_customer_check'"
  53. @click="$router.push({name: 'FmsCheck', query: {user_id: scope.row.id }})">消费记录
  54. </el-button>
  55. </template>
  56. </el-table-column>
  57. </el-table>
  58. <el-pagination
  59. class="marginT-20"
  60. @size-change="handleSizeChange"
  61. @current-change="handleCurrentChange"
  62. :hide-on-single-page="true"
  63. :current-page="page"
  64. :page-size="page_size"
  65. :page-sizes="[10, 20, 100, 200, 300, 400]"
  66. background
  67. layout="total, sizes, prev, pager, next, jumper"
  68. :total="totalCount"/>
  69. </div>
  70. </template>
  71. <script>
  72. import page from '@/mixin/page'
  73. export default {
  74. mixins: [page],
  75. data () {
  76. return {
  77. time: [],
  78. searchForm: {
  79. user_type: '0' // 用户类型(0用户1艺人2吧台3老板)
  80. },
  81. tableData: [],
  82. tableUrl: '/v1/user/member/List'
  83. }
  84. },
  85. mounted () {
  86. this.init()
  87. }
  88. }
  89. </script>
  90. <style lang="scss" scoped>
  91. </style>