<template>
  <div class="order-list">
    <div class="table">
      <el-table
        ref="orderTable"
        v-loading="listLoading"
        :data="dataList"
        element-loading-text="Loading"
      >
        <el-table-column align="center" label="订单编号" prop="orderId" min-width="180"></el-table-column>
        <el-table-column align="center" label="商品信息" prop="orderTitle" min-width="200" show-overflow-tooltip></el-table-column>
        <el-table-column align="center" label="订单金额" prop="payAmount"></el-table-column>
        <el-table-column align="center" label="订单状态" prop="orderStatus">
          <template slot-scope="{ row }">
            {{ row.orderStatus | ORDER_CURRENT_STATUS_FILTER }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="下单时间" prop="createTime" min-width="160"></el-table-column>
        <el-table-column align="center" label="操作" fixed="right">
          <template slot-scope="{row}">
            <el-button type="primary" @click="goOrderDetail(row)" size="mini">详情</el-button>
          </template>
        </el-table-column>
      </el-table>
    </div>
    <div class="pagination clearfix">
      <div class="fr">
        <el-pagination
          @size-change="handleSizeChange"
          @current-change="handleCurrentChange"
          :current-page="currentPage"
          :page-sizes="[10, 20, 30, 50]"
          :page-size="10"
          layout="total, sizes, prev, pager, next, jumper"
          :total="listTotal">
        </el-pagination>
      </div>
    </div>
  </div>
</template>

<script>
import {getList} from "@/api/order";

export default {
  name: 'MemberOrder',
  componentName: 'MemberOrder',
  props: ['user'],
  data() {
    return {
      dataList: [], // 数据列表
      listLoading: true, // 列表加载loading
      currentPage: 1, // 当前页码
      pageSize: 10, // 每页数量
      listTotal: 0 // 列表总数
    }
  },
  created() {
    let timer = setInterval(() => {
      if(this.user.userId) {
        this.getOrderList()
        clearInterval(timer)
      }
    }, 100)
  },
  methods: {
    getOrderList() {
      console.log(this.user);
      let params = {
        userId: this.user.userId,
        pageNum: this.currentPage,
        pageSize: this.pageSize
      }

      getList(params).then(res => {
        this.dataList = res.data.records
        this.listTotal = res.data.total
        this.listLoading = false
      })
    },
    // 更改每页数量
    handleSizeChange(val) {
      this.pageSize = val
      this.currentPage = 1
      this.getList()
    },
    // 更改当前页
    handleCurrentChange(val) {
      this.currentPage = val
      this.getList()
    },
    goOrderDetail(row) {
		this.$router.push({
		  name: "order_detail",
		  query: {
		    orderId:row.orderId
		  }
		})
    }
  }
}
</script>

<style scoped>

</style>
