This commit is contained in:
曹辉 2022-11-21 09:39:43 +08:00
parent b270c12684
commit 4ae1f94f1c
6 changed files with 152 additions and 60 deletions

View File

@ -40,6 +40,13 @@ export function editExpressNo(data) {
}) })
} }
//查看评价图片
export function selectOrderEvaluate(id) {
return request({
url: `/nurseApp/orderEvaluate/selectOrderEvaluate?orderNo=${id}`,
method: 'get',
})
}
// 退款确定按钮 // 退款确定按钮
export function weChatRefundOrderApply(data) { export function weChatRefundOrderApply(data) {
return request({ return request({

View File

@ -2,7 +2,7 @@ import request from '@/utils/request'
// 查询护理类型信息列表 // 查询护理类型信息列表
export function appointmentOrderDetailsList(query) { export function appointmentOrderDetailsList(query) {
return request({ return request({
url: 'system/appointmentOrder/list', url: '/system/appointmentOrder/list',
method: 'get', method: 'get',
params: query params: query
}) })
@ -68,4 +68,4 @@ export function confirmCancel(appointmentOrderId) {
url: `/system/appointmentOrder/confirmCancel?appointmentOrderId=${appointmentOrderId}`, url: `/system/appointmentOrder/confirmCancel?appointmentOrderId=${appointmentOrderId}`,
method: 'post' method: 'post'
}) })
} }

View File

@ -90,7 +90,10 @@
<el-button <el-button
type="primary" type="primary"
v-if="scope.row.orderStatus == 'RECEIVED_GOODS'" v-if="scope.row.orderStatus == 'RECEIVED_GOODS'"
>已收货</el-button >待评价</el-button
>
<el-button type="success" v-if="scope.row.orderStatus == 'EVALUATED'"
>交易完成</el-button
> >
<el-button <el-button
type="warning" type="warning"
@ -209,7 +212,7 @@
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@pagination="getList" @pagination="getList"
/> />
<!-- 查看商品信息弹框 --> <!-- 查看商品订单弹框 -->
<el-dialog <el-dialog
title="订单详情" title="订单详情"
:visible.sync="innerorder" :visible.sync="innerorder"
@ -224,56 +227,38 @@
label-width="120px" label-width="120px"
> >
<el-form-item label="订单编号" prop="orderNo"> <el-form-item label="订单编号" prop="orderNo">
<el-input <el-input v-model="orderList.orderNo" disabled style="width: 240px" />
v-model="orderList.orderNo"
:disabled="true"
style="width: 240px"
/>
</el-form-item> </el-form-item>
<el-form-item label="商品名称" prop="goodsName"> <el-form-item label="商品名称" prop="goodsName">
<el-input <el-input
v-model="orderList.goodsName" v-model="orderList.goodsName"
clearable disabled
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px" style="width: 240px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="订单金额" prop="totalPrice"> <el-form-item label="订单金额" prop="totalPrice">
<el-input <el-input
v-model="orderList.totalPrice" v-model="orderList.totalPrice"
clearable disabled
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px" style="width: 240px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="收货人" prop="receiveAddress"> <el-form-item label="收货人" prop="receiveAddress">
<el-input <el-input
v-model="orderList.receiver" v-model="orderList.receiver"
clearable disabled
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px" style="width: 240px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="收货地址" prop="receiveAddress"> <el-form-item label="收货地址" prop="receiveAddress">
<el-input <el-input
v-model="orderList.receiveAddress" v-model="orderList.receiveAddress"
clearable disabled
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px" style="width: 240px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="手机号" prop="phone"> <el-form-item label="手机号" prop="phone">
<el-input <el-input v-model="orderList.phone" disabled style="width: 240px" />
v-model="orderList.phone"
clearable
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px"
/>
</el-form-item> </el-form-item>
<!-- <el-form-item label="商品属性" prop="goodsAttributeName"> <!-- <el-form-item label="商品属性" prop="goodsAttributeName">
@ -305,40 +290,75 @@
</el-form-item> --> </el-form-item> -->
<el-form-item label="订单状态" prop="orderStatus"> <el-form-item label="订单状态" prop="orderStatus">
<!-- <el-form-item label="退款类型" prop="refundType">
<el-input
:value="refundTypeStatus(refundlist.refundType)"
disabled
style="width: 205px"
/>
</el-form-item> -->
<el-input <el-input
:value="orderStatusinfo(orderList.orderStatus)" :value="orderStatusinfo(orderList.orderStatus)"
clearable disabled
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px" style="width: 240px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="下单方式" prop="buySource"> <el-form-item label="下单方式" prop="buySource">
<el-input <el-input
:value="buySourceinfo(orderList.buySource)" :value="buySourceinfo(orderList.buySource)"
clearable disabled
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px" style="width: 240px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="购买来源" prop="orderChannel"> <el-form-item label="购买来源" prop="orderChannel">
<el-input <el-input
:value="orderChannelinfo(orderList.orderChannel)" :value="orderChannelinfo(orderList.orderChannel)"
clearable disabled
@keyup.enter.native="handleQuery"
:disabled="true"
style="width: 240px" style="width: 240px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="综合评分" v-if="ratelist.compositeScore">
<div style="width: 240px">
<el-rate
v-if="ratelist.compositeScore"
v-model="ratelist.compositeScore"
style="padding-top: 7px"
disabled
show-score
text-color="#ff9900"
score-template="{value}"
>
</el-rate>
<el-input
v-else
type="text"
disabled
style="width: 240px"
placeholder="未评分"
></el-input>
</div>
</el-form-item>
<el-form-item label="评价内容" v-if="ratelist.evaluateContent">
<el-input
type="textarea"
disabled
style="width: 240px"
v-model="ratelist.evaluateContent"
/>
</el-form-item>
<el-form-item
label="评价图片"
v-if="ratelist.orderEvaluatePictureInfoList"
>
<div
style="
display: flex;
flex-wrap: wrap;
justify-content: space-around;
"
>
<img
style="width:240px"
v-for="(item, index) in ratelist.orderEvaluatePictureInfoList"
:src="baseurl + item.evaluatePictureUrl"
alt=""
:key="index"
/>
</div>
</el-form-item>
<!-- <el-table <!-- <el-table
:data="orderList" :data="orderList"
align="center" align="center"

View File

@ -9,13 +9,15 @@ import {
editExpressNo, editExpressNo,
goodsOrderrefund, goodsOrderrefund,
weChatRefundOrderApply, weChatRefundOrderApply,
selectOrderEvaluate
} from "@/api/system/goodsOrder"; } from "@/api/system/goodsOrder";
import { getListByUser } from "@/api/system/userlist.js"; import { getListByUser } from "@/api/system/userlist.js";
import baseurl from '@/api/baseurl.js'
export default { export default {
name: "GoodsOrder", name: "GoodsOrder",
data() { data() {
return { return {
baseurl: null,
// 查看商品信息 // 查看商品信息
innerorder: false, innerorder: false,
// 查看物流信息 // 查看物流信息
@ -24,6 +26,7 @@ export default {
innerrefund: false, innerrefund: false,
orderList: [], orderList: [],
refundlist: [], refundlist: [],
ratelist: {}, //评分list
orderStatuslist: [{ orderStatuslist: [{
value: "WAIT_PAY", value: "WAIT_PAY",
label: "待付款", label: "待付款",
@ -38,6 +41,10 @@ export default {
}, },
{ {
value: "RECEIVED_GOODS", value: "RECEIVED_GOODS",
label: "未评价",
},
{
value: "EVALUATED",
label: "交易完成", label: "交易完成",
}, },
{ {
@ -117,6 +124,7 @@ export default {
}; };
}, },
created() { created() {
this.baseurl = baseurl
this.getList(); this.getList();
}, },
methods: { methods: {
@ -180,7 +188,7 @@ export default {
case "WAIT_RECEIVED_GOODS": case "WAIT_RECEIVED_GOODS":
return "待收货"; return "待收货";
case "RECEIVED_GOODS": case "RECEIVED_GOODS":
return "已收货"; return "未评价";
case "WAIT_REFUND": case "WAIT_REFUND":
return "退款中"; return "退款中";
case "REFUNDED": case "REFUNDED":
@ -189,6 +197,8 @@ export default {
return "待退货"; return "待退货";
case "RETURNED_GOODS": case "RETURNED_GOODS":
return "已退货"; return "已退货";
case "EVALUATED":
return "交易完成";
default: default:
break; break;
} }
@ -229,11 +239,18 @@ export default {
}, },
// 查看商品信息 // 查看商品信息
seeOrder(row) { seeOrder(row) {
console.log(row);
const id = row.orderNo; const id = row.orderNo;
getGoodsOrderlist(id).then((res) => { getGoodsOrderlist(id).then((res) => {
this.orderList = res.data; this.orderList = res.data;
this.innerorder = true; this.innerorder = true;
if (row.orderStatus == 'EVALUATED') {
this.ratelist = {}
selectOrderEvaluate(id).then(res => {
if (res.data) {
this.ratelist = res.data
}
})
}
}); });
}, },
// 查看录入物流单号弹框 // 查看录入物流单号弹框
@ -291,7 +308,6 @@ export default {
this.open = false; this.open = false;
this.reset(); this.reset();
}, },
//退款取消按钮 //退款取消按钮
refundcancel() { refundcancel() {
this.innerrefund = false; this.innerrefund = false;
@ -347,7 +363,6 @@ export default {
}; };
this.handleQuery(); this.handleQuery();
}, },
// 多选框选中数据 // 多选框选中数据
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id); this.ids = selection.map((item) => item.id);

View File

@ -91,7 +91,10 @@
<el-button type="primary" v-if="scope.row.orderStatus == 'NOT_FINISH'" <el-button type="primary" v-if="scope.row.orderStatus == 'NOT_FINISH'"
>未完成</el-button >未完成</el-button
> >
<el-button type="success" v-if="scope.row.orderStatus == 'COMPLETE'" <el-button type="primary" v-if="scope.row.orderStatus == 'COMPLETE'"
>未评价</el-button
>
<el-button type="success" v-if="scope.row.orderStatus == 'EVALUATED'"
>服务完成</el-button >服务完成</el-button
> >
<el-button <el-button
@ -108,7 +111,6 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="会员名称" align="center" prop="patientName" /> <el-table-column label="会员名称" align="center" prop="patientName" />
<el-table-column <el-table-column
label="操作" label="操作"
align="center" align="center"
@ -224,21 +226,27 @@
<el-form-item <el-form-item
label="服务到岗照片" label="服务到岗照片"
prop="onDutyPictureUrl" prop="onDutyPictureUrl"
v-if="query.orderStatus == 'COMPLETE'" v-if="
query.orderStatus == 'COMPLETE' || query.orderStatus == 'EVALUATED'
"
> >
<img class="img" :src="baseurl + query.onDutyPictureUrl" alt="" /> <img class="img" :src="baseurl + query.onDutyPictureUrl" alt="" />
</el-form-item> </el-form-item>
<el-form-item <el-form-item
label="服务结束照片" label="服务结束照片"
prop="serviceEndPictureUrl" prop="serviceEndPictureUrl"
v-if="query.orderStatus == 'COMPLETE'" v-if="
query.orderStatus == 'COMPLETE' || query.orderStatus == 'EVALUATED'
"
> >
<img class="img" :src="baseurl + query.serviceEndPictureUrl" alt="" /> <img class="img" :src="baseurl + query.serviceEndPictureUrl" alt="" />
</el-form-item> </el-form-item>
<el-form-item <el-form-item
label="用户确认签名" label="用户确认签名"
prop="userSignaturePictureUrl" prop="userSignaturePictureUrl"
v-if="query.orderStatus == 'COMPLETE'" v-if="
query.orderStatus == 'COMPLETE' || query.orderStatus == 'EVALUATED'
"
> >
<img <img
class="img" class="img"
@ -246,6 +254,17 @@
alt="" alt=""
/> />
</el-form-item> </el-form-item>
<el-form-item
label="评价满意度"
prop="evaluateSatisfaction"
v-if="query.orderStatus == 'EVALUATED'"
>
<el-input
v-model="query.evaluateSatisfaction"
disabled
style="width: 250px"
/>
</el-form-item>
<el-table <el-table
:data="query.appointmentOrderConsumableList" :data="query.appointmentOrderConsumableList"
align="center" align="center"

View File

@ -7,6 +7,9 @@ import {
xylWeChatRefundNotify, xylWeChatRefundNotify,
appointmentOrderDetails, appointmentOrderDetails,
} from "@/api/system/order"; } from "@/api/system/order";
import {
selectOrderEvaluate
} from "@/api/system/goodsOrder";
import { getListByUser } from "@/api/system/userlist.js"; import { getListByUser } from "@/api/system/userlist.js";
import baseurl from '@/api/baseurl.js' import baseurl from '@/api/baseurl.js'
export default { export default {
@ -41,6 +44,10 @@ export default {
}, },
{ {
value: "COMPLETE", value: "COMPLETE",
label: "未评价",
},
{
value: "EVALUATED",
label: "服务完成", label: "服务完成",
}, },
@ -111,7 +118,7 @@ export default {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
}, },
query: [], query: {},
// 表单参数 // 表单参数
form: {}, form: {},
// 表单校验 // 表单校验
@ -152,7 +159,7 @@ export default {
case "NOT_FINISH": case "NOT_FINISH":
return "未完成"; return "未完成";
case "COMPLETE": case "COMPLETE":
return "服务完成"; return "未评价";
case "PAY": case "PAY":
return "已付款"; return "已付款";
case "WAIT_REFUND": case "WAIT_REFUND":
@ -161,12 +168,15 @@ export default {
return "已取消"; return "已取消";
case "REFUNDED": case "REFUNDED":
return "已退款"; return "已退款";
case "EVALUATED":
return "服务完成";
default: default:
break; break;
} }
}, },
// 查看 // 查看
seeLook(row) { seeLook(row) {
this.loading = true
const id = row.orderNo; const id = row.orderNo;
appointmentOrderDetails(id).then((res) => { appointmentOrderDetails(id).then((res) => {
res.data.forEach((e) => { res.data.forEach((e) => {
@ -176,12 +186,33 @@ export default {
} }
}); });
this.query = res.data[0]; this.query = res.data[0];
this.innerVisible4 = true; this.query.evaluateSatisfaction = null
if (row.orderStatus == 'EVALUATED') {
selectOrderEvaluate(id).then(res => {
if (res.data) {
if (res.data.evaluateSatisfaction == 'COMMONLY') {
this.query.evaluateSatisfaction = '一般'
} else if (res.data.evaluateSatisfaction == 'SATISFIED') {
this.query.evaluateSatisfaction = '满意'
} else if (res.data.evaluateSatisfaction == 'DISSATISFIED') {
this.query.evaluateSatisfaction = '不满意'
}
this.loading = false
this.innerVisible4 = true;
} else {
this.loading = false
this.innerVisible4 = true;
}
})
} else {
this.loading = false
this.innerVisible4 = true;
}
}); });
}, },
// 派单 // 派单
dispatch(row) { dispatch(row) {
console.log(row);
this.querynursePersonname.orderNo = row.orderNo; this.querynursePersonname.orderNo = row.orderNo;
this.nurseName = "请选择护理员"; this.nurseName = "请选择护理员";
this.innerdispatch = true; this.innerdispatch = true;
@ -253,7 +284,7 @@ export default {
this.info(); this.info();
this.nurseStationshow = true this.nurseStationshow = true
}, },
/** 查询护理类型信息列表 */ /** 订单信息列表 */
getList() { getList() {
this.loading = true; this.loading = true;
appointmentOrderDetailsList(this.queryParams).then((response) => { appointmentOrderDetailsList(this.queryParams).then((response) => {