feat 添加发货,订单改价,审核取消订单的弹窗,修改订单详情页的bug

This commit is contained in:
lwh 2023-09-05 01:30:06 +08:00
parent d3a9bbdc89
commit e31d2fe762
9 changed files with 927 additions and 323 deletions

View File

@ -18,6 +18,42 @@ export function orderList(query) {
}) })
} }
// 订单详情
export function getOrderDetails(query) {
return request({
url: '/business/Order/getOrderDetails',
method: 'get',
params: query
})
}
// 订单发货
export function deliver(data) {
return request({
url: '/business/Order/deliver',
method: 'post',
data: data,
})
}
// 订单改价
export function changePrice(data) {
return request({
url: '/business/Order/changePrice',
method: 'post',
data: data,
})
}
// 审核取消订单
export function cancelOrder(data) {
return request({
url: '/business/Order/cancelOrder',
method: 'post',
data: data,
})
}
// 订单新增或修改 // 订单新增或修改
export function addOrUpdateOrder(data) { export function addOrUpdateOrder(data) {
return request({ return request({

View File

@ -136,9 +136,9 @@
</el-col> </el-col>
<!-- TODO: Sku单个 --> <!-- TODO: Sku单个 -->
<el-col :lg="24"> <el-col :lg="24">
<el-form-item :label-width="labelWidth" label="商品重量" prop="goodsSalesInitial"> <el-form-item :label-width="labelWidth" label="商品重量" prop="">
<div style="display: block;"> <div style="display: block;">
<el-input-number v-model.number="formData.goodsSalesInitial" controls-position="right" :min="0" <el-input-number v-model.number="formData.goodsWeight" controls-position="right" :min="0"
:precision="2" /> :precision="2" />
<span style="margin-left: 10px;">Kg</span> <span style="margin-left: 10px;">Kg</span>
<div class="input-intro">商品的实际重量用于计算运费</div> <div class="input-intro">商品的实际重量用于计算运费</div>

View File

@ -132,9 +132,9 @@
</el-col> </el-col>
<!-- TODO: Sku单个 --> <!-- TODO: Sku单个 -->
<el-col :lg="24"> <el-col :lg="24">
<el-form-item :label-width="labelWidth" label="商品重量" prop="goodsSalesInitial"> <el-form-item :label-width="labelWidth" label="商品重量" prop="">
<div style="display: block;"> <div style="display: block;">
<el-input-number v-model.number="formData.goodsSalesInitial" controls-position="right" :min="0" <el-input-number v-model.number="formData.goodsWeight" controls-position="right" :min="0"
:precision="2" /> :precision="2" />
<span style="margin-left: 10px;">Kg</span> <span style="margin-left: 10px;">Kg</span>
<div class="input-intro">商品的实际重量用于计算运费</div> <div class="input-intro">商品的实际重量用于计算运费</div>

View File

@ -0,0 +1,135 @@
<!--
* @Descripttion: (订单/tb_order 审核取消订单弹窗)
* @version: (1.0)
* @Author: (lwh)
* @Date: (2023-09-04)
* @LastEditors: (lwh)
* @LastEditTime: (2023-09-04)
-->
<template>
<el-dialog v-model="props.modelValue" title="审核取消订单" width="600px" @closed="closeDialog" @open="openDialog">
<el-form ref="formRef" :model="formData" :rules="rules">
<el-row :gutter="20">
<el-col :lg="24">
<el-form-item :label-width="labelWidth" label="订单金额" prop="">
{{ formData.orderAmount }}
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :lg="24">
<el-form-item :label-width="labelWidth" label="审核状态" prop="isAgree">
<div class="radio-box">
<el-radio-group style="display: flex;" v-model="formData.isAgree">
<el-radio :label=true>同意</el-radio>
<el-radio :label=false>拒绝</el-radio>
</el-radio-group>
<div class="input-intro">同意后将退回付款金额并关闭订单</div>
</div>
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="handleEditClick(formRef)" :loading="loadingStatus">确认</el-button>
<el-button @click="handleResetClick(formRef)">重置</el-button>
</div>
</template>
</el-dialog>
</template>
<script setup>
import { ElMessage } from 'element-plus'
import modal from '@/plugins/modal.js'
import { reactive, ref, watch } from "vue";
import { cancelOrder } from "@/api/business/OrderManage/Orders/order.js";
//
const openDialog = async () => {
}
const formData = ref({
...props.data,
});
watch(props, async (v) => {
formData.value = v.data;
});
//
// -
// -
const props = defineProps({
modelValue: Boolean,
data: Object,
done: Function,
});
const loadingStatus = ref(false)
const labelWidth = 100;
const formRef = ref();
const { proxy } = getCurrentInstance()
const emits = defineEmits(["update:modelValue"]);
const imgData = ref({
fileDir: "Order"
})
//
const rules = reactive({
isAgree: [{ required: true, message: "审核状态不能为空", trigger: "blur" }],
});
// -
//
const handleEditClick = async (formEl) => {
if (!formEl) return;
formEl.validate(async (valid) => {
if (!valid) {
return;
}
loadingStatus.value = true
const { code,data } = await cancelOrder(formData.value);
if (code == 200) {
modal.msgSuccess(data)
props.done();
closeDialog();
loadingStatus.value = false
}
});
}
const handleResetClick = async (formEl) => {
if (!formEl) return;
formEl.resetFields();
}
const closeDialog = () => {
emits("update:modelValue", false);
};
</script>
<style>
.input-intro {
color: #8c8c8c;
font-size: 12px;
}
.radio-box {
display: flex;
flex-direction: column;
}
</style>

View File

@ -0,0 +1,119 @@
<!--
* @Descripttion: (订单/tb_order 订单改价弹窗)
* @version: (1.0)
* @Author: (lwh)
* @Date: (2023-09-04)
* @LastEditors: (lwh)
* @LastEditTime: (2023-09-04)
-->
<template>
<el-dialog v-model="props.modelValue" title="订单改价" width="600px" @closed="closeDialog" @open="openDialog">
<el-form ref="formRef" :model="formData" :rules="rules">
<el-row :gutter="20">
<el-col :lg="24">
<el-form-item :label-width="labelWidth" label="订单金额" prop="orderAmount">
<el-input-number v-model.number="formData.orderAmount" controls-position="right" :min="0" :precision="2"/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :lg="24">
<el-form-item :label-width="labelWidth" label="运费金额" prop="expressPrice">
<el-input-number v-model.number="formData.expressPrice" controls-position="right" :min="0" :precision="2"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="handleEditClick(formRef)" :loading="loadingStatus">确认</el-button>
<el-button @click="handleResetClick(formRef)">重置</el-button>
</div>
</template>
</el-dialog>
</template>
<script setup>
import { ElMessage } from 'element-plus'
import modal from '@/plugins/modal.js'
import { reactive, ref, watch } from "vue";
import { changePrice } from "@/api/business/OrderManage/Orders/order.js";
//
const openDialog = async () => {
}
const formData = ref({
...props.data,
});
watch(props, async (v) => {
formData.value = v.data;
});
//
// -
// -
const props = defineProps({
modelValue: Boolean,
data: Object,
done: Function,
});
const loadingStatus = ref(false)
const labelWidth = 100;
const formRef = ref();
const { proxy } = getCurrentInstance()
const emits = defineEmits(["update:modelValue"]);
const imgData = ref({
fileDir: "Order"
})
//
const rules = reactive({
orderAmount: [{ required: true, message: "订单金额不能为空", trigger: "blur" }],
expressPrice: [{ required: true, message: "运费金额不能为空", trigger: "blur" }],
});
// -
//
const handleEditClick = async (formEl) => {
if (!formEl) return;
formEl.validate(async (valid) => {
if (!valid) {
return;
}
loadingStatus.value = true
const { code } = await changePrice(formData.value);
if (code == 200) {
modal.msgSuccess('金额修改成功')
props.done();
closeDialog();
loadingStatus.value = false
}
});
}
const handleResetClick = async (formEl) => {
if (!formEl) return;
formEl.resetFields();
}
const closeDialog = () => {
emits("update:modelValue", false);
};
</script>

View File

@ -0,0 +1,144 @@
<!--
* @Descripttion: (订单/tb_order 订单发货弹窗)
* @version: (1.0)
* @Author: (lwh)
* @Date: (2023-09-03)
* @LastEditors: (lwh)
* @LastEditTime: (2023-09-03)
-->
<template>
<el-dialog v-model="props.modelValue" title="订单发货" width="600px" @closed="closeDialog" @open="openDialog">
<el-form ref="formRef" :model="formData" :rules="rules">
<el-row :gutter="20">
<el-col :lg="24">
<el-form-item :label-width="labelWidth" label="物流公司" prop="logisticsCompany" >
<el-select v-model="formData.logisticsCompany" placeholder="请选择物流公司" >
<el-option v-for="item in logisticsCompanyDataList" :key="item.logisticsCompanyId"
:label="item.logisticsCompanyName" :value="item.logisticsCompanyName" @click="handleCompanyChange(item)" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :lg="24">
<el-form-item :label-width="labelWidth" label="物流单号" prop="logisticsTrackingNumber">
<el-input v-model="formData.logisticsTrackingNumber" placeholder="请输入物流单号" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="handleEditClick(formRef)" :loading="loadingStatus">确认发货</el-button>
<el-button @click="handleResetClick(formRef)">重置</el-button>
</div>
</template>
</el-dialog>
</template>
<script setup>
import { ElMessage } from 'element-plus'
import modal from '@/plugins/modal.js'
import { reactive, ref, watch } from "vue";
import { deliver } from "@/api/business/OrderManage/Orders/order.js";
import { logisticsCompanyList } from '@/api/business/LogisticsManage/LogisticsCompanys/logisticsCompany.js'
//
const openDialog = async () => {
await getCompanyList()
}
const formData = ref({
...props.data,
});
watch(props, async (v) => {
formData.value = v.data;
});
//
//
const logisticsCompanyDataList = ref([]);
// -
/** 获取物流公司列表 */
async function getCompanyList() {
logisticsCompanyList({
pageNum: 1,
pageSize: 10000
}).then((res) => {
if (res.code == 200) {
logisticsCompanyDataList.value = res.data.result;
}
});
}
// -
const props = defineProps({
modelValue: Boolean,
data: Object,
done: Function,
});
const loadingStatus = ref(false)
const labelWidth = 100;
const formRef = ref();
const { proxy } = getCurrentInstance()
const emits = defineEmits(["update:modelValue"]);
const imgData = ref({
fileDir: "Order"
})
//
const rules = reactive({
logisticsCompany: [{ required: true, message: "请选择物流公司", trigger: "blur" }],
logisticsTrackingNumber: [{ required: true, message: "请填写物流单号", trigger: "blur" }],
});
// -
//
const handleEditClick = async (formEl) => {
if (!formEl) return;
formEl.validate(async (valid) => {
if (!valid) {
return;
}
loadingStatus.value = true
const { code } = await deliver(formData.value);
if (code == 200) {
modal.msgSuccess('发货成功')
props.done();
closeDialog();
loadingStatus.value = false
}
});
}
const handleCompanyChange = async (item) => {
formData.value.logisticsCompanyGuid = item.logisticsCompanyGuid
}
const handleResetClick = async (formEl) => {
if (!formEl) return;
formEl.resetFields();
}
const closeDialog = () => {
logisticsCompanyDataList.value.length = 0
formData.value = null
emits("update:modelValue", false);
};
</script>

View File

@ -10,218 +10,229 @@
<el-dialog v-model="props.modelValue" title="修改订单信息" width="900px" @closed="closeDialog" @open="openDialog"> <el-dialog v-model="props.modelValue" title="修改订单信息" width="900px" @closed="closeDialog" @open="openDialog">
<el-form ref="formRef" :model="formData" :rules="rules"> <el-form ref="formRef" :model="formData" :rules="rules">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="商品guid" prop="goodsGuid">
<el-input v-model="formData.goodsGuid" placeholder="请输入商品guid" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="订单流水guid" prop="paymentGuid">
<el-input v-model="formData.paymentGuid" placeholder="请输入订单流水guid" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="客户guid" prop="customerGuid">
<el-input v-model="formData.customerGuid" placeholder="请输入客户guid" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="店铺guid" prop="shopGuid">
<el-input v-model="formData.shopGuid" placeholder="请输入店铺guid" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="订单号" prop="orderNumber">
<el-input v-model="formData.orderNumber" placeholder="请输入订单号" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="商品总金额" prop="goodsTotalAmoun">
<el-input v-model="formData.goodsTotalAmoun" placeholder="请输入商品总金额" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="订单金额" prop="orderAmount">
<el-input v-model="formData.orderAmount" placeholder="请输入订单金额" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="优惠券guid" prop="couponGuid">
<el-input v-model="formData.couponGuid" placeholder="请输入优惠券guid" />
</el-form-item>
</el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="优惠券抵扣金额" prop="couponMoney"> <el-form-item :label-width="labelWidth" label="商品guid" prop="goodsGuid">
<el-input v-model="formData.couponMoney" placeholder="请输入优惠券抵扣金额" /> <el-input v-model="formData.goodsGuid" placeholder="请输入商品guid" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="积分抵扣金额" prop="pointsMoney"> <el-form-item :label-width="labelWidth" label="订单流水guid" prop="paymentGuid">
<el-input v-model="formData.pointsMoney" placeholder="请输入积分抵扣金额" /> <el-input v-model="formData.paymentGuid" placeholder="请输入订单流水guid" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="积分抵扣数量" prop="pointsNum"> <el-form-item :label-width="labelWidth" label="客户guid" prop="customerGuid">
<el-input v-model="formData.pointsNum" placeholder="请输入积分抵扣数量" /> <el-input v-model="formData.customerGuid" placeholder="请输入客户guid" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="实际付款金额(包含运费)" prop="payPrice"> <el-form-item :label-width="labelWidth" label="店铺guid" prop="shopGuid">
<el-input v-model="formData.payPrice" placeholder="请输入实际付款金额(包含运费)" /> <el-input v-model="formData.shopGuid" placeholder="请输入店铺guid" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="后台修改的订单金额(差价)" prop="updatePrice"> <el-form-item :label-width="labelWidth" label="订单号" prop="orderNumber">
<el-input v-model="formData.updatePrice" placeholder="请输入后台修改的订单金额(差价)" /> <el-input v-model="formData.orderNumber" placeholder="请输入订单号" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="买家留言" prop="orderRemark"> <el-form-item :label-width="labelWidth" label="商品总金额" prop="goodsTotalAmoun">
<el-input v-model="formData.orderRemark" placeholder="请输入买家留言" /> <el-input v-model="formData.goodsTotalAmoun" placeholder="请输入商品总金额" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="支付方式(1微信支付 2余额支付)" prop="payType">
<el-select v-model="formData.payType" placeholder="请选择支付方式(1微信支付 2余额支付)">
<el-option v-for="item in pay_type " :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="付款状态(1未付款 2已付款)" prop="payStatus">
<el-select v-model="formData.payStatus" placeholder="请选择付款状态(1未付款 2已付款)">
<el-option v-for="item in pay_status " :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="付款时间" prop="payTime"> <el-form-item :label-width="labelWidth" label="订单金额" prop="orderAmount">
<el-date-picker v-model="formData.payTime" type="datetime" :teleported="false" placeholder="选择日期时间"></el-date-picker> <el-input v-model="formData.orderAmount" placeholder="请输入订单金额" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="配送方式(1快递配送)" prop="deliveryType">
<el-select v-model="formData.deliveryType" placeholder="请选择配送方式(1快递配送)">
<el-option v-for="item in delivery_type " :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="运费金额" prop="expressPrice"> <el-form-item :label-width="labelWidth" label="优惠券guid" prop="couponGuid">
<el-input v-model="formData.expressPrice" placeholder="请输入运费金额" /> <el-input v-model="formData.couponGuid" placeholder="请输入优惠券guid" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="物流公司guid" prop="logisticsCompanyGuid">
<el-input v-model="formData.logisticsCompanyGuid" placeholder="请输入物流公司guid" />
</el-form-item>
</el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="物流公司" prop="logisticsCompany"> <el-form-item :label-width="labelWidth" label="优惠券抵扣金额" prop="couponMoney">
<el-input v-model="formData.logisticsCompany" placeholder="请输入物流公司" /> <el-input v-model="formData.couponMoney" placeholder="请输入优惠券抵扣金额" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="物流单号" prop="logisticsTrackingNumber"> <el-form-item :label-width="labelWidth" label="积分抵扣金额" prop="pointsMoney">
<el-input v-model="formData.logisticsTrackingNumber" placeholder="请输入物流单号" /> <el-input v-model="formData.pointsMoney" placeholder="请输入积分抵扣金额" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="发货状态(1未发货 2已发货)" prop="deliveryStatus">
<el-select v-model="formData.deliveryStatus" placeholder="请选择发货状态(1未发货 2已发货)">
<el-option v-for="item in delivery_status " :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="发货时间" prop="deliveryTime"> <el-form-item :label-width="labelWidth" label="积分抵扣数量" prop="pointsNum">
<el-date-picker v-model="formData.deliveryTime" type="datetime" :teleported="false" placeholder="选择日期时间"></el-date-picker> <el-input v-model="formData.pointsNum" placeholder="请输入积分抵扣数量" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="收货状态(1未收货 2已收货)" prop="receiptStatus">
<el-select v-model="formData.receiptStatus" placeholder="请选择收货状态(1未收货 2已收货)">
<el-option v-for="item in receipt_status " :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="收货时间" prop="receiptTime"> <el-form-item :label-width="labelWidth" label="实际付款金额(包含运费)" prop="payPrice">
<el-date-picker v-model="formData.receiptTime" type="datetime" :teleported="false" placeholder="选择日期时间"></el-date-picker> <el-input v-model="formData.payPrice" placeholder="请输入实际付款金额(包含运费)" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="订单状态(1进行中 2取消 3待取消 4已完成)" prop="orderStatus">
<el-select v-model="formData.orderStatus" placeholder="请选择订单状态(1进行中 2取消 3待取消 4已完成)">
<el-option v-for="item in order_status " :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="赠送的积分数量" prop="pointsBonus"> <el-form-item :label-width="labelWidth" label="后台修改的订单金额(差价)" prop="updatePrice">
<el-input v-model="formData.pointsBonus" placeholder="请输入赠送的积分数量" /> <el-input v-model="formData.updatePrice" placeholder="请输入后台修改的订单金额(差价)" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="订单是否已结算(1未结算 2已结算)" prop="isSettled">
<el-select v-model="formData.isSettled" placeholder="请选择订单是否已结算(1未结算 2已结算)">
<el-option v-for="item in is_settled " :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="微信支付交易号" prop="transactionId"> <el-form-item :label-width="labelWidth" label="买家留言" prop="orderRemark">
<el-input v-model="formData.transactionId" placeholder="请输入微信支付交易号" /> <el-input v-model="formData.orderRemark" placeholder="请输入买家留言" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="12"> <el-col :lg="12">
<el-form-item :label-width="labelWidth" label="是否已评价(1否 2是)" prop="isComment"> <el-form-item :label-width="labelWidth" label="支付方式(1微信支付 2余额支付)" prop="payType">
<el-select v-model="formData.isComment" placeholder="请选择是否已评价(1否 2是)"> <el-select v-model="formData.payType" placeholder="请选择支付方式(1微信支付 2余额支付)">
<el-option v-for="item in is_comment " :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option> <el-option v-for="item in pay_type " :key="item.dictValue" :label="item.dictLabel"
</el-select> :value="parseInt(item.dictValue)"></el-option>
</el-form-item> </el-select>
</el-col> </el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="订单来源(1普通订单)" prop="orderSource"> <el-col :lg="12">
<el-input v-model="formData.orderSource" placeholder="请输入订单来源(1普通订单)" /> <el-form-item :label-width="labelWidth" label="付款状态(1未付款 2已付款)" prop="payStatus">
</el-form-item> <el-select v-model="formData.payStatus" placeholder="请选择付款状态(1未付款 2已付款)">
</el-col> <el-option v-for="item in pay_status " :key="item.dictValue" :label="item.dictLabel"
:value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="付款时间" prop="payTime">
<el-date-picker v-model="formData.payTime" type="datetime" :teleported="false"
placeholder="选择日期时间"></el-date-picker>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="配送方式(1快递配送)" prop="deliveryType">
<el-select v-model="formData.deliveryType" placeholder="请选择配送方式(1快递配送)">
<el-option v-for="item in delivery_type " :key="item.dictValue" :label="item.dictLabel"
:value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="运费金额" prop="expressPrice">
<el-input v-model="formData.expressPrice" placeholder="请输入运费金额" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="物流公司guid" prop="logisticsCompanyGuid">
<el-input v-model="formData.logisticsCompanyGuid" placeholder="请输入物流公司guid" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="物流公司" prop="logisticsCompany">
<el-input v-model="formData.logisticsCompany" placeholder="请输入物流公司" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="物流单号" prop="logisticsTrackingNumber">
<el-input v-model="formData.logisticsTrackingNumber" placeholder="请输入物流单号" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="发货状态(1未发货 2已发货)" prop="deliveryStatus">
<el-select v-model="formData.deliveryStatus" placeholder="请选择发货状态(1未发货 2已发货)">
<el-option v-for="item in delivery_status " :key="item.dictValue" :label="item.dictLabel"
:value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="发货时间" prop="deliveryTime">
<el-date-picker v-model="formData.deliveryTime" type="datetime" :teleported="false"
placeholder="选择日期时间"></el-date-picker>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="收货状态(1未收货 2已收货)" prop="receiptStatus">
<el-select v-model="formData.receiptStatus" placeholder="请选择收货状态(1未收货 2已收货)">
<el-option v-for="item in receipt_status " :key="item.dictValue" :label="item.dictLabel"
:value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="收货时间" prop="receiptTime">
<el-date-picker v-model="formData.receiptTime" type="datetime" :teleported="false"
placeholder="选择日期时间"></el-date-picker>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="订单状态(1进行中 2取消 3待取消 4已完成)" prop="orderStatus">
<el-select v-model="formData.orderStatus" placeholder="请选择订单状态(1进行中 2取消 3待取消 4已完成)">
<el-option v-for="item in order_status " :key="item.dictValue" :label="item.dictLabel"
:value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="赠送的积分数量" prop="pointsBonus">
<el-input v-model="formData.pointsBonus" placeholder="请输入赠送的积分数量" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="订单是否已结算(1未结算 2已结算)" prop="isSettled">
<el-select v-model="formData.isSettled" placeholder="请选择订单是否已结算(1未结算 2已结算)">
<el-option v-for="item in is_settled " :key="item.dictValue" :label="item.dictLabel"
:value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="微信支付交易号" prop="transactionId">
<el-input v-model="formData.transactionId" placeholder="请输入微信支付交易号" />
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="是否已评价(1否 2是)" prop="isComment">
<el-select v-model="formData.isComment" placeholder="请选择是否已评价(1否 2是)">
<el-option v-for="item in is_comment " :key="item.dictValue" :label="item.dictLabel"
:value="parseInt(item.dictValue)"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :lg="12">
<el-form-item :label-width="labelWidth" label="订单来源(1普通订单)" prop="orderSource">
<el-input v-model="formData.orderSource" placeholder="请输入订单来源(1普通订单)" />
</el-form-item>
</el-col>
@ -244,19 +255,19 @@
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import modal from '@/plugins/modal.js' import modal from '@/plugins/modal.js'
import { reactive, ref, watch } from "vue"; import { reactive, ref, watch } from "vue";
import { addOrUpdateOrder } from "@/api/business/OrderManage/Orders/order.js"; import { addOrUpdateOrder } from "@/api/business/OrderManage/Orders/order.js";
// //
const openDialog = async () => { const openDialog = async () => {
await getpay_type() await getpay_type()
await getpay_status() await getpay_status()
await getdelivery_type() await getdelivery_type()
await getdelivery_status() await getdelivery_status()
await getreceipt_status() await getreceipt_status()
await getorder_status() await getorder_status()
await getis_settled() await getis_settled()
await getis_comment() await getis_comment()
} }
@ -356,25 +367,25 @@ const imgData = ref({
// //
const rules = reactive({ const rules = reactive({
orderGuid: [{ required: true, message: "不能为空", trigger: "blur", type: "number" }], orderGuid: [{ required: true, message: "不能为空", trigger: "blur", type: "number" }],
goodsGuid: [{ required: true, message: "商品guid不能为空", trigger: "blur", type: "number" }], goodsGuid: [{ required: true, message: "商品guid不能为空", trigger: "blur", type: "number" }],
paymentGuid: [{ required: true, message: "订单流水guid不能为空", trigger: "blur", type: "number" }], paymentGuid: [{ required: true, message: "订单流水guid不能为空", trigger: "blur", type: "number" }],
customerGuid: [{ required: true, message: "客户guid不能为空", trigger: "blur", type: "number" }], customerGuid: [{ required: true, message: "客户guid不能为空", trigger: "blur", type: "number" }],
orderNumber: [{ required: true, message: "订单号不能为空", trigger: "blur" }], orderNumber: [{ required: true, message: "订单号不能为空", trigger: "blur" }],
goodsTotalAmoun: [{ required: true, message: "商品总金额不能为空", trigger: "blur" }], goodsTotalAmoun: [{ required: true, message: "商品总金额不能为空", trigger: "blur" }],
orderAmount: [{ required: true, message: "订单金额不能为空", trigger: "blur" }], orderAmount: [{ required: true, message: "订单金额不能为空", trigger: "blur" }],
payPrice: [{ required: true, message: "实际付款金额(包含运费)不能为空", trigger: "blur" }], payPrice: [{ required: true, message: "实际付款金额(包含运费)不能为空", trigger: "blur" }],
payType: [{ required: true, message: "支付方式(1微信支付 2余额支付)不能为空", trigger: "change", type: "number" }], payType: [{ required: true, message: "支付方式(1微信支付 2余额支付)不能为空", trigger: "change", type: "number" }],
payStatus: [{ required: true, message: "付款状态(1未付款 2已付款)不能为空", trigger: "change", type: "number" }], payStatus: [{ required: true, message: "付款状态(1未付款 2已付款)不能为空", trigger: "change", type: "number" }],
payTime: [{ required: true, message: "付款时间不能为空", trigger: "blur" }], payTime: [{ required: true, message: "付款时间不能为空", trigger: "blur" }],
deliveryType: [{ required: true, message: "配送方式(1快递配送)不能为空", trigger: "change", type: "number" }], deliveryType: [{ required: true, message: "配送方式(1快递配送)不能为空", trigger: "change", type: "number" }],
expressPrice: [{ required: true, message: "运费金额不能为空", trigger: "blur" }], expressPrice: [{ required: true, message: "运费金额不能为空", trigger: "blur" }],
deliveryStatus: [{ required: true, message: "发货状态(1未发货 2已发货)不能为空", trigger: "change", type: "number" }], deliveryStatus: [{ required: true, message: "发货状态(1未发货 2已发货)不能为空", trigger: "change", type: "number" }],
receiptStatus: [{ required: true, message: "收货状态(1未收货 2已收货)不能为空", trigger: "change", type: "number" }], receiptStatus: [{ required: true, message: "收货状态(1未收货 2已收货)不能为空", trigger: "change", type: "number" }],
orderStatus: [{ required: true, message: "订单状态(1进行中 2取消 3待取消 4已完成)不能为空", trigger: "change", type: "number" }], orderStatus: [{ required: true, message: "订单状态(1进行中 2取消 3待取消 4已完成)不能为空", trigger: "change", type: "number" }],
isSettled: [{ required: true, message: "订单是否已结算(1未结算 2已结算)不能为空", trigger: "change", type: "number" }], isSettled: [{ required: true, message: "订单是否已结算(1未结算 2已结算)不能为空", trigger: "change", type: "number" }],
isComment: [{ required: true, message: "是否已评价(1否 2是)不能为空", trigger: "change", type: "number" }], isComment: [{ required: true, message: "是否已评价(1否 2是)不能为空", trigger: "change", type: "number" }],
orderSource: [{ required: true, message: "订单来源(1普通订单)不能为空", trigger: "blur", type: "number" }], orderSource: [{ required: true, message: "订单来源(1普通订单)不能为空", trigger: "blur", type: "number" }],
}); });
// - // -

View File

@ -76,7 +76,7 @@
@selection-change="handleSelectionChange"> @selection-change="handleSelectionChange">
<el-table-column type="selection" width="50" align="center" /> <el-table-column type="selection" width="50" align="center" />
<el-table-column prop="goodsInfo" label="商品信息 / 单价与数量" width="450"> <el-table-column prop="goodsInfo" label="商品信息 / 单价与数量" width="500">
<template #default="scope"> <template #default="scope">
<div class="order-num-box"> <div class="order-num-box">
<div>订单号<b>{{ scope.row.orderNumber }}</b></div> <div>订单号<b>{{ scope.row.orderNumber }}</b></div>
@ -290,23 +290,6 @@ async function getorder_status() {
}) })
} }
getorder_status() getorder_status()
//
const is_settled = ref([]);
async function getis_settled() {
await proxy.getDicts('is_settled').then((res) => {
is_settled.value = res.data
})
}
getis_settled()
//
const is_comment = ref([]);
async function getis_comment() {
await proxy.getDicts('is_comment').then((res) => {
is_comment.value = res.data
})
}
getis_comment()
@ -316,7 +299,6 @@ getis_comment()
function getList() { function getList() {
loading.value = true loading.value = true
orderList(proxy.addDateRange(queryParams.value, dateRange.value)).then((res) => { orderList(proxy.addDateRange(queryParams.value, dateRange.value)).then((res) => {
if (res.code == 200) { if (res.code == 200) {
loading.value = false; loading.value = false;
@ -400,7 +382,7 @@ function handleUpdate(row) {
// //
function handleDetail(row) { function handleDetail(row) {
router.push("/orders/orderDetail") router.push("/orders/orderDetail?orderId=" + row.orderId)
// DetailDialogVisible.value = true // DetailDialogVisible.value = true
// DetailDialogRow.value = row // DetailDialogRow.value = row
} }
@ -408,7 +390,7 @@ function handleDetail(row) {
handleQuery() handleQuery()
</script> </script>
<style lang="scss"> <style lang="scss" scoped>
.goods-info-box { .goods-info-box {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;

View File

@ -5,27 +5,23 @@
<ul> <ul>
<li> <li>
<span>下单时间</span> <span>下单时间</span>
<div class="tip">1</div> <div class="tip">{{ detail.createTime }}</div>
<!-- <div class="tip">{{ record.create_time }}</div> -->
</li> </li>
<li> <li>
<span>付款</span> <span>付款</span>
<!-- <div v-if="record.pay_status == PayStatusEnum.SUCCESS.value" class="tip">付款于 {{ record.pay_time }}</div> --> <div v-if="detail.payStatus == 2" class="tip">付款于 {{ detail.payTime }}</div>
</li> </li>
<li> <li>
<span>发货</span> <span>发货</span>
<!-- <div v-if="record.delivery_status == DeliveryStatusEnum.DELIVERED.value" class="tip">发货于 {{ <div v-if="detail.deliveryStatus == 2" class="tip">发货于 {{ detail.deliveryTime }}</div>
record.delivery_time }}</div> -->
</li> </li>
<li> <li>
<span>收货</span> <span>收货</span>
<!-- <div v-if="record.receipt_status == ReceiptStatusEnum.RECEIVED.value" class="tip">收货于 {{ <div v-if="detail.receiptStatus == 2" class="tip">收货于 {{ detail.receiptTime }}</div>
record.receipt_time }}</div> -->
</li> </li>
<li> <li>
<span>完成</span> <span>完成</span>
<!-- <div v-if="record.order_status == OrderStatusEnum.COMPLETED.value" class="tip">完成于 {{ <div v-if="detail.orderStatus == 4" class="tip">完成于 {{ detail.receiptTime }}</div>
record.receipt_time }}</div> -->
</li> </li>
</ul> </ul>
</div> </div>
@ -35,36 +31,57 @@
<!-- 订单信息 --> <!-- 订单信息 -->
<el-card class="box-card"> <el-card class="box-card">
<!-- 订单操作 --> <template v-if="detail.orderStatus != 2">
<div class="order-operation"> <!-- 订单操作 -->
<div class="card-title">订单操作</div> <div class="order-operation">
<div class="card-title">订单操作</div>
<!-- 订单改价 -->
<div class="btn-box">
<el-button v-if="detail.payStatus == 1" @click="handleChangePrice(detail)">订单改价</el-button>
<!-- 发货 -->
<el-button v-if="(
detail.payStatus == 2
&& detail.deliveryType == 1
&& detail.deliveryStatus == 1
&& detail.orderStatus != 2
&& detail.orderStatus != 3
)" type="primary" @click="handleDeliver(detail)"> </el-button>
<!-- 审核取消订单 -->
<div v-if="detail.orderStatus == 3" style="width: 100%;">
<el-alert title="当前买家已付款并申请取消订单,请审核是否同意,如同意则自动退回付款金额(原路退款)并关闭订单。"
type="warning" show-icon :closable=false />
<div>
<el-button type="primary"
@click="handleCancelOrder(detail)">审核取消订单</el-button>
</div>
</div>
</div>
<div class="btn-box">
<el-button type="primary"> </el-button>
</div> </div>
</div> <el-divider />
</template>
<el-divider />
<div class="order-info"> <div class="order-info">
<div class="card-title">订单信息</div> <div class="card-title">订单信息</div>
<el-row class="order-info-box"> <el-row class="order-info-box">
<el-col :span="8">订单号 11111</el-col> <el-col :span="8">订单号 {{ detail.orderNumber }}</el-col>
<el-col :span="8">实付款金额 11111</el-col> <el-col :span="8">实付款金额{{ detail.payPrice }}</el-col>
<el-col :span="8">支付方式 11111</el-col> <el-col :span="8">支付方式 <dict-tag :options="pay_type" :value="detail.payType" /></el-col>
</el-row> </el-row>
<el-row class="order-info-box"> <el-row class="order-info-box">
<el-col :span="8">配送方式 11111</el-col> <el-col :span="8">配送方式 <dict-tag :options="delivery_type" :value="detail.deliveryType" /></el-col>
<el-col :span="8">运费金额 11111</el-col> <el-col :span="8">运费金额 {{ detail.expressPrice }}</el-col>
<el-col :span="8">订单状态 11111</el-col> <el-col :span="8">订单状态 <dict-tag :options="order_status" :value="detail.orderStatus" /></el-col>
</el-row> </el-row>
<el-row class="order-info-box"> <el-row class="order-info-box">
<el-col :span="8">订单号 11111</el-col> <el-col :span="8">买家信息 {{ detail.customerPhone }}</el-col>
<el-col :span="8">买家信息 11111</el-col> <el-col :span="8">买家留言 {{ detail.orderRemark }}</el-col>
<el-col :span="8"> 买家留言 11111</el-col> </el-row>
</el-row>
</div> </div>
</el-card> </el-card>
@ -75,19 +92,20 @@
<div class="card-title">订单商品</div> <div class="card-title">订单商品</div>
<el-table v-loading="loading" :data="dataList" ref="tableRef" highlight-current-row> <el-table v-loading="loading" :data="detail.goodsInfoList" ref="tableRef" highlight-current-row>
<el-table-column prop="goodsInfo" label="商品信息" width="850"> <el-table-column prop="goodsInfo" label="商品信息" width="700">
<!-- <template #default="scope"> <template #default="scope">
<div class="goods-info-box"> <div class="goods-info-box">
<el-image preview-teleported :hide-on-click-modal="true" lazy class="table-td-thumb" fit="contain" <el-image preview-teleported :hide-on-click-modal="true" lazy class="table-td-thumb" fit="contain"
:src="scope.row.goodsPicture?.split(',')[0]" :preview-src-list="scope.row.goodsPicture?.split(',')"> :src="scope.row.goodsPicture?.split(',')[0]"
:preview-src-list="scope.row.goodsPicture?.split(',')">
<div><el-icon :size="15"> <div><el-icon :size="15">
<document /> <document />
</el-icon></div> </el-icon></div>
</el-image> </el-image>
<div> <div style="margin-left: 20px;">
<div class="goods-info-text m2"> <div class="goods-info-text ">
{{ scope.row.goodsName }} {{ scope.row.goodsName }}
</div> </div>
<div> <div>
@ -95,33 +113,37 @@
</div> </div>
</div> </div>
</div> </div>
</template>
</template> -->
</el-table-column> </el-table-column>
<el-table-column prop="payPrice" label="编码" width="150" /> <el-table-column prop="goodsCoding" label="编码" align="center">
<el-table-column prop="payPrice" label="重量(Kg)" width="150" /> <template #default="scope">
<el-table-column prop="payType" label="单价" width="150"> <div v-if="scope.row.goodsCoding">{{ scope.row.goodsCoding }}</div>
<!-- <template #default="scope"> <div v-else> - - </div>
<div> 2</div> </template>
</template> -->
</el-table-column> </el-table-column>
<el-table-column prop="payType" label="购买数量" width="150"> <el-table-column prop="goodsWeight" label="重量(Kg)" align="center" />
<!-- <template #default="scope"> <el-table-column prop="goodsPrice" label="单价" align="center">
<div> 2</div> <template #default="scope">
</template> --> <div> {{ scope.row.goodsPrice }}</div>
</template>
</el-table-column> </el-table-column>
<el-table-column prop="payType" label="商品总价" width="150"> <el-table-column prop="goodsTotalNum" label="购买数量" align="center">
<!-- <template #default="scope"> <template #default="scope">
<div> 2</div> <div>× {{ scope.row.goodsTotalNum }}</div>
</template> --> </template>
</el-table-column>
<el-table-column prop="goodsTotalPrice" label="商品总价" align="center">
<template #default="scope">
<div> {{ scope.row.goodsTotalPrice }}</div>
</template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div class="order-summary-box"> <div class="order-summary-box">
<div>订单总额: &nbsp;111.00</div> <div>订单总额 &nbsp;{{ detail.orderAmount }}</div>
<div>运费金额: &nbsp;0.00</div> <div>运费金额 &nbsp;{{ detail.expressPrice }}</div>
<div>实付款金额: &nbsp;<b>111.00</b></div> <div>实付款金额 &nbsp;<b>{{ detail.payPrice }}</b></div>
</div> </div>
</el-card> </el-card>
@ -133,33 +155,160 @@
<div class="card-title">收货信息</div> <div class="card-title">收货信息</div>
<el-row class="order-info-box"> <el-row class="order-info-box">
<el-col :span="8">收货人姓名 11111</el-col> <el-col :span="8">收货人姓名 {{ detail.orderReceive?.consigneeName }}</el-col>
<el-col :span="8">联系电话 11111</el-col> <el-col :span="8">联系电话 {{ detail.orderReceive?.phone }}</el-col>
<el-col :span="8">收货地区 11111</el-col> <el-col :span="8">收货地区 {{ detail.orderReceive?.region }}</el-col>
</el-row> </el-row>
<el-row class="order-info-box"> <el-row class="order-info-box">
<el-col :span="8">详细地址 11111</el-col> <el-col :span="8">详细地址 {{ detail.orderReceive?.detail }}</el-col>
</el-row> </el-row>
<el-divider /> <div v-if="detail.deliveryStatus != 1">
<div class="card-title">发货信息</div> <el-divider />
<el-row class="order-info-box"> <div class="card-title">发货信息</div>
<el-col :span="8">物流公司 11111</el-col> <el-row class="order-info-box">
<el-col :span="8">物流单号 11111</el-col> <el-col :span="8">物流公司 {{ detail.logisticsCompany }}</el-col>
<el-col :span="8">发货状态 11111</el-col> <el-col :span="8">物流单号 {{ detail.logisticsTrackingNumber }}</el-col>
</el-row> <el-col :span="8">发货状态 <dict-tag :options="delivery_status" :value="detail.deliveryStatus" /></el-col>
<el-row class="order-info-box"> </el-row>
<el-col :span="8">发货时间 11111</el-col> <el-row class="order-info-box">
</el-row> <el-col :span="8">发货时间 {{ detail.deliveryTime }}</el-col>
</el-row>
</div>
</el-card> </el-card>
<!-- 发货 -->
<DeliverDialog v-model="DeliverDialogVisible" :data="DeliverDialogRow" :done="() => getDetail()"></DeliverDialog>
<!-- 订单改价 -->
<ChangePriceDialog v-model="ChangePriceDialogVisible" :data="ChangePriceDialogRow" :done="() => getDetail()">
</ChangePriceDialog>
<!-- 审核取消订单 -->
<CancelOrderDialog v-model="CancelOrderDialogVisible" :data="CancelOrderDialogRow" :done="() => getDetail()">
</CancelOrderDialog>
</template> </template>
<script setup> <script setup>
import modal from '@/plugins/modal.js'
import { getOrderDetails } from '@/api/business/OrderManage/Orders/order.js'
import DeliverDialog from "./components/DeliverDialog.vue";
import ChangePriceDialog from "./components/ChangePriceDialog.vue";
import CancelOrderDialog from "./components/CancelOrderDialog.vue";
const progress = ref(2)
const loading = ref(false) const route = useRoute()
const dataList = ref([]) const { proxy } = getCurrentInstance()
const parm = reactive({
orderId: route.query.orderId
})
const DeliverDialogVisible = ref(false);
const DeliverDialogRow = ref({});
const ChangePriceDialogVisible = ref(false);
const ChangePriceDialogRow = ref({});
const CancelOrderDialogVisible = ref(false);
const CancelOrderDialogRow = ref({});
const progress = ref()
const loading = ref(true)
const detail = ref({})
//
function getDetail() {
loading.value = true
getOrderDetails(parm).then((res) => {
if (res.code == 200) {
loading.value = false;
detail.value = res.data;
initProgress()
}
});
}
getDetail()
//
function initProgress() {
progress.value = 2
if (detail.value.payStatus == 2)
progress.value += 1
if (detail.value.deliveryStatus == 2)
progress.value += 1
if (detail.value.receiptStatus == 2)
progress.value += 1
}
//
function handleChangePrice(row) {
ChangePriceDialogVisible.value = true
ChangePriceDialogRow.value = row
}
//
function handleDeliver(row) {
DeliverDialogVisible.value = true
DeliverDialogRow.value = row
}
//
function handleCancelOrder(row) {
CancelOrderDialogVisible.value = true
CancelOrderDialogRow.value = row
}
//
const pay_type = ref([]);
async function getpay_type() {
await proxy.getDicts('pay_type').then((res) => {
pay_type.value = res.data
})
}
getpay_type()
//
const pay_status = ref([]);
async function getpay_status() {
await proxy.getDicts('pay_status').then((res) => {
pay_status.value = res.data
})
}
getpay_status()
//
const delivery_type = ref([]);
async function getdelivery_type() {
await proxy.getDicts('delivery_type').then((res) => {
delivery_type.value = res.data
})
}
getdelivery_type()
//
const delivery_status = ref([]);
async function getdelivery_status() {
await proxy.getDicts('delivery_status').then((res) => {
delivery_status.value = res.data
})
}
getdelivery_status()
//
const receipt_status = ref([]);
async function getreceipt_status() {
await proxy.getDicts('receipt_status').then((res) => {
receipt_status.value = res.data
})
}
getreceipt_status()
//
const order_status = ref([]);
async function getorder_status() {
await proxy.getDicts('order_status').then((res) => {
order_status.value = res.data
})
}
getorder_status()
</script> </script>
@ -314,9 +463,10 @@ const dataList = ref([])
// //
.order-info{ .order-info {
margin-bottom: 10px; margin-bottom: 10px;
} }
.order-info-box { .order-info-box {
font-size: 15px; font-size: 15px;
margin-top: 25px; margin-top: 25px;
@ -335,4 +485,31 @@ const dataList = ref([])
margin-bottom: 5px; margin-bottom: 5px;
} }
} }
.goods-info-box {
display: flex;
margin: 10px 0;
}
.goods-info-text {
width: 350px;
margin-bottom: 10px;
}
.m2 {
text-overflow: -o-ellipsis-lastline;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
line-clamp: 2;
-webkit-box-orient: vertical;
}
.el-alert {
display: flex;
// margin: 20px 0 0;
margin-bottom: 15px;
}
</style> </style>