|  |  |  | 
|---|
|  |  |  | <el-button type="primary" @click="handleEx()">导出</el-button> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <el-table v-loading="loading" :data="list" stripe border> | 
|---|
|  |  |  | <el-table-column prop="code" align="center" label="订单编号" min-width="180" show-overflow-tooltip> | 
|---|
|  |  |  | <el-table-column prop="code" align="center" label="订单编号" min-width="200" show-overflow-tooltip> | 
|---|
|  |  |  | <template scope="{row}"> | 
|---|
|  |  |  | <span @click="handleDetail(row.id)" class="primaryColor pointer">{{ row.code }}</span> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | 
|---|
|  |  |  | <el-table-column prop="money" align="center" label="合计(元)" min-width="80" show-overflow-tooltip /> | 
|---|
|  |  |  | <el-table-column prop="money" align="center" label="实付(元)" min-width="80" show-overflow-tooltip /> | 
|---|
|  |  |  | <el-table-column prop="refundMoney" align="center" label="已退金额(元)" min-width="100" show-overflow-tooltip /> | 
|---|
|  |  |  | <el-table-column prop="memberId" align="center" label="用户信息" min-width="140" show-overflow-tooltip /> | 
|---|
|  |  |  | <el-table-column prop="openid" align="center" label="用户信息" min-width="200" show-overflow-tooltip /> | 
|---|
|  |  |  | <el-table-column prop="payWay" align="center" label="支付方式" min-width="80" show-overflow-tooltip> | 
|---|
|  |  |  | <template v-slot="{ row }"> | 
|---|
|  |  |  | <span v-if="row.payWay == 0">微信支付</span> | 
|---|
|  |  |  | 
|---|
|  |  |  | <span>小程序端</span> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="payWay" align="center" label="订单状态" min-width="80" show-overflow-tooltip> | 
|---|
|  |  |  | <template v-slot="{ row }"> | 
|---|
|  |  |  | <span v-if="row.status == 0">未支付</span> | 
|---|
|  |  |  | <span v-if="row.status == 1">已支付</span> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="refundUserName" align="center" label="操作人" min-width="80" show-overflow-tooltip /> | 
|---|
|  |  |  | <el-table-column prop="createDate" align="center" label="创建时间" min-width="140" show-overflow-tooltip /> | 
|---|
|  |  |  | <el-table-column label="操作" fixed="right" align="center" min-width="80" show-overflow-tooltip> | 
|---|
|  |  |  | <el-table-column prop="createDate" align="center" label="创建时间" min-width="160" show-overflow-tooltip /> | 
|---|
|  |  |  | <el-table-column label="操作" fixed="right" align="center" min-width="120" show-overflow-tooltip> | 
|---|
|  |  |  | <template v-slot="{ row }"> | 
|---|
|  |  |  | <span @click="handleDetail(row.id)" class="primaryColor pointer">查看详情</span> | 
|---|
|  |  |  | <span v-if="row.status == 1 && (row.refundMoney < row.money)" @click="handRefund(row.id)" class="primaryColor pointer ml10">退款</span> | 
|---|
|  |  |  | <span v-if="row.status == 1 && (row.refundMoney < row.money)" @click="handRefund(row.id)" | 
|---|
|  |  |  | class="primaryColor pointer ml10">退款</span> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | 
|---|
|  |  |  | comboListOrderEx, | 
|---|
|  |  |  | comboOrderDetailPost | 
|---|
|  |  |  | } from '@/api/business/combo.js' | 
|---|
|  |  |  | import dayjs from 'dayjs' | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | extends: BasePageTemp, | 
|---|
|  |  |  | components: { | 
|---|
|  |  |  | 
|---|
|  |  |  | label: '订单编号', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | filed: 'name', | 
|---|
|  |  |  | filed: 'discountName', | 
|---|
|  |  |  | type: 'input', | 
|---|
|  |  |  | label: '套餐卡', | 
|---|
|  |  |  | placeholder: '请输入卡名称', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | filed: 'pay', | 
|---|
|  |  |  | filed: 'payWay', | 
|---|
|  |  |  | type: 'select', | 
|---|
|  |  |  | label: '支付方式', | 
|---|
|  |  |  | options: [] | 
|---|
|  |  |  | options: [ | 
|---|
|  |  |  | { label: '微信', value: 0 }, | 
|---|
|  |  |  | { label: '支付宝', value: 1 }, | 
|---|
|  |  |  | ] | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | filed: 'status', | 
|---|
|  |  |  | filed: 'payStatus', | 
|---|
|  |  |  | type: 'select', | 
|---|
|  |  |  | label: '订单状态', | 
|---|
|  |  |  | options: [ | 
|---|
|  |  |  | 
|---|
|  |  |  | ] | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | filed: 'time', | 
|---|
|  |  |  | type: 'date', | 
|---|
|  |  |  | filed: 'selDate', | 
|---|
|  |  |  | type: 'daterange', | 
|---|
|  |  |  | label: '支付时间', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | filed: 'username', | 
|---|
|  |  |  | filed: 'openid', | 
|---|
|  |  |  | type: 'input', | 
|---|
|  |  |  | label: '用户信息', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | created() { | 
|---|
|  |  |  | let date = dayjs().format('YYYY-MM-DD') | 
|---|
|  |  |  | this.$set(this.filters, 'selDate', [date, date]) | 
|---|
|  |  |  | this.getList() | 
|---|
|  |  |  | // this.initData() | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | this.$refs.RefundRef.open(id) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleDetail(id) { | 
|---|
|  |  |  | comboOrderDetailPost({id}) | 
|---|
|  |  |  | comboOrderDetailPost({ id }) | 
|---|
|  |  |  | .then(res => { | 
|---|
|  |  |  | this.$refs.OrderDetailRef.open('订单详情', res) | 
|---|
|  |  |  | if (res) { | 
|---|
|  |  |  | this.$refs.OrderDetailRef.open('订单详情', res) | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch(err => { | 
|---|
|  |  |  | this.$tip.apiFailed(err) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleEx() { | 
|---|
|  |  |  | const { pagination, filters } = this | 
|---|
|  |  |  | this.$dialog.exportConfirm('确认导出吗?') | 
|---|
|  |  |  | .then(() => { | 
|---|
|  |  |  | this.loading = true | 
|---|
|  |  |  | if (filters.selDate && filters.selDate.length > 0) { | 
|---|
|  |  |  | filters.startDate = filters.selDate[0] + ' 00:00:00' | 
|---|
|  |  |  | filters.endDate = filters.selDate[1] + ' 00:00:00' | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | filters.startDate = null | 
|---|
|  |  |  | filters.endDate = null | 
|---|
|  |  |  | } | 
|---|
|  |  |  | comboListOrderEx({ | 
|---|
|  |  |  | page: 1, | 
|---|
|  |  |  | capacity: 1000000, | 
|---|
|  |  |  | model: this.filters | 
|---|
|  |  |  | model: { | 
|---|
|  |  |  | ...filters, | 
|---|
|  |  |  | type: 1 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .then(response => { | 
|---|
|  |  |  | this.download(response) | 
|---|
|  |  |  | 
|---|
|  |  |  | getList(page) { | 
|---|
|  |  |  | const { pagination, filters } = this | 
|---|
|  |  |  | this.loading = true | 
|---|
|  |  |  | if (filters.selDate && filters.selDate.length > 0) { | 
|---|
|  |  |  | filters.startDate = filters.selDate[0] + ' 00:00:00' | 
|---|
|  |  |  | filters.endDate = filters.selDate[1] + ' 00:00:00' | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | filters.startDate = null | 
|---|
|  |  |  | filters.endDate = null | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (page) { pagination.page = page } | 
|---|
|  |  |  | comboOrderPost({ | 
|---|
|  |  |  | model: { | 
|---|