From c2af97c87774e9e675381106cac483f0e3d8f3f7 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Sun, 26 Sep 2021 16:47:10 +0800
Subject: [PATCH] Merge branch 'master' of http://120.27.238.55:7000/r/xc-mall
---
src/main/java/cc/mrbird/febs/mall/controller/ViewMallOrderController.java | 20 +++
src/main/resources/templates/febs/views/modules/order/refundOrderDetail.html | 128 +++++++++++++++++++++
src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html | 44 ++-----
src/main/resources/templates/febs/views/modules/product/categoryUpdate.html | 7
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java | 18 ++
src/main/java/cc/mrbird/febs/mall/vo/AdminMallOrderRefundVo.java | 5
src/main/resources/templates/febs/views/modules/goods/detailGoods.html | 40 ++----
src/main/resources/templates/febs/views/modules/order/refundList.html | 31 +++++
src/main/resources/templates/febs/views/modules/order/withAddress.html | 3
src/main/resources/templates/febs/views/modules/order/orderList.html | 8
src/main/resources/mapper/modules/MallOrderRefundMapper.xml | 2
11 files changed, 239 insertions(+), 67 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ViewMallOrderController.java b/src/main/java/cc/mrbird/febs/mall/controller/ViewMallOrderController.java
index 86fe6b0..f631e57 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ViewMallOrderController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ViewMallOrderController.java
@@ -3,6 +3,8 @@
import cc.mrbird.febs.common.controller.BaseController;
import cc.mrbird.febs.common.entity.FebsConstant;
import cc.mrbird.febs.common.utils.FebsUtil;
+import cc.mrbird.febs.mall.entity.MallOrderRefund;
+import cc.mrbird.febs.mall.mapper.MallOrderRefundMapper;
import cc.mrbird.febs.mall.service.IAdminMallOrderService;
import cc.mrbird.febs.mall.vo.*;
import lombok.RequiredArgsConstructor;
@@ -19,6 +21,8 @@
public class ViewMallOrderController extends BaseController {
private final IAdminMallOrderService adminMallOrderService;
+
+ private final MallOrderRefundMapper mallOrderRefundMapper;
public static long idFromMember;
@@ -161,4 +165,20 @@
return FebsUtil.view("modules/order/payMethodEdit");
}
+ /**
+ * 退款记录-订单详情
+ * @param id
+ * @param model
+ * @return
+ */
+ @GetMapping("refundOrderDetail/{id}")
+ @RequiresPermissions("refundOrderDetail:view")
+ public String refundOrderDetail(@PathVariable long id, Model model) {
+ MallOrderRefund mallOrderRefund = mallOrderRefundMapper.selectById(id);
+ Long orderId = mallOrderRefund.getOrderId();
+ AdminOrderDetailVo data = adminMallOrderService.getMallOrderDetailById(orderId);
+ model.addAttribute("refundOrderDetail", data);
+ return FebsUtil.view("modules/order/refundOrderDetail");
+ }
+
}
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
index 1cfe28a..c184959 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
@@ -131,9 +131,25 @@
if(status != 1){
return new FebsResponse().fail().message("申请记录不是已申请状态,请刷新页面");
}
- mallOrderRefund.setStatus(2);
+ mallOrderRefund.setStatus(5);
mallOrderRefundMapper.updateById(mallOrderRefund);
+ MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(mallOrderRefund.getOrderId());
+ mallOrderInfo.setStatus(6);
+ mallOrderInfoMapper.updateById(mallOrderInfo);
+
+ if(!"微信支付".equals(mallOrderInfo.getPayMethod()) && !"支付宝支付".equals(mallOrderInfo.getPayMethod())){
+ //用户钱包增加对应的余额
+ iApiMallMemberWalletService.addBalance(mallOrderInfo.getAmount(),mallOrderInfo.getMemberId());
+ //新增一条资金流水
+ MallMoneyFlow mallMoneyFlow = new MallMoneyFlow();
+ mallMoneyFlow.setMemberId(mallOrderRefund.getMemberId());
+ mallMoneyFlow.setOrderNo(mallOrderInfo.getOrderNo());
+ mallMoneyFlow.setType(4);
+ mallMoneyFlow.setAmount(mallOrderInfo.getAmount());
+ mallMoneyFlowMapper.insert(mallMoneyFlow);
+ }
+
MallOrderRefundOperation mallOrderRefundOperation = new MallOrderRefundOperation();
mallOrderRefundOperation.setRefundId(mallOrderRefund.getId());
mallOrderRefundOperation.setOrderId(mallOrderRefund.getOrderId());
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/AdminMallOrderRefundVo.java b/src/main/java/cc/mrbird/febs/mall/vo/AdminMallOrderRefundVo.java
index 18be1e5..a8fd141 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/AdminMallOrderRefundVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/AdminMallOrderRefundVo.java
@@ -4,6 +4,7 @@
import io.swagger.annotations.ApiModel;
import lombok.Data;
+import java.math.BigDecimal;
import java.util.Date;
@Data
@@ -44,4 +45,8 @@
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createdTime;
+
+ private BigDecimal amount;
+
+ private Integer beforeStatus;
}
diff --git a/src/main/resources/mapper/modules/MallOrderRefundMapper.xml b/src/main/resources/mapper/modules/MallOrderRefundMapper.xml
index 8156a21..cc6ebec 100644
--- a/src/main/resources/mapper/modules/MallOrderRefundMapper.xml
+++ b/src/main/resources/mapper/modules/MallOrderRefundMapper.xml
@@ -7,7 +7,7 @@
</select>
<select id="selectRefundListInPage" resultType="cc.mrbird.febs.mall.vo.AdminMallOrderRefundVo">
- select a.*,b.name buyName ,b.phone buyPhone,c.order_no,CONCAT(a.name,a.phone,a.address) addressDetail
+ select a.*,b.name buyName ,b.phone buyPhone,c.order_no,c.amount,CONCAT(a.name,a.phone,a.address) addressDetail
from mall_order_refund a
left join mall_member b on b.id = a.member_id
diff --git a/src/main/resources/templates/febs/views/modules/goods/detailGoods.html b/src/main/resources/templates/febs/views/modules/goods/detailGoods.html
index 52640f8..2e55f91 100644
--- a/src/main/resources/templates/febs/views/modules/goods/detailGoods.html
+++ b/src/main/resources/templates/febs/views/modules/goods/detailGoods.html
@@ -43,11 +43,8 @@
<div class="layui-col-lg6">
<label class="layui-form-label febs-form-item-require">所属分类:</label>
<div class="layui-input-block">
- <select name="categoryId"
- lay-verify="required"
- xm-select-direction="down"
- xm-select="user-add-goods"
- xm-select-skin="default">
+ <select name="parentId" class="categary-update-category" id="categarySelect" readonly>
+ <option value="">请选择</option>
</select>
</div>
</div>
@@ -131,30 +128,17 @@
form.render();
- formSelects.config('user-add-goods', {
- searchUrl: ctx + 'admin/goodsCategory/categorys',
- response: {
- statusCode: 200
- },
- beforeSuccess: function (id, url, searchVal, result) {
- var data = result.data;
- var tranData = [];
- for (var i = 0; i < data.length; i++) {
- tranData.push({
- name: data[i].name,
- value: data[i].id
- })
- }
- result.data = tranData;
- return result;
- },
- success: function () {
- // formSelects.value('user-add-goods', result.id);
- },
- error: function (id, url, searchVal, err) {
- console.error(err);
- febs.alert.error('获取分类列表失败');
+ //(下拉框)
+ $.get(ctx + 'admin/goodsCategory/categorys/tree', function (data) {
+ for (var k in data)
+ {
+ $(".categary-update-category").append("<option value='" + data[k].parentId + "'>" + data[k].name + "</option>");
}
+ layui.use('form', function () {
+ var form = layui.form;
+ $("#categarySelect").val(mailGoodsDetail.categoryId)
+ form.render();
+ });
});
layedit.set({ //设置图片接口
diff --git a/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html b/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
index 029250f..5a414a2 100644
--- a/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
+++ b/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
@@ -23,12 +23,8 @@
<div class="layui-col-lg6">
<label class="layui-form-label febs-form-item-require">所属分类:</label>
<div class="layui-input-block">
- <select name="categoryId"
- value="categoryId"
- lay-verify="required"
- xm-select-direction="down"
- xm-select="user-add-goods"
- xm-select-skin="default">
+ <select name="parentId" class="categary-update-category" >
+ <option value="">请选择</option>
</select>
</div>
</div>
@@ -158,32 +154,20 @@
formSelects.render();
- formSelects.config('user-add-goods', {
- searchUrl: ctx + 'admin/goodsCategory/categorys',
- response: {
- statusCode: 200
- },
- beforeSuccess: function (id, url, searchVal, result) {
- var data = result.data;
- var tranData = [];
- for (var i = 0; i < data.length; i++) {
- tranData.push({
- name: data[i].name,
- value: data[i].id
- })
- }
- result.data = tranData;
- console.log(result);
- return result;
- },
- success: function () {
- formSelects.value('user-add-goods', result.id);
- },
- error: function (id, url, searchVal, err) {
- console.error(err);
- febs.alert.error('获取分类列表失败');
+
+ //(下拉框)
+ $.get(ctx + 'admin/goodsCategory/categorys/tree', function (data) {
+ for (var k in data)
+ {
+ $(".categary-update-category").append("<option value='" + data[k].parentId + "'>" + data[k].name + "</option>");
}
+ layui.use('form', function () {
+ var form = layui.form;
+ // $("#categarySelect").val(member.parentId)
+ form.render();
+ });
});
+
//多图片上传
upload.render({
elem: '#thumbsBanner'
diff --git a/src/main/resources/templates/febs/views/modules/order/orderList.html b/src/main/resources/templates/febs/views/modules/order/orderList.html
index 9e76b4a..c7d2e94 100644
--- a/src/main/resources/templates/febs/views/modules/order/orderList.html
+++ b/src/main/resources/templates/febs/views/modules/order/orderList.html
@@ -172,14 +172,14 @@
id: 'orderTable',
url: ctx + 'admin/order/orderList',
cols: [[
- {field: 'orderNo', title: '订单编号', minWidth: 120,align:'left'},
+ {field: 'orderNo', title: '订单编号', minWidth: 200,align:'left'},
{field: 'memberName', title: '购买人', minWidth: 120,align:'left'},
{field: 'memberPhone', title: '联系方式', minWidth: 120,align:'left'},
{field: 'amount', title: '订单金额', minWidth: 120,align:'left'},
- {field: 'orderTime', title: '下单时间', minWidth: 120,align:'left'},
+ {field: 'orderTime', title: '下单时间', minWidth: 200,align:'left'},
{field: 'payMethod', title: '支付方式', minWidth: 120,align:'left'},
- {field: 'payTime', title: '支付时间', minWidth: 120,align:'left'},
- {field: 'payOrderNo', title: '支付订单号', minWidth: 120,align:'left'},
+ {field: 'payTime', title: '支付时间', minWidth: 200,align:'left'},
+ {field: 'payOrderNo', title: '支付订单号', minWidth: 200,align:'left'},
{field: 'payImage', title: '支付凭证',
templet: function (d) {
return '<a lay-event="seePayImage"><img id="seePayImage'+d.id+'" src="'+d.payImage+'" alt=""></a>';
diff --git a/src/main/resources/templates/febs/views/modules/order/refundList.html b/src/main/resources/templates/febs/views/modules/order/refundList.html
index 1a1e006..1692e17 100644
--- a/src/main/resources/templates/febs/views/modules/order/refundList.html
+++ b/src/main/resources/templates/febs/views/modules/order/refundList.html
@@ -90,6 +90,11 @@
maxmin: true,
});
}
+ if (layEvent === 'refundOrderDetail') {
+ febs.modal.open( '订单详情', 'modules/order/refundOrderDetail/' + data.id, {
+ maxmin: true,
+ });
+ }
if (layEvent === 'agree') {
febs.modal.confirm('同意', '同意此次退款申请?', function () {
agreeRefund(data.id);
@@ -161,6 +166,27 @@
{field: 'orderNo', title: '订单编号', minWidth: 150,align:'left'},
{field: 'buyName', title: '用户名', minWidth: 150,align:'left'},
{field: 'buyPhone', title: '电话', minWidth: 150,align:'left'},
+ {field: 'beforeStatus', title: '发货状态',
+ templet: function (d) {
+ if (d.status === 1) {
+ return '<span style="color:red;">待支付</span>'
+ } else if (d.status === 2) {
+ return '<span style="color:green;">待发货</span>'
+ }else if (d.status === 3) {
+ return '<span style="color:green;">待收货</span>'
+ }else if (d.status === 4) {
+ return '<span style="color:green;">已完成</span>'
+ }else if (d.status === 5) {
+ return '<span style="color:green;">退款中</span>'
+ }else if (d.status === 6) {
+ return '<span style="color:green;">已退款</span>'
+ }else if (d.status === 7) {
+ return '<span style="color:green;">已取消</span>'
+ }else{
+ return ''
+ }
+ }, minWidth: 80,align:'center'},
+ {field: 'amount', title: '退款金额', minWidth: 150,align:'left'},
{field: 'type', title: '退款类型',
templet: function (d) {
if (d.type === 1) {
@@ -197,20 +223,25 @@
return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="agree" shiro:hasPermission="user:update">同意</button>'
+'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="disagree" shiro:hasPermission="user:update">拒绝</button>'
+'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refunding" shiro:hasPermission="user:update">退款进度</button>'
+ +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refundOrderDetail" shiro:hasPermission="user:update">订单详情</button>'
}else if(d.type === 2){
return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="agreeWithAddress" shiro:hasPermission="user:update">同意</button>'
+'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="disagree" shiro:hasPermission="user:update">拒绝</button>'
+'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refunding" shiro:hasPermission="user:update">退款进度</button>'
+ +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refundOrderDetail" shiro:hasPermission="user:update">订单详情</button>'
}else{
return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="agree" shiro:hasPermission="user:update">同意</button>'
+'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="disagree" shiro:hasPermission="user:update">拒绝</button>'
+'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refunding" shiro:hasPermission="user:update">退款进度</button>'
+ +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refundOrderDetail" shiro:hasPermission="user:update">订单详情</button>'
}
}else if(d.status === 4){
return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refunding" shiro:hasPermission="user:update">退款进度</button>'
+'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refundConfirm" shiro:hasPermission="user:update">退款确认</button>'
+ +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refundOrderDetail" shiro:hasPermission="user:update">订单详情</button>'
}else{
return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refunding" shiro:hasPermission="user:update">退款进度</button>'
+ +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="refundOrderDetail" shiro:hasPermission="user:update">订单详情</button>'
}
},minWidth: 300,align:'center'}
diff --git a/src/main/resources/templates/febs/views/modules/order/refundOrderDetail.html b/src/main/resources/templates/febs/views/modules/order/refundOrderDetail.html
new file mode 100644
index 0000000..ed50d43
--- /dev/null
+++ b/src/main/resources/templates/febs/views/modules/order/refundOrderDetail.html
@@ -0,0 +1,128 @@
+<style>
+ #refundOrderDetail-info {
+ padding: 20px 25px 25px 0;
+ }
+
+ #refundOrderDetail-info .layui-treeSelect .ztree li a, .ztree li span {
+ margin: 0 0 2px 3px !important;
+ }
+ #refundOrderDetail-info #data-permission-tree-block {
+ border: 1px solid #eee;
+ border-radius: 2px;
+ padding: 3px 0;
+ }
+ #refundOrderDetail-info .layui-treeSelect .ztree li span.button.switch {
+ top: 1px;
+ left: 3px;
+ }
+
+</style>
+<div class="layui-fluid" id="refundOrderDetail-info">
+ <form class="layui-form" action="" lay-filter="refundOrderDetail-info-form">
+ <div class="layui-form-item febs-hide">
+ <label class="layui-form-label febs-form-item-require">id:</label>
+ <div class="layui-input-block">
+ <input type="text" name="id">
+ </div>
+ </div>
+ <div class="layui-row layui-col-space10 layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label">收货人:</label>
+ <div class="layui-input-block">
+ <input type="text" name="name" lay-verify="required" placeholder="" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ <div class="layui-col-lg6">
+ <label class="layui-form-label">联系方式:</label>
+ <div class="layui-input-block">
+ <input type="text" name="phone" lay-verify="required" placeholder="" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">地址:</label>
+ <div class="layui-input-block">
+ <input type="text" name="address"
+ autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">支付订单号:</label>
+ <div class="layui-input-block">
+ <input type="text" name="payOrderNo"
+ autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">支付凭证:</label>
+ <div class="layui-input-block">
+ <img alt="支付凭证" data-th-src="${refundOrderDetail.payImage}" style="width: 200px">
+ </div>
+ </div>
+
+ <div class="layui-row layui-col-space10 layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label">总金额:</label>
+ <div class="layui-input-block">
+ <input type="text" name="amount" lay-verify="required" placeholder="" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">订单明细:</label>
+ <div class="layui-input-block">
+ <textarea id="lay_edit" lay-verify="orderItems" name = "orderItems" class="layui-textarea" readonly></textarea>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">物流单号:</label>
+ <div class="layui-input-block">
+ <input type="text" name="expressNo"
+ autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label">物流公司:</label>
+ <div class="layui-input-block">
+ <input type="text" name="expressCom"
+ autocomplete="off" class="layui-input" readonly >
+ </div>
+ </div>
+ </form>
+</div>
+
+<script data-th-inline="javascript">
+ layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree'], function () {
+ var $ = layui.$,
+ febs = layui.febs,
+ layer = layui.layer,
+ formSelects = layui.formSelects,
+ treeSelect = layui.treeSelect,
+ form = layui.form,
+ eleTree = layui.eleTree,
+ refundOrderDetail = [[${refundOrderDetail}]],
+ $view = $('#refundOrderDetail-info'),
+ validate = layui.validate,
+ _deptTree;
+
+ form.render();
+
+ initUserValue();
+
+ function initUserValue() {
+ form.val("refundOrderDetail-info-form", {
+ "id": refundOrderDetail.id,
+ "name": refundOrderDetail.name,
+ "phone": refundOrderDetail.phone,
+ "amount": refundOrderDetail.amount,
+ "orderItems": refundOrderDetail.orderItems,
+ "expressNo": refundOrderDetail.expressNo,
+ "expressCom": refundOrderDetail.expressCom,
+ "payImage": refundOrderDetail.payImage,
+ "payOrderNo": refundOrderDetail.payOrderNo,
+ "address": refundOrderDetail.address
+ });
+ }
+
+ });
+</script>
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/modules/order/withAddress.html b/src/main/resources/templates/febs/views/modules/order/withAddress.html
index b8cfc79..4ace8f3 100644
--- a/src/main/resources/templates/febs/views/modules/order/withAddress.html
+++ b/src/main/resources/templates/febs/views/modules/order/withAddress.html
@@ -35,6 +35,9 @@
</div>
</div>
</div>
+ <div class="layui-form-item">
+ <div style="text-align:center;color: red">提示:退货地址可到【退货地址管理】里添加/编辑</div>
+ </div>
<div class="layui-form-item febs-hide">
<button class="layui-btn" lay-submit="" lay-filter="address-choose-form-submit" id="submit"></button>
</div>
diff --git a/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html b/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html
index fba11ee..cd8573b 100644
--- a/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html
+++ b/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html
@@ -36,8 +36,8 @@
<div class="layui-form-item">
<label class="layui-form-label">父类:</label>
<div class="layui-input-inline">
- <select name="parentId" class="categary-update-category">
- <option value="'+[[${member}]].parentId+'">请选择</option>
+ <select name="parentId" class="categary-update-category" id="categarySelect">
+ <option value="">请选择</option>
</select>
</div>
</div>
@@ -93,6 +93,7 @@
}
layui.use('form', function () {
var form = layui.form;
+ $("#categarySelect").val(member.parentId)
form.render();
});
});
@@ -135,7 +136,7 @@
form.on('submit(categary-update-form-submit)', function (data) {
febs.post(ctx + 'admin/goodsCategory/updateCategory', data.field, function () {
layer.closeAll();
- febs.alert.success('新增成功');
+ febs.alert.success('操作成功');
$('#febs-user').find('#reset').click();
});
return false;
--
Gitblit v1.9.1