member-worker-order.vue 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <template>
  2. <div class="order-list">
  3. <div class="table">
  4. <el-table
  5. ref="orderTable"
  6. v-loading="listLoading"
  7. :data="dataList"
  8. element-loading-text="Loading"
  9. >
  10. <el-table-column align="center" label="工单编号" prop="id" min-width="180"></el-table-column>
  11. <el-table-column align="center" label="工单类型" prop="orderSmallTypeText" min-width="200" show-overflow-tooltip></el-table-column>
  12. <el-table-column align="center" label="工单状态" prop="orderStatusText"></el-table-column>
  13. <el-table-column align="center" label="预约上门时间" prop="appointmentTime" min-width="160"></el-table-column>
  14. <el-table-column align="center" label="创建时间" prop="createTime" min-width="160"></el-table-column>
  15. <el-table-column align="center" label="操作" fixed="right">
  16. <template slot-scope="{row}">
  17. <el-button type="primary" @click="goOrderDetail(row)" size="mini">详情</el-button>
  18. </template>
  19. </el-table-column>
  20. </el-table>
  21. </div>
  22. <div class="pagination clearfix">
  23. <div class="fr">
  24. <el-pagination
  25. @size-change="handleSizeChange"
  26. @current-change="handleCurrentChange"
  27. :current-page="currentPage"
  28. :page-sizes="[10, 20, 30, 50]"
  29. :page-size="10"
  30. layout="total, sizes, prev, pager, next, jumper"
  31. :total="listTotal">
  32. </el-pagination>
  33. </div>
  34. </div>
  35. </div>
  36. </template>
  37. <script>
  38. import request from '@/utils/request'
  39. export default {
  40. name: 'MemberOrder',
  41. componentName: 'MemberOrder',
  42. props: ['user'],
  43. data() {
  44. return {
  45. dataList: [], // 数据列表
  46. listLoading: true, // 列表加载loading
  47. currentPage: 1, // 当前页码
  48. pageSize: 10, // 每页数量
  49. listTotal: 0 // 列表总数
  50. }
  51. },
  52. created() {
  53. let timer = setInterval(() => {
  54. if(this.user.userId) {
  55. this.getOrderList()
  56. clearInterval(timer)
  57. }
  58. }, 100)
  59. },
  60. methods: {
  61. getOrderList() {
  62. console.log(this.user);
  63. let params = {
  64. userId: this.user.userId,
  65. pageNum: this.currentPage,
  66. pageSize: this.pageSize
  67. }
  68. request({
  69. url: `/order/base/list/gene`,
  70. method: 'post',
  71. params
  72. }).then(res=>{
  73. this.dataList = res.data.records
  74. this.listTotal = res.data.total
  75. this.listLoading = false
  76. })
  77. },
  78. // 更改每页数量
  79. handleSizeChange(val) {
  80. this.pageSize = val
  81. this.currentPage = 1
  82. this.getOrderList()
  83. },
  84. // 更改当前页
  85. handleCurrentChange(val) {
  86. this.currentPage = val
  87. this.getOrderList()
  88. },
  89. goOrderDetail(row) {
  90. this.$router.push({
  91. name: 'workOrderPool',
  92. params: {
  93. pageName: row.id,
  94. pageType: 'detail',
  95. pageCode: row.id,
  96. },
  97. })
  98. }
  99. }
  100. }
  101. </script>
  102. <style scoped>
  103. </style>