This commit is contained in:
PQZ 2025-03-25 17:35:36 +08:00
parent 98596fc59e
commit ff2a920934

View File

@ -17,21 +17,65 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="是否已支付" prop="isPay"> <el-form-item label="身份类型" prop="userType">
<el-input <el-select v-model="queryParams.userType" placeholder="请选择身份类型" clearable>
v-model="queryParams.isPay" <el-option
placeholder="请输入是否已支付" v-for="dict in dict.type.dl_user_type"
clearable :key="dict.value"
@keyup.enter.native="handleQuery" :label="dict.label"
/> :value="dict.value"
></el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="是否退款(0未退款|1已退款)" prop="isRefund"> <el-form-item label="订单类型" prop="orderType">
<el-input <el-select v-model="queryParams.orderType" placeholder="请选择身份类型" clearable>
v-model="queryParams.isRefund" <el-option
placeholder="请输入是否退款(0未退款|1已退款)" v-for="dict in dict.type.dl_order_type"
clearable :key="dict.value"
@keyup.enter.native="handleQuery" :label="dict.label"
/> :value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="支付方式" prop="payWay">
<el-select v-model="queryParams.payWay" placeholder="请选择支付方式" clearable>
<el-option
v-for="dict in dict.type.dl_pay_way"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="退款方式" prop="refundWay">
<el-select v-model="queryParams.refundWay" placeholder="请选择退款方式" clearable>
<el-option
v-for="dict in dict.type.dl_pay_way"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="支付状态" prop="isPay">
<el-select v-model="queryParams.isPay" placeholder="请选择是否已支付">
<el-option
v-for="item in payOption"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="退款状态" prop="isRefund">
<el-select v-model="queryParams.isRefund" placeholder="请选择是否退款">
<el-option
v-for="item in refundOption"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
@ -48,7 +92,8 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['member:order:add']" v-hasPermi="['member:order:add']"
>新增</el-button> >新增
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -59,7 +104,8 @@
:disabled="single" :disabled="single"
@click="handleUpdate" @click="handleUpdate"
v-hasPermi="['member:order:edit']" v-hasPermi="['member:order:edit']"
>修改</el-button> >修改
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -70,7 +116,8 @@
:disabled="multiple" :disabled="multiple"
@click="handleDelete" @click="handleDelete"
v-hasPermi="['member:order:remove']" v-hasPermi="['member:order:remove']"
>删除</el-button> >删除
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -80,42 +127,55 @@
size="mini" size="mini"
@click="handleExport" @click="handleExport"
v-hasPermi="['member:order:export']" v-hasPermi="['member:order:export']"
>导出</el-button> >导出
</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="orderList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="orderList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" /> <el-table-column label="用户类型" align="center" prop="userType">
<el-table-column label="唯一主键" align="center" prop="id" /> <template slot-scope="scope">
<el-table-column label="用户id" align="center" prop="userId" /> <dict-tag :options="dict.type.dl_user_type" :value="scope.row.userType"/>
<el-table-column label="用户类型" align="center" prop="userType" /> </template>
<el-table-column label="用户昵称" align="center" prop="nickname" /> </el-table-column>
<el-table-column label="订单编号" align="center" prop="orderNo" /> <el-table-column label="用户昵称" align="center" prop="nickname"/>
<el-table-column label="订单类型" align="center" prop="orderType" /> <el-table-column label="订单编号" align="center" prop="orderNo"/>
<el-table-column label="商品id(前期就是会员卡id、通告券id)" align="center" prop="goodsId" /> <el-table-column label="订单类型" align="center" prop="orderType">
<el-table-column label="商品数量" align="center" prop="goodsNum" /> <template slot-scope="scope">
<el-table-column label="订单总价" align="center" prop="goodsPrice" /> <dict-tag :options="dict.type.dl_order_type" :value="scope.row.orderType"/>
</template>
</el-table-column>
<el-table-column label="商品数量" align="center" prop="goodsNum"/>
<el-table-column label="订单总价" align="center" prop="goodsPrice"/>
<el-table-column label="支付时间" align="center" prop="payTime" width="180"> <el-table-column label="支付时间" align="center" prop="payTime" width="180">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.payTime, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.payTime, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="下单描述" align="center" prop="content" /> <el-table-column label="支付方式" align="center" prop="payWay">
<el-table-column label="支付方式(数据字典dl_pay_way)" align="center" prop="payWay" />
<el-table-column label="是否已支付" align="center" prop="isPay" />
<el-table-column label="是否退款(0未退款|1已退款)" align="center" prop="isRefund" />
<el-table-column label="退款人id" align="center" prop="refundUserId" />
<el-table-column label="退款方式(数据字典dl_pay_way)" align="center" prop="refundWay" />
<el-table-column label="退款单号" align="center" prop="refundNo" />
<el-table-column label="退款发起时间" align="center" prop="refundApplyTime" width="180">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.refundApplyTime, '{y}-{m}-{d}') }}</span> <dict-tag :options="dict.type.dl_pay_way" :value="scope.row.payWay"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="退款到账时间" align="center" prop="refundReceiveTime" /> <el-table-column label="是否支付" align="center" prop="isPay">
<el-table-column label="退款理由" align="center" prop="refundReason" /> <template slot-scope="scope">
<el-table-column label="备注" align="center" prop="remark" /> <span v-if="scope.row.isPay == 0">待支付</span>
<span v-if="scope.row.isPay == 1">已支付</span>
</template>
</el-table-column>
<el-table-column label="是否退款" align="center" prop="isRefund">
<template slot-scope="scope">
<span v-if="scope.row.isPay == 0">未退款</span>
<span v-if="scope.row.isPay == 1">已退款</span>
</template>
</el-table-column>
<el-table-column label="退款方式" align="center" prop="refundWay">
<template slot-scope="scope">
<dict-tag :options="dict.type.dl_pay_way" :value="scope.row.refundWay"/>
</template>
</el-table-column>
<el-table-column label="退款单号" align="center" prop="refundNo"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -124,14 +184,16 @@
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['member:order:edit']" v-hasPermi="['member:order:edit']"
>修改</el-button> >修改
</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-delete" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
v-hasPermi="['member:order:remove']" v-hasPermi="['member:order:remove']"
>删除</el-button> >删除
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -148,68 +210,68 @@
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户id" prop="userId"> <el-form-item label="用户id" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户id" /> <el-input v-model="form.userId" placeholder="请输入用户id"/>
</el-form-item> </el-form-item>
<el-form-item label="用户昵称" prop="nickname"> <el-form-item label="用户昵称" prop="nickname">
<el-input v-model="form.nickname" placeholder="请输入用户昵称" /> <el-input v-model="form.nickname" placeholder="请输入用户昵称"/>
</el-form-item> </el-form-item>
<el-form-item label="订单编号" prop="orderNo"> <el-form-item label="订单编号" prop="orderNo">
<el-input v-model="form.orderNo" placeholder="请输入订单编号" /> <el-input v-model="form.orderNo" placeholder="请输入订单编号"/>
</el-form-item> </el-form-item>
<el-form-item label="商品id(前期就是会员卡id、通告券id)" prop="goodsId"> <el-form-item label="商品id(前期就是会员卡id、通告券id)" prop="goodsId">
<el-input v-model="form.goodsId" placeholder="请输入商品id(前期就是会员卡id、通告券id)" /> <el-input v-model="form.goodsId" placeholder="请输入商品id(前期就是会员卡id、通告券id)"/>
</el-form-item> </el-form-item>
<el-form-item label="商品数量" prop="goodsNum"> <el-form-item label="商品数量" prop="goodsNum">
<el-input v-model="form.goodsNum" placeholder="请输入商品数量" /> <el-input v-model="form.goodsNum" placeholder="请输入商品数量"/>
</el-form-item> </el-form-item>
<el-form-item label="订单总价" prop="goodsPrice"> <el-form-item label="订单总价" prop="goodsPrice">
<el-input v-model="form.goodsPrice" placeholder="请输入订单总价" /> <el-input v-model="form.goodsPrice" placeholder="请输入订单总价"/>
</el-form-item> </el-form-item>
<el-form-item label="支付时间" prop="payTime"> <el-form-item label="支付时间" prop="payTime">
<el-date-picker clearable <el-date-picker clearable
v-model="form.payTime" v-model="form.payTime"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="请选择支付时间"> placeholder="请选择支付时间">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="下单描述"> <el-form-item label="下单描述">
<editor v-model="form.content" :min-height="192"/> <editor v-model="form.content" :min-height="192"/>
</el-form-item> </el-form-item>
<el-form-item label="支付方式(数据字典dl_pay_way)" prop="payWay"> <el-form-item label="支付方式(数据字典dl_pay_way)" prop="payWay">
<el-input v-model="form.payWay" placeholder="请输入支付方式(数据字典dl_pay_way)" /> <el-input v-model="form.payWay" placeholder="请输入支付方式(数据字典dl_pay_way)"/>
</el-form-item> </el-form-item>
<el-form-item label="是否已支付" prop="isPay"> <el-form-item label="是否已支付" prop="isPay">
<el-input v-model="form.isPay" placeholder="请输入是否已支付" /> <el-input v-model="form.isPay" placeholder="请输入是否已支付"/>
</el-form-item> </el-form-item>
<el-form-item label="是否退款(0未退款|1已退款)" prop="isRefund"> <el-form-item label="是否退款(0未退款|1已退款)" prop="isRefund">
<el-input v-model="form.isRefund" placeholder="请输入是否退款(0未退款|1已退款)" /> <el-input v-model="form.isRefund" placeholder="请输入是否退款(0未退款|1已退款)"/>
</el-form-item> </el-form-item>
<el-form-item label="退款人id" prop="refundUserId"> <el-form-item label="退款人id" prop="refundUserId">
<el-input v-model="form.refundUserId" placeholder="请输入退款人id" /> <el-input v-model="form.refundUserId" placeholder="请输入退款人id"/>
</el-form-item> </el-form-item>
<el-form-item label="退款方式(数据字典dl_pay_way)" prop="refundWay"> <el-form-item label="退款方式(数据字典dl_pay_way)" prop="refundWay">
<el-input v-model="form.refundWay" placeholder="请输入退款方式(数据字典dl_pay_way)" /> <el-input v-model="form.refundWay" placeholder="请输入退款方式(数据字典dl_pay_way)"/>
</el-form-item> </el-form-item>
<el-form-item label="退款单号" prop="refundNo"> <el-form-item label="退款单号" prop="refundNo">
<el-input v-model="form.refundNo" placeholder="请输入退款单号" /> <el-input v-model="form.refundNo" placeholder="请输入退款单号"/>
</el-form-item> </el-form-item>
<el-form-item label="退款发起时间" prop="refundApplyTime"> <el-form-item label="退款发起时间" prop="refundApplyTime">
<el-date-picker clearable <el-date-picker clearable
v-model="form.refundApplyTime" v-model="form.refundApplyTime"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="请选择退款发起时间"> placeholder="请选择退款发起时间">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="退款到账时间" prop="refundReceiveTime"> <el-form-item label="退款到账时间" prop="refundReceiveTime">
<el-input v-model="form.refundReceiveTime" placeholder="请输入退款到账时间" /> <el-input v-model="form.refundReceiveTime" placeholder="请输入退款到账时间"/>
</el-form-item> </el-form-item>
<el-form-item label="退款理由" prop="refundReason"> <el-form-item label="退款理由" prop="refundReason">
<el-input v-model="form.refundReason" type="textarea" placeholder="请输入内容" /> <el-input v-model="form.refundReason" type="textarea" placeholder="请输入内容"/>
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" /> <el-input v-model="form.remark" placeholder="请输入备注"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
@ -221,10 +283,11 @@
</template> </template>
<script> <script>
import { listOrder, getOrder, delOrder, addOrder, updateOrder } from "@/api/member/order"; import {listOrder, getOrder, delOrder, addOrder, updateOrder} from "@/api/member/order";
export default { export default {
name: "Order", name: "Order",
dicts: ['dl_user_type', 'dl_order_type', 'dl_pay_way'],
data() { data() {
return { return {
// //
@ -245,6 +308,20 @@ export default {
title: "", title: "",
// //
open: false, open: false,
payOption: [{
value: 0,
label: '待支付'
}, {
value: 1,
label: '已支付'
}],
refundOption: [{
value: 0,
label: '未退款'
}, {
value: 1,
label: '已退款'
}],
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
@ -253,14 +330,15 @@ export default {
nickname: null, nickname: null,
orderNo: null, orderNo: null,
orderType: null, orderType: null,
payWay: null,
refundWay: null,
isPay: null, isPay: null,
isRefund: null, isRefund: null,
}, },
// //
form: {}, form: {},
// //
rules: { rules: {}
}
}; };
}, },
created() { created() {
@ -326,7 +404,7 @@ export default {
// //
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map(item => item.id) this.ids = selection.map(item => item.id)
this.single = selection.length!==1 this.single = selection.length !== 1
this.multiple = !selection.length this.multiple = !selection.length
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
@ -368,12 +446,13 @@ export default {
/** 删除按钮操作 */ /** 删除按钮操作 */
handleDelete(row) { handleDelete(row) {
const ids = row.id || this.ids; const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除订单编号为"' + ids + '"的数据项?').then(function() { this.$modal.confirm('是否确认删除订单编号为"' + ids + '"的数据项?').then(function () {
return delOrder(ids); return delOrder(ids);
}).then(() => { }).then(() => {
this.getList(); this.getList();
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("删除成功");
}).catch(() => {}); }).catch(() => {
});
}, },
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {