From 21599e9ff5b454f7cefd14512cff1ab5f7203950 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 12 八月 2025 21:51:01 +0800
Subject: [PATCH] bug修改

---
 UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml       |    3 +
 UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java                                |    6 -
 UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderStatusWarpper.java                   |   31 ++++++++++
 UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java |  113 ++++++++++++++++++++++---------------
 UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java                                 |    3 +
 5 files changed, 105 insertions(+), 51 deletions(-)

diff --git a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
index ef40a38..1304e35 100644
--- a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
+++ b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
@@ -131,12 +131,10 @@
             @ApiImplicitParam(value = "乘客当前定位经度", name = "lon", required = true, dataType = "double"),
             @ApiImplicitParam(value = "乘客当前定位纬度", name = "lat", required = true, dataType = "double")
     })
-    public ResultUtil<BaseWarpper> queryDriverLimitTen(Integer type, Double lon, Double lat){
+    public ResultUtil<List<Driver>> queryDriverLimitTen(Integer type, Double lon, Double lat){
         try {
             List<Driver> list = driverService.queryDriverLimitTen(type, lon, lat);
-            BaseWarpper baseWarpper = new BaseWarpper();
-            baseWarpper.setNumber(list.size());
-            return ResultUtil.success(baseWarpper);
+            return ResultUtil.success(list);
         }catch (Exception e){
             e.printStackTrace();
             return ResultUtil.runErr();
diff --git a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
index e3f45e6..86f17d4 100644
--- a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
+++ b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -131,6 +131,9 @@
                 orderStatusWarpper.setOrderId(orderPrivateCar.getId());
                 orderStatusWarpper.setOrderType(1);
                 orderStatusWarpper.setState(orderPrivateCar.getState());
+                orderStatusWarpper.setPayMethod(orderPrivateCar.getPayMethod());
+                orderStatusWarpper.setOrderMoney(orderPrivateCar.getOrderMoney());
+                orderStatusWarpper.setPaymentAdvanceMoney(orderPrivateCar.getPaymentAdvanceMoney());
                 data.add(orderStatusWarpper);
             }
             List<OrderTaxi> list = orderTaxiService.queryOrder(uid, 1, 2, 3, 4, 5, 6, 7, 11, 12);
diff --git a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml
index 5813605..abb0665 100644
--- a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml
+++ b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/dao/mapping/OrderPrivateCarMapper.xml
@@ -319,6 +319,9 @@
         trackId as trackId,
         isDelete as isDelete,
         oldState as oldState,
+        isException as isException,
+        payMethod as payMethod,
+        paymentAdvanceMoney as paymentAdvanceMoney,
         telX as telX,
         bindId as bindId
         from t_order_private_car where isDelete = 1 and userId = #{uid}
diff --git a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
index 20e4ff9..0fc2013 100644
--- a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
+++ b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -324,13 +324,21 @@
             driver.setState(3);
             driverService.updateById(driver);
         }
-
         // 查询城市的订单额度
         OpenCity openCity = openCityService.selectOne(new EntityWrapper<OpenCity>()
                 .eq("code", cityCode)
                 .ne("flag", 3)
                 .orderBy("orderMagnitude", false)
                 .last("LIMIT 1"));
+        if(Objects.isNull(openCity)){
+            String city = cityCode.substring(0, 4) + "00";
+            openCity = openCityService.selectOne(new EntityWrapper<OpenCity>()
+                    .eq("code", city)
+                    .ne("flag", 3)
+                    .orderBy("orderMagnitude", false)
+                    .last("LIMIT 1"));
+        }
+
         // 查询预估价格
         ResultUtil<List<ServerCarModelWarpper>> listResultUtil = serverCarModelService.queryServerCarModel(startLon + "," + startLat, endLon + "," + endLat, 1);
         List<ServerCarModelWarpper> data = listResultUtil.getData();
@@ -1326,36 +1334,36 @@
                 return ResultUtil.error("订单不在待支付状态,不允许支付", "");
             }
             PaymentRecord query3 = paymentRecordService.query(1, null, null, orderId, 1, null, 1);
-            if(null != query3){
-                ResultUtil<Map<String, Object>> resultUtil1 = payMoneyUtil.queryWXOrder("", query3.getSerialNumber(), "JSAPI");
-                if (resultUtil1.getCode() == 200) {
-                    /**
-                     * SUCCESS--支付成功
-                     * REFUND--转入退款
-                     * NOTPAY--未支付
-                     * CLOSED--已关闭
-                     * REVOKED--已撤销(刷卡支付)
-                     * USERPAYING--用户支付中
-                     * PAYERROR--支付失败(其他原因,如银行返回失败)
-                     * ACCEPT--已接收,等待扣款
-                     */
-                    String result_code = resultUtil1.getData().get("result_code").toString();
-                    if("SUCCESS".equals(result_code)){
-                        String s = resultUtil1.getData().get("trade_state").toString();
-                        if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s)) {
-                            payMoneyUtil.closeWXOrder(query3.getSerialNumber());
-                            paymentRecordService.deleteById(query3.getId());
-                        }
-                        if ("SUCCESS".equals(s) || "ACCEPT".equals(s)) {
-                            return ResultUtil.error("不允许重复支付");
-                        }
-                        if ("NOTPAY".equals(s) || "USERPAYING".equals(s)) {
-                            payMoneyUtil.closeWXOrder(query3.getSerialNumber());
-                            paymentRecordService.deleteById(query3.getId());
-                        }
-                    }
-                }
-            }
+//            if(null != query3){
+//                ResultUtil<Map<String, Object>> resultUtil1 = payMoneyUtil.queryWXOrder("", query3.getSerialNumber(), "JSAPI");
+//                if (resultUtil1.getCode() == 200) {
+//                    /**
+//                     * SUCCESS--支付成功
+//                     * REFUND--转入退款
+//                     * NOTPAY--未支付
+//                     * CLOSED--已关闭
+//                     * REVOKED--已撤销(刷卡支付)
+//                     * USERPAYING--用户支付中
+//                     * PAYERROR--支付失败(其他原因,如银行返回失败)
+//                     * ACCEPT--已接收,等待扣款
+//                     */
+//                    String result_code = resultUtil1.getData().get("result_code").toString();
+//                    if("SUCCESS".equals(result_code)){
+//                        String s = resultUtil1.getData().get("trade_state").toString();
+//                        if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s)) {
+//                            payMoneyUtil.closeWXOrder(query3.getSerialNumber());
+//                            paymentRecordService.deleteById(query3.getId());
+//                        }
+//                        if ("SUCCESS".equals(s) || "ACCEPT".equals(s)) {
+//                            return ResultUtil.error("不允许重复支付");
+//                        }
+//                        if ("NOTPAY".equals(s) || "USERPAYING".equals(s)) {
+//                            payMoneyUtil.closeWXOrder(query3.getSerialNumber());
+//                            paymentRecordService.deleteById(query3.getId());
+//                        }
+//                    }
+//                }
+//            }
     
     
     
@@ -1503,13 +1511,14 @@
 
                 userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(orderMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
 
-                SysIntegral query1 = sysIntegralMapper.query(orderPrivateCar.getCompanyId());
-                userInfo.setIntegral(userInfo.getIntegral() + (orderMoney.intValue() * query1.getIntegral()));//积分
-        
+//                SysIntegral query1 = sysIntegralMapper.query(orderPrivateCar.getCompanyId());
+//                if(Objects.nonNull(query1)){
+//                    userInfo.setIntegral(userInfo.getIntegral() + (orderMoney.intValue() * query1.getIntegral()));//积分
+//                }
+
                 //添加交易明细
                 transactionDetailsService.saveData(uid, "完成订单", orderMoney, 2, 1, 1, 1, orderId);
-                userInfoService.updateById(userInfo);
-        
+
 //                orderPrivateCar.setState(8);
                 orderPrivateCar.setPayType(3);
 //                orderPrivateCar.setPayMoney(orderMoney);
@@ -1532,6 +1541,12 @@
                     if(Objects.nonNull(orderPrivateCar.getPaymentAdvanceMoney()) && orderPrivateCar.getPaymentAdvanceMoney() > 0){
                         orderPrivateCar.setPayMoney(new BigDecimal(orderMoney).add(new BigDecimal(orderPrivateCar.getPaymentAdvanceMoney())).doubleValue());
                         orderPrivateCar.setOrderMoney(orderPrivateCar.getPayMoney());
+
+                        SysIntegral query1 = sysIntegralMapper.query(orderPrivateCar.getCompanyId());
+                        if(Objects.nonNull(query1)){
+                            userInfo.setIntegral(userInfo.getIntegral() + (orderMoney.intValue() * query1.getIntegral()));//积分
+                        }
+                        userInfoService.updateById(userInfo);
                         //添加已收入明细
                         Company company = companyService.selectById(orderPrivateCar.getCompanyId());
                         Double speMoney = company.getSpeMoney();
@@ -1999,19 +2014,23 @@
         }
         if(Integer.valueOf(String.valueOf(map.get("state"))) == 7){
             OrderPrivateCar orderPrivateCar = orderPrivateCarMapper.selectById(orderId);
-            UserActivityDiscount1 query2 = userActivityDiscount1Mapper.query(Integer.valueOf(String.valueOf(map.get("companyId"))));
-            if(null != query2){
-                Integer orderNum=this.selectCount(new EntityWrapper<OrderPrivateCar>().eq("userId",orderPrivateCar.getUserId()).eq("activityId",query2.getId()).last(" and to_days(getoffTime) = to_days(now())"));
-                if(query2.getDistance()*1000>orderPrivateCar.getMileage() && query2.getOrderNum()>orderNum){
-                    Double special = query2.getSpecial();
-                    orderPrivateCar.setDiscount(special);
-                    Double orderMoney = orderPrivateCar.getOrderMoney();
-                    double v = new BigDecimal(orderMoney).multiply(new BigDecimal(special / 10)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
-                    if(orderMoney.compareTo(v) > 0){
-                        map.put("discountMoney",orderMoney - v);
+            Object companyId = map.get("companyId");
+            if(Objects.nonNull(companyId)){
+                UserActivityDiscount1 query2 = userActivityDiscount1Mapper.query(Integer.valueOf(String.valueOf(map.get("companyId"))));
+                if(null != query2){
+                    Integer orderNum=this.selectCount(new EntityWrapper<OrderPrivateCar>().eq("userId",orderPrivateCar.getUserId()).eq("activityId",query2.getId()).last(" and to_days(getoffTime) = to_days(now())"));
+                    if(query2.getDistance()*1000>orderPrivateCar.getMileage() && query2.getOrderNum()>orderNum){
+                        Double special = query2.getSpecial();
+                        orderPrivateCar.setDiscount(special);
+                        Double orderMoney = orderPrivateCar.getOrderMoney();
+                        double v = new BigDecimal(orderMoney).multiply(new BigDecimal(special / 10)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
+                        if(orderMoney.compareTo(v) > 0){
+                            map.put("discountMoney",orderMoney - v);
+                        }
                     }
                 }
-
+            }else{
+                map.put("discountMoney",0);
             }
         }
 
diff --git a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderStatusWarpper.java b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderStatusWarpper.java
index 29f3c8a..ecfcb57 100644
--- a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderStatusWarpper.java
+++ b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderStatusWarpper.java
@@ -11,6 +11,37 @@
     private Integer orderType;
     @ApiModelProperty("订单状态(1=待接单,2=待出发,3=待到达预约地点,4=待乘客上车,5=服务中,6=完成服务,7=待支付,8=待评价,9=已完成,10=已取消,11=改派中,12=取消待支付)")
     private Integer state;
+    @ApiModelProperty("支付方式(0:预付1:后付)")
+    private Integer payMethod;
+    @ApiModelProperty("订单金额")
+    private Double orderMoney;
+
+    @ApiModelProperty("预付金额")
+    private Double paymentAdvanceMoney;
+
+    public Double getPaymentAdvanceMoney() {
+        return paymentAdvanceMoney;
+    }
+
+    public void setPaymentAdvanceMoney(Double paymentAdvanceMoney) {
+        this.paymentAdvanceMoney = paymentAdvanceMoney;
+    }
+
+    public Integer getPayMethod() {
+        return payMethod;
+    }
+
+    public void setPayMethod(Integer payMethod) {
+        this.payMethod = payMethod;
+    }
+
+    public Double getOrderMoney() {
+        return orderMoney;
+    }
+
+    public void setOrderMoney(Double orderMoney) {
+        this.orderMoney = orderMoney;
+    }
 
     public Integer getOrderId() {
         return orderId;

--
Gitblit v1.7.1