|
|
@@ -7,23 +7,24 @@
|
|
|
<Form ref="pagination" inline :model="pagination" :label-width="labelWidth"
|
|
|
:label-position="labelPosition" @submit.native.prevent>
|
|
|
<FormItem label="订单状态:">
|
|
|
- <Select v-model="pagination.status" class="input-add">
|
|
|
+ <Select v-model="pagination.status" class="input-add">
|
|
|
<Option v-for="(item, index) in num" :value="item.value" :key="index">{{ item.name }}
|
|
|
</Option>
|
|
|
</Select>
|
|
|
</FormItem>
|
|
|
- <FormItem label="用户ID:" label-for="title">
|
|
|
- <div class='flex-search'>
|
|
|
- <Input v-model="pagination.uid" icon="ios-search" @on-click='openuid' placeholder="请输入用户ID"
|
|
|
- class="input-add mr14" />
|
|
|
- </div>
|
|
|
- </FormItem>
|
|
|
<FormItem label="员工ID:" label-for="title">
|
|
|
<div class='flex-search'>
|
|
|
<Input v-model="pagination.work_member_id" icon="ios-search" @on-click='openmid'
|
|
|
placeholder="请输入员工ID" class="input-add mr14" />
|
|
|
</div>
|
|
|
</FormItem>
|
|
|
+ <FormItem label="用户ID:" label-for="title">
|
|
|
+ <div class='flex-search'>
|
|
|
+ <Input v-model="pagination.uid" icon="ios-search" @on-click='openuid' placeholder="请输入用户ID"
|
|
|
+ class="input-add mr14" />
|
|
|
+ </div>
|
|
|
+ </FormItem>
|
|
|
+
|
|
|
<FormItem label="订单搜索:" label-for="title">
|
|
|
<Input v-model="pagination.order_id" placeholder="请输入订单号" class="input-add mr14" />
|
|
|
<Button type="primary" @click="orderSearch()">查询</Button>
|
|
|
@@ -48,15 +49,18 @@
|
|
|
</template>
|
|
|
<template slot-scope="{ row }" slot="info">
|
|
|
<div class="tabBox" v-for="(val, i) in row.info" :key="i">
|
|
|
- <div class="tabBox_img" v-viewer>
|
|
|
- <img v-lazy="val.slider_image" />
|
|
|
- </div>
|
|
|
- <div class="tabBox_content">
|
|
|
- <div class="tabBox_tit">{{ val.store_name }}</div>
|
|
|
- <div class="tabBox_pice">{{'¥' + val.pay_price}}</div>
|
|
|
+ <div class="tabRow">
|
|
|
+ <div class="tabBox_img" v-viewer>
|
|
|
+ <img v-lazy="val.slider_image" />
|
|
|
+ </div>
|
|
|
+ <div class="tabBox_content ">
|
|
|
+ <div class="tabBox_tit line1" :title="val.store_name">{{ val.store_name }}</div>
|
|
|
+ <div class="tabBox_pice">{{'¥' + val.pay_price}}</div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div class="tabBox_serve" v-if="val.project_user_id">
|
|
|
- 服务卡
|
|
|
+ 服务卡<br />
|
|
|
+ ID:{{val.project_user_id}}
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
|
@@ -70,11 +74,25 @@
|
|
|
<span class="tabBox_pice">{{row.store.name}}</span>
|
|
|
</template>
|
|
|
|
|
|
- <!-- <template slot-scope="{ row }" slot="status">
|
|
|
- <Tag color="blue" size="medium" v-if="row.status == -1">退款</Tag>
|
|
|
- <Tag color="blue" size="medium" v-if="row.status == 0">待服务</Tag>
|
|
|
- <Tag color="blue" size="medium" v-if="row.status == 2">已完成</Tag>
|
|
|
- </template> -->
|
|
|
+ <template slot-scope="{ row }" slot="pay_type">
|
|
|
+ <div class="tabBox" v-for="(val, i) in row.info" :key="i">
|
|
|
+ <div class="tabBox_serve" v-if="val.pay_type=='weixin'">
|
|
|
+ 微信
|
|
|
+ </div>
|
|
|
+ <div class="tabBox_serve" v-if="val.pay_type=='yue'">
|
|
|
+ 余额
|
|
|
+ </div>
|
|
|
+ <div class="tabBox_serve" v-if="val.pay_type=='offline'">
|
|
|
+ 线下
|
|
|
+ </div>
|
|
|
+ <div class="tabBox_serve" v-if="val.pay_type=='alipay'">
|
|
|
+ 支付宝
|
|
|
+ </div>
|
|
|
+ <div class="tabBox_serve" v-if="val.pay_type=='cash'">
|
|
|
+ 现金
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
|
|
|
<template slot-scope="{ row }" slot="statusName">
|
|
|
<Tooltip theme="dark" max-width="300" :delay="600">
|
|
|
@@ -95,6 +113,18 @@
|
|
|
</template>
|
|
|
<template slot-scope="{ row }" slot="action">
|
|
|
<a @click="changeMenu(row)" v-if="row.status == 0">修改员工</a>
|
|
|
+ <Divider type="vertical" v-if="row.status >=0" />
|
|
|
+ <a @click="del(row)" v-if="row.status >=0">退单</a>
|
|
|
+ </template>
|
|
|
+ <template slot-scope="{ row }" slot="status">
|
|
|
+ <div class="tabBox" v-for="(val, i) in row.info" :key="i">
|
|
|
+ <div class="tabBox_serve" v-if="val.paid>0">
|
|
|
+ <Tag color="blue" size="medium">已付款</Tag>
|
|
|
+ </div>
|
|
|
+ <div class="tabBox_serve" v-else>
|
|
|
+ <Tag color="gold" size="medium">待付款</Tag>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</template>
|
|
|
</Table>
|
|
|
<div class="acea-row row-right page">
|
|
|
@@ -127,6 +157,17 @@
|
|
|
<Button @click="memberListShow=false">取消</Button>
|
|
|
</template>
|
|
|
</Modal>
|
|
|
+ <Modal v-model="delModel" scrollable title="退单" class="order_box" :closable="false">
|
|
|
+ <Form :label-width="80">
|
|
|
+ <FormItem label="备注:">
|
|
|
+ <Input v-model="delData.remarks" placeholder="请输入退单备注" />
|
|
|
+ </FormItem>
|
|
|
+ </Form>
|
|
|
+ <div slot="footer">
|
|
|
+ <Button type="primary" @click="delConfirm">提交</Button>
|
|
|
+ <Button @click="delModel=false">取消</Button>
|
|
|
+ </div>
|
|
|
+ </Modal>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
@@ -136,7 +177,8 @@
|
|
|
} from "vuex";
|
|
|
import {
|
|
|
getServeOrder,
|
|
|
- member_update
|
|
|
+ member_update,
|
|
|
+ active_refund_order
|
|
|
} from "@/api/order";
|
|
|
import {
|
|
|
getYgList
|
|
|
@@ -146,8 +188,6 @@
|
|
|
} from "@/api/erp";
|
|
|
import userlist from "@/components/customerInfo/index";
|
|
|
import staffList from "@/components/staffList/index";
|
|
|
-
|
|
|
-
|
|
|
export default {
|
|
|
components: {
|
|
|
userlist,
|
|
|
@@ -155,6 +195,11 @@
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
+ delModel: false,
|
|
|
+ delData: {
|
|
|
+ id: '',
|
|
|
+ remarks: ''
|
|
|
+ },
|
|
|
memberListShow: false,
|
|
|
// 显示用户列表
|
|
|
userListShow: false,
|
|
|
@@ -189,21 +234,23 @@
|
|
|
slot: "pay_price",
|
|
|
minWidth: 70,
|
|
|
},
|
|
|
+ {
|
|
|
+ title: "支付方式",
|
|
|
+ slot: "pay_type",
|
|
|
+ minWidth: 80,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "支付状态",
|
|
|
+ slot: "status",
|
|
|
+ minWidth: 80,
|
|
|
+ },
|
|
|
{
|
|
|
title: "预约时间",
|
|
|
slot: "reservation_time",
|
|
|
minWidth: 130,
|
|
|
},
|
|
|
- // {
|
|
|
- // title: "订单状态",
|
|
|
- // slot: "status",
|
|
|
- // minWidth: 80,
|
|
|
- // },
|
|
|
- // {
|
|
|
- // title: "退款状态",
|
|
|
- // slot: "refund_status",
|
|
|
- // minWidth: 80,
|
|
|
- // },
|
|
|
+
|
|
|
+
|
|
|
{
|
|
|
title: "预约门店",
|
|
|
slot: "store",
|
|
|
@@ -261,6 +308,32 @@
|
|
|
this.getOrderList();
|
|
|
},
|
|
|
methods: {
|
|
|
+ delConfirm() {
|
|
|
+ const that = this;
|
|
|
+ that.delModel = false;
|
|
|
+ that.$Modal.confirm({
|
|
|
+ title: "确认退单",
|
|
|
+ content: '<p>确定退单吗?</p><p>退单后将无法恢复,请谨慎操作!</p>',
|
|
|
+ onOk: () => {
|
|
|
+ console.log('进入');
|
|
|
+ setTimeout(function() {
|
|
|
+ that.$Modal.remove();
|
|
|
+ active_refund_order(that.delData).then((res) => {
|
|
|
+ console.log(res);
|
|
|
+ that.getOrderList()
|
|
|
+ that.$Message.success("退单成功");
|
|
|
+ }).catch((err) => {
|
|
|
+ that.$Message.error(err.msg);
|
|
|
+ })
|
|
|
+ }, 300);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ del(row) {
|
|
|
+ const that = this;
|
|
|
+ that.delModel = true;
|
|
|
+ that.delData.id = row.id;
|
|
|
+ },
|
|
|
// 打开弹窗
|
|
|
openmid(e) {
|
|
|
this.memberListShow = true;
|
|
|
@@ -401,9 +474,25 @@
|
|
|
height: 100%;
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
- .tabBox_content{
|
|
|
+ justify-content: space-between;
|
|
|
+
|
|
|
+ .tabRow {
|
|
|
+ width: 0;
|
|
|
+ flex-grow: 1;
|
|
|
+ display: flex;
|
|
|
+ }
|
|
|
+
|
|
|
+ .tabBox_serve {
|
|
|
+ flex-shrink: 0;
|
|
|
+ padding-left: 5px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .tabBox_content {
|
|
|
+ width: 0;
|
|
|
+ flex-grow: 1;
|
|
|
padding-left: 5px;
|
|
|
}
|
|
|
+
|
|
|
.tabBox_pice {
|
|
|
flex-shrink: 0;
|
|
|
}
|