From 4eb7bd043cc1fe6bf0cdf44f8c045698c0e9e21b Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 20 Jan 2025 11:34:01 +0800
Subject: [PATCH] refactor(mall): 确认收货功能

---
 src/main/java/cc/mrbird/febs/mall/controller/ViewMallOrderController.java  |   19 +++---
 src/main/resources/templates/febs/views/modules/order/orderDetail.html     |   32 +++++-----
 src/main/resources/templates/febs/views/modules/order/deliverGoods.html    |   28 ++++----
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java  |   47 ++++++---------
 src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java |    5 +
 src/main/resources/templates/febs/views/modules/order/orderList.html       |   14 ++--
 6 files changed, 67 insertions(+), 78 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java
index 437def5..f0f46e0 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java
@@ -117,7 +117,7 @@
      * 订单列表-修改物流编号
      */
     @PostMapping("deliverGoodsUpdate")
-    @ControllerEndpoint(operation = "订单列表-修改物流编号", exceptionMessage = "操作失败")
+    @ControllerEndpoint(operation = "订单列表-确认收货", exceptionMessage = "操作失败")
     public FebsResponse deliverGoodsUpdate(@Valid DeliverGoodsDto deliverGoodsDto) {
         return adminMallOrderService.deliverGoodsUpdate(deliverGoodsDto);
     }
@@ -302,7 +302,8 @@
 //        String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "收货地址", "商品名称", "订单状态", "物流单号", "物流公司", "物流公司码"};
 //        String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "收货地址", "商品详情", "物流单号", "物流公司", "物流公司码"};
 //        String[] header = {"订单编号", "收货姓名", "收货电话", "收货地址", "商品详情", "物流单号", "物流公司", "物流公司码"};
-        String[] header = {"订单编号", "收货姓名", "收货电话", "收货地址", "商品详情", "备注", "物流单号", "物流公司", "物流公司码"};
+//        String[] header = {"订单编号", "收货姓名", "收货电话", "收货地址", "商品详情", "备注", "物流单号", "物流公司", "物流公司码"};
+        String[] header = {"订单编号", "收货姓名", "收货电话", "收货地址", "商品详情", "备注"};
         orderSheet.setHeaders(header);
 
         QueryRequest request = new QueryRequest();
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 e844133..f56336a 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ViewMallOrderController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ViewMallOrderController.java
@@ -4,7 +4,6 @@
 import cc.mrbird.febs.common.entity.FebsConstant;
 import cc.mrbird.febs.common.utils.FebsUtil;
 import cc.mrbird.febs.common.utils.RedisUtils;
-import cc.mrbird.febs.mall.entity.MallExpressInfo;
 import cc.mrbird.febs.mall.entity.MallOrderRefund;
 import cc.mrbird.febs.mall.mapper.MallExpressInfoMapper;
 import cc.mrbird.febs.mall.mapper.MallInvoiceMapper;
@@ -78,15 +77,15 @@
     @RequiresPermissions("deliverGoods:update")
     public String deliverGoods(@PathVariable long id, Model model) {
         AdminMallOrderVo data = adminMallOrderService.getMallOrderInfoById(id);
-        data.setExpressCom("百世快递");
-        MallExpressInfo mallExpressInfo = mallExpressInfoMapper.selectByOrderId(id);
-        if(ObjectUtil.isNotEmpty(mallExpressInfo)){
-            data.setExpressNo(mallExpressInfo.getExpressNo());
-            data.setExpressCom(mallExpressInfo.getExpressCom());
-        }else{
-            data.setExpressCom("百世快递");
-//            data.setExpressNo("JT");
-        }
+//        data.setExpressCom("百世快递");
+//        MallExpressInfo mallExpressInfo = mallExpressInfoMapper.selectByOrderId(id);
+//        if(ObjectUtil.isNotEmpty(mallExpressInfo)){
+//            data.setExpressNo(mallExpressInfo.getExpressNo());
+//            data.setExpressCom(mallExpressInfo.getExpressCom());
+//        }else{
+//            data.setExpressCom("百世快递");
+////            data.setExpressNo("JT");
+//        }
         model.addAttribute("deliverInfo", data);
         return FebsUtil.view("modules/order/deliverGoods");
     }
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 0f87fc5..5134332 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
@@ -25,6 +25,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
+import java.util.Date;
 import java.util.List;
 
 @Slf4j
@@ -114,20 +115,20 @@
         if(2 != deliveryType){
             return new FebsResponse().fail().message("订单的配送方式不是快递");
         }
-        String expressNo = deliverGoodsDto.getExpressNo();
-        if(StrUtil.isEmpty(expressNo)){
-            return new FebsResponse().fail().message("请输入物流单号");
-        }
-        String expressCom = deliverGoodsDto.getExpressCom();
-        if(StrUtil.isEmpty(expressCom)){
-            return new FebsResponse().fail().message("请输入物流公司");
-        }
-        MallExpressInfo mallExpressInfo = new MallExpressInfo();
-        mallExpressInfo.setMemberId(mallOrderInfo.getMemberId());
-        mallExpressInfo.setOrderId(mallOrderInfo.getId());
-        mallExpressInfo.setExpressNo(expressNo);
-        mallExpressInfo.setExpressCom(expressCom);
-        mallExpressInfoMapper.insert(mallExpressInfo);
+//        String expressNo = deliverGoodsDto.getExpressNo();
+//        if(StrUtil.isEmpty(expressNo)){
+//            return new FebsResponse().fail().message("请输入物流单号");
+//        }
+//        String expressCom = deliverGoodsDto.getExpressCom();
+//        if(StrUtil.isEmpty(expressCom)){
+//            return new FebsResponse().fail().message("请输入物流公司");
+//        }
+//        MallExpressInfo mallExpressInfo = new MallExpressInfo();
+//        mallExpressInfo.setMemberId(mallOrderInfo.getMemberId());
+//        mallExpressInfo.setOrderId(mallOrderInfo.getId());
+//        mallExpressInfo.setExpressNo(expressNo);
+//        mallExpressInfo.setExpressCom(expressCom);
+//        mallExpressInfoMapper.insert(mallExpressInfo);
 
         mallOrderInfoMapper.updateOrderStateAndDeliveryState(mallOrderInfo.getId(),
                 OrderStatusEnum.WAIT_FINISH.getValue(),
@@ -469,22 +470,10 @@
         if(2 != deliveryType){
             return new FebsResponse().fail().message("订单的配送方式不是快递");
         }
-        String expressNo = deliverGoodsDto.getExpressNo();
-        if(StrUtil.isEmpty(expressNo)){
-            return new FebsResponse().fail().message("请输入物流单号");
-        }
-        String expressCom = deliverGoodsDto.getExpressCom();
-        if(StrUtil.isEmpty(expressCom)){
-            return new FebsResponse().fail().message("请输入物流公司");
-        }
-        MallExpressInfo mallExpressInfo = mallExpressInfoMapper.selectByOrderId(mallOrderInfo.getId());
 
-        if(ObjectUtil.isEmpty(mallExpressInfo)){
-            return new FebsResponse().fail().message("请先发货");
-        }
-        mallExpressInfo.setExpressNo(expressNo);
-        mallExpressInfo.setExpressCom(expressCom);
-        mallExpressInfoMapper.updateById(mallExpressInfo);
+        mallOrderInfo.setStatus(OrderStatusEnum.FINISH.getValue());
+        mallOrderInfo.setReceivingTime(new Date());
+        mallOrderInfoMapper.updateById(mallOrderInfo);
 
         return new FebsResponse().success();
     }
diff --git a/src/main/resources/templates/febs/views/modules/order/deliverGoods.html b/src/main/resources/templates/febs/views/modules/order/deliverGoods.html
index 557a7b5..68b9cae 100644
--- a/src/main/resources/templates/febs/views/modules/order/deliverGoods.html
+++ b/src/main/resources/templates/febs/views/modules/order/deliverGoods.html
@@ -46,20 +46,20 @@
                        autocomplete="off" class="layui-input" readonly>
             </div>
         </div>
-        <div class="layui-form-item">
-            <label class="layui-form-label febs-form-item-require">物流单号:</label>
-            <div class="layui-input-block">
-                <input type="text" name="expressNo" lay-verify="required"
-                       autocomplete="off" class="layui-input" >
-            </div>
-        </div>
-        <div class="layui-form-item">
-            <label class="layui-form-label febs-form-item-require">物流公司:</label>
-            <div class="layui-input-block">
-                <input type="text" name="expressCom" lay-verify="required"
-                       autocomplete="off" class="layui-input" >
-            </div>
-        </div>
+<!--        <div class="layui-form-item">-->
+<!--            <label class="layui-form-label febs-form-item-require">物流单号:</label>-->
+<!--            <div class="layui-input-block">-->
+<!--                <input type="text" name="expressNo" lay-verify="required"-->
+<!--                       autocomplete="off" class="layui-input" >-->
+<!--            </div>-->
+<!--        </div>-->
+<!--        <div class="layui-form-item">-->
+<!--            <label class="layui-form-label febs-form-item-require">物流公司:</label>-->
+<!--            <div class="layui-input-block">-->
+<!--                <input type="text" name="expressCom" lay-verify="required"-->
+<!--                       autocomplete="off" class="layui-input" >-->
+<!--            </div>-->
+<!--        </div>-->
         <div class="layui-form-item febs-hide">
             <button class="layui-btn" lay-submit="" lay-filter="deliver-update-form-submit" id="submit"></button>
             <button class="layui-btn" lay-submit="" lay-filter="deliverInfo-update-form-submit" id="deliverInfoSubmit"></button>
diff --git a/src/main/resources/templates/febs/views/modules/order/orderDetail.html b/src/main/resources/templates/febs/views/modules/order/orderDetail.html
index a65cd5b..385ab8c 100644
--- a/src/main/resources/templates/febs/views/modules/order/orderDetail.html
+++ b/src/main/resources/templates/febs/views/modules/order/orderDetail.html
@@ -81,20 +81,20 @@
                 <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>
+<!--        <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>
 
@@ -125,8 +125,8 @@
                 "orderItems": orderDetail.orderItems,
                 "addressArea": orderDetail.addressArea,
                 "addressInfo": orderDetail.addressInfo,
-                "expressNo": orderDetail.expressNo,
-                "expressCom": orderDetail.expressCom,
+                // "expressNo": orderDetail.expressNo,
+                // "expressCom": orderDetail.expressCom,
                 // "payImage": orderDetail.payImage,
                 // "payOrderNo": orderDetail.payOrderNo,
                 "address": orderDetail.address
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 c2dbb7e..c1f94d5 100644
--- a/src/main/resources/templates/febs/views/modules/order/orderList.html
+++ b/src/main/resources/templates/febs/views/modules/order/orderList.html
@@ -125,8 +125,8 @@
         <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" lay-event="printSelect">自定义打印</button>
         <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" lay-event="goodsStatistics">统计商品份数</button>
 <!--        <button id="printSelect" type="button" class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain">自定义打印</button>-->
-        <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" lay-event="exportDeliverTwo">导出未发货订单(快递)</button>
-        <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" id="importDeliver" lay-event="importDeliver">导入发货</button>
+        <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" lay-event="exportDeliverTwo">导出未发货订单</button>
+<!--        <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain" id="importDeliver" lay-event="importDeliver">导入发货</button>-->
     </div>
 </script>
 <!-- 表格操作栏 end -->
@@ -335,7 +335,7 @@
                 });
             }
             if (layEvent === 'updateDeliver') {
-                febs.modal.open('修改物流信息', 'modules/order/deliverGoods/' + data.id, {
+                febs.modal.open('确认收货', 'modules/order/deliverGoods/' + data.id, {
                     btn: ['确认','取消'],
                     yes: function (index, layero) {
                         $('#deliver-update').find('#deliverInfoSubmit').trigger('click');
@@ -411,11 +411,11 @@
                         {field: 'orderNo', title: '订单编号', minWidth: 200,align:'left' ,totalRowText:"合计"},
                         {field: 'memberName', title: '购买人', minWidth: 100,align:'left'},
                         {field: 'memberPhone', title: '联系方式', minWidth: 120,align:'left'},
-                        {field: 'refererName', title: '推荐人', minWidth: 100,align:'left'},
+                        // {field: 'refererName', title: '推荐人', minWidth: 100,align:'left'},
                         {field: 'goodsName', title: '商品', minWidth: 160,align:'left'},
                         {field: 'remark', title: '备注', minWidth: 160,align:'left'},
                         {field: 'goodsAmount', title: '价格', minWidth: 80,align:'left', totalRow:true},
-                        {field: 'carriage', title: '邮费', minWidth: 80,align:'left', totalRow:true},
+                        // {field: 'carriage', title: '邮费', minWidth: 80,align:'left', totalRow:true},
                         {field: 'amount', title: '总金额', minWidth: 100,align:'left', totalRow:true},
                         {field: 'orderTime', title: '下单时间', minWidth: 200,align:'left'},
                         {field: 'status', title: '状态',
@@ -450,7 +450,7 @@
                     //             return ''
                     //         }
                     //     }, minWidth: 80,align:'center'},
-                        {field: 'payMethod', title: '支付方式', minWidth: 100,align:'left'},
+                    //     {field: 'payMethod', title: '支付方式', minWidth: 100,align:'left'},
                         {field: 'payTime', title: '支付时间', minWidth: 120,align:'left'},
                         // {field: 'wxOrderNo', title: '支付订单号', minWidth: 120,align:'left'},
                         {title: '操作',
@@ -460,7 +460,7 @@
                                     +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="deliverGoods" shiro:hasPermission="user:update">发货</button>'
                                 }else if(d.status === 3){
                                     return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="seeOrder" shiro:hasPermission="user:update">详情</button>'
-                                    +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="updateDeliver" shiro:hasPermission="user:update">修改物流信息</button>'
+                                    +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="updateDeliver" shiro:hasPermission="user:update">确认收货</button>'
                                 }else{
                                     return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="seeOrder" shiro:hasPermission="user:update">详情</button>'
                                 }

--
Gitblit v1.9.1