This commit is contained in:
曹辉 2022-11-08 17:10:11 +08:00
parent 91a3f508b4
commit a9b303d28e
7 changed files with 674 additions and 537 deletions

View File

@ -19,14 +19,14 @@ export function getGoodsOrder(id) {
// 查看商品详细信息
export function getGoodsOrderlist(id) {
return request({
url: `/system/goodsOrder/goodsOrderByOrder`+`?orderNo=${id}`,
url: `/system/goodsOrder/goodsOrderByOrder` + `?orderNo=${id}`,
method: 'get'
})
}
// 退款
export function goodsOrderRefundinfo(id) {
return request({
url: `/system/goodsOrder/goodsOrderRefund`+`?goodsOrderId=${id}`,
url: `/system/goodsOrder/goodsOrderRefund` + `?goodsOrderId=${id}`,
method: 'get',
})
}
@ -41,7 +41,6 @@ export function editExpressNo(data) {
}
// 退款确定按钮
export function weChatRefundOrderApply(data) {
return request({
url: '/nurseApp/weChatPayment/weChatRefundOrderApply',
@ -74,4 +73,4 @@ export function delGoodsOrder(id) {
url: '/system/goodsOrder/' + id,
method: 'delete'
})
}
}

View File

@ -11,7 +11,7 @@ export function appointmentOrderDetailsList(query) {
export function Detailed(id) {
return request({
url: `/system/appointmentOrderDetails/Detailed`+`?orderNo=${id}`,
url: `/system/appointmentOrderDetails/Detailed` + `?orderNo=${id}`,
method: 'get',
})
@ -19,7 +19,7 @@ export function Detailed(id) {
//删除
export function deldetailed(appointmentOrderId) {
return request({
url: '/system/appointmentOrder/'+appointmentOrderId,
url: '/system/appointmentOrder/' + appointmentOrderId,
method: 'post',
})
@ -45,10 +45,9 @@ export function dispatchsubmit(data) {
// 确认取消订单
export function confirmCancel(data) {
export function confirmCancel(appointmentOrderId) {
return request({
url: '/system/appointmentOrder/confirmCancel',
method: 'post',
data: data
url: `/system/appointmentOrder/confirmCancel?appointmentOrderId=${appointmentOrderId}`,
method: 'post'
})
}
}

View File

@ -375,6 +375,7 @@
:visible.sync="innerVisible"
width="1000px"
append-to-body
:before-close="innerVisiblecancel"
>
<el-form
ref="queryForm"
@ -466,11 +467,7 @@
</template>
</el-table-column> -->
<el-table-column
property="phone"
label="联系电话"
align="center"
>
<el-table-column property="phone" label="联系电话" align="center">
</el-table-column>
<el-table-column
property="address"
@ -745,6 +742,10 @@ export default {
this.queryParams.pageNum = 1;
this.getList();
},
innerVisiblecancel() {
this.innerVisible = false;
this.addresetQuery();
},
/** 重置按钮操作 */
resetQuery() {
if (this.nurseStationlist[0].isAdmin == "1") {

View File

@ -66,8 +66,47 @@
/>
<el-table-column label="订单状态" align="center" prop="orderStatus">
<template slot-scope="scope">
<!-- <el-button type="primary" v-if="scope.row.orderStatus=='WAIT_PAY'" style="background-color:red;border:none">待付款</el-button> -->
{{ orderStatus(scope.row.orderStatus) }}
<!-- {{ orderStatus(scope.row.orderStatus) }} -->
<el-button v-if="scope.row.orderStatus == 'WAIT_PAY'"
>待付款</el-button
>
<el-button type="primary" v-if="scope.row.orderStatus == 'PAY'"
>已付款</el-button
>
<el-button type="danger" v-if="scope.row.orderStatus == 'CANCEL'"
>已取消</el-button
>
<el-button
type="primary"
v-if="scope.row.orderStatus == 'WAIT_RECEIVED_GOODS'"
>待收货</el-button
>
<el-button
type="primary"
v-if="scope.row.orderStatus == 'RECEIVED_GOODS'"
>已收货</el-button
>
<el-button type="success" v-if="scope.row.orderStatus == 'COMPLETE'"
>服务完成</el-button
>
<el-button
type="warning"
v-if="scope.row.orderStatus == 'WAIT_REFUND'"
>退款中</el-button
>
<el-button
type="warning"
v-if="scope.row.orderStatus == 'WAIT_RETURNED_GOODS'"
>待退货</el-button
>
<el-button type="danger" v-if="scope.row.orderStatus == 'REFUNDED'"
>退款成功</el-button
>
<el-button
type="danger"
v-if="scope.row.orderStatus == 'RETURNED_GOODS'"
>已退货</el-button
>
</template>
</el-table-column>
<el-table-column label="订单总金额" align="center" prop="totalPrice" />
@ -88,6 +127,46 @@
</template>
</el-table-column>
<el-table-column label="备注信息" align="center" prop="remark" />
<el-table-column label="录入物流单号" align="center" prop="remark">
<template slot-scope="scope">
<el-button
v-if="scope.row.orderStatus == 'WAIT_RECEIVED_GOODS'&&scope.row.expressNo"
size="mini"
type="text"
icon="el-icon-edit"
@click="seelogistics(scope.row)"
v-hasPermi="['system:nurseType:edit']"
>修改物流单号</el-button
>
<el-button
v-if="scope.row.orderStatus == 'WAIT_RECEIVED_GOODS'&&scope.row.expressNo==''"
size="mini"
type="text"
icon="el-icon-edit"
@click="seelogistics(scope.row)"
v-hasPermi="['system:nurseType:edit']"
>录入物流单号</el-button
>
<el-button
v-if="scope.row.orderStatus == 'WAIT_RECEIVED_GOODS'&&scope.row.expressNo==null"
size="mini"
type="text"
icon="el-icon-edit"
@click="seelogistics(scope.row)"
v-hasPermi="['system:nurseType:edit']"
>录入物流单号</el-button
>
<el-button
v-if="scope.row.orderStatus != 'WAIT_RECEIVED_GOODS'"
size="mini"
type="text"
icon="el-icon-edit"
disabled
v-hasPermi="['system:nurseType:edit']"
>不可录入物流单号</el-button
>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -102,24 +181,7 @@
v-hasPermi="['system:nurseType:edit']"
>查看商品信息</el-button
>
<el-button
v-if="scope.row.orderStatus == 'PAY'"
size="mini"
type="text"
icon="el-icon-edit"
@click="seelogistics(scope.row.id)"
v-hasPermi="['system:nurseType:edit']"
>录入物流单号</el-button
>
<!-- <el-button
v-if="scope.row.orderStatus == 'WAIT_REFUND'"
size="mini"
type="text"
icon="el-icon-edit"
@click="refund(scope.row.id)"
v-hasPermi="['system:nurseType:edit']"
>确认退款</el-button
> -->
<el-button
v-if="scope.row.orderStatus == 'WAIT_REFUND'"
size="mini"
@ -129,35 +191,18 @@
v-hasPermi="['system:nurseType:edit']"
>确认退款</el-button
>
<!-- <el-button
v-else
<el-button
v-else
size="mini"
type="text"
icon="el-icon-edit"
@click="seelogistics(scope.row)"
disabled
v-hasPermi="['system:nurseType:edit']"
>确认退款</el-button
> -->
<!-- <el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['system:goodsOrder:edit']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['system:goodsOrder:remove']"
>删除</el-button
> -->
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
@ -274,7 +319,7 @@
style="width: 240px"
/>
</el-form-item>
<el-form-item label="购买来源" prop="orderChannel">
<el-form-item label="购买来源" prop="orderChannel">
<el-input
:value="orderChannelinfo(orderList.orderChannel)"
clearable
@ -336,14 +381,12 @@
</el-table> -->
</el-form>
</el-dialog>
<!-- 查看物流信息弹框 -->
<el-dialog
title="录入物流单号"
:visible.sync="innerlogistics"
append-to-body
width="500px"
style="margin-top: 10%"
>
<el-form
:model="queryexpressNo"
@ -351,33 +394,50 @@
size="small"
:inline="true"
v-show="showSearch"
label-width="68px"
label-width="100px"
>
<el-form-item label="收货人" prop="receiver">
<el-input
style="width: 230px"
v-model="queryexpressNo.receiver"
placeholder=""
clearable
disabled
/>
</el-form-item>
<el-form-item label="手机号" prop="phone">
<el-input
style="width: 230px"
v-model="queryexpressNo.phone"
placeholder=""
clearable
disabled
/>
</el-form-item>
<el-form-item label="收货地址" prop="receiveAddress">
<el-input
v-model="queryexpressNo.receiveAddress"
style="width: 230px"
type="textarea"
:rows="5"
placeholder=""
disabled
clearable
/>
</el-form-item>
<el-form-item label="物流单号" prop="orderNo">
<el-input
v-model="queryexpressNo.expressNo"
style="width: 230px"
placeholder="请输入物流单号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="searchlogistics()"
>确认</el-button
>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="cencellogistics"
>取消</el-button
>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cencellogistics"> </el-button>
<el-button type="primary" @click="searchlogistics"> </el-button>
</div>
</el-dialog>
<!-- 退款弹框 -->
<el-dialog
@ -385,7 +445,6 @@
:visible.sync="innerrefund"
append-to-body
width="700px"
style="margin-top: 10%"
>
<el-form
:model="refundlist"
@ -400,7 +459,6 @@
v-model="refundlist.goodsName"
placeholder=""
clearable
@keyup.enter.native="handleQuery"
disabled
/>
</el-form-item>
@ -416,32 +474,25 @@
v-model="refundlist.dictLabel"
placeholder=""
clearable
@keyup.enter.native="handleQuery"
disabled
/>
</el-form-item>
<el-form-item label="退款金额" prop="godTotalPrice">
<el-input
v-model="refundlist.godTotalPrice"
placeholder=""
clearable
@keyup.enter.native="handleQuery"
disabled
/>
</el-form-item>
<el-form-item
label="补充描述和凭证"
prop="refundReasonRemark"
label-width="110px"
>
<el-form-item label="补充描述和凭证" prop="refundReasonRemark">
<el-input
style="width: 300px"
v-model="refundlist.refundReasonRemark"
placeholder=""
clearable
@keyup.enter.native="handleQuery"
type="textarea"
:rows="2"
:rows="5"
disabled
/>
<!-- <textarea cols="50" rows="10" v-model="refundlist.refundReasonRemark">
@ -453,23 +504,7 @@
></editor> -->
</el-form-item>
<el-form-item>
<!--
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="searchlogistics()"
>确认</el-button
>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="cencellogistics"
>取消</el-button
> -->
</el-form-item>
<el-form-item> </el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="refundcancel"> </el-button>
@ -532,7 +567,18 @@
</template>
<script>
import { listGoodsOrder, getGoodsOrder, delGoodsOrder, addGoodsOrder, updateGoodsOrder, getGoodsOrderlist, goodsOrderRefundinfo, editExpressNo, goodsOrderrefund, weChatRefundOrderApply } from "@/api/system/goodsOrder";
import {
listGoodsOrder,
getGoodsOrder,
delGoodsOrder,
addGoodsOrder,
updateGoodsOrder,
getGoodsOrderlist,
goodsOrderRefundinfo,
editExpressNo,
goodsOrderrefund,
weChatRefundOrderApply,
} from "@/api/system/goodsOrder";
export default {
name: "GoodsOrder",
@ -584,7 +630,6 @@ export default {
value: "RETURNED_GOODS",
label: "已退货",
},
],
//
loading: true,
@ -629,8 +674,7 @@ export default {
//
form: {},
//
rules: {
}
rules: {},
};
},
created() {
@ -638,7 +682,6 @@ export default {
},
methods: {
// 退
refundTypeStatus(refundType) {
switch (refundType) {
case "REFUND_MONEY_GOODS":
@ -675,9 +718,9 @@ export default {
}
},
//
orderChannelinfo(orderChannel){
switch (orderChannel) {
case "MOBILE_APP":
orderChannelinfo(orderChannel) {
switch (orderChannel) {
case "MOBILE_APP":
return "手机APP";
case "WECHAT_APPLET":
return "微信小程序";
@ -686,127 +729,122 @@ orderChannelinfo(orderChannel){
default:
break;
}
},
//
buySourceinfo(buySource){
switch (buySource) {
case "NURSE_STATION":
}
},
//
buySourceinfo(buySource) {
switch (buySource) {
case "NURSE_STATION":
return "护理站";
case "SHOPPING_MALL":
return "商城";
default:
break;
}
},
/** 查询商品订单列表 */
getList() {
this.loading = true;
listGoodsOrder(this.queryParams).then(response => {
this.goodsOrderList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
seeOrder(row) {
console.log(row);
const id = row.orderNo;
getGoodsOrderlist(id).then(res => {
this.orderList = res.data
this.innerorder = true
})
},
//
seelogistics(id) {
// console.log(id);
this.queryexpressNo.id = id
console.log(this.queryexpressNo)
this.innerlogistics = true
},
//
searchlogistics() {
console.log(this.queryexpressNo)
editExpressNo(this.queryexpressNo).then(res => {
if(res.code == 200){
}
},
/** 查询商品订单列表 */
getList() {
this.loading = true;
listGoodsOrder(this.queryParams).then((response) => {
this.goodsOrderList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
seeOrder(row) {
console.log(row);
const id = row.orderNo;
getGoodsOrderlist(id).then((res) => {
this.orderList = res.data;
this.innerorder = true;
});
},
//
seelogistics(row) {
// console.log(id);
// this.queryexpressNo.id = row.id;
this.queryexpressNo = JSON.parse(JSON.stringify(row));
this.innerlogistics = true;
},
//
searchlogistics() {
console.log(this.queryexpressNo);
editExpressNo(this.queryexpressNo).then((res) => {
if (res.code == 200) {
this.$modal.msgSuccess("录入成功");
}
this.queryexpressNo.expressNo = ""
this.innerlogistics = false
console.log(res)
})
},
//
cencellogistics() {
this.innerlogistics = false
this.queryexpressNo.expressNo = ""
},
// 退
refund(id) {
console.log(id);
goodsOrderRefundinfo(id).then(res => {
this.refundlist = res.data;
console.log(this.refundlist)
this.innerrefund = true
})
},
//退
submitRefundOrder() {
console.log(this.refundlist)
var obj = {}
obj.orderNo = this.refundlist.goOrderNo
obj.refundReason = this.refundlist.dictLabel
obj.refundPrice = this.refundlist.godTotalPrice
obj.remark = this.refundlist.refundReasonRemark
obj.goodsStatus = this.refundlist.orderStatus
weChatRefundOrderApply(obj).then(res => {
if(res.code == 200){
this.queryexpressNo.expressNo = "";
this.innerlogistics = false;
this.getList();
});
},
//
cencellogistics() {
this.innerlogistics = false;
this.queryexpressNo.expressNo = "";
},
// 退
refund(id) {
console.log(id);
goodsOrderRefundinfo(id).then((res) => {
this.refundlist = res.data;
console.log(this.refundlist);
this.innerrefund = true;
});
},
//退
submitRefundOrder() {
var obj = {};
obj.orderNo = this.refundlist.goOrderNo;
obj.refundReason = this.refundlist.dictLabel;
obj.refundPrice = this.refundlist.godTotalPrice;
obj.remark = this.refundlist.refundReasonRemark;
obj.goodsStatus = this.refundlist.orderStatus;
weChatRefundOrderApply(obj).then((res) => {
if (res.code == 200) {
this.$modal.msgSuccess("退款成功");
}
// console.log(obj)
this.innerrefund = false
})
// console.log(obj)
this.innerrefund = false;
});
},
// refund(id){
// console.log(id);
// this.$confirm('退?', '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// }).then(() => {
// this.refundinfo.id=id
// goodsOrderrefund(this.refundinfo).then((res) => {
// this.$message({
// type: 'success',
// message: '退'
// });
// this.getList();
// });
},
// refund(id){
// console.log(id);
// this.$confirm('退?', '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// }).then(() => {
// this.refundinfo.id=id
// goodsOrderrefund(this.refundinfo).then((res) => {
// this.$message({
// type: 'success',
// message: '退'
// });
// this.getList();
// });
// }).catch(() => {
// this.$message({
// type: 'info',
// message: '退'
// });
// });
// },
//
cancel() {
this.open = false;
this.reset();
},
// }).catch(() => {
// this.$message({
// type: 'info',
// message: '退'
// });
// });
// },
//
cancel() {
this.open = false;
this.reset();
},
//退
refundcancel() {
this.innerrefund = false
},
//
reset() {
this.queryParams={
//退
refundcancel() {
this.innerrefund = false;
},
//
reset() {
this.queryParams = {
pageNum: 1,
pageSize: 10,
nurseStationId: null,
@ -819,112 +857,120 @@ reset() {
phone: null,
orderTime: null,
orderChannel: null,
}
this.form = {
id: null,
nurseStationId: null,
patientId: null,
orderNo: null,
totalPrice: null,
receiver: null,
receiveAddress: null,
phone: null,
orderTime: null,
orderChannel: null,
remark: null,
delFlag: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
orderStatus: "",
};
this.resetForm("queryParams");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.reset();
this.resetForm("queryForm");
this.handleQuery();
},
};
this.form = {
id: null,
nurseStationId: null,
patientId: null,
orderNo: null,
totalPrice: null,
receiver: null,
receiveAddress: null,
phone: null,
orderTime: null,
orderChannel: null,
remark: null,
delFlag: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
orderStatus: "",
};
this.resetForm("queryParams");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.reset();
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length !== 1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加商品订单";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids
getGoodsOrder(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改商品订单";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {
updateGoodsOrder(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
//
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加商品订单";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
getGoodsOrder(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改商品订单";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.id != null) {
updateGoodsOrder(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addGoodsOrder(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal
.confirm('是否确认删除商品订单编号为"' + ids + '"的数据项?')
.then(function () {
return delGoodsOrder(ids);
})
.then(() => {
this.getList();
});
} else {
addGoodsOrder(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除商品订单编号为"' + ids + '"的数据项?').then(function () {
return delGoodsOrder(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => { });
},
/** 导出按钮操作 */
handleExport() {
this.download('system/goodsOrder/export', {
...this.queryParams
}, `goodsOrder_${new Date().getTime()}.xlsx`)
},
orderStatus(code) {
var obj = {
WAIT_PAY: '待付款',
PAY: '已付款',
CANCEL: '已取消',
WAIT_RECEIVED_GOODS: '待收货',
RECEIVED_GOODS: '已收货',
WAIT_REFUND: '退款中',
REFUNDED: '已退款',
WAIT_RETURNED_GOODS: '待退货',
RETURNED_GOODS: '已退货',
}
return obj[code]
}
}
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download(
"system/goodsOrder/export",
{
...this.queryParams,
},
`goodsOrder_${new Date().getTime()}.xlsx`
);
},
// orderStatus(code) {
// var obj = {
// WAIT_PAY: "",
// PAY: "",
// CANCEL: "",
// WAIT_RECEIVED_GOODS: "",
// RECEIVED_GOODS: "",
// WAIT_REFUND: "退",
// REFUNDED: "退",
// WAIT_RETURNED_GOODS: "退",
// RETURNED_GOODS: "退",
// };
// return obj[code];
// },
},
};
</script>

View File

@ -58,22 +58,54 @@
:data="OrderDetailsList"
@selection-change="handleSelectionChange"
>
<el-table-column label="所属护理站" align="center" prop="nurseStationName" />
<el-table-column
label="所属护理站"
align="center"
prop="nurseStationName"
/>
<el-table-column label="会员名称" align="center" prop="patientName" />
<el-table-column label="订单编号" align="center" prop="orderNo" />
<el-table-column label="护理项目名称" align="center" prop="nurseItemName" />
<el-table-column label="订单总金额" align="center" prop="totalPrice" />
<el-table-column
label="护理项目名称"
align="center"
prop="nurseItemName"
/>
<el-table-column label="订单总金额" align="center" prop="totalPrice" />
<el-table-column label="订单状态" align="center" prop="orderStatus">
<template slot-scope="scope">
<el-button v-if="scope.row.orderStatus=='WAIT_PAY'">待付款</el-button>
<el-button type="primary" v-if="scope.row.orderStatus=='PAY'">已付款</el-button>
<el-button type="primary" v-if="scope.row.orderStatus=='WAIT_DISPATCH'">待派单</el-button>
<el-button type="primary" v-if="scope.row.orderStatus=='NOT_FINISH'">待完成</el-button>
<el-button type="success" v-if="scope.row.orderStatus=='COMPLETE'">服务完成</el-button>
<el-button type="warning" v-if="scope.row.orderStatus=='WAIT_REFUND'">退款中</el-button>
<el-button type="warning" v-if="scope.row.orderStatus=='WAIT_RETURNED_GOODS'">待退货</el-button>
<el-button type="danger" v-if="scope.row.orderStatus=='CANCEL'">已取消</el-button>
<el-button type="danger" v-if="scope.row.orderStatus=='REFUNDED'">退款成功</el-button>
<el-button v-if="scope.row.orderStatus == 'WAIT_PAY'"
>待付款</el-button
>
<el-button type="primary" v-if="scope.row.orderStatus == 'PAY'"
>已付款</el-button
>
<el-button
type="primary"
v-if="scope.row.orderStatus == 'WAIT_DISPATCH'"
>待派单</el-button
>
<el-button type="primary" v-if="scope.row.orderStatus == 'NOT_FINISH'"
>待完成</el-button
>
<el-button type="success" v-if="scope.row.orderStatus == 'COMPLETE'"
>服务完成</el-button
>
<el-button
type="warning"
v-if="scope.row.orderStatus == 'WAIT_REFUND'"
>退款中</el-button
>
<el-button
type="warning"
v-if="scope.row.orderStatus == 'WAIT_RETURNED_GOODS'"
>待退货</el-button
>
<el-button type="danger" v-if="scope.row.orderStatus == 'CANCEL'"
>已取消</el-button
>
<el-button type="danger" v-if="scope.row.orderStatus == 'REFUNDED'"
>退款成功</el-button
>
</template>
</el-table-column>
<el-table-column label="下单时间" align="center" prop="createTime" />
@ -97,14 +129,33 @@
icon="el-icon-s-promotion"
@click="dispatch(scope.row)"
v-hasPermi="['system:nurseType:edit']"
v-if="scope.row.orderStatus=='WAIT_DISPATCH'"
v-if="scope.row.orderStatus == 'WAIT_DISPATCH'"
>派单</el-button
>
<el-button
size="mini"
type="text"
disabled
icon="el-icon-s-promotion"
@click="dispatch(scope.row)"
v-else
>派单</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-error"
@click="cencel(scope.row.appointmentOrderId)"
v-if="scope.row.orderStatus == 'WAIT_REFUND'"
@click="cencel(scope.row)"
v-hasPermi="['system:nurseType:edit']"
>取消预约</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-error"
v-else
disabled
v-hasPermi="['system:nurseType:edit']"
>取消预约</el-button
>
@ -132,124 +183,112 @@
:visible.sync="innerVisible4"
append-to-body
width="1048px"
class="orderInfo"
>
<el-form
:inline="true"
ref="form"
:model="form"
:model="query"
:rules="rules"
label-width="120px"
>
<div v-for="(item, index) in query" :key="index">
<el-form-item label="订单编号" prop="orderNo">
<el-input
v-model="item.orderNo"
:disabled="true"
style="width: 190px"
/>
</el-form-item>
<el-form-item label="订单状态" prop="orderStatus">
<el-input
:value="switchOrderStatus(item.orderStatus)"
disabled
style="width: 150px"
>
</el-input>
</el-form-item>
<el-form-item label="护理站名称" prop="nurseStationName">
<el-input
v-model="item.nurseStationName"
clearable
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px"
/>
</el-form-item>
<el-form-item label="订单数量" prop="orderCount">
<el-input
v-model="item.orderCount"
clearable
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 190px"
/>
</el-form-item>
<el-form-item label="护理项目名称" prop="nurseItemName">
<el-input
v-model="item.nurseItemName"
clearable
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="服务时间" prop="time">
<el-input
v-model="item.time"
clearable
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px"
/>
</el-form-item>
<el-form-item label="护理项目时长" prop="itemServeDurationUnit">
<el-input
v-model="item.itemServeDurationUnit"
clearable
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 190px"
/>
</el-form-item>
<el-form-item label="护理项目价格" prop="nurseItemPrice">
<el-input
v-model="item.nurseItemPrice"
clearable
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="服务地址" prop="serviceAddress">
<el-input
v-model="item.serviceAddress"
clearable
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px"
/>
</el-form-item>
<el-table
:data="item.appointmentOrderConsumableList"
align="center"
style="margin: 10px 0 20px 0; padding-bottom: 20px"
<el-form-item label="订单编号" prop="orderNo">
<el-input
v-model="query.orderNo"
:disabled="true"
style="width: 190px"
/>
</el-form-item>
<el-form-item label="订单状态" prop="orderStatus">
<el-input
:value="switchOrderStatus(query.orderStatus)"
disabled
style="width: 150px"
>
<el-table-column
prop="orderConsumableName"
label="耗材包名称"
width="200"
align="center"
>
</el-table-column>
<el-table-column
prop="orderConsumableCount"
label="耗材包数量"
width="200"
align="center"
>
</el-table-column>
<el-table-column
prop="orderConsumablePrice"
label="耗材包价格"
width="200"
align="center"
>
</el-table-column>
</el-table>
</div>
</el-input>
</el-form-item>
<el-form-item label="护理站名称" prop="nurseStationName">
<el-input
v-model="query.nurseStationName"
clearable
:disabled="true"
style="width: 240px"
/>
</el-form-item>
<el-form-item label="订单数量" prop="orderCount">
<el-input
v-model="query.orderCount"
clearable
:disabled="true"
style="width: 190px"
/>
</el-form-item>
<el-form-item label="护理项目名称" prop="nurseItemName">
<el-input
v-model="query.nurseItemName"
clearable
:disabled="true"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="服务时间" prop="time">
<el-input
v-model="query.time"
clearable
:disabled="true"
style="width: 240px"
/>
</el-form-item>
<el-form-item label="护理项目时长" prop="itemServeDurationUnit">
<el-input
v-model="query.itemServeDurationUnit"
clearable
:disabled="true"
style="width: 190px"
/>
</el-form-item>
<el-form-item label="护理项目价格" prop="nurseItemPrice">
<el-input
v-model="query.nurseItemPrice"
clearable
:disabled="true"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="服务地址" prop="serviceAddress">
<el-input
v-model="query.serviceAddress"
clearable
:disabled="true"
style="width: 240px"
/>
</el-form-item>
<el-table
:data="query.appointmentOrderConsumableList"
align="center"
style="margin: 10px 0 20px 0; padding-bottom: 20px"
>
<el-table-column
prop="orderConsumableName"
label="耗材包名称"
width="200"
align="center"
>
</el-table-column>
<el-table-column
prop="orderConsumableCount"
label="耗材包数量"
width="200"
align="center"
>
</el-table-column>
<el-table-column
prop="orderConsumablePrice"
label="耗材包价格"
width="200"
align="center"
>
</el-table-column>
</el-table>
</el-form>
</el-dialog>
<!-- 派单弹框 -->
@ -260,12 +299,12 @@
width="500px"
height="100px"
>
<el-form ref="form" :model="form" :rules="rules" label-width="150px">
<el-form ref="form" :model="form" :rules="rules" label-width="130px">
<el-form-item label="护理员姓名" prop="nursePersonName">
<el-button
type=""
v-if="nurseName == '请选择护理员'"
style="width: 200px; text-align: left; height: 36px; color: #c0c4cc"
style="width: 300px; text-align: left; height: 36px; color: #c0c4cc"
@click="clicknursePersonName()"
>{{ nurseName }}</el-button
>
@ -274,7 +313,7 @@
@click="clicknursePersonName()"
v-else
style="
width: 362px;
width: 300px;
text-align: left;
height: 36px;
padding-left: -10px;
@ -300,6 +339,78 @@
<!-- <el-button @click="cancel"> </el-button> -->
</div>
</el-dialog>
<!-- 取消预约 -->
<el-dialog
title="取消预约"
:visible.sync="innerrefund"
append-to-body
width="900px"
>
<el-form :inline="true" :rules="rules" label-width="120px">
<el-form-item label="护理站名称" prop="nurseStationName">
<el-input
style="width: 260px"
v-model="query.nurseStationName"
clearable
:disabled="true"
/>
</el-form-item>
<el-form-item label="护理项目名称" prop="nurseItemName">
<el-input
v-model="query.nurseItemName"
style="width: 260px"
clearable
:disabled="true"
/>
</el-form-item>
<el-form-item label="服务时间" prop="time">
<el-input
v-model="query.time"
style="width: 260px"
clearable
:disabled="true"
/>
</el-form-item>
<el-form-item label="护理时长" prop="itemServeDurationUnit">
<el-input
v-model="query.itemServeDurationUnit"
clearable
style="width: 260px"
:disabled="true"
/>
</el-form-item>
<el-form-item label="订单状态" prop="orderStatus">
<el-input
:value="switchOrderStatus(query.orderStatus)"
style="width: 260px"
disabled
>
</el-input>
</el-form-item>
<el-form-item label="总金额" prop="nurseItemPrice">
<el-input
v-model="query.nurseItemPrice"
clearable
style="width: 260px"
:disabled="true"
/>
</el-form-item>
<el-form-item label="服务地址" prop="serviceAddress">
<el-input
style="width: 260px"
v-model="query.serviceAddress"
clearable
type="textarea"
:rows="5"
:disabled="true"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button> </el-button>
<el-button type="primary" @click="ordercacenl"> </el-button>
</div>
</el-dialog>
<!-- 姓名弹框 -->
<el-dialog
:visible.sync="nursePersonNameinfo"
@ -342,11 +453,11 @@
>
</el-form-item>
</el-form>
<el-table :data="dispatchlist">
<el-table :data="dispatchlist" @cell-dblclick="nursePersonclick">
<el-table-column label="请选择" width="70" align="center">
<template slot-scope="scope">
<el-button
type="primary"
type="primary"
style="width: 15px; height: 15px; overflow: hidden"
v-if="nursePersonid == scope.row.nurseStationPersonId"
circle
@ -416,8 +527,8 @@ import {
deldetailed,
getPerson,
dispatchsubmit,
confirmCancel
} from "@/api/system/order";
import { weChatRefundOrderApply } from "@/api/system/goodsOrder";
export default {
name: "order",
data() {
@ -444,6 +555,7 @@ export default {
//
loading: true,
innerVisible4: false,
innerrefund: false,
//
innerdispatch: false,
//
@ -461,15 +573,14 @@ export default {
total: 0,
//
OrderDetailsList: [],
OrderDetailsLists: [],
dispatchlist: [],
nurseName: "请选择护理员",
nursePersonid: "",
// querynursecencel:{
// appointmentOrderId:"",
// },
appointmentOrderId:"",
nurseStationPersonId :"",
appointmentOrderId: "",
nurseStationPersonId: "",
total2: 0,
//
title: "",
@ -492,8 +603,8 @@ export default {
// pageSize: 10,
// },
querynursePersonname: {
orderNo:"",
nursePersonName:null,
orderNo: "",
nursePersonName: null,
nursePersonType: null,
departmentName: null,
pageNum: 1,
@ -502,7 +613,6 @@ export default {
// nursePersonName: null,
},
query: [],
//
form: {},
//
@ -513,6 +623,18 @@ export default {
this.getList();
},
methods: {
//
ordercacenl() {
var obj = {
orderNo: this.query.orderNo,
refundReason: this.query.cancelAppointmentReason,
refundPrice: this.query.totalPrice,
goodsStatus: this.query.orderStatus,
};
weChatRefundOrderApply(obj).then((res) => {
console.log(res);
});
},
switchOrderStatus(orderStatus) {
switch (orderStatus) {
case "WAIT_PAY":
@ -538,26 +660,23 @@ export default {
e.serviceDate + "-" + e.serviceStartTime + "-" + e.serviceEndTime;
}
});
this.OrderDetailsLists = res.data;
this.query = res.data;
this.query = res.data[0];
this.innerVisible4 = true;
console.log(this.query);
});
},
//
dispatch(row) {
console.log(row)
this.querynursePersonname.orderNo = row.orderNo
console.log(row);
this.querynursePersonname.orderNo = row.orderNo;
console.log(this.querynursePersonname.orderNo);
// console.log(row)
this.nurseName = "请选择护理员";
this.innerdispatch = true;
this.nursePersonid =""
this.nursePersonid = "";
},
//
clicknursePersonName() {
// console.log(this.dispatchlist);
getPerson(this.querynursePersonname).then((res) => {
this.dispatchlist = res.rows;
this.total2 = res.total;
@ -567,72 +686,40 @@ export default {
},
//
submitForm() {
// console.log(this.querynursePersonname)
// var obj = {}
// obj.nurseStationPersonId = nurseStationPersonId
// obj.orderNo = this.querynursePersonname.orderNo
let params={
nurseStationPersonId:this.nursePersonid,
orderNo:this.querynursePersonname.orderNo
}
let params = {
nurseStationPersonId: this.nursePersonid,
orderNo: this.querynursePersonname.orderNo,
};
dispatchsubmit(params).then((res) => {
if(res.code == 200){
if (res.code == 200) {
this.$modal.msgSuccess("派单成功");
}
this.nurseName = "请选择护理员";
this.innerdispatch = false;
this.getList();
this.nurseName = "请选择护理员";
// this.nursePersonid =""
})
});
},
//
nursePersonclick(row) {
this.nursePersonid = row.nurseStationPersonId
this.nurseName = row.nursePersonName
this.nursePersonid = row.nurseStationPersonId;
this.nurseName = row.nursePersonName;
this.nursePersonNameinfo = false;
console.log(row)
console.log(row);
},
// cencel(appointmentOrderId) {
// confirmCancel(appointmentOrderId).then((res) => {
// // this.nurseName="";
// // this.innerdispatch = false;
// })
// console.log(appointmentOrderId)
// },
// console.log(row.appointmentOrderId)
// this.appointmentOrderId = row.appointmentOrderId
// console.log('row :>> ', this.querynursecencel.appointmentOrderId);
// obj.appointmentOrderId=row.appointmentOrderId
//
cencel(appointmentOrderId) {
this.$confirm(
'是否确认取消订单',
"提示",
{
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
}
)
.then(() => {
console.log(appointmentOrderId)
let params={
appointmentOrderId:appointmentOrderId
//
cencel(row) {
Detailed(row.orderNo).then((res) => {
res.data.forEach((e) => {
if (e.serviceDate) {
e.time =
e.serviceDate + "-" + e.serviceStartTime + "-" + e.serviceEndTime;
}
confirmCancel(params).then((res) => {
this.$message.success("取消成功");
// this.getList();
// console.log('this.OrderDetailsList :>> ', this.OrderDetailsList);
});
})
.catch(() => { });
},
});
this.query = res.data[0];
this.innerrefund = true;
});
},
/** 查询护理类型信息列表 */
getList() {
this.loading = true;
@ -674,7 +761,7 @@ export default {
this.resetForm("queryForm");
this.handleQuery();
},
resetQuery2() {
resetQuery2() {
this.resetForm("queryForm");
this.handleQuery2();
},
@ -696,7 +783,6 @@ export default {
deldetailed(row.appointmentOrderId).then((res) => {
this.$message.success("删除成功");
this.getList();
// console.log('this.OrderDetailsList :>> ', this.OrderDetailsList);
});
})
.catch(() => {});

View File

@ -403,6 +403,7 @@
:visible.sync="innerVisible"
width="1000px"
append-to-body
:before-close="addcancel"
>
<el-form
ref="queryForm"
@ -526,6 +527,7 @@
:visible.sync="innerVisiblexg"
width="1000px"
append-to-body
:before-close="addcancel"
>
<el-form
ref="queryForm"
@ -822,11 +824,7 @@
align="center"
>
</el-table-column>
<el-table-column
property="phone"
label="联系电话"
align="center"
>
<el-table-column property="phone" label="联系电话" align="center">
</el-table-column>
</el-table>
<pagination
@ -1460,6 +1458,12 @@ export default {
// this.nurseStationlist()
},
/** 重置按钮操作 */
addcancel() {
this.innerVisible = false;
this.innerVisiblexg = false;
this.resetQuery2();
this.resetQuery3();
},
resetQuery2() {
this.nurseStationqueryParams = {
pageNum: 1,

View File

@ -1026,9 +1026,11 @@ export default {
// },
//
handleQuery2() {
console.log(this.nurseStationqueryParams);
this.nurseStationqueryParams.pageNum = 1;
this.info();
this.getListByUserquery.pageNum = 1;
getListByUser(this.getListByUserquery).then((res) => {
this.nurseStationlist = res.rows;
this.total3 = res.total;
});
},
/** 重置按钮操作 */
sresetQuery() {