orders.vue 3.6 KB
Newer Older
喷火的神灵's avatar
喷火的神灵 已提交
1 2 3 4
<!--支付界面-->
<template>
  <div>
    <div class="idxs">
喷火的神灵's avatar
喷火的神灵 已提交
5 6 7
      <el-table v-for="v in tableData"
                :data="tableData.filter(data => !search || data.tradeName.toLowerCase().includes(search.toLowerCase()))"
                style="width: 100%">
喷火的神灵's avatar
喷火的神灵 已提交
8 9
        <el-table-column
            label="商品名称"
喷火的神灵's avatar
喷火的神灵 已提交
10
            :prop="v.tradeName">
喷火的神灵's avatar
喷火的神灵 已提交
11 12 13
        </el-table-column>
        <el-table-column
            label="订单号"
喷火的神灵's avatar
喷火的神灵 已提交
14
            :prop="v.OrderNumber">
喷火的神灵's avatar
喷火的神灵 已提交
15 16 17
        </el-table-column>
        <el-table-column
            label="支付方式"
喷火的神灵's avatar
喷火的神灵 已提交
18
            :prop="v.payment">
喷火的神灵's avatar
喷火的神灵 已提交
19 20 21
        </el-table-column>
        <el-table-column
            label="金额"
喷火的神灵's avatar
喷火的神灵 已提交
22 23 24 25 26 27 28 29 30
            :prop="v.price">
        </el-table-column>
        <el-table-column
            label="购买时间"
            :prop="v.payTime">
        </el-table-column>
        <el-table-column
            label="到期时间"
            :prop="v.maturity">
喷火的神灵's avatar
喷火的神灵 已提交
31 32 33 34 35 36 37 38 39 40
        </el-table-column>
        <el-table-column
            align="right">
          <template slot="header" slot-scope="scope">
            <el-input
                v-model="search"
                size="mini"
                placeholder="输入关键字搜索"/>
          </template>
          <template slot-scope="scope">
喷火的神灵's avatar
喷火的神灵 已提交
41 42
            <el-button type="danger" icon="el-icon-delete" circle size="mini"
                       @click="openDeleteConfirm(scope.row)"></el-button>
喷火的神灵's avatar
喷火的神灵 已提交
43 44 45 46 47 48 49 50 51 52
          </template>
        </el-table-column>
      </el-table>
    </div>
  </div>
</template>

<script>
import Handder from "@/components/Handder";
import Sidebar from "@/components/sidebar";
喷火的神灵's avatar
喷火的神灵 已提交
53 54 55 56
import {
  handleDeleteOrders,
  loadOrdersList
} from "@/utils/option";
喷火的神灵's avatar
喷火的神灵 已提交
57 58 59 60 61 62 63

export default {
  name: "orders",
  components: {Handder, Sidebar},
  data() {
    return {
      tableData: [{
喷火的神灵's avatar
喷火的神灵 已提交
64 65 66 67 68 69 70
        tradeName: '',
        OrderNumber: '',
        payment: '',
        price: '',
        payTime: '',
        maturity: ''
      }],
喷火的神灵's avatar
喷火的神灵 已提交
71 72 73 74
      search: ''
    }
  },
  methods: {
喷火的神灵's avatar
喷火的神灵 已提交
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
    //加载订单列表
    loadOrdersListMethod() {
      loadOrdersList().then(res => {
        if (res.success) {
          this.tableData = res.data.list;
        }
      })
    },

// 弹出删除确认框
    openDeleteConfirm(tableItem) {
      let message = '此操作将永久删除【' + tableItem.name + '】标签,是否继续?';
      this.$confirm(message, '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      }).then(() => {
        this.handleDeleteDetails(tableItem);
      }).catch(() => {
      });
    },
    // 执行删除
    handleDeleteDetails(tableItem) {
      handleDeleteOrders(tableItem.id).then(res => {
        if (res.success) {
          this.$message({
            message: '删除标签成功!',
            type: 'success'
          });
          this.loadOrdersListMethod();
        } else {
          let title = '操作失败';
          this.$alert(res.message, title, {
            confirmButtonText: '确定',
            callback: action => {
            }
          });
        }
      })
喷火的神灵's avatar
喷火的神灵 已提交
114 115 116
    }
  },
  created() {
喷火的神灵's avatar
喷火的神灵 已提交
117 118
    //加载订单列表
    this.loadOrdersListMethod()
喷火的神灵's avatar
喷火的神灵 已提交
119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152
  }
}
</script>

<style scoped>
@media screen and (min-width: 1970px) {
  .idxs {
    margin: 60px auto;
    width: calc(100% - 290px);
    max-width: 1570px;
    min-width: 1200px;
  }
}

@media screen and (max-width: 1969px) {
  .idxs {
    /*width: 1270px;*/
    /*min-width: 1000px;*/
    /*margin-top: 60px;*/
    /*margin-left: 270px;*/
    /*padding: 40px;*/
    width: calc(100% - 290px);
    max-width: 1570px;
    min-width: 1200px;
    margin: 60px auto;
  }

  .idxs {
    margin-left: 50px;
  }
}


</style>