From 736ab0090700c75af37b8a3456b01609e4e2d329 Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期三, 17 七月 2024 11:09:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.0' into 2.0

---
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java |  184 ++++++++++++++++++++++-----------------------
 1 files changed, 90 insertions(+), 94 deletions(-)

diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
index b32e85f..f43310a 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
@@ -296,7 +296,6 @@
                     //推送司机订单状态
                     pushUtil.pushOrderState(2, orderTaxi.getDriverId(), orderTaxi.getId(), 2, orderTaxi.getState(), 0);
 
-                    pushUtil.pushDriverPosition(orderTaxi.getId(), 2);
                 }
             }
         }).start();
@@ -377,13 +376,13 @@
             return ResultUtil.error("获取数据失败,订单信息有误");
         }
         double amount = 0;
-        CancleOrder query = cancleOrderService.query(orderTaxi.getOrderType(), 2, orderTaxi.getCompanyId());
-        if(null != orderTaxi.getDriverId() &&
-                (orderTaxi.getSnatchOrderTime().getTime() + query.getMinuteNum() * 60 * 1000) < new Date().getTime()){//收费的情况
-            if(null != query){
-                amount += query.getMoney();
-            }
-        }
+//        CancleOrder query = cancleOrderService.query(orderTaxi.getOrderType(), 2, orderTaxi.getCompanyId());
+//        if(null != orderTaxi.getDriverId() &&
+//                (orderTaxi.getSnatchOrderTime().getTime() + query.getMinuteNum() * 60 * 1000) < new Date().getTime()){//收费的情况
+//            if(null != query){
+//                amount += query.getMoney();
+//            }
+//        }
         BaseWarpper baseWarpper = new BaseWarpper();
         baseWarpper.setAmount(amount);
         return ResultUtil.success(baseWarpper);
@@ -438,35 +437,35 @@
                 this.updateById(orderTaxi);
             }
         }else {
-            CancleOrder query = cancleOrderService.query(orderTaxi.getOrderType(), 2, orderTaxi.getCompanyId());
-            if (null != query) {
-                if ((orderTaxi.getSnatchOrderTime().getTime() + query.getMinuteNum() * 60 * 1000) < System.currentTimeMillis() && query.getMoney().compareTo(0D) > 0) {//收费的情况
-                    orderTaxi.setState(12);
-                    this.updateById(orderTaxi);
-                    integer = orderCancelService.saveData(id, 2, reason, remark, null, query.getMoney(), 1, 1, uid);
-                } else {
-                    integer = orderCancelService.saveData(id, 2, reason, remark, null, null, 2, 1, uid);
-
-                    orderTaxi.setState(10);
-                    this.updateById(orderTaxi);
-                }
-                this.deleteTask(id);//删除定时任务
-
-                new Thread(new Runnable() {
-                    @Override
-                    public void run() {
-                        pushUtil.pushOrderState(2, orderTaxi.getDriverId(), orderTaxi.getId(), 2, orderTaxi.getState(), 0);
-                        System.err.println("推送取消操作---------------------");
-                    }
-                }).start();
-
-                //修改司机为空闲
-                Driver driver = driverService.selectById(orderTaxi.getDriverId());
-                driver.setState(2);
-                driverService.updateById(driver);
-            }else{
-                return ResultUtil.error("请完善后台取消规则设置");
-            }
+//            CancleOrder query = cancleOrderService.query(orderTaxi.getOrderType(), 2, orderTaxi.getCompanyId());
+//            if (null != query) {
+//                if ((orderTaxi.getSnatchOrderTime().getTime() + query.getMinuteNum() * 60 * 1000) < System.currentTimeMillis() && query.getMoney().compareTo(0D) > 0) {//收费的情况
+//                    orderTaxi.setState(12);
+//                    this.updateById(orderTaxi);
+//                    integer = orderCancelService.saveData(id, 2, reason, remark, null, query.getMoney(), 1, 1, uid);
+//                } else {
+//                    integer = orderCancelService.saveData(id, 2, reason, remark, null, null, 2, 1, uid);
+//
+//                    orderTaxi.setState(10);
+//                    this.updateById(orderTaxi);
+//                }
+//                this.deleteTask(id);//删除定时任务
+//
+//                new Thread(new Runnable() {
+//                    @Override
+//                    public void run() {
+//                        pushUtil.pushOrderState(2, orderTaxi.getDriverId(), orderTaxi.getId(), 2, orderTaxi.getState(), 0);
+//                        System.err.println("推送取消操作---------------------");
+//                    }
+//                }).start();
+//
+//                //修改司机为空闲
+//                Driver driver = driverService.selectById(orderTaxi.getDriverId());
+//                driver.setState(2);
+//                driverService.updateById(driver);
+//            }else{
+//                return ResultUtil.error("请完善后台取消规则设置");
+//            }
 
         }
 
@@ -504,58 +503,58 @@
             orderCancel = orderCancelService.selectById(cancleId);
         }
 
-        CancleOrder query = cancleOrderService.query(orderTaxi.getOrderType(), 2, orderTaxi.getCompanyId());
-        if(null != query){
-            if(payType == 1){//微信支付
-                orderCancel.setPayType(1);
-                orderCancelService.updateById(orderCancel);
-                resultUtil = payMoneyUtil.weixinpay("订单取消",id +"",id + "_2_fei",query.getMoney()+"","/base/wxCancelOrderTaxi","JSAPI",userInfo.getAppletsOpenId());
-            }
-            if(payType == 2){//支付宝支付
-                orderCancel.setPayType(2);
-                orderCancelService.updateById(orderCancel);
-                resultUtil = payMoneyUtil.alipay("订单取消","订单取消",id + ",2",query.getMoney()+"","/base/aliCancelOrderTaxi");
-            }
-            if(payType == 3){//余额支付
-                if(userInfo.getBalance() != null && userInfo.getBalance() < query.getMoney()){
-                    return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant");
-                }
-
-                userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(query.getMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
-                //添加交易明细
-                transactionDetailsService.saveData(uid, "取消订单", query.getMoney(), 2, 1, 1, 2, id);
-                userInfoService.updateById(userInfo);
-
-                //解除小号绑定
-                if(orderTaxi.getBindId() != null){
-                    chinaMobileUtil.midAxbUnBindSend(orderTaxi.getBindId(),orderTaxi.getTelX());
-                }
-
-                orderTaxi.setState(10);
-                orderTaxi.setTelX("");
-                orderTaxi.setBindId("");
-                this.updateById(orderTaxi);
-
-                orderCancel.setState(2);
-                orderCancel.setPayType(3);
-                orderCancelService.updateById(orderCancel);
-
-                //添加已收入明细
-                incomeService.saveData(1, orderTaxi.getCompanyId(), 3, orderTaxi.getId(), 2, query.getMoney());
-
-                this.deleteTask(id);//删除定时任务
-
-//                new Thread(new Runnable() {
-//                    @Override
-//                    public void run() {
-//                        pushUtil.pushOrderState(2, orderTaxi.getDriverId(), orderTaxi.getId(), 2, orderTaxi.getState(), 0);
-//                    }
-//                }).start();
-
-                //添加消息
-                systemNoticeService.addSystemNotice(1, "您已使用余额成功支付取消订单费用,谢谢使用!", orderTaxi.getUserId(), 1);
-            }
-        }
+//        CancleOrder query = cancleOrderService.query(orderTaxi.getOrderType(), 2, orderTaxi.getCompanyId());
+//        if(null != query){
+//            if(payType == 1){//微信支付
+//                orderCancel.setPayType(1);
+//                orderCancelService.updateById(orderCancel);
+//                resultUtil = payMoneyUtil.weixinpay("订单取消",id +"",id + "_2_fei",query.getMoney()+"","/base/wxCancelOrderTaxi","JSAPI",userInfo.getAppletsOpenId());
+//            }
+//            if(payType == 2){//支付宝支付
+//                orderCancel.setPayType(2);
+//                orderCancelService.updateById(orderCancel);
+//                resultUtil = payMoneyUtil.alipay("订单取消","订单取消",id + ",2",query.getMoney()+"","/base/aliCancelOrderTaxi");
+//            }
+//            if(payType == 3){//余额支付
+//                if(userInfo.getBalance() != null && userInfo.getBalance() < query.getMoney()){
+//                    return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant");
+//                }
+//
+//                userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(query.getMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+//                //添加交易明细
+//                transactionDetailsService.saveData(uid, "取消订单", query.getMoney(), 2, 1, 1, 2, id);
+//                userInfoService.updateById(userInfo);
+//
+//                //解除小号绑定
+//                if(orderTaxi.getBindId() != null){
+//                    chinaMobileUtil.midAxbUnBindSend(orderTaxi.getBindId(),orderTaxi.getTelX());
+//                }
+//
+//                orderTaxi.setState(10);
+//                orderTaxi.setTelX("");
+//                orderTaxi.setBindId("");
+//                this.updateById(orderTaxi);
+//
+//                orderCancel.setState(2);
+//                orderCancel.setPayType(3);
+//                orderCancelService.updateById(orderCancel);
+//
+//                //添加已收入明细
+//                incomeService.saveData(1, orderTaxi.getCompanyId(), 3, orderTaxi.getId(), 2, query.getMoney());
+//
+//                this.deleteTask(id);//删除定时任务
+//
+////                new Thread(new Runnable() {
+////                    @Override
+////                    public void run() {
+////                        pushUtil.pushOrderState(2, orderTaxi.getDriverId(), orderTaxi.getId(), 2, orderTaxi.getState(), 0);
+////                    }
+////                }).start();
+//
+//                //添加消息
+//                systemNoticeService.addSystemNotice(1, "您已使用余额成功支付取消订单费用,谢谢使用!", orderTaxi.getUserId(), 1);
+//            }
+//        }
         return resultUtil;
     }
 
@@ -1058,10 +1057,7 @@
             }else{//随机金额
                 Double startMoney = Double.valueOf(String.valueOf(query.get("startMoney")));
                 Double endMoney = Double.valueOf(String.valueOf(query.get("endMoney")));
-                int i = new BigDecimal(endMoney).subtract(new BigDecimal(startMoney)).intValue();
-                Random random = new Random();
-                int num = random.nextInt(i);
-                money = new BigDecimal(startMoney).add(new BigDecimal(num)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
+                money = new BigDecimal(startMoney + (Math.random() * (endMoney - startMoney))).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
             }
         }
         BaseWarpper baseWarpper = new BaseWarpper();
@@ -1076,10 +1072,10 @@
             //添加临时红包数据
             UserRedPacketRecord userRedPacketRecord = new UserRedPacketRecord();
             userRedPacketRecord.setMoney(money);
+            userRedPacketRecord.setRemainingAmount(money);
             Calendar calendar = Calendar.getInstance();
             calendar.setTime(new Date());
             calendar.set(Calendar.DAY_OF_MONTH, calendar.get(Calendar.DAY_OF_MONTH) + Integer.valueOf(String.valueOf(query.get("effective"))));
-            userRedPacketRecord.setExpirationTime(calendar.getTime());
             userRedPacketRecord.setInsertTime(new Date());
             userRedPacketRecord.setCompanyId(Integer.valueOf(String.valueOf(query.get("companyId"))));
             userRedPacketRecord.setState(0);

--
Gitblit v1.7.1