|
@@ -0,0 +1,676 @@
|
|
|
+<template>
|
|
|
+ <div class="ding-dan">
|
|
|
+ <h1>订单管理</h1>
|
|
|
+ <table-lists
|
|
|
+ ref="tableLists"
|
|
|
+ v-model="list"
|
|
|
+ :filter="filter"
|
|
|
+ :sear="sear"
|
|
|
+ :filterSear="2"
|
|
|
+ requestApi="/order/orderList"
|
|
|
+ @loading="load"
|
|
|
+ @emptyFilter="emptyFilter"
|
|
|
+ style="background:#fff;padding:10px"
|
|
|
+ >
|
|
|
+ <template slot="filterContent">
|
|
|
+ <FormItem label="产品类型:" :label-width="70">
|
|
|
+ <Select size="large" placeholder="全部" clearable v-model="filter.productType" style="width:100px">
|
|
|
+ <Option v-for="item in proType" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ </FormItem>
|
|
|
+ <FormItem label="订单类型:" :label-width="70">
|
|
|
+ <Select size="large" placeholder="全部" clearable v-model="filter.orderType" style="width:100px">
|
|
|
+ <Option v-for="item in orderTips" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ </FormItem>
|
|
|
+ <FormItem label="订单状态:" :label-width="70">
|
|
|
+ <Select size="large" placeholder="全部" clearable v-model="filter.orderStatus" style="width:100px">
|
|
|
+ <Option v-for="item in orderSta" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ </FormItem>
|
|
|
+ <FormItem label="发票状态:" :label-width="70">
|
|
|
+ <Select size="large" placeholder="全部" clearable v-model="filter.invoiceStatus" style="width:100px">
|
|
|
+ <Option v-for="item in invoiceSta" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ </FormItem>
|
|
|
+ <FormItem label="实付金额:" :label-width="70">
|
|
|
+ <Input
|
|
|
+ type="text"
|
|
|
+ size="large"
|
|
|
+ v-model="filter.payMoneyMin"
|
|
|
+ placeholder="最小金额"
|
|
|
+ clearable
|
|
|
+ style="width:73px;height:36px"
|
|
|
+ ></Input>
|
|
|
+ <Input
|
|
|
+ type="text"
|
|
|
+ size="large"
|
|
|
+ v-model="filter.payMoneyMax"
|
|
|
+ placeholder="最大金额"
|
|
|
+ clearable
|
|
|
+ style="width:73px;height:36px;margin-left: 2px;"
|
|
|
+ />
|
|
|
+ </FormItem>
|
|
|
+ <FormItem label="订单日期:" :label-width="70">
|
|
|
+ <DatePicker
|
|
|
+ type="datetime"
|
|
|
+ size="large"
|
|
|
+ v-model="dataVal1"
|
|
|
+ placeholder="起始时间"
|
|
|
+ style="width: 172px"
|
|
|
+ :options="options1"
|
|
|
+ @on-change="handleChange1"
|
|
|
+ @on-ok="confirmed1"
|
|
|
+ @on-open-change="opened1"
|
|
|
+ ></DatePicker>
|
|
|
+ <DatePicker
|
|
|
+ type="datetime"
|
|
|
+ size="large"
|
|
|
+ v-model="dataVal2"
|
|
|
+ placeholder="截止时间"
|
|
|
+ style="width: 172px;margin-left:2px;margin-right:10px"
|
|
|
+ :options="options2"
|
|
|
+ @on-change="handleChange2"
|
|
|
+ @on-ok="confirmed2"
|
|
|
+ @on-open-change="opened2"
|
|
|
+ ></DatePicker>
|
|
|
+ </FormItem>
|
|
|
+ </template>
|
|
|
+ <template slot="filterContent" v-if="flag">
|
|
|
+ <Select size="large" placeholder="产品类型" clearable v-model="filter.productType" style="width:100px;margin:0 10px 10px 0">
|
|
|
+ <Option v-for="item in proType" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ <Select size="large" placeholder="订单类型" clearable v-model="filter.orderType" style="width:100px;margin:0 10px 10px 0">
|
|
|
+ <Option v-for="item in orderTips" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ <Select size="large" placeholder="订单状态" clearable v-model="filter.orderStatus" style="width:100px;margin:0 10px 10px 0">
|
|
|
+ <Option v-for="item in orderSta" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ <Select size="large" placeholder="发票状态" clearable v-model="filter.invoiceStatus" style="width:100px;margin:0 10px 10px 0">
|
|
|
+ <Option v-for="item in invoiceSta" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ <Select size="large" placeholder="付款方式" clearable v-model="filter.payWay" style="width:100px;margin:0 10px 10px 0">
|
|
|
+ <Option v-for="item in payStatus" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ <Input
|
|
|
+ type="text"
|
|
|
+ size="large"
|
|
|
+ v-model="filter.payMoneyMin"
|
|
|
+ placeholder="最小金额"
|
|
|
+ clearable
|
|
|
+ prefix="logo-yen"
|
|
|
+ style="width:90px;height:36px:margin-bottom:10px"
|
|
|
+ ></Input>
|
|
|
+ <Input
|
|
|
+ type="text"
|
|
|
+ size="large"
|
|
|
+ v-model="filter.payMoneyMax"
|
|
|
+ placeholder="最大金额"
|
|
|
+ clearable
|
|
|
+ prefix="logo-yen"
|
|
|
+ style="width:90px;height:36px;margin: 0 10px 10px 2px;"
|
|
|
+ />
|
|
|
+ <DatePicker
|
|
|
+ type="datetime"
|
|
|
+ size="large"
|
|
|
+ v-model="dataVal1"
|
|
|
+ placeholder="起始时间"
|
|
|
+ style="width: 172px"
|
|
|
+ :options="options1"
|
|
|
+ @on-change="handleChange1"
|
|
|
+ @on-ok="confirmed1"
|
|
|
+ @on-open-change="opened1"
|
|
|
+ ></DatePicker>
|
|
|
+ <DatePicker
|
|
|
+ type="datetime"
|
|
|
+ size="large"
|
|
|
+ v-model="dataVal2"
|
|
|
+ placeholder="截止时间"
|
|
|
+ style="width: 172px;margin-left:2px;margin-right:10px"
|
|
|
+ :options="options2"
|
|
|
+ @on-change="handleChange2"
|
|
|
+ @on-ok="confirmed2"
|
|
|
+ @on-open-change="opened2"
|
|
|
+ ></DatePicker><br/>
|
|
|
+ <Select
|
|
|
+ size="large"
|
|
|
+ placeholder="付费类型"
|
|
|
+ clearable
|
|
|
+ v-model="filter.payType"
|
|
|
+ style="width:100px;margin:0 10px 10px 0"
|
|
|
+ v-show="select1"
|
|
|
+ >
|
|
|
+ <Option v-for="item in payCont" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ <Select
|
|
|
+ size="large"
|
|
|
+ placeholder="数据规格"
|
|
|
+ clearable
|
|
|
+ v-model="filter.dataType"
|
|
|
+ style="width:100px;margin:0 10px 10px 0"
|
|
|
+ v-show="select2"
|
|
|
+ >
|
|
|
+ <Option v-for="item in dataCont" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select>
|
|
|
+ <Select
|
|
|
+ size="large"
|
|
|
+ placeholder="发票开具方"
|
|
|
+ clearable
|
|
|
+ v-model="filter.invoiceType"
|
|
|
+ style="width:110px;margin:0 10px 10px 0"
|
|
|
+ v-show="select3"
|
|
|
+ >
|
|
|
+ <Option v-for="item in invoicePerson" :value="item.v" :key="item.v">{{ item.n }}</Option>
|
|
|
+ </Select><br v-show="select1 || select2 || select3"/>
|
|
|
+ </template>
|
|
|
+ <template slot="exportData" v-if="flag">
|
|
|
+ <Button type="primary" size="large" @click="orderExport" style="margin: 0 0 10px 10px">导出结果</Button>
|
|
|
+ </template>
|
|
|
+ <Table
|
|
|
+ size="large"
|
|
|
+ ellipsis
|
|
|
+ :loading="loading"
|
|
|
+ ref="selection"
|
|
|
+ :columns="columns"
|
|
|
+ :data="list.lists"
|
|
|
+ stripe
|
|
|
+ >
|
|
|
+ <template slot-scope="{ row }" slot="type">
|
|
|
+ <field-map :value="row.type" :map="type"></field-map>
|
|
|
+ </template>
|
|
|
+ <template slot-scope="{ row }" slot="_action">
|
|
|
+ <Tooltip :content="row.call" :max-width="500">
|
|
|
+ {{row.action}}
|
|
|
+ </Tooltip>
|
|
|
+ </template>
|
|
|
+ <template slot-scope="{ row }" slot="op">
|
|
|
+ <Button
|
|
|
+ class="find-btn"
|
|
|
+ size="small"
|
|
|
+ type="primary"
|
|
|
+ style="margin-right:5px"
|
|
|
+ >
|
|
|
+ <router-link :to="{path:'/order/orderList/orderDetail',query:{id:row.id,proType:row.product_type}}" target="_blank" style="color:#fff">查看</router-link>
|
|
|
+ </Button>
|
|
|
+ <Button
|
|
|
+ class="find-btn"
|
|
|
+ size="small"
|
|
|
+ type="error"
|
|
|
+ @click="refund(row.order_code)"
|
|
|
+ :disabled="row.order_status != 1"
|
|
|
+ >退款</Button>
|
|
|
+ </template>
|
|
|
+ </Table>
|
|
|
+ <template slot="options">
|
|
|
+ <div style="color:#d7d7d7;font-size:14px">共计{{list.total}}个订单,实付金额¥{{list.money>=0?list.money:0}}</div>
|
|
|
+ </template>
|
|
|
+ </table-lists>
|
|
|
+ <Modal title="退款原因" v-model="models.tShow">
|
|
|
+ <Input type="textarea" size="large" :rows="3" placeholder="请填写退款原因" v-model="models.cause"></Input>
|
|
|
+ <div slot="footer">
|
|
|
+ <Button type="primary" size="large" @click="subSave">提交</Button>
|
|
|
+ </div>
|
|
|
+ </Modal>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+<script>
|
|
|
+import { ChangeDate,ChangeDate2 } from '../../assets/js/date.js'
|
|
|
+export default {
|
|
|
+ watch: {
|
|
|
+ 'filter.productType': {
|
|
|
+ handler(newVal) {
|
|
|
+ if (newVal == '0') {
|
|
|
+ this.select1 = true
|
|
|
+ this.select2 = false
|
|
|
+ this.select3 = false
|
|
|
+ this.filter.dataType = ''
|
|
|
+ this.filter.invoiceType = ''
|
|
|
+ } else if (newVal == '2') {
|
|
|
+ this.select2 = true
|
|
|
+ this.select1 = false
|
|
|
+ this.select3 = false
|
|
|
+ this.filter.payType = ''
|
|
|
+ this.filter.invoiceType = ''
|
|
|
+ } else if (newVal == '4') {
|
|
|
+ this.select3 = true
|
|
|
+ this.select1 = false
|
|
|
+ this.select2 = false
|
|
|
+ this.filter.dataType = ''
|
|
|
+ this.filter.payType = ''
|
|
|
+ } else {
|
|
|
+ this.select1 = false
|
|
|
+ this.select2 = false
|
|
|
+ this.select3 = false
|
|
|
+ this.filter.payType = ''
|
|
|
+ this.filter.dataType = ''
|
|
|
+ this.filter.invoiceType = ''
|
|
|
+ }
|
|
|
+ },
|
|
|
+ deep: true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ screened () {
|
|
|
+ this.flag = !this.flag
|
|
|
+ if (this.flag) {
|
|
|
+ this.filterType = 1
|
|
|
+ this.filterReset = 1
|
|
|
+ } else {
|
|
|
+ this.filterType = 0
|
|
|
+ this.filterReset = 0
|
|
|
+ }
|
|
|
+ },
|
|
|
+ load (val) {
|
|
|
+ this.loading = val
|
|
|
+ },
|
|
|
+ emptyFilter (val) {
|
|
|
+ if (val) {
|
|
|
+ this.filter.keyword = ''
|
|
|
+ this.filter.productType = ''
|
|
|
+ this.filter.orderType = ''
|
|
|
+ this.filter.orderStatus = ''
|
|
|
+ this.filter.invoiceStatus = ''
|
|
|
+ this.filter.payMoneyMin = ''
|
|
|
+ this.filter.payMoneyMax = ''
|
|
|
+ this.filter.orderTimeStart = ''
|
|
|
+ this.filter.orderTimeEnd = ''
|
|
|
+ this.filter.payWay = ''
|
|
|
+ this.filter.payType = ''
|
|
|
+ this.filter.dataType = ''
|
|
|
+ this.filter.invoiceType = ''
|
|
|
+ this.dataVal1 = ''
|
|
|
+ this.dataVal2 = ''
|
|
|
+ }
|
|
|
+ },
|
|
|
+ handleChange1 (date) {
|
|
|
+ this.filter.orderTimeStart = date
|
|
|
+ },
|
|
|
+ handleChange2 (date) {
|
|
|
+ this.filter.orderTimeEnd = date
|
|
|
+ },
|
|
|
+ confirmed1 () {
|
|
|
+ if (this.filter.orderTimeStart && this.filter.orderTimeEnd) {
|
|
|
+ if (this.filter.orderTimeStart > this.filter.orderTimeEnd) {
|
|
|
+ this.dataVal1 = ''
|
|
|
+ this.filter.orderTimeStart = ''
|
|
|
+ this.$Notice.warning({
|
|
|
+ title: '警告提示',
|
|
|
+ desc: "起始时间应小于截止时间",
|
|
|
+ duration: 5
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ confirmed2 () {
|
|
|
+ if (this.filter.orderTimeStart && this.filter.orderTimeEnd) {
|
|
|
+ if (this.filter.orderTimeStart > this.filter.orderTimeEnd) {
|
|
|
+ this.dataVal2 = ''
|
|
|
+ this.filter.orderTimeEnd = ''
|
|
|
+ this.$Notice.warning({
|
|
|
+ title: '警告提示',
|
|
|
+ desc: "截止时间应大于起始时间",
|
|
|
+ duration: 5
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ opened1 (val) {
|
|
|
+ if (val) {
|
|
|
+ return
|
|
|
+ } else {
|
|
|
+ this.confirmed1()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ opened2 (val) {
|
|
|
+ if (val) {
|
|
|
+ return
|
|
|
+ } else {
|
|
|
+ this.confirmed2()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ refund (code) {
|
|
|
+ this.models.tShow = true
|
|
|
+ this.models.reCode = code
|
|
|
+ },
|
|
|
+ orderExport() {
|
|
|
+ if (this.list.lists.length == 0) {
|
|
|
+ this.$Notice.warning({
|
|
|
+ title: '警告提示',
|
|
|
+ desc: "暂无相应数据",
|
|
|
+ duration: 5
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ let obj = {
|
|
|
+ productType: this.filter.productType,
|
|
|
+ orderStatus: this.filter.orderStatus,
|
|
|
+ invoiceStatus: this.filter.invoiceStatus,
|
|
|
+ payWay: this.filter.payWay,
|
|
|
+ orderTimeStart: this.filter.orderTimeStart,
|
|
|
+ orderTimeEnd: this.filter.orderTimeEnd,
|
|
|
+ payMoneyMin: this.filter.payMoneyMin,
|
|
|
+ payMoneyMax: this.filter.payMoneyMax,
|
|
|
+ orderType: this.filter.orderType,
|
|
|
+ payType: this.filter.payType,
|
|
|
+ dataType: this.filter.dataType,
|
|
|
+ invoiceType: this.filter.invoiceType
|
|
|
+ }
|
|
|
+ this.$Modal.confirm({
|
|
|
+ title: "确定导出结果吗?",
|
|
|
+ onOk: () => {
|
|
|
+ this.$request('/order/orderList/exportOrder').data(obj).success((res) => {
|
|
|
+ if (res.data.path) {
|
|
|
+ window.location.href = res.data.path
|
|
|
+ this.reload()
|
|
|
+ } else {
|
|
|
+ this.$Notice.warning({
|
|
|
+ title: '警告提示',
|
|
|
+ desc: "暂无相应数据",
|
|
|
+ duration: 5
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }).get()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ subSave () {
|
|
|
+ var curTime = new Date().getTime()
|
|
|
+ this.$request('/order/orderList/confirmRefund').data({
|
|
|
+ orderCode: this.models.reCode,
|
|
|
+ applyReason: this.models.cause,
|
|
|
+ applyTime: ChangeDate2(curTime)
|
|
|
+ }).showSuccessTip().success(() => {
|
|
|
+ this.models.tShow = false
|
|
|
+ this.reload()
|
|
|
+ }).get()
|
|
|
+ },
|
|
|
+ reload () {
|
|
|
+ this.$refs.tableLists.reload(true)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ data () {
|
|
|
+ return {
|
|
|
+ lis: '',
|
|
|
+ loading: false,
|
|
|
+ models: {
|
|
|
+ tShow: false,
|
|
|
+ cause: '',
|
|
|
+ reCode: ''
|
|
|
+ },
|
|
|
+ proType: [
|
|
|
+ {v: '', n: '全部'},
|
|
|
+ {v: '0', n: '超级订阅'},
|
|
|
+ {v: '1', n: '数据报告'},
|
|
|
+ {v: '2', n: '历史数据'},
|
|
|
+ {v: '3', n: '招投标课程'},
|
|
|
+ {v: '4', n: '线上课程'},
|
|
|
+ {v: '5', n: '企业商机管理'}
|
|
|
+ ],
|
|
|
+ orderTips: [
|
|
|
+ {v: '', n: '全部'},
|
|
|
+ {v: '0', n: '分销'},
|
|
|
+ {v: '1', n: '直销'}
|
|
|
+ ],
|
|
|
+ orderSta: [
|
|
|
+ {v: '', n: '全部'},
|
|
|
+ {v: '-3', n: '已退款'},
|
|
|
+ {v: '-2', n: '已取消'},
|
|
|
+ {v: '-1', n: '逻辑删除'},
|
|
|
+ {v: '0', n: '未支付'},
|
|
|
+ {v: '1', n: '已支付'}
|
|
|
+ ],
|
|
|
+ invoiceSta: [
|
|
|
+ {v: '', n: '全部'},
|
|
|
+ {v: '-2', n: '已冲红'},
|
|
|
+ {v: '0', n: '未申请'},
|
|
|
+ {v: '1', n: '已申请'}
|
|
|
+ ],
|
|
|
+ payStatus: [
|
|
|
+ {v: '', n: '全部'},
|
|
|
+ {v: '0', n: '支付宝'},
|
|
|
+ {v: '1', n: '微信'},
|
|
|
+ {v: '2', n: '线下支付'},
|
|
|
+ {v: '3', n: '对公转账'},
|
|
|
+ {v: '4', n: '其它'}
|
|
|
+ ],
|
|
|
+ payCont: [
|
|
|
+ {v: '', n: '全部'},
|
|
|
+ {v: '0', n: '试用'},
|
|
|
+ {v: '1', n: '续费'},
|
|
|
+ {v: '2', n: '升级'},
|
|
|
+ {v: '3', n: '购买'}
|
|
|
+ ],
|
|
|
+ dataCont: [
|
|
|
+ {v: '', n: '全部'},
|
|
|
+ {v: '标准字段包', n: '标准字段包'},
|
|
|
+ {v: '高级字段包', n: '高级字段包'}
|
|
|
+ ],
|
|
|
+ invoicePerson: [
|
|
|
+ {v: '', n: '全部'},
|
|
|
+ {v: '0', n: '汇学网'},
|
|
|
+ {v: '1', n: '王凯精品课'}
|
|
|
+ ],
|
|
|
+ filter: {
|
|
|
+ // keyword: '',
|
|
|
+ productType: '',
|
|
|
+ orderType: '',
|
|
|
+ orderStatus: '',
|
|
|
+ invoiceStatus: '',
|
|
|
+ orderTimeStart: '',
|
|
|
+ orderTimeEnd: '',
|
|
|
+ payMoneyMin: '',
|
|
|
+ payMoneyMax: '',
|
|
|
+ payWay: '',
|
|
|
+ payType: '',
|
|
|
+ dataType: '',
|
|
|
+ invoiceType: ''
|
|
|
+ },
|
|
|
+ sear: {
|
|
|
+ keyword: ''
|
|
|
+ },
|
|
|
+ dataVal1: '',
|
|
|
+ dataVal2: '',
|
|
|
+ options1: {
|
|
|
+ disabledDate: (function(date) {
|
|
|
+ var timeEnd = ChangeDate(this.filter.orderTimeEnd)
|
|
|
+ var p_time = new Date(timeEnd).getTime()
|
|
|
+ return date && date.valueOf() > p_time;
|
|
|
+ }).bind(this)
|
|
|
+ },
|
|
|
+ options2: {
|
|
|
+ disabledDate: (function(date) {
|
|
|
+ var timeStart = ChangeDate(this.filter.orderTimeStart)
|
|
|
+ var p_time = new Date(timeStart).getTime()
|
|
|
+ return date && date.valueOf() < p_time;
|
|
|
+ }).bind(this)
|
|
|
+ },
|
|
|
+ columns: [
|
|
|
+ {
|
|
|
+ title: '订单编号',
|
|
|
+ key: 'order_code',
|
|
|
+ align: 'center'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '产品类型',
|
|
|
+ key: 'product_type',
|
|
|
+ width: '150',
|
|
|
+ align: 'center',
|
|
|
+ render: (h, {row}) => {
|
|
|
+ let words = row.product_type
|
|
|
+ let vipType = ''
|
|
|
+ if (row.vip_type == 0) {
|
|
|
+ vipType = '(试用)'
|
|
|
+ } else if (row.vip_type == 1) {
|
|
|
+ vipType = '(续费)'
|
|
|
+ } else if (row.vip_type == 2) {
|
|
|
+ vipType = '(升级)'
|
|
|
+ } else if (row.vip_type == null) {
|
|
|
+ if (row.pay_way == "trial") {
|
|
|
+ vipType = '(试用)'
|
|
|
+ } else {
|
|
|
+ vipType = '(购买)'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return h('span', words == 'VIP订阅' || words == 'vip订阅' ? '超级订阅' + vipType : row.product_type)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '订单类型',
|
|
|
+ key: 'dis_word',
|
|
|
+ align: 'center',
|
|
|
+ render: (h, {row}) => {
|
|
|
+ let word = row.dis_word
|
|
|
+ return h('span', word ? '分销' : '直销')
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '订单时间',
|
|
|
+ key: 'create_time',
|
|
|
+ width: '170',
|
|
|
+ align: 'center'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '实付金额',
|
|
|
+ key: 'pay_money',
|
|
|
+ align: 'center',
|
|
|
+ render: (h, {row}) => {
|
|
|
+ return h('span','¥' + parseFloat(row.pay_money?row.pay_money/100:0).toLocaleString('en-US'))
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '订单状态',
|
|
|
+ key: 'order_status',
|
|
|
+ align: 'center',
|
|
|
+ render: (h, {row}) => {
|
|
|
+ switch (row.order_status) {
|
|
|
+ case -3 :
|
|
|
+ return h('div', {
|
|
|
+ style: {
|
|
|
+ color: '#f4516c'
|
|
|
+ }
|
|
|
+ }, [
|
|
|
+ h('span','已退款')
|
|
|
+ ])
|
|
|
+ case -2 :
|
|
|
+ return h('div', {
|
|
|
+ style: {
|
|
|
+ color: '#ffb822'
|
|
|
+ }
|
|
|
+ }, [
|
|
|
+ h('span','已取消')
|
|
|
+ ])
|
|
|
+ case -1 :
|
|
|
+ return h('div', {
|
|
|
+ style: {
|
|
|
+ color: '#f4516c'
|
|
|
+ }
|
|
|
+ }, [
|
|
|
+ h('span','逻辑删除')
|
|
|
+ ])
|
|
|
+ case 0 :
|
|
|
+ return h('div', {
|
|
|
+ style: {
|
|
|
+ color: '#f4516c'
|
|
|
+ }
|
|
|
+ }, [
|
|
|
+ h('span','未支付')
|
|
|
+ ])
|
|
|
+ case 1 :
|
|
|
+ return h('div', {
|
|
|
+ style: {
|
|
|
+ color: '#34bfa3'
|
|
|
+ }
|
|
|
+ }, [
|
|
|
+ h('span', '已支付')
|
|
|
+ ])
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '发票状态',
|
|
|
+ key: 'invoice_status',
|
|
|
+ align: 'center',
|
|
|
+ render: (h, {row}) => {
|
|
|
+ if (row.order_status == -3) {
|
|
|
+ if (row.applybill_status == 1) {
|
|
|
+ return h('div', {
|
|
|
+ style:{
|
|
|
+ color: '#f4516c'
|
|
|
+ }
|
|
|
+ }, [
|
|
|
+ h('span','已冲红')
|
|
|
+ ])
|
|
|
+ } else if (row.applybill_status == 0) {
|
|
|
+ return h('div', {
|
|
|
+ style: {
|
|
|
+ color: '#ffb822'
|
|
|
+ }
|
|
|
+ }, [
|
|
|
+ h('span','未申请')
|
|
|
+ ])
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (row.applybill_status == 1) {
|
|
|
+ return h('div', {
|
|
|
+ style:{
|
|
|
+ color: '#34bfa3'
|
|
|
+ }
|
|
|
+ }, [
|
|
|
+ h('span','已申请')
|
|
|
+ ])
|
|
|
+ } else if (row.applybill_status == 0) {
|
|
|
+ return h('div', {
|
|
|
+ style: {
|
|
|
+ color: '#ffb822'
|
|
|
+ }
|
|
|
+ }, [
|
|
|
+ h('span','未申请')
|
|
|
+ ])
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '操作',
|
|
|
+ slot: 'op',
|
|
|
+ align: 'center'
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ list: []
|
|
|
+ }
|
|
|
+ },
|
|
|
+}
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="scss" scoped>
|
|
|
+.ding-dan {
|
|
|
+ h1 {
|
|
|
+ font-size:24px;
|
|
|
+ color:#3f4047;
|
|
|
+ padding: 10px 0 20px 10px;
|
|
|
+ }
|
|
|
+ .tui-btn {
|
|
|
+ color: #f4516c;
|
|
|
+ }
|
|
|
+ .ser-ipt {
|
|
|
+ float: right;
|
|
|
+ width: 162px;
|
|
|
+ }
|
|
|
+ .shai_xuan {
|
|
|
+ font-size: 18px;
|
|
|
+ span {
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .arrowTransform{
|
|
|
+ transition: 0.2s;
|
|
|
+ transform-origin: center;
|
|
|
+ transform: rotateZ(180deg);
|
|
|
+ }
|
|
|
+ .arrowTransformReturn{
|
|
|
+ transition: 0.2s;
|
|
|
+ transform-origin: center;
|
|
|
+ transform: rotateZ(0deg);
|
|
|
+ }
|
|
|
+}
|
|
|
+</style>
|