From b1f2f102034b4433201225b67a9fc78c08e532f0 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 06 六月 2025 18:35:03 +0800
Subject: [PATCH] 修改bug和管理后台报表

---
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java            |   18 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java              |   15 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/grant.html                                                  |    8 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderPrivateCar/tOrderPrivateCar_orderDetail.html                  |    6 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java                                           |    2 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCarMapper.xml                              |   18 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tIncome/driverWorkDetail.html                                       |    3 
 ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/use.js                                                    |    4 
 DriverIGOTravel/guns-admin/src/main/resources/application-produce.yml                                                                  |   12 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderCrossCity/tOrderCrossCity_detail.html                         |   14 
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java                                                  |    2 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TIncomeController.java                       |   27 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TDispatchMapper.xml                         |    6 
 ZuulIGOTravel/src/main/resources/application.yml                                                                                       |    3 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderLogistics/tOrderLogistics_detail.html                         |    4 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCarController.java                  |   25 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/platform/commission.html                                            |    8 
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml                                     |    2 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderTaxiMapper.xml                        |    4 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTaxi/tOrderTaxi_edit.html                                     |   14 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderCrossCity/tOrderCrossCity.html                                |    2 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IncomeMapper.java                                   |    5 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java           |   25 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java |    2 
 ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/tIncome/driverWorkDetail.js                                       |    1 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/use.html                                                    |   26 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTaxi/tOrderTaxi.html                                          |    2 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java                      |   37 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java                      |  111 ++
 UserIGOTravel/guns-admin/src/main/resources/application-produce.yml                                                                    |   15 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderEvaluateMapper.xml                    |    4 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IncomeMapper.xml                            |   14 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/HomeController.java                  |   10 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java                                         |    4 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java                                     |   19 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java                       |   12 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCompanyMapper.xml                          |    6 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TReassignController.java        |    6 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java                                            |   18 
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml                                  |    8 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java                          |  122 +-
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TReassignMapper.xml                         |    8 
 ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/userActivity/userActivity.js                                      |    2 
 ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/grant.js                                                  |    4 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderLogistics/tOrderLogistics.html                                |    2 
 ManagementIGOTravel/guns-admin/src/main/resources/application-dev.yml                                                                  |   18 
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java                          |    3 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIncomeService.java                             |    5 
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java             |   18 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java               |   25 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml                                   |    2 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderPrivateCar/tOrderPrivateCar.html                              |    2 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TComplaintMapper.xml                        |    4 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IncomeServiceImpl.java                     |    9 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java                                                |    2 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java                         |  231 +++---
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java                                          |    4 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java                            |   10 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java               |   14 
 ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/tIncome/driverWork.js                                             |    9 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml                                |   10 
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java                         |  217 +++--
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DispatchMapper.xml                              |    2 
 /dev/null                                                                                                                              |  659 -------------------
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java                        |   20 
 ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tIncome/driverWork.html                                             |   16 
 ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/platform/platform.js                                              |    4 
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TDriverMapper.xml                           |   22 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java          |   39 
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java                                           |    4 
 70 files changed, 768 insertions(+), 1,241 deletions(-)

diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java
index 7a45fdf..caa6619 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java
@@ -102,7 +102,7 @@
     @Bean
     public CookieRememberMeManager rememberMeManager(SimpleCookie rememberMeCookie) {
         CookieRememberMeManager manager = new CookieRememberMeManager();
-        manager.setCipherKey(Base64.decode("Z3VucwAAAAAAAAAAAAAAAA=="));
+        manager.setCipherKey(Base64.decode("1IuXNg73B4lqGJsB"));
         manager.setCookie(rememberMeCookie);
         return manager;
     }
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
index 6023a07..e5be16e 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -553,7 +553,7 @@
         try {
             Map<String, Object> map = orderService.queryOrderInfo(language, orderId, orderType);
             //更新小号绑定关系
-            orderService.RebindMidAxbBindSend(orderId, orderType);
+//            orderService.RebindMidAxbBindSend(orderId, orderType);
 
             pushUtil.pushOrderReassign(Integer.valueOf(String.valueOf(map.get("driverId"))), 2,Integer.valueOf(String.valueOf(map.get("orderId"))), orderType, "");
 
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
index 6dd6f5a..35411eb 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -474,13 +474,13 @@
         orderCrossCity.setTrackId(track);
 
         //调用移动的小号接口
-        Map<String, String> geocode = gdMapGeocodingUtil.geocode(orderCrossCity.getStartLon().toString(), orderCrossCity.getStartLat().toString());
-        Region region = regionMapper.query(geocode.get("districtCode"));
-        Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderCrossCity.getPassengersPhone(), driver.getPhone(), Integer.valueOf(region.getCitycode().substring(1)));
-        if(String.valueOf(map.get("code")).equals("200")){
-            orderCrossCity.setTelX(map.get("telX"));
-            orderCrossCity.setBindId(map.get("bindId"));
-        }
+//        Map<String, String> geocode = gdMapGeocodingUtil.geocode(orderCrossCity.getStartLon().toString(), orderCrossCity.getStartLat().toString());
+//        Region region = regionMapper.query(geocode.get("districtCode"));
+//        Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderCrossCity.getPassengersPhone(), driver.getPhone(), Integer.valueOf(region.getCitycode().substring(1)));
+//        if(String.valueOf(map.get("code")).equals("200")){
+//            orderCrossCity.setTelX(map.get("telX"));
+//            orderCrossCity.setBindId(map.get("bindId"));
+//        }
         if(orderCrossCityWarpper.getTravelMode() == 2){//包车
             orderCrossCity.setSeatNumber(lineShiftDriver.getLaveSeatNumber());
             orderCrossCity.setPeopleNumber(lineShiftDriver.getLaveSeat());
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
index 63c06be..2bd71cc 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -178,8 +178,7 @@
         Driver driver = driverService.selectById(uid);
         orderLogistics.setDriverId(uid);
         orderLogistics.setCarId(driver.getCarId());
-        orderLogistics.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+        orderLogistics.setCompanyId(driver.getCompanyId());
         orderLogistics.setState(2);
         orderLogistics.setSnatchOrderTime(new Date());
         if(!StringUtils.hasLength(orderLogistics.getTripId())){
@@ -437,6 +436,9 @@
                 tripStatus = "ENROUTE_TO_DROPOFF";
                 break;
             case 6://结束服务
+                if(null == lon || null == lat){
+                    return ResultUtil.error(language == 1 ? "无效的经纬度" : language == 2 ? "Invalid longitude and latitude" : "Longitude et latitude non valides");
+                }
                 orderLogistics.setGetoffLon(lon);
                 orderLogistics.setGetoffLat(lat);
                 orderLogistics.setGetoffAddress(address);
@@ -568,8 +570,7 @@
         Driver driver = driverService.selectById(uid);
         orderLogistics.setDriverId(uid);
         orderLogistics.setCarId(driver.getCarId());
-        orderLogistics.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+        orderLogistics.setCompanyId(driver.getCompanyId());
         orderLogistics.setState(2);
         Date date = new Date();
         orderLogistics.setSnatchOrderTime(date);
@@ -1073,7 +1074,27 @@
         if(orderLogistics.getArriveTime()==null){
             orderLogistics.setArriveTime(orderLogistics.getStartServiceTime());
         }
+    
+        //使用原始里程计算费用
         orderLogistics = this.setMoney(orderLogistics, 0D, 0D);//计算费用
+        Double mileage = orderLogistics.getMileage();
+        Double orderMoney1 = orderLogistics.getOrderMoney();
+        //使用预估里程计算费用
+        Double startLat = orderLogistics.getStartLat();
+        Double startLon = orderLogistics.getStartLon();
+        Double getoffLon = orderLogistics.getGetoffLon();
+        Double getoffLat = orderLogistics.getGetoffLat();
+        DistancematrixVo distancematrix = GoogleMapUtil.getDistancematrix(startLat, startLon, getoffLat, getoffLon, orderLogistics.getTripId());
+        orderLogistics.setMileage(distancematrix.getDistance().doubleValue());
+        orderLogistics = this.setMoney(orderLogistics, 0D, 0D);
+        Double orderMoney2 = orderLogistics.getOrderMoney();
+        //如果原始金额小于预估金额,且比例小于95%,则使用预估金额
+        if(orderMoney1.compareTo(orderMoney2) >= 0 || orderMoney1 / orderMoney2 >= 0.95){
+            //原始金额大于预估金额或者比例大于0.95,则使用原始里程重新计算费用
+            orderLogistics.setMileage(mileage);
+            orderLogistics = this.setMoney(orderLogistics, 0D, 0D);//计算费用
+        }
+        
         orderLogistics.setPayManner(type);
         orderLogistics.setParkMoney(null == parkingFee ? 0D : parkingFee);
         orderLogistics.setRoadTollMoney(null == crossingFee ? 0D : crossingFee);
@@ -1123,11 +1144,11 @@
             orderLogistics.setState(7);
         }
         
-        Map<String, String> map = chinaMobileUtil.midAxbUnBindSend(orderLogistics.getBindId(),orderLogistics.getTelX());
-        if(String.valueOf(map.get("code")).equals("200")){
-            orderLogistics.setTelX("");
-            orderLogistics.setBindId("");
-        }
+//        Map<String, String> map = chinaMobileUtil.midAxbUnBindSend(orderLogistics.getBindId(),orderLogistics.getTelX());
+//        if(String.valueOf(map.get("code")).equals("200")){
+//            orderLogistics.setTelX("");
+//            orderLogistics.setBindId("");
+//        }
         this.updateById(orderLogistics);
         //修改行程数据
         Car car = carService.selectById(orderLogistics.getCarId());
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
index 9055536..33d133f 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -232,8 +232,7 @@
         Driver driver = driverService.selectById(uid);
         orderPrivateCar.setDriverId(uid);
         orderPrivateCar.setCarId(driver.getCarId());
-        orderPrivateCar.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+        orderPrivateCar.setCompanyId(driver.getCompanyId());
         orderPrivateCar.setState(2);
         orderPrivateCar.setSnatchOrderTime(new Date());
         if(!StringUtils.hasLength(orderPrivateCar.getTripId())){
@@ -596,6 +595,9 @@
                 }
                 break;
             case 6://结束服务(专车可以返回继续服务)不修改状态
+                if(null == lon || null == lat){
+                    return ResultUtil.error(language == 1 ? "无效的经纬度" : language == 2 ? "Invalid longitude and latitude" : "Longitude et latitude non valides");
+                }
                 orderPrivateCar.setState(6);
                 orderPrivateCar.setGetoffLon(lon);
                 orderPrivateCar.setGetoffLat(lat);
@@ -674,7 +676,26 @@
             orderPrivateCar.setArriveTime(orderPrivateCar.getStartServiceTime());
         }
         
+        //使用原始里程计算费用
         orderPrivateCar = this.setMoney(orderPrivateCar, 0D, 0D);//计算费用
+        Double mileage = orderPrivateCar.getMileage();
+        Double orderMoney1 = orderPrivateCar.getOrderMoney();
+        //使用预估里程计算费用
+        Double startLat = orderPrivateCar.getStartLat();
+        Double startLon = orderPrivateCar.getStartLon();
+        Double getoffLon = orderPrivateCar.getGetoffLon();
+        Double getoffLat = orderPrivateCar.getGetoffLat();
+        DistancematrixVo distancematrix = GoogleMapUtil.getDistancematrix(startLat, startLon, getoffLat, getoffLon, orderPrivateCar.getTripId());
+        orderPrivateCar.setMileage(distancematrix.getDistance().doubleValue());
+        orderPrivateCar = this.setMoney(orderPrivateCar, 0D, 0D);
+        Double orderMoney2 = orderPrivateCar.getOrderMoney();
+        //如果原始金额小于预估金额,且比例小于95%,则使用预估金额
+        if(orderMoney1.compareTo(orderMoney2) >= 0 || orderMoney1 / orderMoney2 >= 0.95){
+            //原始金额大于预估金额或者比例大于0.95,则使用原始里程重新计算费用
+            orderPrivateCar.setMileage(mileage);
+            orderPrivateCar = this.setMoney(orderPrivateCar, 0D, 0D);//计算费用
+        }
+        
         orderPrivateCar.setPayManner(type);
         orderPrivateCar.setParkMoney(null == parkingFee ? 0D : parkingFee);
         orderPrivateCar.setRoadTollMoney(null == crossingFee ? 0D : crossingFee);
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml
index e54bf12..99b6ccc 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml
@@ -37,7 +37,7 @@
         where a.state = 1
         <choose>
             <when test="companyId != 1">
-                and  a.companyId = #{companyId} or a.franchiseeId = #{companyId}
+                and  a.companyId = #{companyId}
             </when>
             <otherwise>
                 and a.isPlatCar = 1
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DispatchMapper.xml b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DispatchMapper.xml
index 12a57a6..8ec12d9 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DispatchMapper.xml
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DispatchMapper.xml
@@ -50,7 +50,7 @@
         pushOrder as pushOrder
         from t_dispatch where state != 3
         <if test="null != companyId">
-            and if(franchiseeId is null or franchiseeId = 0, companyId = #{companyId}, franchiseeId = #{companyId})
+            and companyId = #{companyId}
         </if>
         <if test="null != pushOrder">
             and pushOrder = #{pushOrder}
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml
index 71aa810..3e6b1e5 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml
@@ -173,7 +173,7 @@
         a.networkCarlssueImg as networkCarlssueImg,
         a.placeOfEmployment as placeOfEmployment,
         (select id from t_city where chineseName = a.placeOfPractice or englishName = a.placeOfPractice or frenchName = a.placeOfPractice)placeOfPracticeId,
-        (select `name` from t_company where 1 = 1 and if(a.companyId is null or a.companyId = 0, id = 1, if(a.franchiseeId is null or a.franchiseeId = 0, id = a.companyId, id = a.franchiseeId))) as company,
+        (select `name` from t_company where 1 = 1 and if(a.companyId is null or a.companyId = 0, id = 1, id = a.companyId)) as company,
         b.carLicensePlate as licensePlate,
         b.carColor as carColor,
         b.vehicleId,
@@ -218,10 +218,10 @@
         from t_driver where flag != 3 and authState = 2
         <choose>
             <when test="companyId == 1">
-                and (companyId = 1 or companyId is null or companyId = 0) and (franchiseeId = 0 or franchiseeId is null)
+                and (companyId = 1 or companyId is null or companyId = 0)
             </when>
             <otherwise>
-                and companyId = #{companyId} or franchiseeId = #{companyId}
+                and companyId = #{companyId}
             </otherwise>
         </choose>
     </select>
@@ -318,10 +318,10 @@
         <if test="null != companyId">
             <choose>
                 <when test="companyId != 1">
-                    and companyId = #{companyId} or franchiseeId = #{companyId}
+                    and companyId = #{companyId}
                 </when>
                 <otherwise>
-                    and companyId is null or companyId = 0 or companyId = 1 or franchiseeId is null or franchiseeId = 0
+                    and companyId is null or companyId = 0 or companyId = 1
                 </otherwise>
             </choose>
         
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java
index 36aada9..9bf614f 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java
@@ -79,8 +79,7 @@
     @Override
     public boolean idle(Integer id) throws Exception {
         Car car = this.selectById(id);
-        List<Map<String, Object>> list = carMapper.queryIdleData(car.getFranchiseeId() != null && car.getFranchiseeId() != 0 ? car.getFranchiseeId() : (
-                car.getCompanyId() != null && car.getCompanyId() != 0 ? car.getCompanyId() : 1));
+        List<Map<String, Object>> list = carMapper.queryIdleData(car.getCompanyId());
         for(Map<String, Object> map : list){
             Integer carId = Integer.valueOf(String.valueOf(map.get("id")));
             if(carId.compareTo(id) == 0){
@@ -203,16 +202,13 @@
         }
         Driver driver = driverService.selectById(uid);
         car.setCompanyId(driver.getCompanyId());
-        car.setFranchiseeId(driver.getFranchiseeId());
         car.setInsertTime(new Date());
         car.setState(1);
         car.setAuthState(1);
         car.setAddType(1);
         car.setDriverId(uid);
-        car.setAddObjectId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
-        Company company = companyMapper.selectById(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+        car.setAddObjectId(driver.getCompanyId());
+        Company company = companyMapper.selectById(driver.getCompanyId());
         car.setIsPlatCar(company.getType() == 1 ? 1 : 2);
         this.insertOrUpdate(car);
         //判断司机是否已经关联车辆,未关联车辆默认关联当前车辆
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
index 68f009a..39f00d7 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -531,117 +531,118 @@
                     driverActivityHistory.setCompletionTime(new Date());
                     driverActivityHistoryMapper.updateById(driverActivityHistory);
                 }
-                driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
-                driver.setLaveActivityMoney(bigDecimal.add(new BigDecimal(driver.getLaveActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
-                driver.setBalance(bigDecimal.add(new BigDecimal(driver.getBalance())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
-                driverMapper.updateById(driver);
-
-                if(list.size() > 0 && ToolUtil.isNotEmpty(driver.getEmail())){
-                    Driver finalDriver = driver;
-                    BigDecimal finalBigDecimal = bigDecimal;
-                    new Thread(new Runnable() {
-                        @Override
-                        public void run() {
-                            try {
-                                String path = templatePath + "driver/index.html";
-                                Document document = Jsoup.parse(new File(path), "UTF-8");
-                                if(1 == language){
-                                    document.getElementById("english").remove();
-                                    document.getElementById("french").remove();
-                                    document.getElementById("user").remove();
-                                    document.getElementById("settle").remove();
-                                    document.getElementById("pass").remove();
-                                    document.getElementById("email").remove();
-                                    document.getElementById("bill").remove();
-                                    document.getElementById("reward").remove();
-                                    document.getElementById("rewardToday").remove();
-                                    document.getElementById("driverAudit").remove();
-                                    document.getElementById("carAudit").remove();
-        
-                                    document.getElementsByTag("title").get(0).text("司机奖励通知");
-                                    Element invite_user = document.getElementById("invite_user");
-                                    invite_user.text("您好 " + finalDriver.getFirstName() + "" + finalDriver.getLastName() + ",");
-                                    Element invite_content = document.getElementById("invite_content");
-                                    invite_content.text("您已成功邀请一位司机注册I-GO,获得奖励GHS " + finalBigDecimal.doubleValue() + ",请查收");
-                                }
-                                if(2 == language){
-                                    document.getElementById("chinese").remove();
-                                    document.getElementById("french").remove();
-                                    document.getElementById("user1").remove();
-                                    document.getElementById("settle1").remove();
-                                    document.getElementById("pass1").remove();
-                                    document.getElementById("email1").remove();
-                                    document.getElementById("bill1").remove();
-                                    document.getElementById("reward1").remove();
-                                    document.getElementById("rewardToday1").remove();
-                                    document.getElementById("driverAudit1").remove();
-                                    document.getElementById("carAudit1").remove();
-        
-                                    document.getElementsByTag("title").get(0).text("Reward-driver notice");
-                                    Element invite1_user = document.getElementById("invite1_user");
-                                    invite1_user.text("Hello " + finalDriver.getFirstName() + "" + finalDriver.getLastName() + ",");
-                                    Element invite1_content = document.getElementById("invite1_content");
-                                    invite1_content.text("You have succeeded to invite a driver to register with I-GO, so you received a GHS " + finalBigDecimal.doubleValue() + " bonus, please check your balance.");
-                                }
-                                if(3 == language){
-                                    document.getElementById("chinese").remove();
-                                    document.getElementById("english").remove();
-                                    document.getElementById("user2").remove();
-                                    document.getElementById("settle2").remove();
-                                    document.getElementById("pass2").remove();
-                                    document.getElementById("email2").remove();
-                                    document.getElementById("bill2").remove();
-                                    document.getElementById("reward2").remove();
-                                    document.getElementById("rewardToday2").remove();
-                                    document.getElementById("driverAudit2").remove();
-                                    document.getElementById("carAudit2").remove();
-        
-                                    document.getElementsByTag("title").get(0).text("Avis de chauffeur de récompense");
-                                    Element invite2_user = document.getElementById("invite2_user");
-                                    invite2_user.text("Bonjour " + finalDriver.getFirstName() + " " + finalDriver.getLastName() + ",");
-                                    Element invite2_content = document.getElementById("invite2_content");
-                                    invite2_content.text("Vous avez invité avec succès un conducteur à s’inscrire à i-go pour recevoir une récompense GHS " + finalBigDecimal.doubleValue() + ". Veuillez vérifier");
-                                }
-                                EmailUtil.send(finalDriver.getEmail(), language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense",  document.html());
-                                String randomString = ToolUtil.getRandomString(10);
-                                //开始生成pdf收据和html收据
-                                File file = new File("/home/igotechgh/nginx/html/files/html/");
-                                if(!file.exists()){
-                                    file.mkdirs();
-                                }
-                                file = new File("/home/igotechgh/nginx/html/files/html/invitation_" + randomString + ".html");
-                                if(!file.exists()){
-                                    file.createNewFile();
-                                }
-                                FileWriter fileWriter = new FileWriter(file);
-                                fileWriter.write(document.html());
-                                fileWriter.flush();
-                                fileWriter.close();
+                if(bigDecimal.compareTo(BigDecimal.ZERO) > 0){
+                    driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                    driver.setLaveActivityMoney(bigDecimal.add(new BigDecimal(driver.getLaveActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                    driver.setBalance(bigDecimal.add(new BigDecimal(driver.getBalance())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                    driverMapper.updateById(driver);
     
-                                String link ="https://igo.i-go.group/files/html/invitation_" + randomString + ".html";
-                                TEmail tEmail = new TEmail();
-                                tEmail.setLink(link);
-                                tEmail.setUserId(finalDriver.getId());
-                                tEmail.setType(2);
-                                tEmail.setName(language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense");
-                                tEmail.setCreateTime(new Date());
-                                int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
-                                String week = EmailUtil.getWeek(language, i);
-                                tEmail.setWeek(week);
-                                boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
-                                if(am){
-                                    tEmail.setAmOrPm(language==1?"上午":language==2?"morning":"matin");
-                                }else {
-                                    tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
+                    if(ToolUtil.isNotEmpty(driver.getEmail())){
+                        Driver finalDriver = driver;
+                        BigDecimal finalBigDecimal = bigDecimal;
+                        new Thread(new Runnable() {
+                            @Override
+                            public void run() {
+                                try {
+                                    String path = templatePath + "driver/index.html";
+                                    Document document = Jsoup.parse(new File(path), "UTF-8");
+                                    if(1 == language){
+                                        document.getElementById("english").remove();
+                                        document.getElementById("french").remove();
+                                        document.getElementById("user").remove();
+                                        document.getElementById("settle").remove();
+                                        document.getElementById("pass").remove();
+                                        document.getElementById("email").remove();
+                                        document.getElementById("bill").remove();
+                                        document.getElementById("reward").remove();
+                                        document.getElementById("rewardToday").remove();
+                                        document.getElementById("driverAudit").remove();
+                                        document.getElementById("carAudit").remove();
+                        
+                                        document.getElementsByTag("title").get(0).text("司机奖励通知");
+                                        Element invite_user = document.getElementById("invite_user");
+                                        invite_user.text("您好 " + finalDriver.getFirstName() + "" + finalDriver.getLastName() + ",");
+                                        Element invite_content = document.getElementById("invite_content");
+                                        invite_content.text("您已成功邀请一位司机注册I-GO,获得奖励GHS " + finalBigDecimal.doubleValue() + ",请查收");
+                                    }
+                                    if(2 == language){
+                                        document.getElementById("chinese").remove();
+                                        document.getElementById("french").remove();
+                                        document.getElementById("user1").remove();
+                                        document.getElementById("settle1").remove();
+                                        document.getElementById("pass1").remove();
+                                        document.getElementById("email1").remove();
+                                        document.getElementById("bill1").remove();
+                                        document.getElementById("reward1").remove();
+                                        document.getElementById("rewardToday1").remove();
+                                        document.getElementById("driverAudit1").remove();
+                                        document.getElementById("carAudit1").remove();
+                        
+                                        document.getElementsByTag("title").get(0).text("Reward-driver notice");
+                                        Element invite1_user = document.getElementById("invite1_user");
+                                        invite1_user.text("Hello " + finalDriver.getFirstName() + "" + finalDriver.getLastName() + ",");
+                                        Element invite1_content = document.getElementById("invite1_content");
+                                        invite1_content.text("You have succeeded to invite a driver to register with I-GO, so you received a GHS " + finalBigDecimal.doubleValue() + " bonus, please check your balance.");
+                                    }
+                                    if(3 == language){
+                                        document.getElementById("chinese").remove();
+                                        document.getElementById("english").remove();
+                                        document.getElementById("user2").remove();
+                                        document.getElementById("settle2").remove();
+                                        document.getElementById("pass2").remove();
+                                        document.getElementById("email2").remove();
+                                        document.getElementById("bill2").remove();
+                                        document.getElementById("reward2").remove();
+                                        document.getElementById("rewardToday2").remove();
+                                        document.getElementById("driverAudit2").remove();
+                                        document.getElementById("carAudit2").remove();
+                        
+                                        document.getElementsByTag("title").get(0).text("Avis de chauffeur de récompense");
+                                        Element invite2_user = document.getElementById("invite2_user");
+                                        invite2_user.text("Bonjour " + finalDriver.getFirstName() + " " + finalDriver.getLastName() + ",");
+                                        Element invite2_content = document.getElementById("invite2_content");
+                                        invite2_content.text("Vous avez invité avec succès un conducteur à s’inscrire à i-go pour recevoir une récompense GHS " + finalBigDecimal.doubleValue() + ". Veuillez vérifier");
+                                    }
+                                    EmailUtil.send(finalDriver.getEmail(), language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense",  document.html());
+                                    String randomString = ToolUtil.getRandomString(10);
+                                    //开始生成pdf收据和html收据
+                                    File file = new File("/home/igotechgh/nginx/html/files/html/");
+                                    if(!file.exists()){
+                                        file.mkdirs();
+                                    }
+                                    file = new File("/home/igotechgh/nginx/html/files/html/invitation_" + randomString + ".html");
+                                    if(!file.exists()){
+                                        file.createNewFile();
+                                    }
+                                    FileWriter fileWriter = new FileWriter(file);
+                                    fileWriter.write(document.html());
+                                    fileWriter.flush();
+                                    fileWriter.close();
+                    
+                                    String link ="https://igo.i-go.group/files/html/invitation_" + randomString + ".html";
+                                    TEmail tEmail = new TEmail();
+                                    tEmail.setLink(link);
+                                    tEmail.setUserId(finalDriver.getId());
+                                    tEmail.setType(2);
+                                    tEmail.setName(language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense");
+                                    tEmail.setCreateTime(new Date());
+                                    int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
+                                    String week = EmailUtil.getWeek(language, i);
+                                    tEmail.setWeek(week);
+                                    boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
+                                    if(am){
+                                        tEmail.setAmOrPm(language==1?"上午":language==2?"morning":"matin");
+                                    }else {
+                                        tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
+                                    }
+                                    emailService.insert(tEmail);
+                                }catch (Exception e){
+                                    e.printStackTrace();
                                 }
-                                emailService.insert(tEmail);
-                            }catch (Exception e){
-                                e.printStackTrace();
                             }
-                        }
-                    }).start();
+                        }).start();
+                    }
                 }
-
             }
             if(type == 1){//用户分享
                 UserInfo userInfo = userInfoMapper.selectById(uid);
@@ -765,18 +766,7 @@
             return ResultUtil.error(language == 1 ? "选择从业地暂未开通业务" : language == 2 ? "Not yet to commence business at the workplace selected." : "N’a pas encore commencé ses activités sur le lieu de travail sélectionné.");
         }
         if(null != query){
-            switch (query.getType()){
-                case 1://平台
-                    driver.setCompanyId(query.getId());
-                    break;
-                case 2://分公司
-                    driver.setCompanyId(query.getId());
-                    break;
-                case 3://加盟商
-                    driver.setCompanyId(query.getSuperiorId());
-                    driver.setFranchiseeId(query.getId());
-                    break;
-            }
+            driver.setCompanyId(query.getId());
         }
         driver.setHeadImgUrl(registeredWarpper.getHeadImgUrl());
         driver.setIdCardImgUrl1(registeredWarpper.getIdCardImgUrl1());
@@ -1742,8 +1732,7 @@
     @Override
     public Map<String, Object> queryPhone(Integer uid) throws Exception {
         Driver driver = this.selectById(uid);
-        Company company = companyMapper.selectById(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+        Company company = companyMapper.selectById(driver.getCompanyId());
         Map<String, Object> map = new HashMap<>();
         if(company.getType() == 3){//加盟商
             Phone phone = phoneMapper.queryInfo(company.getId(), 2);
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
index e455467..9d8d1a9 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
@@ -799,31 +799,31 @@
      */
     @Override
     public void taskMidAxbUnBindSend() throws Exception {
-        List<OrderTaxi> list = orderTaxiService.taskMidAxbUnBindSend();
-        for(OrderTaxi orderTaxi : list){
-            Map<String, String> map = chinaMobileUtil.midAxbUnBindSend(orderTaxi.getBindId(),orderTaxi.getTelX());
-            if(!String.valueOf(map.get("code")).equals("200")){
-                System.err.println(String.valueOf(map.get("msg")));
-            }
-            orderTaxi.setTelX("");
-            orderTaxi.setBindId("");
-        }
-        if(list.size() > 0){
-            orderTaxiService.updateBatchById(list);
-        }
-
-        List<OrderPrivateCar> list1 = orderPrivateCarService.taskMidAxbUnBindSend();
-        for(OrderPrivateCar orderPrivateCar : list1){
-            Map<String, String> map = chinaMobileUtil.midAxbUnBindSend(orderPrivateCar.getBindId(),orderPrivateCar.getTelX());
-            if(!String.valueOf(map.get("code")).equals("200")){
-                System.err.println(String.valueOf(map.get("msg")));
-            }
-            orderPrivateCar.setTelX("");
-            orderPrivateCar.setBindId("");
-        }
-        if(list1.size() > 0){
-            orderPrivateCarService.updateBatchById(list1);
-        }
+//        List<OrderTaxi> list = orderTaxiService.taskMidAxbUnBindSend();
+//        for(OrderTaxi orderTaxi : list){
+//            Map<String, String> map = chinaMobileUtil.midAxbUnBindSend(orderTaxi.getBindId(),orderTaxi.getTelX());
+//            if(!String.valueOf(map.get("code")).equals("200")){
+//                System.err.println(String.valueOf(map.get("msg")));
+//            }
+//            orderTaxi.setTelX("");
+//            orderTaxi.setBindId("");
+//        }
+//        if(list.size() > 0){
+//            orderTaxiService.updateBatchById(list);
+//        }
+//
+//        List<OrderPrivateCar> list1 = orderPrivateCarService.taskMidAxbUnBindSend();
+//        for(OrderPrivateCar orderPrivateCar : list1){
+//            Map<String, String> map = chinaMobileUtil.midAxbUnBindSend(orderPrivateCar.getBindId(),orderPrivateCar.getTelX());
+//            if(!String.valueOf(map.get("code")).equals("200")){
+//                System.err.println(String.valueOf(map.get("msg")));
+//            }
+//            orderPrivateCar.setTelX("");
+//            orderPrivateCar.setBindId("");
+//        }
+//        if(list1.size() > 0){
+//            orderPrivateCarService.updateBatchById(list1);
+//        }
     }
 
 
@@ -839,57 +839,57 @@
             case 1:
                 OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
                 if(ToolUtil.isNotEmpty(orderPrivateCar.getBindId())){
-                    Map<String, String> map1 = chinaMobileUtil.midAxbUnBindSend(orderPrivateCar.getBindId(),orderPrivateCar.getTelX());
-                    if(!String.valueOf(map1.get("code")).equals("200")){
-                        System.err.println(String.valueOf(map1.get("msg")));
-                    }
+//                    Map<String, String> map1 = chinaMobileUtil.midAxbUnBindSend(orderPrivateCar.getBindId(),orderPrivateCar.getTelX());
+//                    if(!String.valueOf(map1.get("code")).equals("200")){
+//                        System.err.println(String.valueOf(map1.get("msg")));
+//                    }
                     //调用移动的小号接口
-                    Map<String, String> geocode = gdMapGeocodingUtil.geocode(orderPrivateCar.getStartLon().toString(), orderPrivateCar.getStartLat().toString());
-                    Region region = regionMapper.query(geocode.get("districtCode"));
-                    Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
-                    Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderPrivateCar.getPassengersPhone(), driver.getPhone(), Integer.valueOf(region.getCitycode().substring(1)));
-                    if(String.valueOf(map.get("code")).equals("200")){
-                        orderPrivateCar.setTelX(map.get("telX"));
-                        orderPrivateCar.setBindId(map.get("bindId"));
-                    }
+//                    Map<String, String> geocode = gdMapGeocodingUtil.geocode(orderPrivateCar.getStartLon().toString(), orderPrivateCar.getStartLat().toString());
+//                    Region region = regionMapper.query(geocode.get("districtCode"));
+//                    Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
+//                    Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderPrivateCar.getPassengersPhone(), driver.getPhone(), Integer.valueOf(region.getCitycode().substring(1)));
+//                    if(String.valueOf(map.get("code")).equals("200")){
+//                        orderPrivateCar.setTelX(map.get("telX"));
+//                        orderPrivateCar.setBindId(map.get("bindId"));
+//                    }
                     orderPrivateCarService.updateById(orderPrivateCar);
                 }
                 break;
             case 2:
                 OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
                 if(ToolUtil.isNotEmpty(orderTaxi.getBindId())){
-                    Map<String, String> map1 = chinaMobileUtil.midAxbUnBindSend(orderTaxi.getBindId(),orderTaxi.getTelX());
-                    if(!String.valueOf(map1.get("code")).equals("200")){
-                        System.err.println(String.valueOf(map1.get("msg")));
-                    }
+//                    Map<String, String> map1 = chinaMobileUtil.midAxbUnBindSend(orderTaxi.getBindId(),orderTaxi.getTelX());
+//                    if(!String.valueOf(map1.get("code")).equals("200")){
+//                        System.err.println(String.valueOf(map1.get("msg")));
+//                    }
                     //调用移动的小号接口
-                    Map<String, String> geocode = gdMapGeocodingUtil.geocode(orderTaxi.getStartLon().toString(), orderTaxi.getStartLat().toString());
-                    Region region = regionMapper.query(geocode.get("districtCode"));
-                    Driver driver = driverService.selectById(orderTaxi.getDriverId());
-                    Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderTaxi.getPassengersPhone(), driver.getPhone(), Integer.valueOf(region.getCitycode().substring(1)));
-                    if(String.valueOf(map.get("code")).equals("200")){
-                        orderTaxi.setTelX(map.get("telX"));
-                        orderTaxi.setBindId(map.get("bindId"));
-                    }
+//                    Map<String, String> geocode = gdMapGeocodingUtil.geocode(orderTaxi.getStartLon().toString(), orderTaxi.getStartLat().toString());
+//                    Region region = regionMapper.query(geocode.get("districtCode"));
+//                    Driver driver = driverService.selectById(orderTaxi.getDriverId());
+//                    Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderTaxi.getPassengersPhone(), driver.getPhone(), Integer.valueOf(region.getCitycode().substring(1)));
+//                    if(String.valueOf(map.get("code")).equals("200")){
+//                        orderTaxi.setTelX(map.get("telX"));
+//                        orderTaxi.setBindId(map.get("bindId"));
+//                    }
                     orderTaxiService.updateById(orderTaxi);
                 }
                 break;
             case 3:
                 OrderCrossCity orderCrossCity = orderCrossCityService.selectById(orderId);
                 if(ToolUtil.isNotEmpty(orderCrossCity.getBindId())){
-                    Map<String, String> map1 = chinaMobileUtil.midAxbUnBindSend(orderCrossCity.getBindId(),orderCrossCity.getTelX());
-                    if(!String.valueOf(map1.get("code")).equals("200")){
-                        System.err.println(String.valueOf(map1.get("msg")));
-                    }
+//                    Map<String, String> map1 = chinaMobileUtil.midAxbUnBindSend(orderCrossCity.getBindId(),orderCrossCity.getTelX());
+//                    if(!String.valueOf(map1.get("code")).equals("200")){
+//                        System.err.println(String.valueOf(map1.get("msg")));
+//                    }
                     //调用移动的小号接口
-                    Map<String, String> geocode = gdMapGeocodingUtil.geocode(orderCrossCity.getStartLon().toString(), orderCrossCity.getStartLat().toString());
-                    Region region = regionMapper.query(geocode.get("districtCode"));
-                    Driver driver = driverService.selectById(orderCrossCity.getDriverId());
-                    Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderCrossCity.getPassengersPhone(), driver.getPhone(), Integer.valueOf(region.getCitycode().substring(1)));
-                    if(String.valueOf(map.get("code")).equals("200")){
-                        orderCrossCity.setTelX(map.get("telX"));
-                        orderCrossCity.setBindId(map.get("bindId"));
-                    }
+//                    Map<String, String> geocode = gdMapGeocodingUtil.geocode(orderCrossCity.getStartLon().toString(), orderCrossCity.getStartLat().toString());
+//                    Region region = regionMapper.query(geocode.get("districtCode"));
+//                    Driver driver = driverService.selectById(orderCrossCity.getDriverId());
+//                    Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderCrossCity.getPassengersPhone(), driver.getPhone(), Integer.valueOf(region.getCitycode().substring(1)));
+//                    if(String.valueOf(map.get("code")).equals("200")){
+//                        orderCrossCity.setTelX(map.get("telX"));
+//                        orderCrossCity.setBindId(map.get("bindId"));
+//                    }
                     orderCrossCityService.updateById(orderCrossCity);
                 }
                 break;
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
index 3c1e712..c2c8625 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
@@ -328,8 +328,7 @@
                     
                         orderPrivateCar.setDriverId(driver1.getId());
                         orderPrivateCar.setCarId(driver1.getCarId());
-                        orderPrivateCar.setCompanyId(driver1.getFranchiseeId() != null && driver1.getFranchiseeId() != 0 ? driver1.getFranchiseeId() : (
-                                driver1.getCompanyId() != null && driver1.getCompanyId() != 0 ? driver1.getCompanyId() : 1));
+                        orderPrivateCar.setCompanyId(driver1.getCompanyId());
                         orderPrivateCar.setSnatchOrderTime(new Date());
                         orderPrivateCar.setState(orderPrivateCar.getOldState());
                         orderPrivateCar.setOldState(null);
@@ -677,8 +676,7 @@
                     
                         orderLogistics.setDriverId(driver1.getId());
                         orderLogistics.setCarId(driver1.getCarId());
-                        orderLogistics.setCompanyId(driver1.getFranchiseeId() != null && driver1.getFranchiseeId() != 0 ? driver1.getFranchiseeId() : (
-                                driver1.getCompanyId() != null && driver1.getCompanyId() != 0 ? driver1.getCompanyId() : 1));
+                        orderLogistics.setCompanyId(driver1.getCompanyId());
                         orderLogistics.setState(orderLogistics.getOldState());
                         orderLogistics.setOldState(null);
                         orderLogistics.setSnatchOrderTime(new Date());
@@ -965,7 +963,7 @@
                 Map<String, String> map = new HashMap<>();
                 map.put("orderId", reassign.getOrderId().toString());
                 map.put("orderType", reassign.getOrderType().toString());
-                List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getFranchiseeId() == null ? driver.getCompanyId() : driver.getFranchiseeId(), 1);
+                List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getCompanyId(), 1);
                 for(Dispatch dispatch : dispatches){
                     jgPushUtil.push(2,"有新的改派订单需要处理,请及时处理!", "订单改派", map, "DISPATCH" + dispatch.getId());
                 }
@@ -1027,7 +1025,7 @@
                         Map<String, String> map = new HashMap<>();
                         map.put("orderId", reassign.getOrderId().toString());
                         map.put("orderType", reassign.getOrderType().toString());
-                        List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getFranchiseeId() == null ? driver.getCompanyId() : driver.getFranchiseeId(), 1);
+                        List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getCompanyId(), 1);
                         for(Dispatch dispatch : dispatches){
                             jgPushUtil.push(2,"有新的改派订单需要处理,请及时处理!", "订单改派", map, "DISPATCH" + dispatch.getId());
                         }
@@ -1119,7 +1117,7 @@
                 Map<String, String> map = new HashMap<>();
                 map.put("orderId", reassign.getOrderId().toString());
                 map.put("orderType", reassign.getOrderType().toString());
-                List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getFranchiseeId() == null ? driver.getCompanyId() : driver.getFranchiseeId(), 1);
+                List<Dispatch> dispatches = dispatchMapper.queryDispatchs(driver.getCompanyId(), 1);
                 for(Dispatch dispatch : dispatches){
                     jgPushUtil.push(2,"有新的改派订单需要处理,请及时处理!", "订单改派", map, "DISPATCH" + dispatch.getId());
                 }
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java
index 88215a4..341728c 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java
@@ -53,8 +53,8 @@
         gmailssl(props);
     
         final String displayName = "I-GO";//昵称
-        final String username = "i-gotech@i-go.group";// gmail 邮箱
-        final String password = "wpwfkrlvridoayyh";// Google应用专用密码
+        final String username = "noreply@i-go.group";// gmail 邮箱
+        final String password = "fggipafjlcqxjmef";// Google应用专用密码
         Session session = Session.getInstance(props,
                 new Authenticator() {
                     protected PasswordAuthentication getPasswordAuthentication() {
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ICBCPayUtil.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ICBCPayUtil.java
deleted file mode 100644
index 8144f09..0000000
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ICBCPayUtil.java
+++ /dev/null
@@ -1,658 +0,0 @@
-/*
-package com.stylefeng.guns.modular.system.util;
-
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
-import com.icbc.api.DefaultIcbcClient;
-import com.icbc.api.IcbcApiException;
-import com.icbc.api.IcbcConstants;
-import com.icbc.api.request.*;
-import com.icbc.api.response.*;
-import com.icbc.api.utils.IcbcSignature;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-import org.springframework.web.client.RestTemplate;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.io.PrintWriter;
-import java.math.BigDecimal;
-import java.net.Inet4Address;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.text.SimpleDateFormat;
-import java.util.*;
-
-*/
-/**
- * 工商银行支付工具类
- *//*
-
-@Component
-public class ICBCPayUtil {
-
-    private String app_id = "10000000000003159405";
-
-    private String privateKey = "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCBnf5bNOMF106sxlN6reQKs4wvUpnvRxXxFCzm13Bz70V6Oldx0EF4mFw/LCXMxwftGEanzjXOwDdk9apVeIYjedb8jsBjgwlREVLmpe3kFo65DedEao3MykpoXrm9kt8FPuxLAkTbfFuqim9f+nruXP1DA7cLt3N4PEzsfDA/WG4wXJgqWkHJaDbzcJOEX7pNZXWtTjoMznKufELsUEf3sdX+9/anIyObmq2+kv2w8H5RcRxBY+2M4K8Hd3Zf9u2Ffvr/phOsUB14XLrjfdXeWbZzHtHfGlfIQf5EK9HySEcaQHMHluEQSkriHdW7dlanIzzLY9M0lH+2Ok9j3Yp5AgMBAAECggEAVnHEfZecAP1DXz811Y+7kteEGtuABnDmVU4bVClCuk9NiuL2BtXZlFAo1Yjf/N6QjrOuC6Qfhq/zQcYFv9MNwwMzOmUKMlPmFsby/xiSu5e/v/Nh1eMqhvYzAcCLJ7+YNattc+kjey5JBEgnV196NRaXYeZMYegLfpjYxK9ejh+85kxp9ElXxZsSwrgzvICtyZ0Bl2ZD28kXr9/89dNIQX5sWRBN/dpxj99Ctz3JtlaMhxdnZ3cZKLeIAIAYFtqw5lSqeL7/7a6LPGpNa0kA+8KvHNEAnkpcEFg427k7h7nerFl2PQV/y5LuRLbUMZkdaIoo25Sh90xhtwfGCTAkcQKBgQC71mNkQL5HPYJbRirG3CjbLRAubztzlqtTSE/RZnPNiIinwACWZVHQ7Ob2+WLaIEOqIq6h1zWyYFO+peFNfCbcdZTfQHxiYfmzrY7ZlBtRJM3ez20RQ85TJvej08HjTM4vVKXt9DDqlBu4IATcmNlJqgBKeNXsDYORTNqTZlrocwKBgQCwpxdmd2yhRIrWXx9K4lZYfpGEUUMKrCI2SGX0bdiNtgn2p2HK3cDVO/gh8Iz6tKLI53HS3OTTsVZq1xoUm3M+27sPUk6KiUBQqOsDmYVayKjOY2IciwU0SmS/9C9ptYpchUrZSR7mejKvk7QKBkH3utBUnfYCQmqhyAnjHBhCYwKBgHBVxNc+CQ3d8UnY6thG7oA1sQm0KB/2qbuC8YlP9k2jK+b24uMO8SE7rN1jRAUjapQjbcEITerBxROtbNLEPxF1mHTzwe+snIMidt4Uv0mF80EfWCENJiWAlnV5vOjNFDomK53lfiOsM++n5oBvQPPXIZloLrefVWHeTpH8kr2VAoGAbB+JqhT0r2yVkgqcy6fnc7jcdmGKqFCdjB4aEVbekjZWuNrQd2vtaFaRVKy4jYbckB1hRNAhWxUTMMfB1dUj39h8ES+ulQrXC8eoOQbRYbSp5dFcrt3EbLIQIpFiJ9CPBHwtSPuBZ05qEZ9VNkGIRQnaE8CvX8ipHaajrpd2ncMCgYAdjW2LFmc+K9tai8idbhEu1uzez+HPT8PgE5iy6ZE8gxQvzUdHaqgO+OgNhWEY+QJOEyM0YJuidaN9qiTiWJHs04/03qAy1wCZCYhvHuRMh1mPvqdA9ybUmG/K0bMqkqS9B2GxKQPtlnmeUG/pXjQ12U8WrS2ayjDoHBtimuxkIQ==";
-
-    private String icbcPulicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCMpjaWjngB4E3ATh+G1DVAmQnIpiPEFAEDqRfNGAVvvH35yDetqewKi0l7OEceTMN1C6NPym3zStvSoQayjYV+eIcZERkx31KhtFu9clZKgRTyPjdKMIth/wBtPKjL/5+PYalLdomM4ONthrPgnkN4x4R0+D4+EBpXo8gNiAFsNwIDAQAB";
-
-    private String mer_id = "210541210043";//商户编号
-
-    private String mer_id1 = "210541210044";//商户编号
-
-    private String mer_prtcl_no = "2105412100430201";//收单产品协议编号
-
-    private String mer_acct = "2105402019300157124";//商户账号,商户入账账号,只能交易时指定。(商户付给银行手续费的账户,可以在开户的时候指定,也可以用交易指定方式;用交易指定方式则使用此商户账号)目前暂不支持
-
-    private String wx_appid_user = "wx0071ebcb539570f8";
-
-    private String wx_appid_driver = "wx65d2c03f04352f90";
-
-    private String wx_appid_user1 = "wx7608ef3dae49b691";//小程序
-
-    private String ali_appid_user = "2016120203722668";
-
-    private String ali_appid_driver = "2021001165630930";
-
-    private String payer_account = "2105455809300020994";//银行账户
-
-    private String payer_cnname = "广西云森科技有限公司";//账户名称
-
-    @Autowired
-    private JuHeUtil juHeUtil;
-
-    @Autowired
-    private HttpClientUtil httpClientUtil;
-
-    @Autowired
-    private RestTemplate restTemplate;
-
-    private String bank = "{\"CDB\":\"国家开发银行\",\"ICBC\":\"中国工商银行\",\"ABC\":\"中国农业银行\",\"BOC\":\"中国银行\",\"CCB\":\"中国建设银行\",\"PSBC\":\"中国邮政储蓄银行\",\"COMM\":\"交通银行\",\"CMB\":\"招商银行\",\"SPDB\":\"上海浦东发展银行\",\"CIB\":\"兴业银行\",\"HXBANK\":\"华夏银行\",\"GDB\":\"广东发展银行\",\"CMBC\":\"中国民生银行\",\"CITIC\":\"中信银行\",\"CEB\":\"中国光大银行\",\"EGBANK\":\"恒丰银行\",\"CZBANK\":\"浙商银行\",\"BOHAIB\":\"渤海银行\",\"SPABANK\":\"平安银行\",\"SHRCB\":\"上海农村商业银行\",\"YXCCB\":\"玉溪市商业银行\",\"YDRCB\":\"尧都农商行\",\"BJBANK\":\"北京银行\",\"SHBANK\":\"上海银行\",\"JSBANK\":\"江苏银行\",\"HZCB\":\"杭州银行\",\"NJCB\":\"南京银行\",\"NBBANK\":\"宁波银行\",\"HSBANK\":\"徽商银行\",\"CSCB\":\"长沙银行\",\"CDCB\":\"成都银行\",\"CQBANK\":\"重庆银行\",\"DLB\":\"大连银行\",\"NCB\":\"南昌银行\",\"FJHXBC\":\"福建海峡银行\",\"HKB\":\"汉口银行\",\"WZCB\":\"温州银行\",\"QDCCB\":\"青岛银行\",\"TZCB\":\"台州银行\",\"JXBANK\":\"嘉兴银行\",\"CSRCB\":\"常熟农村商业银行\",\"NHB\":\"南海农村信用联社\",\"CZRCB\":\"常州农村信用联社\",\"H3CB\":\"内蒙古银行\",\"SXCB\":\"绍兴银行\",\"SDEB\":\"顺德农商银行\",\"WJRCB\":\"吴江农商银行\",\"ZBCB\":\"齐商银行\",\"GYCB\":\"贵阳市商业银行\",\"ZYCBANK\":\"遵义市商业银行\",\"HZCCB\":\"湖州市商业银行\",\"DAQINGB\":\"龙江银行\",\"JINCHB\":\"晋城银行JCBANK\",\"ZJTLCB\":\"浙江泰隆商业银行\",\"GDRCC\":\"广东省农村信用社联合社\",\"DRCBCL\":\"东莞农村商业银行\",\"MTBANK\":\"浙江民泰商业银行\",\"GCB\":\"广州银行\",\"LYCB\":\"辽阳市商业银行\",\"JSRCU\":\"江苏省农村信用联合社\",\"LANGFB\":\"廊坊银行\",\"CZCB\":\"浙江稠州商业银行\",\"DYCB\":\"德阳商业银行\",\"JZBANK\":\"晋中市商业银行\",\"BOSZ\":\"苏州银行\",\"GLBANK\":\"桂林银行\",\"URMQCCB\":\"乌鲁木齐市商业银行\",\"CDRCB\":\"成都农商银行\",\"ZRCBANK\":\"张家港农村商业银行\",\"BOD\":\"东莞银行\",\"LSBANK\":\"莱商银行\",\"BJRCB\":\"北京农村商业银行\",\"TRCB\":\"天津农商银行\",\"SRBANK\":\"上饶银行\",\"FDB\":\"富滇银行\",\"CRCBANK\":\"重庆农村商业银行\",\"ASCB\":\"鞍山银行\",\"NXBANK\":\"宁夏银行\",\"BHB\":\"河北银行\",\"HRXJB\":\"华融湘江银行\",\"ZGCCB\":\"自贡市商业银行\",\"YNRCC\":\"云南省农村信用社\",\"JLBANK\":\"吉林银行\",\"DYCCB\":\"东营市商业银行\",\"KLB\":\"昆仑银行\",\"ORBANK\":\"鄂尔多斯银行\",\"XTB\":\"邢台银行\",\"JSB\":\"晋商银行\",\"TCCB\":\"天津银行\",\"BOYK\":\"营口银行\",\"JLRCU\":\"吉林农信\",\"SDRCU\":\"山东农信\",\"XABANK\":\"西安银行\",\"HBRCU\":\"河北省农村信用社\",\"NXRCU\":\"宁夏黄河农村商业银行\",\"GZRCU\":\"贵州省农村信用社\",\"FXCB\":\"阜新银行\",\"HBHSBANK\":\"湖北银行黄石分行\",\"ZJNX\":\"浙江省农村信用社联合社\",\"XXBANK\":\"新乡银行\",\"HBYCBANK\":\"湖北银行宜昌分行\",\"LSCCB\":\"乐山市商业银行\",\"TCRCB\":\"江苏太仓农村商业银行\",\"BZMD\":\"驻马店银行\",\"GZB\":\"赣州银行\",\"WRCB\":\"无锡农村商业银行\",\"BGB\":\"广西北部湾银行\",\"GRCB\":\"广州农商银行\",\"JRCB\":\"江苏江阴农村商业银行\",\"BOP\":\"平顶山银行\",\"TACCB\":\"泰安市商业银行\",\"CGNB\":\"南充市商业银行\",\"CCQTGB\":\"重庆三峡银行\",\"XLBANK\":\"中山小榄村镇银行\",\"HDBANK\":\"邯郸银行\",\"KORLABANK\":\"库尔勒市商业银行\",\"BOJZ\":\"锦州银行\",\"QLBANK\":\"齐鲁银行\",\"BOQH\":\"青海银行\",\"YQCCB\":\"阳泉银行\",\"SJBANK\":\"盛京银行\",\"FSCB\":\"抚顺银行\",\"ZZBANK\":\"郑州银行\",\"SRCB\":\"深圳农村商业银行\",\"BANKWF\":\"潍坊银行\",\"JJBANK\":\"九江银行\",\"JXRCU\":\"江西省农村信用\",\"HNRCU\":\"河南省农村信用\",\"GSRCU\":\"甘肃省农村信用\",\"SCRCU\":\"四川省农村信用\",\"GXRCU\":\"广西省农村信用\",\"SXRCCU\":\"陕西信合\",\"WHRCB\":\"武汉农村商业银行\",\"YBCCB\":\"宜宾市商业银行\",\"KSRB\":\"昆山农村商业银行\",\"SZSBK\":\"石嘴山银行\",\"HSBK\":\"衡水银行\",\"XYBANK\":\"信阳银行\",\"NBYZ\":\"鄞州银行\",\"ZJKCCB\":\"张家口市商业银行\",\"XCYH\":\"许昌银行\",\"JNBANK\":\"济宁银行\",\"CBKF\":\"开封市商业银行\",\"WHCCB\":\"威海市商业银行\",\"HBC\":\"湖北银行\",\"BOCD\":\"承德银行\",\"BODD\":\"丹东银行\",\"JHBANK\":\"金华银行\",\"BOCY\":\"朝阳银行\",\"LSBC\":\"临商银行\",\"BSB\":\"包商银行\",\"LZYH\":\"兰州银行\",\"BOZK\":\"周口银行\",\"DZBANK\":\"德州银行\",\"SCCB\":\"三门峡银行\",\"AYCB\":\"安阳银行\",\"ARCU\":\"安徽省农村信用社\",\"HURCB\":\"湖北省农村信用社\",\"HNRCC\":\"湖南省农村信用社\",\"NYNB\":\"广东南粤银行\",\"LYBANK\":\"洛阳银行\",\"NHQS\":\"农信银清算中心\",\"CBBQS\":\"城市商业银行资金清算中心\"}";
-
-
-
-    */
-/**
-     * 统一下单接口
-     * @param out_trade_no      商户订单号
-     * @param pay_mode          支付方式,9-微信,10-支付宝
-     * @param access_type       收单接入方式,5-APP,7-微信公众号,8-支付宝生活号,9-微信小程序
-     * @param deciveInfo        设备号(设备唯一编号)
-     * @param body
-     * @param total_fee
-     * @param mer_url           回调地址(完整地址)
-     * @param attach            附加信息
-     * @param type              支付端类型(1:用户端,2:司机端,3:小程序)
-     * @throws UnknownHostException
-     *//*
-
-    public Map<String, String> placeAnOrder(String out_trade_no, Integer pay_mode, Integer access_type, String deciveInfo, String body, Double total_fee, String mer_url, String attach, Integer type, String openId) throws Exception {
-        //签名类型为RSA时,需传入appid,私钥和网关公钥,签名类型使用定值IcbcConstants.SIGN_TYPE_RSA,其他参数使用缺省值
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1 request = new
-                CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1();
-        //根据测试环境和生产环境替换相应ip和端口
-        request.setServiceUrl("https://gw.open.icbc.com.cn/api/cardbusiness/aggregatepay/b2c/online/consumepurchase/V1");
-        CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1.CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1Biz bizContent = new CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1.CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1Biz();
-        request.setBizContent(bizContent);
-        //请对照接口文档用bizContent.setxxx()方法对业务上送数据进行赋值
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
-        String format = sdf.format(new Date());
-        bizContent.setMer_id(mer_id);
-        bizContent.setOut_trade_no(out_trade_no);
-        bizContent.setPay_mode(pay_mode.toString());
-        bizContent.setAccess_type(access_type.toString());
-        bizContent.setMer_prtcl_no(mer_prtcl_no);
-        bizContent.setOrig_date_time(format);
-        bizContent.setDecive_info(deciveInfo);
-        bizContent.setBody("OK出行-" + body);
-        bizContent.setFee_type("001");
-        InetAddress ip4 = Inet4Address.getLocalHost();
-        bizContent.setSpbill_create_ip(ip4.getHostAddress());
-        bizContent.setTotal_fee(Double.valueOf(total_fee * 100).intValue() + "");
-        bizContent.setMer_url(mer_url);
-        bizContent.setOpen_id("");
-        bizContent.setShop_appid("");
-        bizContent.setUnion_id("");
-        bizContent.setIcbc_appid(app_id);
-        if(pay_mode == 9){
-            switch (type){
-                case 1://用户端
-                    bizContent.setShop_appid(wx_appid_user);
-                    break;
-                case 2://司机端
-                    bizContent.setShop_appid(wx_appid_driver);
-                    break;
-                case 3://小程序
-                    bizContent.setShop_appid(wx_appid_user1);
-                    bizContent.setAccess_type("9");
-                    bizContent.setOpen_id(openId);
-                    break;
-            }
-        }
-        if(pay_mode == 10){
-            switch (type){
-                case 1://用户端
-                    bizContent.setUnion_id(ali_appid_user);
-                    break;
-                case 2://司机端
-                    bizContent.setUnion_id(ali_appid_driver);
-                    break;
-            }
-        }
-        bizContent.setMer_acct(mer_acct);
-        bizContent.setExpire_time("120");
-        bizContent.setAttach(attach);
-        bizContent.setNotify_type("HS");
-        bizContent.setResult_type("0");
-        bizContent.setPay_limit("no_credit");
-        bizContent.setOrder_apd_inf("");
-        CardbusinessAggregatepayB2cOnlineConsumepurchaseResponseV1 response;
-        response = client.execute(request, System.currentTimeMillis()+"");//msgId消息通讯唯一编号,要求每次调用独立生成,APP级唯一
-        Map<String, String> map = new HashMap<>();
-        if (response.getReturnCode() == 0) {
-            // 6、业务成功处理,请根据接口文档用response.getxxx()获取同步返回的业务数据
-            System.err.println("ReturnCode:"+response.getReturnCode());
-            System.err.println("response:" + JSON.toJSONString(response));
-            if(pay_mode == 9){//微信
-                String order_id = response.getOrder_id();//工行订单号
-                String out_trade_no1 = response.getOut_trade_no();//商户订单号
-                map.put("order_id", order_id);
-                map.put("out_trade_no1", out_trade_no1);
-                map.put("data", response.getWx_data_package());
-                map.put("code", "200");
-                map.put("msg", "成功");
-
-                return map;
-            }
-            if(pay_mode == 10){//支付宝
-                String order_id = response.getOrder_id();//工行订单号
-                String out_trade_no1 = response.getOut_trade_no();//商户订单号
-                map.put("order_id", order_id);
-                map.put("out_trade_no1", out_trade_no1);
-                map.put("data", response.getZfb_data_package());
-                map.put("code", "200");
-                map.put("msg", "成功");
-                return map;
-            }
-        }
-        if(response.getReturnCode() == 92209500){
-            System.err.println("response:" + JSON.toJSONString(response));
-            System.err.println("ReturnCode:"+response.getReturnCode());
-            System.err.println("ReturnMsg:"+response.getReturnMsg());
-            map.put("order_id", "");
-            map.put("out_trade_no1", "");
-            map.put("data", "");
-            map.put("code", "300");
-            map.put("msg", "支付失败,请过两分钟后再重新支付!");
-            return map;
-        }else {
-            // 失败
-            System.err.println("response:" + JSON.toJSONString(response));
-            System.err.println("ReturnCode:"+response.getReturnCode());
-            System.err.println("ReturnMsg:"+response.getReturnMsg());
-            map.put("order_id", "");
-            map.put("out_trade_no1", "");
-            map.put("data", "");
-            map.put("code", "300");
-            map.put("msg", "支付失败");
-            return map;
-        }
-    }
-
-
-
-
-    */
-/**
-     * 查询交易(商户订单号和工行订单号二选其一)
-     * @param out_trade_no  商户订单号
-     * @param order_id      工行订单号
-     * @return
-     *//*
-
-    public String queryTransaction(String out_trade_no, String order_id){
-        //签名类型为RSA时,需传入appid,私钥和网关公钥,签名类型使用定值IcbcConstants.SIGN_TYPE_RSA,其他参数使用缺省值
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        CardbusinessAggregatepayB2cOnlineOrderqryRequestV1 request = new CardbusinessAggregatepayB2cOnlineOrderqryRequestV1();
-        //根据测试环境和生产环境替换相应ip和端口
-        request.setServiceUrl("https://gw.open.icbc.com.cn/api/cardbusiness/aggregatepay/b2c/online/orderqry/V1");
-        CardbusinessAggregatepayB2cOnlineOrderqryRequestV1.CardbusinessAggregatepayB2cOnlineOrderqryRequestV1Biz bizContent = new
-                CardbusinessAggregatepayB2cOnlineOrderqryRequestV1.CardbusinessAggregatepayB2cOnlineOrderqryRequestV1Biz();
-        request.setBizContent(bizContent);
-        //请对照接口文档用bizContent.setxxx()方法对业务上送数据进行赋值
-        bizContent.setMer_id(mer_id);
-        bizContent.setOut_trade_no(out_trade_no);
-        bizContent.setOrder_id(order_id);
-        bizContent.setDeal_flag("0");//操作标志,0-查询;1-关单
-        bizContent.setIcbc_appid(app_id);
-        CardbusinessAggregatepayB2cOnlineOrderqryResponseV1 response;
-        try {
-            response = client.execute(request, System.currentTimeMillis()+"");//msgId消息通讯唯一编号,要求每次调用独立生成,APP级唯一
-            if (response.getReturnCode() == 0) {
-                // 6、业务成功处理,请根据接口文档用response.getxxx()获取同步返回的业务数据
-                System.out.println("ReturnCode:"+response.getReturnCode());
-                System.out.println("response:" + JSON.toJSONString(response));
-
-                String pay_status = response.getPay_status();
-
-                return pay_status; //交易结果标志,0-成功;1-失败;2-未知
-            } else {
-                // 失败
-                System.out.println("response:" + JSON.toJSONString(response));
-                System.out.println("ReturnCode:"+response.getReturnCode());
-                System.out.println("ReturnMsg:"+response.getReturnMsg());
-            }
-        } catch (IcbcApiException e) {
-            e.printStackTrace();
-        }
-        return "";
-    }
-
-
-    */
-/**
-     * 支付回调处理
-     * @param request
-     * @return
-     * @throws Exception
-     *//*
-
-    public Map<String, String> payCallback(HttpServletRequest request) throws Exception{
-        String biz_content1 = request.getParameter("biz_content");
-        JSONObject biz_content = JSON.parseObject(biz_content1);
-        int return_code = biz_content.getIntValue("return_code");
-        String return_msg = biz_content.getString("return_msg");
-        Map<String, String> map = new HashMap<>();
-        if(return_code == 0){
-            String out_trade_no = biz_content.getString("out_trade_no");//商家订单编号
-            String order_id = biz_content.getString("order_id");//工行订单号
-            String third_trade_no = biz_content.getString("third_trade_no");//第三方订单号(微信/支付宝)
-            String attach = biz_content.getString("attach");//附加信息
-            String pay_time = biz_content.getString("pay_time");//支付完成时间"20190112"
-
-            map.put("out_trade_no", out_trade_no);
-            map.put("order_id", order_id);
-            map.put("third_trade_no", third_trade_no);
-            map.put("attach", attach);
-            map.put("pay_time", pay_time);
-        }else{
-            System.err.println("支付失败:" + return_msg);
-        }
-        return map;
-    }
-
-
-    */
-/**
-     * 回调通知应答
-     * @param response
-     * @throws Exception
-     *//*
-
-    public void answer(HttpServletResponse response) throws Exception{
-        response.setContentType("application/json;charset=UTF-8");
-        StringBuffer sb = new StringBuffer();
-        String nativeUUID = UUIDUtil.getNativeUUID();
-        sb.append("\"response_biz_content\":{\"return_code\":0,\"return_msg\":\"success\",\"msg_id\":\"" + nativeUUID + "\"},\"sign_type\":\"RSA2\"");
-        String sign = IcbcSignature.sign(sb.toString(), IcbcConstants.SIGN_TYPE_RSA2, privateKey, "UTF-8");
-        StringBuffer string = new StringBuffer();
-        string.append("{\"response_biz_content\":{\"return_code\":0,\"return_msg\":\"success\",\"msg_id\":\"" + nativeUUID + "\"},\"sign_type\":\"RSA2\",\"sign\":\"" + sign + "\"}");
-        PrintWriter out = response.getWriter();
-        out.write(string.toString());
-        out.flush();
-        out.close();
-    }
-
-
-
-
-
-    */
-/**
-     * 转账
-     * @param money             转账金额(分)
-     * @param payeeAccount      收款账户(默认使用工行账户)
-     * @param payeeCnname       收款账户名称
-     * @return
-     *//*
-
-    public ResultUtil<String> transfer(Long money, String payeeAccount, String payeeCnname) throws Exception{
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
-        SimpleDateFormat sdf_ = new SimpleDateFormat("HHmmssSSS");
-        Date date = new Date();
-        String url = "https://gw.open.icbc.com.cn/api/mybank/enterprise/pay/payent/V1";
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        MybankEnterprisePayPayentRequestV1.MybankEnterprisePayPayentRequestBizV1 bizContent =
-                new MybankEnterprisePayPayentRequestV1.MybankEnterprisePayPayentRequestBizV1();
-        MybankEnterprisePayPayentRequestV1 request = new MybankEnterprisePayPayentRequestV1();
-        // 请对照接⼝⽂档⽤bizContent.setxxx()⽅法对业务上送数据进⾏赋值
-        bizContent.setTransCode("PAYPER");
-        bizContent.setCis("210590000448207");//集团CIS号
-        bizContent.setBankCode("102");//归属银行编号
-        bizContent.setLoginId("GXYS01.y.2105");//证书ID
-        bizContent.setTranDate(sdf.format(date));
-        bizContent.setTranTime(sdf_.format(date));
-        bizContent.setfSeqno(System.currentTimeMillis() + "");
-        bizContent.setSettleMode(0);//入账方式。0:逐笔记账;2:并笔记账
-        bizContent.setInstrCount(1);//总笔数
-        bizContent.setTotalAmount(new BigDecimal(money));//总金额(分)
-        ArrayList<MybankEnterprisePayPayentRequestV1.MybankEnterprisePayPayentRequestRdV1> list = new ArrayList<>();
-        MybankEnterprisePayPayentRequestV1.MybankEnterprisePayPayentRequestRdV1 rd = new MybankEnterprisePayPayentRequestV1.MybankEnterprisePayPayentRequestRdV1();
-        rd.setiSeqno(UUIDUtil.getRandomCode());//指令顺序号:每笔指令的序号,本包内不重复
-        rd.setPayType("1");//记账处理方式:1:加急;2:普通;3:跨行快汇。联机批量标志为2-批量时,此字段无意义,上送1即可
-        rd.setPayerAccount(mer_acct);//本方账户
-        rd.setPayerCnname(payer_cnname);//本方账户名
-        rd.setPayeeAccount(payeeAccount);//收方账号
-        rd.setPayeeCnname(payeeCnname);//收方账户名
-        rd.setIoFlag("1");//系统内外标志:1:系统内;2:系统外
-        rd.setCurrency("CNY");
-        rd.setAmount(new BigDecimal(money));//金额:无正负号,以分为单位
-        rd.setPurpose("代收款");//用途描述
-
-        list.add(rd);
-        bizContent.setRd(list);
-        request.setServiceUrl(url);
-        request.setBizContent(bizContent);
-        MybankEnterprisePayPayentResponseV1 response = client.execute(request);
-        if (response.isSuccess()) {
-            // 业务成功处理
-            System.err.println("ReturnCode:"+response.getReturnCode());
-            System.err.println("response:" + JSON.toJSONString(response));
-            if(response.getReturnCode() == 0){
-                return ResultUtil.success(response.getSerialNo());
-            }else{
-                return ResultUtil.error("转账申请提交失败(" + response.getReturnMsg() + ")");
-            }
-        } else {
-            System.err.println("response:" + JSON.toJSONString(response));
-            System.err.println("ReturnCode:"+response.getReturnCode());
-            System.err.println("ReturnMsg:"+response.getReturnMsg());
-            return ResultUtil.error("转账申请提交失败(" + response.getReturnMsg() + ")");
-        }
-    }
-
-
-    */
-/**
-     * 查询转账交易状态
-     * @param serialNo      转账申请序列号(转账接口返回)
-     * @return              -1=查询异常,0=交易成功,1=交易处理中,2=交易拒绝
-     *//*
-
-    public Integer queryTransfer(String serialNo){
-        String url = "https://gw.open.icbc.com.cn/api/mybank/enterprise/pay/qpayent/V1";
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        try {
-            MybankEnterprisePayQpayentRequestV1.MybankEnterprisePayQpayentRequestBizV1 bizContent =
-                    new MybankEnterprisePayQpayentRequestV1.MybankEnterprisePayQpayentRequestBizV1();
-            MybankEnterprisePayQpayentRequestV1 request = new MybankEnterprisePayQpayentRequestV1();
-            Date date = new Date();
-            SimpleDateFormat sdf1 = new SimpleDateFormat("yyyyMMdd");
-            SimpleDateFormat sdf2 = new SimpleDateFormat("HHmmssSSS");
-            bizContent.setTransCode("QPAYPER");//交易代码
-            bizContent.setTranDate(sdf1.format(date));//交易日期:ERP系统产生,格式是yyyyMMdd
-            bizContent.setTranTime(sdf2.format(date));//交易时间:ERP系统产生,格式如HHmmssSSS,精确到毫秒
-            bizContent.setLanguage("zh_CN");
-            bizContent.setfSeqNo(UUIDUtil.getRandomCode());//指令包序列号:ERP系统产生,一个集团永远不能重复
-            bizContent.setQryfSeqno("");//待查指令包序列号:判断待查指令包序列号和待查平台交易流水号必须至少有一项有值
-            bizContent.setQrySerialNo(serialNo);//待查平台交易序列号
-            request.setServiceUrl(url);
-            request.setBizContent(bizContent);
-            MybankEnterprisePayQpayentResponseV1 response = client.execute(request);
-            if (response.isSuccess()) {
-                int returnCode = response.getReturnCode();//返回码,交易成功返回0,正表示业务报错,负表示系统报错,负值时须考虑疑帐
-                String returnMsg = response.getReturnMsg();//返回说明
-                if(0 == returnCode){
-                    List<MybankEnterprisePayQpayentResponseV1.MybankEnterprisePayQpayentResponseRdV1> rd = response.getRd();
-                    MybankEnterprisePayQpayentResponseV1.MybankEnterprisePayQpayentResponseRdV1 bank = rd.get(0);
-                    String result = bank.getResult();//指令状态:0:提交成功,等待银行处理 1:授权成功, 等待银行处理 2:等待授权 3:等待二次授权 4:等待银行答复 5:主机返回待处理 6:被银行拒绝 7:处理成功 8:指令被拒绝授权 9:银行正在处理 10:预约指令 11:预约取消 86:等待电话核实 95:待核查 98:区域中心通讯可疑
-                    if(result.equals("7")){//交易成功
-                        return 0;
-                    }
-                    if(result.equals("6") || result.equals("8")){//交易拒绝
-                        return 2;
-                    }
-                    return 1;//交易处理中
-                }else{
-                    System.err.println(returnMsg);
-                    return -1;
-                }
-            } else {
-                return -1;
-            }
-        } catch (Exception e) {
-            e.printStackTrace();
-            return -1;
-        }
-    }
-
-
-    */
-/**
-     * 获取扫码支付二维码(客户扫商户二维码)
-     * @param out_trade_no      商户系统订单号
-     * @param order_amt         订单金额
-     * @param orderTime         订单生成时间
-     * @param attach            附加信息
-     * @param notify_url        支付成功回调地址
-     * @return
-     * @throws Exception
-     *//*
-
-    public ResultUtil<Map<String, Object>> generate(String out_trade_no, Double order_amt, Date orderTime, String attach, String notify_url) throws Exception{
-        order_amt = order_amt * 100;
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
-        SimpleDateFormat sdf1 = new SimpleDateFormat("HHmmss");
-        //签名类型为RSA2时,需传入appid,私钥和网关公钥,签名类型使用定值IcbcConstants.SIGN_TYPE_RSA2,其他参数使用缺省值
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        QrcodeGenerateRequestV2 request = new QrcodeGenerateRequestV2();
-        request.setServiceUrl("https://gw.open.icbc.com.cn/api/qrcode/V2/generate");
-        QrcodeGenerateRequestV2.QrcodeGenerateRequestV2Biz bizContent = new QrcodeGenerateRequestV2.QrcodeGenerateRequestV2Biz();
-        bizContent.setMerId(mer_id1);
-        bizContent.setStoreCode("21050022636");//E生活编号
-        bizContent.setOutTradeNo(out_trade_no);
-        bizContent.setOrderAmt(order_amt.intValue() + "");
-        bizContent.setTradeDate(sdf.format(orderTime));
-        bizContent.setTradeTime(sdf1.format(orderTime));
-        bizContent.setAttach(attach);//该字段非必输项
-        bizContent.setPayExpire("1200");
-        bizContent.setNotifyUrl(notify_url);//该字段非必输项
-        bizContent.setTporderCreateIp(InetAddress.getLocalHost().getHostAddress());
-        bizContent.setSpFlag("0");//该字段非必输项
-        bizContent.setNotifyFlag("1");
-        request.setBizContent(bizContent);
-        QrcodeGenerateResponseV2 response = client.execute(request, System.currentTimeMillis()+"");
-        if (response.isSuccess()) {
-            // 业务成功处理
-            System.out.println("ReturnCode:"+response.getReturnCode());
-            System.out.println("response:" + response);
-            Map<String, Object> map = new HashMap<>();
-            map.put("qrcode", response.getQrcode());
-            map.put("attach", response.getAttach());
-            return ResultUtil.success(map);
-        } else {
-            // 失败
-            System.out.println("ReturnCode:" + response.getReturnCode());
-            System.out.println("ReturnMsg:" + response.getReturnMsg());
-            return ResultUtil.error("获取支付二维码失败(" + response.getReturnMsg() + ")");
-        }
-    }
-
-
-    */
-/**
-     * 扫码支付成功回调客户扫商户二维码)
-     * @param request
-     * @return
-     * @throws Exception
-     *//*
-
-    public Map<String, String> generatePayCallback(HttpServletRequest request) throws Exception{
-        String biz_content1 = request.getParameter("biz_content");
-        JSONObject biz_content = JSON.parseObject(biz_content1);
-        int return_code = biz_content.getIntValue("return_code");
-        String return_msg = biz_content.getString("return_msg");
-        Map<String, String> map = new HashMap<>();
-        if(return_code == 0){
-            String out_trade_no = biz_content.getString("out_trade_no");//商家订单编号
-            String order_id = biz_content.getString("order_id");//工行订单号
-//            String third_trade_no = biz_content.getString("third_trade_no");//第三方订单号(微信/支付宝)
-            String attach = biz_content.getString("attach");//附加信息
-            String pay_time = biz_content.getString("pay_time");//支付完成时间"20190112"
-
-            map.put("out_trade_no", out_trade_no);
-            map.put("order_id", order_id);
-//            map.put("third_trade_no", third_trade_no);
-            map.put("attach", attach);
-            map.put("pay_time", pay_time);
-        }else{
-            System.err.println("支付失败:" + return_msg);
-        }
-        return map;
-    }
-
-
-
-
-    */
-/**
-     * 退款申请
-     * @param order_id          工行下单订单号(与“商户系统下单订单号”二选一)
-     * @param out_trade_no      商户系统下单订单号(与“工行下单订单号”二选一)
-     * @param ret_total_amt     退款金额
-     * @param order_apd_inf     附加信息
-     * @param outtrx_serial_no  外部退货流水号
-     * @return
-     * @throws Exception
-     *//*
-
-    public Map<String, Object> merrefund(String order_id, String out_trade_no, Double ret_total_amt, String order_apd_inf, String outtrx_serial_no) throws Exception{
-        ret_total_amt = ret_total_amt * 100;
-        //签名类型为RSA2时,需传入appid,私钥和网关公钥,签名类型使用定值IcbcConstants.SIGN_TYPE_RSA2,其他参数使用缺省值
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        CardbusinessAggregatepayB2cOnlineMerrefundRequestV1 request = new CardbusinessAggregatepayB2cOnlineMerrefundRequestV1();
-        //根据测试环境和生产环境替换相应ip和端口
-        request.setServiceUrl("https://gw.open.icbc.com.cn/api/cardbusiness/aggregatepay/b2c/online/merrefund/V1");
-        //请对照接口文档用bizContent.setxxx()方法对业务上送数据进行赋值
-        CardbusinessAggregatepayB2cOnlineMerrefundRequestV1.CardbusinessAggregatepayB2cOnlineMerrefundRequestV1Biz bizContent = new
-                CardbusinessAggregatepayB2cOnlineMerrefundRequestV1.CardbusinessAggregatepayB2cOnlineMerrefundRequestV1Biz();
-        request.setBizContent(bizContent);
-        bizContent.setOrder_id(order_id);//消费工行订单号,工行订单号,商户订单号或行内订单号必须其中一个不为空
-        bizContent.setMer_id(mer_id);//商户编号‐必输项
-        bizContent.setOut_trade_no(out_trade_no);//商户订单号,工行订单号,商户订单号或行内订单号必须其中一个不为空
-        bizContent.setOuttrx_serial_no(outtrx_serial_no);//外部退货流水号‐必输项
-        bizContent.setRet_total_amt(ret_total_amt.intValue() + "");//退货总金额‐必输项
-        bizContent.setTrnsc_ccy("001");//交易币种‐必输项
-        bizContent.setOrder_apd_inf(order_apd_inf);//备注信息
-        bizContent.setIcbc_appid(app_id);
-        bizContent.setMer_acct("");
-        CardbusinessAggregatepayB2cOnlineMerrefundResponseV1 response;
-        Map<String, Object> map = new HashMap<>();
-        try {
-            response = client.execute(request, "msgId3");//msgId消息通讯唯一编号,要求每次调用独立生成,APP级唯一
-            if (response.isSuccess()) {
-                // 业务成功处理,请根据接口文档用response.getxxx()获取同步返回的业务数据
-                System.out.println("ReturnCode:"+response.getReturnCode());
-                System.out.println("ReturnCode:"+response.getReturnCode());
-                System.out.println("response:" + response);
-                map.put("intrx_serial_no", response.getIntrx_serial_no());//退货工行流水号
-                map.put("code", response.getReturnCode());
-                map.put("mag", response.getReturnMsg());
-            } else {
-                // 失败
-                System.out.println("ReturnCode:"+response.getReturnCode());
-                System.out.println("ReturnMsg:"+response.getReturnMsg());
-                map.put("code", response.getReturnCode());
-                map.put("mag", response.getReturnMsg());
-            }
-        } catch (IcbcApiException e) {
-            e.printStackTrace();
-        }
-        return map;
-    }
-
-
-    */
-/**
-     * 退款查询
-     * @param out_trade_no          商户系统消费下单订单号
-     * @param order_id              工行消费下单订单号
-     * @param outtrx_serial_no      商户系统退货编号
-     * @return
-     *//*
-
-    public Map<String, Object> refundqry(String out_trade_no, String order_id, String outtrx_serial_no){
-        // 签名类型为RSA时,需传入appid,私钥和网关公钥,签名类型使用定值IcbcConstants.SIGN_TYPE_RSA,其他参数使用缺省值
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        CardbusinessAggregatepayB2cOnlineRefundqryRequestV1 request = new CardbusinessAggregatepayB2cOnlineRefundqryRequestV1();
-        // 根据测试环境和生产环境替换相应ip和端口
-        request.setServiceUrl("https://gw.open.icbc.com.cn/api/cardbusiness/aggregatepay/b2c/online/refundqry/V1");
-        CardbusinessAggregatepayB2cOnlineRefundqryRequestV1.CardbusinessAggregatepayB2cOnlineRefundqryRequestV1Biz bizContent = new
-                CardbusinessAggregatepayB2cOnlineRefundqryRequestV1.CardbusinessAggregatepayB2cOnlineRefundqryRequestV1Biz();
-        request.setBizContent(bizContent);
-        // 请对照接口文档用bizContent.setxxx()方法对业务上送数据进行赋值
-        bizContent.setMer_id(mer_id);
-        bizContent.setOut_trade_no(out_trade_no);
-        bizContent.setOuttrx_serial_no(outtrx_serial_no);
-        bizContent.setOrder_id(order_id);
-        CardbusinessAggregatepayB2cOnlineRefundqryResponseV1 response;
-        Map<String, Object> map = new HashMap<>();
-        try {
-            response = client.execute(request, System.currentTimeMillis() + "");// msgId消息通讯唯一编号,要求每次调用独立生成,APP级唯一
-            if (response.getReturnCode() == 0) {
-                // 业务成功处理,请根据接口文档用response.getxxx()获取同步返回的业务数据
-                System.out.println("ReturnCode:" + response.getReturnCode());
-                System.out.println("response:" + JSON.toJSONString(response));
-                map.put("code", response.getReturnCode());//0
-                map.put("msg", response.getReturnMsg());
-                map.put("pay_status", response.getPay_status());//订单状态说明:0-退货成功;1-退货失败;2-退货状态未知
-            } else {
-                // 失败
-                System.out.println("response:" + JSON.toJSONString(response));
-                System.out.println("ReturnCode:" + response.getReturnCode());
-                System.out.println("ReturnMsg:" + response.getReturnMsg());
-                map.put("code", response.getReturnCode());//0
-                map.put("msg", response.getReturnMsg());
-            }
-        } catch (IcbcApiException e) {
-            e.printStackTrace();
-        }
-        return map;
-    }
-
-
-
-
-    */
-/**
-     * 获取银行卡号归属地
-     * @param code
-     * @return
-     *//*
-
-    public Map<String, String> queryBank(String code){
-        String url = "https://bankaddress.shumaidata.com/bankaddress?bankcard=" + code;
-        Map<String, String> header = new HashMap<>();
-        header.put("Authorization", "APPCODE b7d32437d08149099457dcb50fb57df2");
-        String get = httpClientUtil.pushHttpRequset("GET", url, null, header, "form");
-        JSONObject jsonObject = JSON.parseObject(get);
-        int code1 = jsonObject.getIntValue("code");
-        Map<String, String> map = new HashMap<>();
-        if(code1 == 200){
-            map.put("msg", "success");
-            JSONObject data = jsonObject.getJSONObject("data");
-            map.put("province", data.getString("province"));//开通省
-            map.put("city", data.getString("city"));//开通市
-            map.put("abbreviation", data.getString("abbreviation"));//银行英文大写
-            map.put("type", data.getString("type"));//卡类型(借记卡)
-            map.put("bank", data.getString("bank"));//总行名称
-        }else{
-            map.put("msg", jsonObject.getString("msg"));
-        }
-        return map;
-    }
-}
-*/
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java
index 7cb0de4..5999dfd 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java
@@ -63,8 +63,8 @@
             driverService.taskMinute();
             //处于预约单
             orderService.reservationOrder();
-            //处理结束订单后30分钟解绑小号功能
-            orderService.taskMidAxbUnBindSend();
+//            //处理结束订单后30分钟解绑小号功能
+//            orderService.taskMidAxbUnBindSend();
             //处理司机连续不接单的情况
             driverOnlineService.deductionDuration1();
             //处理google订单状态
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
index 71024b1..164421a 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/taxi/service/impl/OrderTaxiServiceImpl.java
@@ -189,8 +189,7 @@
         Driver driver = driverService.selectById(uid);
         orderTaxi.setDriverId(uid);
         orderTaxi.setCarId(driver.getCarId());
-        orderTaxi.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+        orderTaxi.setCompanyId(driver.getCompanyId());
         orderTaxi.setState(2);
         orderTaxi.setSnatchOrderTime(new Date());
 
@@ -200,13 +199,13 @@
         orderTaxi.setTrackId(track);
 
         //调用移动的小号接口
-        Map<String, String> geocode = gdMapGeocodingUtil.geocode(orderTaxi.getStartLon().toString(), orderTaxi.getStartLat().toString());
-        Region region = regionMapper.query(geocode.get("districtCode"));
-        Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderTaxi.getPassengersPhone(), driver.getPhone(), Integer.valueOf(region.getCitycode().substring(1)));
-        if(String.valueOf(map.get("code")).equals("200")){
-            orderTaxi.setTelX(map.get("telX"));
-            orderTaxi.setBindId(map.get("bindId"));
-        }
+//        Map<String, String> geocode = gdMapGeocodingUtil.geocode(orderTaxi.getStartLon().toString(), orderTaxi.getStartLat().toString());
+//        Region region = regionMapper.query(geocode.get("districtCode"));
+//        Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderTaxi.getPassengersPhone(), driver.getPhone(), Integer.valueOf(region.getCitycode().substring(1)));
+//        if(String.valueOf(map.get("code")).equals("200")){
+//            orderTaxi.setTelX(map.get("telX"));
+//            orderTaxi.setBindId(map.get("bindId"));
+//        }
 
         this.updateById(orderTaxi);
 
@@ -258,8 +257,7 @@
         Driver driver = driverService.selectById(uid);
         orderTaxi.setDriverId(uid);
         orderTaxi.setCarId(driver.getCarId());
-        orderTaxi.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+        orderTaxi.setCompanyId(driver.getCompanyId());
         orderTaxi.setState(2);
         Date date = new Date();
         orderTaxi.setSnatchOrderTime(date);
diff --git a/DriverIGOTravel/guns-admin/src/main/resources/application-produce.yml b/DriverIGOTravel/guns-admin/src/main/resources/application-produce.yml
index 21ff214..1516245 100644
--- a/DriverIGOTravel/guns-admin/src/main/resources/application-produce.yml
+++ b/DriverIGOTravel/guns-admin/src/main/resources/application-produce.yml
@@ -27,6 +27,7 @@
     multipart:
       max-request-size: 100MB
       max-file-size: 100MB
+      file-size-threshold: 100MB
   redis:
     database: 0
     host: 127.0.0.1
@@ -115,17 +116,6 @@
 
 spring:
   mail:
-    host: smtp.gmail.com # 配置 smtp 服务器地址
-    port: 465 # smtp 服务器的端口
-    username: i-gotech@i-go.group # 配置邮箱用户名(你的邮箱地址)
-    password: mhizkqkhuknbitps # 配置申请到的授权码(刚让复制的授权码)
-    default-encoding: UTF-8 # 配置邮件编码
-    properties:
-      mail:
-        smtp:
-          socketFactoryClass: javax.net.ssl.SSLSocketFactory # 配饰 SSL 加密工厂
-        debug: true
-    from: i-gotech@i-go.group # 发送方邮件,配在yml中可方便更改
     template-path: /home/igotechgh/nginx/html/mailbox/
 
 ---
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java
index e79e104..ae28823 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java
@@ -51,6 +51,14 @@
     }
 
     /**
+     * 项目自定义的Realm
+     */
+    @Bean
+    public ShiroDbRealm shiroDbRealm() {
+        return new ShiroDbRealm();
+    }
+
+    /**
      * spring session管理器(多机环境)
      */
     @Bean
@@ -89,20 +97,12 @@
     }
 
     /**
-     * 项目自定义的Realm
-     */
-    @Bean
-    public ShiroDbRealm shiroDbRealm() {
-        return new ShiroDbRealm();
-    }
-
-    /**
      * rememberMe管理器, cipherKey生成见{@code Base64Test.java}
      */
     @Bean
     public CookieRememberMeManager rememberMeManager(SimpleCookie rememberMeCookie) {
         CookieRememberMeManager manager = new CookieRememberMeManager();
-        manager.setCipherKey(Base64.decode("Z3VucwAAAAAAAAAAAAAAAA=="));
+        manager.setCipherKey(Base64.decode("1IuXNg73B4lqGJsB"));
         manager.setCookie(rememberMeCookie);
         return manager;
     }
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java
index d38d967..833c524 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java
@@ -63,6 +63,9 @@
     private ITUserService appUserService;
     @Autowired
     private IOrderCancelService orderCancelService;
+    
+    @Autowired
+    private ITCompanyService companyService;
 
     public static void main(String[] args) {
         // 获取今天的日期
@@ -99,6 +102,8 @@
      */
     @RequestMapping("/commission")
     public String index( Model model) {
+        List<TCompany> tCompanies = companyService.selectList(new EntityWrapper<TCompany>().eq("state", 0).ne("flag", 3));
+        model.addAttribute("company", tCompanies);
         return PREFIX + "commission.html";
     }
 
@@ -117,7 +122,7 @@
      */
     @RequestMapping(value = "/commission/getCount")
     @ResponseBody
-    public Object getCount(Integer time,String insertTime,Integer state) {
+    public Object getCount(Integer time,String insertTime,Integer state, Integer company) {
         if (time == null){
             time =1;
         }
@@ -246,7 +251,9 @@
                     if (tOrderPrivateCar==null){
                         continue;
                     }
-
+                    if(null != company && !company.equals(tOrderPrivateCar.getCompanyId())){
+                        continue;
+                    }
                     platformVO.setMoney(new BigDecimal(income.getMoney()));
                     if (tOrderPrivateCar.getState()!=10 && tOrderPrivateCar.getPayType() == null){
                         continue;
@@ -268,7 +275,9 @@
                     if (tOrderLogistics==null){
                         continue;
                     }
-
+                    if(null != company && !company.equals(tOrderLogistics.getCompanyId())){
+                        continue;
+                    }
                     platformVO.setMoney(new BigDecimal(income.getMoney()));
 
                     if (tOrderLogistics.getState()!=10 && tOrderLogistics.getPayType() == null){
@@ -289,6 +298,9 @@
                     TOrderPrivateCar tOrderPrivateCar = orderPrivateCarMap.get(settlementDetail.getOrderId());
 
                     if (tOrderPrivateCar==null){
+                        continue;
+                    }
+                    if(null != company && !company.equals(tOrderPrivateCar.getCompanyId())){
                         continue;
                     }
                     platformVO.setCode(tOrderPrivateCar.getOrderNum());
@@ -329,6 +341,9 @@
                     TOrderLogistics tOrderLogistics = orderLogisticsRecordMap.get(settlementDetail.getOrderId());
 
                     if (tOrderLogistics==null){
+                        continue;
+                    }
+                    if(null != company && !company.equals(tOrderLogistics.getCompanyId())){
                         continue;
                     }
                     String string1 = settlementDetail.getPrice().toString();
@@ -1716,7 +1731,7 @@
      */
     @RequestMapping(value = "/commission/list")
     @ResponseBody
-    public Object list(Integer time,String insertTime,Integer state) {
+    public Object list(Integer time,String insertTime,Integer state, Integer company) {
 
         if (time == null){
             time =1;
@@ -1873,6 +1888,9 @@
                     if (tOrderPrivateCar==null){
                         continue;
                     }
+                    if(null != company && !company.equals(tOrderPrivateCar.getCompanyId())){
+                        continue;
+                    }
                     platformVO.setCode(tOrderPrivateCar.getOrderNum());
                     TDriver tDriver = driverMap.get(tOrderPrivateCar.getDriverId());
                     if (tDriver != null){
@@ -1941,6 +1959,9 @@
                     TOrderLogistics tOrderLogistics = orderLogisticsRecordMap.get(income.getIncomeId());
 
                     if (tOrderLogistics==null){
+                        continue;
+                    }
+                    if(null != company && !company.equals(tOrderLogistics.getCompanyId())){
                         continue;
                     }
                     platformVO.setCode(tOrderLogistics.getOrderNum());
@@ -2012,6 +2033,10 @@
                     if (tOrderPrivateCar==null){
                         continue;
                     }
+    
+                    if(null != company && !company.equals(tOrderPrivateCar.getCompanyId())){
+                        continue;
+                    }
                     platformVO.setCode(tOrderPrivateCar.getOrderNum());
                     TDriver tDriver = driverMap.get(tOrderPrivateCar.getDriverId());
                     if (tDriver!=null){
@@ -2058,6 +2083,10 @@
                     if (tOrderLogistics==null){
                         continue;
                     }
+    
+                    if(null != company && !company.equals(tOrderLogistics.getCompanyId())){
+                        continue;
+                    }
                     platformVO.setCode(tOrderLogistics.getOrderNum());
                     TDriver tDriver1 = driverMap.get(tOrderLogistics.getDriverId());
                     if (tDriver1!=null){
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TIncomeController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TIncomeController.java
index 32dcae3..b0654c8 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TIncomeController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TIncomeController.java
@@ -4,20 +4,17 @@
 import com.baomidou.mybatisplus.plugins.Page;
 import com.stylefeng.guns.core.base.controller.BaseController;
 import com.stylefeng.guns.core.common.constant.factory.PageFactory;
-import com.stylefeng.guns.core.shiro.ShiroKit;
 import com.stylefeng.guns.core.util.DateUtil;
 import com.stylefeng.guns.core.util.ExcelExportUtil;
 import com.stylefeng.guns.core.util.SinataUtil;
-import com.stylefeng.guns.modular.system.model.Income;
+import com.stylefeng.guns.modular.system.model.TCompany;
 import com.stylefeng.guns.modular.system.service.IIncomeService;
+import com.stylefeng.guns.modular.system.service.ITCompanyService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
-import org.springframework.ui.Model;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.beans.factory.annotation.Autowired;
-import com.stylefeng.guns.core.log.LogObjectHolder;
-import org.springframework.web.bind.annotation.RequestParam;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -40,6 +37,9 @@
 
     @Autowired
     private IIncomeService tIncomeService;
+    
+    @Autowired
+    private ITCompanyService companyService;
 
     /**
      * 跳转到首页
@@ -52,30 +52,33 @@
 
     @RequestMapping("driverWork")
     public String driverWork(Model model) {
+        List<TCompany> tCompanies = companyService.selectList(new EntityWrapper<TCompany>().eq("state", 0).ne("flag", 3));
+        model.addAttribute("company", tCompanies);
         return PREFIX + "driverWork.html";
     }
 
     @RequestMapping(value = "/driverWorkList")
     @ResponseBody
-    public Object driverWorkList() {
+    public Object driverWorkList(Integer company) {
         Page<Map<String,Object>> page = new PageFactory<Map<String,Object>>().defaultPage();
-        List<Map<String,Object>> list = tIncomeService.getList1(page);
+        List<Map<String,Object>> list = tIncomeService.getList1(page, company);
         page.setRecords(list);
         return super.packForBT(page);
     }
 
     @RequestMapping("driverWorkDetail")
-    public String driverWorkDetail(String times, Model model) {
+    public String driverWorkDetail(String times, Integer company, Model model) {
         model.addAttribute("times", times);
+        model.addAttribute("company", company);
         return PREFIX + "driverWorkDetail.html";
     }
 
     @RequestMapping(value = "/driverWorkDetailList")
     @ResponseBody
-    public Object driverWorkDetailList(String times) {
+    public Object driverWorkDetailList(String times, Integer company) {
         Page<Map<String,Object>> page = new PageFactory<Map<String,Object>>().defaultPage();
         times = times.split(" ")[0];
-        page.setRecords(tIncomeService.getList2(page,times));
+        page.setRecords(tIncomeService.getList2(page,times,company));
         return super.packForBT(page);
     }
     /**
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java
index 0880e19..6ccb928 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java
@@ -1,6 +1,5 @@
 package com.stylefeng.guns.modular.system.controller;
 
-import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.stylefeng.guns.core.base.controller.BaseController;
@@ -18,7 +17,6 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 
 import java.math.BigDecimal;
-import java.math.BigInteger;
 import java.text.SimpleDateFormat;
 import java.time.*;
 import java.time.format.DateTimeFormatter;
@@ -81,25 +79,25 @@
 	private IUserActivityDiscount1Service userActivityDiscount1Service;
 	@Autowired
 	private ISysRedPacketRecordService sysRedPacketRecordService;
+	
+	@Autowired
+	private ITCompanyService companyService;
+	
+	@Autowired
+	private IDriverActivityService driverActivityService;
 
-	public static void main(String[] args) {
-		String temp = "[{\"money\":14.46,\"id\":91},{\"money\":1,\"id\":90}]";
-		JSONArray objects = JSONArray.parseArray(temp);
-		BigDecimal temp1 = new BigDecimal(BigInteger.ZERO);
-		for (int i = 0; i < objects.size(); i++) {
-			String string = objects.getJSONObject(i).getString("money");
-			temp1 = temp1.add(new BigDecimal(string));
-		}
-		System.err.println(temp1);
-	}
 	
 	@RequestMapping("/grant")
 	public String index(Model model) {
+		List<TCompany> tCompanies = companyService.selectList(new EntityWrapper<TCompany>().eq("state", 0).ne("flag", 3));
+		model.addAttribute("company", tCompanies);
 		return PREFIX + "grant.html";
 	}
 	
 	@RequestMapping("/use")
 	public String watter(Model model) {
+		List<TCompany> tCompanies = companyService.selectList(new EntityWrapper<TCompany>().eq("state", 0).ne("flag", 3));
+		model.addAttribute("company", tCompanies);
 		return PREFIX + "use.html";
 	}
 	
@@ -108,7 +106,7 @@
 	 */
 	@RequestMapping(value = "/use/list")
 	@ResponseBody
-	public Object list1(Integer time, String insertTime, Integer type) {
+	public Object list1(Integer time, String insertTime, Integer type, Integer company) {
 		if (time == null) {
 			time = 1;
 		}
@@ -199,51 +197,65 @@
 		Wrapper<TOrderLogistics> between33 = new EntityWrapper<TOrderLogistics>();
 		// 司机已消费金额
 		Wrapper<BalanceUsageRecord> between4 = new EntityWrapper<BalanceUsageRecord>();
+		List<Integer> collect = new ArrayList<>();
+		if(null != company){
+			List<TDriver> driverActivities = driverService.selectList(new EntityWrapper<TDriver>().eq("companyId", company));
+			collect = driverActivities.stream().map(TDriver::getId).collect(Collectors.toList());
+			collect.add(0);
+		}
 		if (time == 5 && !StringUtils.hasLength(insertTime)) {
 			// 专车wrapper
 			between = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("activityId")
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 			;
 			
 			// 小件物流wrapper
 			between1 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("activityId")
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 			;
 			
 			// 已使用优惠券记录wrapper
 			between2 = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("couponId")
 					.isNotNull("couponMoney")
+					.eq(null != company, "companyId", company)
 			;
 			
 			between22 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("couponId")
 					.isNotNull("couponMoney")
+					.eq(null != company, "companyId", company)
 			;
 			
 			// 已使用红包记录wrapper
 			between3 = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("redPacketId")
 					.isNotNull("redPacketMoney")
+					.eq(null != company, "companyId", company)
 			;
 			
 			between33 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("redPacketId")
 					.isNotNull("redPacketMoney")
+					.eq(null != company, "companyId", company)
 			;
 			
 			// 司机已消费金额
 			between4 = new EntityWrapper<BalanceUsageRecord>()
 					.eq("type", 1)
 					.ne("purpose", 6)
+					.in(!collect.isEmpty(), "driverId", collect)
 			;
 			
 			// 司机提现
 			driverWrapper = new EntityWrapper<TPubWithdrawal>()
 					.eq("state", 2)
 					.eq("type", 1)
+					.in(!collect.isEmpty(), "userId", collect)
 					.eq("userType", 2)
 			;
 			
@@ -253,39 +265,47 @@
 					.eq("state", 2)
 					.eq("type", 1)
 					.eq("userType", 2)
+					.in(!collect.isEmpty(), "userId", collect)
 					.between("insertTime", start, end);
 			// 专车wrapper
 			between = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("activityId")
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 小件物流wrapper
 			between1 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("activityId")
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 已使用优惠券记录wrapper
 			between2 = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("couponId")
 					.isNotNull("couponMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			between22 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("couponId")
 					.isNotNull("couponMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 已使用红包记录wrapper
 			between3 = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("redPacketId")
 					.isNotNull("redPacketMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			between33 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("redPacketId")
 					.isNotNull("redPacketMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 司机已消费金额
 			between4 = new EntityWrapper<BalanceUsageRecord>()
 					.ne("purpose", 6)
 					.eq("type", 1)
+					.in(!collect.isEmpty(), "driverId", collect)
 					.between("createTime", start, end);
 			
 			
@@ -540,7 +560,7 @@
 	
 	@RequestMapping(value = "/use/getCount")
 	@ResponseBody
-	public Object getCount1(Integer time, String insertTime, Integer type) {
+	public Object getCount1(Integer time, String insertTime, Integer type, Integer company) {
 		if (time == null) {
 			time = 1;
 		}
@@ -631,11 +651,18 @@
 		Wrapper<TOrderLogistics> between33 = new EntityWrapper<TOrderLogistics>();
 		// 司机已消费金额
 		Wrapper<BalanceUsageRecord> between4 = new EntityWrapper<BalanceUsageRecord>();
+		List<Integer> collect = new ArrayList<>();
+		if(null != company){
+			List<TDriver> driverActivities = driverService.selectList(new EntityWrapper<TDriver>().eq("companyId", company));
+			collect = driverActivities.stream().map(TDriver::getId).collect(Collectors.toList());
+			collect.add(0);
+		}
 		if (time == 5 && !StringUtils.hasLength(insertTime)) {
 			// 专车wrapper
 			between = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("activityId")
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 //                    .between("insertTime", start, end)
 			;
 			
@@ -643,6 +670,7 @@
 			between1 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("activityId")
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 //                    .between("insertTime", start, end)
 			;
 			
@@ -650,12 +678,14 @@
 			between2 = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("couponId")
 					.isNotNull("couponMoney")
+					.eq(null != company, "companyId", company)
 //                    .between("insertTime", start, end)
 			;
 			
 			between22 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("couponId")
 					.isNotNull("couponMoney")
+					.eq(null != company, "companyId", company)
 //                    .between("insertTime", start, end)
 			;
 			
@@ -663,12 +693,14 @@
 			between3 = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("redPacketId")
 					.isNotNull("redPacketMoney")
+					.eq(null != company, "companyId", company)
 //                    .between("insertTime", start, end)
 			;
 			
 			between33 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("redPacketId")
 					.isNotNull("redPacketMoney")
+					.eq(null != company, "companyId", company)
 //                    .between("insertTime", start, end)
 			;
 			
@@ -676,6 +708,7 @@
 			between4 = new EntityWrapper<BalanceUsageRecord>()
 					.eq("type", 1)
 					.ne("purpose", 6)
+					.in(!collect.isEmpty(), "driverId", collect)
 //                    .between("createTime", start, end)
 			;
 			
@@ -684,6 +717,7 @@
 					.eq("state", 2)
 					.eq("type", 1)
 					.eq("userType", 2)
+					.in(!collect.isEmpty(), "userId", collect)
 //                    .between("insertTime", start, end)
 			;
 			
@@ -692,39 +726,47 @@
 					.eq("state", 2)
 					.eq("type", 1)
 					.eq("userType", 2)
+					.in(!collect.isEmpty(), "userId", collect)
 					.between("insertTime", start, end);
 			// 专车wrapper
 			between = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("activityId")
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 小件物流wrapper
 			between1 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("activityId")
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 已使用优惠券记录wrapper
 			between2 = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("couponId")
 					.isNotNull("couponMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			between22 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("couponId")
 					.isNotNull("couponMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 已使用红包记录wrapper
 			between3 = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("redPacketId")
 					.isNotNull("redPacketMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			between33 = new EntityWrapper<TOrderLogistics>()
 					.isNotNull("redPacketId")
 					.isNotNull("redPacketMoney")
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 司机已消费金额
 			between4 = new EntityWrapper<BalanceUsageRecord>()
 					.ne("purpose", 6)
 					.eq("type", 1)
+					.in(!collect.isEmpty(), "driverId", collect)
 					.between("createTime", start, end);
 			
 			
@@ -957,7 +999,7 @@
 	 */
 	@RequestMapping(value = "/grant/list")
 	@ResponseBody
-	public Object list(Integer time, String insertTime, Integer type) {
+	public Object list(Integer time, String insertTime, Integer type, Integer company) {
 		if (time == null) {
 			time = 1;
 		}
@@ -1041,53 +1083,66 @@
 		Wrapper<UserRedPacketRecord> between3 = new EntityWrapper<UserRedPacketRecord>();
 		// 司机奖励
 		Wrapper<DriverActivityHistory> between4 = new EntityWrapper<DriverActivityHistory>();
+		List<Integer> collect = new ArrayList<>();
+		if(null != company){
+			List<DriverActivity> driverActivities = driverActivityService.selectList(new EntityWrapper<DriverActivity>().eq("companyId", company).eq("status", 3));
+			collect = driverActivities.stream().map(DriverActivity::getId).collect(Collectors.toList());
+			collect.add(0);
+		}
+		
 		if (time == 5 && !StringUtils.hasLength(insertTime)) {
 			// 专车wrapper
 			between = new EntityWrapper<TOrderPrivateCar>()
-					.isNotNull("discountMoney")
+					.isNotNull("discountMoney").eq(null != company, "companyId", company)
 			
 			;
 			// 小件物流wrapper
 			between1 = new EntityWrapper<TOrderLogistics>()
 					
-					.isNotNull("discountMoney")
+					.isNotNull("discountMoney").eq(null != company, "companyId", company)
 			;
 			// 优惠券领取记录wrapper
 			between2 = new EntityWrapper<UserCouponRecord>()
 					.ne("couponUseType", 2)
 					.ne("couponUseType", 3)
+					.eq(null != company, "companyId", company)
 			;
 			// 红包领取记录wrapper
 			between3 = new EntityWrapper<UserRedPacketRecord>()
 					.ne("state", 0)
+					.eq(null != company, "companyId", company)
 			;
 			// 司机奖励
 			between4 = new EntityWrapper<DriverActivityHistory>()
 					.eq("carryOut", 2)
+					.in(!collect.isEmpty(), "activityId", collect)
 			;
 		} else {
 			// 专车wrapper
 			between = new EntityWrapper<TOrderPrivateCar>()
-					.isNotNull("discountMoney")
+					.isNotNull("discountMoney").eq(null != company, "companyId", company)
 					.between("insertTime", start, end)
 			;
 			// 小件物流wrapper
 			between1 = new EntityWrapper<TOrderLogistics>()
-					.between("insertTime", start, end)
+					.between("insertTime", start, end).eq(null != company, "companyId", company)
 					.isNotNull("discountMoney")
 			;
 			// 优惠券领取记录wrapper
 			between2 = new EntityWrapper<UserCouponRecord>()
 					.ne("couponUseType", 2)
 					.ne("couponUseType", 3)
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 红包领取记录wrapper
 			between3 = new EntityWrapper<UserRedPacketRecord>()
 					.ne("state", 0)
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 司机奖励
 			between4 = new EntityWrapper<DriverActivityHistory>()
 					.eq("carryOut", 2)
+					.in(!collect.isEmpty(), "activityId", collect)
 					.between("insertTime", start, end);
 		}
 		
@@ -1291,7 +1346,7 @@
 	
 	@RequestMapping(value = "/grant/getCount")
 	@ResponseBody
-	public Object getCount(Integer time, String insertTime, Integer type) {
+	public Object getCount(Integer time, String insertTime, Integer type, Integer company) {
 		GrantMoneyVO result = new GrantMoneyVO();
 		if (time == null) {
 			time = 1;
@@ -1376,53 +1431,69 @@
 		Wrapper<UserRedPacketRecord> between3 = new EntityWrapper<UserRedPacketRecord>();
 		// 司机奖励
 		Wrapper<DriverActivityHistory> between4 = new EntityWrapper<DriverActivityHistory>();
+		List<Integer> collect = new ArrayList<>();
+		if(null != company){
+			List<DriverActivity> driverActivities = driverActivityService.selectList(new EntityWrapper<DriverActivity>().eq("companyId", company).eq("status", 3));
+			collect = driverActivities.stream().map(DriverActivity::getId).collect(Collectors.toList());
+			collect.add(0);
+		}
 		if (time == 5 && !StringUtils.hasLength(insertTime)) {
 			// 专车wrapper
 			between = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 			
 			;
 			// 小件物流wrapper
 			between1 = new EntityWrapper<TOrderLogistics>()
 					
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 			;
 			// 优惠券领取记录wrapper
 			between2 = new EntityWrapper<UserCouponRecord>()
 					.ne("couponUseType", 2)
 					.ne("couponUseType", 3)
+					.eq(null != company, "companyId", company)
 			;
 			// 红包领取记录wrapper
 			between3 = new EntityWrapper<UserRedPacketRecord>()
 					.ne("state", 0)
+					.eq(null != company, "companyId", company)
 			;
 			// 司机奖励
 			between4 = new EntityWrapper<DriverActivityHistory>()
 					.eq("carryOut", 2)
+					.in(!collect.isEmpty(), "activityId", collect)
 			;
 		} else {
 			// 专车wrapper
 			between = new EntityWrapper<TOrderPrivateCar>()
 					.isNotNull("discountMoney")
 					.between("insertTime", start, end)
+					.eq(null != company, "companyId", company)
 			;
 			// 小件物流wrapper
 			between1 = new EntityWrapper<TOrderLogistics>()
 					.between("insertTime", start, end)
 					.isNotNull("discountMoney")
+					.eq(null != company, "companyId", company)
 			;
 			// 优惠券领取记录wrapper
 			between2 = new EntityWrapper<UserCouponRecord>()
 					.ne("couponUseType", 2)
 					.ne("couponUseType", 3)
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 红包领取记录wrapper
 			between3 = new EntityWrapper<UserRedPacketRecord>()
 					.ne("state", 0)
+					.eq(null != company, "companyId", company)
 					.between("insertTime", start, end);
 			// 司机奖励
 			between4 = new EntityWrapper<DriverActivityHistory>()
 					.eq("carryOut", 2)
+					.in(!collect.isEmpty(), "activityId", collect)
 					.between("insertTime", start, end);
 		}
 		
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/HomeController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/HomeController.java
index 2352ca2..2fb94f9 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/HomeController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/HomeController.java
@@ -164,7 +164,7 @@
 
         Wrapper<TDriver> ne1 = new EntityWrapper<TDriver>().ne("state", 1).eq("authState", 2).ne("flag", 3);
         if(companyId != null){
-            ne1.eq("companyId", companyId).or().eq("franchiseeId", companyId);
+            ne1.eq("companyId", companyId);
         }
         List<TDriver> tDrivers = tDriverService.selectList(ne1);
         String keys = "";
@@ -225,14 +225,14 @@
 
         Wrapper<TDriver> ne4 = new EntityWrapper<TDriver>().eq("authState", 2).ne("flag", 3);
         if(companyId != null){
-            ne4.eq("companyId", companyId).or().eq("franchiseeId", companyId);
+            ne4.eq("companyId", companyId);
         }
         int i2 = tDriverService.selectCount(ne4);
         map1.put("netcarDriverSum", i2);  //总司机
 
         Wrapper<TCar> state3 = new EntityWrapper<TCar>().eq("state", 1);
         if(companyId != null){
-            state3.eq("companyId", companyId).or().eq("franchiseeId", companyId);
+            state3.eq("companyId", companyId);
         }
         int state1 = tCarService.selectCount(state3);
         map1.put("netCarSum", state1);  //总车辆
@@ -257,7 +257,7 @@
 
         Wrapper<TDriver> ne3 = new EntityWrapper<TDriver>().between("insertTime", calendar3.getTime(), calendar4.getTime()).eq("authState", 2).ne("flag", 3);
         if(companyId != null){
-            ne3.eq("companyId", companyId).or().eq("franchiseeId", companyId);
+            ne3.eq("companyId", companyId);
         }
         int i5 = tDriverService.selectCount(ne3);
         map1.put("netcarDriverSum", i5);
@@ -414,7 +414,7 @@
         Integer[] driverStates = new Integer[]{2,3};
         Wrapper<TDriver> ne = new EntityWrapper<TDriver>().eq("authState", 2).in("state", driverStates).ne("flag", 3);
         if(companyId != null){
-            ne.eq("companyId", companyId).or().eq("franchiseeId", companyId);
+            ne.eq("companyId", companyId);
         }
         if(state!=null){
             ne.eq("state",state);
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCarController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCarController.java
index f53daf8..9c82640 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCarController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCarController.java
@@ -5,6 +5,7 @@
 import com.stylefeng.guns.core.base.controller.BaseController;
 import com.stylefeng.guns.core.base.tips.ErrorTip;
 import com.stylefeng.guns.core.common.constant.factory.PageFactory;
+import com.stylefeng.guns.core.log.LogObjectHolder;
 import com.stylefeng.guns.core.shiro.ShiroKit;
 import com.stylefeng.guns.core.util.*;
 import com.stylefeng.guns.modular.system.dao.CarInsuranceMapper;
@@ -20,12 +21,11 @@
 import org.jsoup.Jsoup;
 import org.jsoup.nodes.Document;
 import org.jsoup.nodes.Element;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.*;
 import org.springframework.ui.Model;
-import org.springframework.beans.factory.annotation.Autowired;
-import com.stylefeng.guns.core.log.LogObjectHolder;
+import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartHttpServletRequest;
 
@@ -185,7 +185,7 @@
         //查询平台ID
         TCompany company = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1));
         //判断是平台司机还是加盟司机
-        if ((SinataUtil.isEmpty(tCar.getCompanyId()) || tCar.getCompanyId() == 0 || tCar.getCompanyId() == company.getId()) && (SinataUtil.isEmpty(tCar.getFranchiseeId()) || tCar.getFranchiseeId() == 0)){
+        if (tCar.getCompanyId() == 1){
             model.addAttribute("companyType",1);
         }else{
             model.addAttribute("companyType",2);
@@ -472,12 +472,11 @@
                     tCar.setCompanyId(oneId);
                 }
                 if (SinataUtil.isNotEmpty(twoId)){
-                    tCar.setFranchiseeId(twoId);
+                    tCar.setCompanyId(twoId);
                 }
             }else if (1 == companyType.intValue()){
                 TCompany company = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1));
                 tCar.setCompanyId(company.getId());
-                tCar.setFranchiseeId(0);
             }
             tCar.setAddType(2);
             tCar.setIsPlatCar(1);
@@ -486,7 +485,7 @@
                 tCar.setCompanyId(ShiroKit.getUser().getObjectId());
             }
             if (SinataUtil.isNotEmpty(franchiseeId)){
-                tCar.setFranchiseeId(franchiseeId);
+                tCar.setCompanyId(franchiseeId);
             }
             tCar.setIsPlatCar(2);
             tCar.setAddType(3);
@@ -497,7 +496,7 @@
                 tCar.setCompanyId(tCompany.getSuperiorId());
             }
             if (SinataUtil.isNotEmpty(ShiroKit.getUser().getObjectId())){
-                tCar.setFranchiseeId(ShiroKit.getUser().getObjectId());
+                tCar.setCompanyId(ShiroKit.getUser().getObjectId());
             }
             tCar.setIsPlatCar(2);
             tCar.setAddType(4);
@@ -560,19 +559,18 @@
                     tCar.setCompanyId(oneId);
                 }
                 if (SinataUtil.isNotEmpty(twoId)){
-                    tCar.setFranchiseeId(twoId);
+                    tCar.setCompanyId(twoId);
                 }
             }else if (1 == companyType.intValue()){
                 TCompany company = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1));
                 tCar.setCompanyId(company.getId());
-                tCar.setFranchiseeId(0);
             }
         }else if (2 == roleType){  //分公司
             if (SinataUtil.isNotEmpty(ShiroKit.getUser().getObjectId())){
                 tCar.setCompanyId(ShiroKit.getUser().getObjectId());
             }
             if (SinataUtil.isNotEmpty(franchiseeId)){
-                tCar.setFranchiseeId(franchiseeId);
+                tCar.setCompanyId(franchiseeId);
             }
         }else if (3 == roleType){  //加盟商
             TCompany tCompany = tCompanyService.selectById(ShiroKit.getUser().getObjectId());
@@ -580,7 +578,7 @@
                 tCar.setCompanyId(tCompany.getSuperiorId());
             }
             if (SinataUtil.isNotEmpty(ShiroKit.getUser().getObjectId())){
-                tCar.setFranchiseeId(ShiroKit.getUser().getObjectId());
+                tCar.setCompanyId(ShiroKit.getUser().getObjectId());
             }
         }
 
@@ -988,8 +986,7 @@
                     }else if ("加盟车辆".equals(zero)){
                         car.setIsPlatCar(2);
                     }
-                    car.setCompanyId(companyId);
-                    car.setFranchiseeId(franchiseeId);
+                    car.setCompanyId(0 == franchiseeId ? franchiseeId : companyId);
                     car.setCarColor(eleven);
                     car.setCarBrandId(carBrandId);
                     car.setCarModelId(carModelId);
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java
index 9636de0..2f44503 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java
@@ -7,20 +7,18 @@
 import com.baomidou.mybatisplus.plugins.Page;
 import com.stylefeng.guns.core.base.controller.BaseController;
 import com.stylefeng.guns.core.common.constant.factory.PageFactory;
+import com.stylefeng.guns.core.log.LogObjectHolder;
 import com.stylefeng.guns.core.shiro.ShiroKit;
-import com.stylefeng.guns.core.util.DateUtil;
 import com.stylefeng.guns.core.util.SinataUtil;
 import com.stylefeng.guns.modular.system.model.*;
 import com.stylefeng.guns.modular.system.service.*;
-import org.springframework.beans.factory.annotation.Value;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.beans.factory.annotation.Autowired;
-import com.stylefeng.guns.core.log.LogObjectHolder;
+import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -299,6 +297,7 @@
         }
         tCompany.setType(2);  //2:分公司
         tCompany.setState(0); //0:正常
+        tCompany.setSuperiorId(1);
         tCompany.setInsertTime(new Date());
         tCompanyService.insert(tCompany);
 
@@ -352,9 +351,6 @@
             return "error";
         }
         tCompany.setType(3);  //2:分公司
-        if (ShiroKit.getUser().getRoleType() == 2){
-            tCompany.setSuperiorId(ShiroKit.getUser().getObjectId());
-        }
         tCompany.setState(0); //0:正常
         tCompany.setInsertTime(new Date());
         tCompanyService.insert(tCompany);
@@ -410,6 +406,7 @@
             user.setSalt(ShiroKit.getRandomSalt(5));
             user.setPassword(ShiroKit.md5(password, user.getSalt()));
         }
+        tCompany.setSuperiorId(1);
         tCompanyService.updateById(tCompany);
         user.setName(tCompany.getName());
         userService.updateById(user);
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java
index 9bff68c..bcdfe0d 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java
@@ -210,7 +210,7 @@
         //查询平台ID
         TCompany company = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1).eq("state", 0).ne("flag", 3));
         //判断是平台司机还是加盟司机
-        if ((SinataUtil.isEmpty(tDriver.getCompanyId()) || tDriver.getCompanyId() == 0 || tDriver.getCompanyId() == company.getId()) && (SinataUtil.isEmpty(tDriver.getFranchiseeId()) || tDriver.getFranchiseeId() == 0)){
+        if (1 == tDriver.getCompanyId()){
             model.addAttribute("companyType",1);
         }else{
             model.addAttribute("companyType",2);
@@ -654,12 +654,11 @@
                     tDriver.setCompanyId(oneId);
                 }
                 if (SinataUtil.isNotEmpty(twoId)){
-                    tDriver.setFranchiseeId(twoId);
+                    tDriver.setCompanyId(twoId);
                 }
             }else if (1 == companyType.intValue()){
                 TCompany company = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1));
                 tDriver.setCompanyId(company.getId());
-                tDriver.setFranchiseeId(franchiseeId);
             }
             tDriver.setAddType(2);
             tDriver.setIsPlatCar(1);
@@ -669,7 +668,7 @@
                 tDriver.setCompanyId(ShiroKit.getUser().getObjectId());
             }
             if (SinataUtil.isNotEmpty(franchiseeId)){
-                tDriver.setFranchiseeId(franchiseeId);
+                tDriver.setCompanyId(franchiseeId);
             }
             tDriver.setAddType(3);
             tDriver.setIsPlatCar(2);
@@ -681,7 +680,7 @@
                 tDriver.setCompanyId(tCompany.getSuperiorId());
             }
             if (SinataUtil.isNotEmpty(ShiroKit.getUser().getObjectId())){
-                tDriver.setFranchiseeId(ShiroKit.getUser().getObjectId());
+                tDriver.setCompanyId(ShiroKit.getUser().getObjectId());
             }
             tDriver.setAddType(4);
             tDriver.setIsPlatCar(2);
@@ -804,19 +803,18 @@
                     tDriver.setCompanyId(oneId);
                 }
                 if (SinataUtil.isNotEmpty(twoId)){
-                    tDriver.setFranchiseeId(twoId);
+                    tDriver.setCompanyId(twoId);
                 }
             }else if (1 == companyType.intValue()){
                 TCompany company = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1));
                 tDriver.setCompanyId(company.getId());
-                tDriver.setFranchiseeId(franchiseeId);
             }
         }else if (2 == roleType){  //分公司
             if (SinataUtil.isNotEmpty(ShiroKit.getUser().getObjectId())){
                 tDriver.setCompanyId(ShiroKit.getUser().getObjectId());
             }
             if (SinataUtil.isNotEmpty(franchiseeId)){
-                tDriver.setFranchiseeId(franchiseeId);
+                tDriver.setCompanyId(franchiseeId);
             }
         }else if (3 == roleType){  //加盟商
             TCompany tCompany = tCompanyService.selectById(ShiroKit.getUser().getObjectId());
@@ -824,7 +822,7 @@
                 tDriver.setCompanyId(tCompany.getSuperiorId());
             }
             if (SinataUtil.isNotEmpty(ShiroKit.getUser().getObjectId())){
-                tDriver.setFranchiseeId(ShiroKit.getUser().getObjectId());
+                tDriver.setCompanyId(ShiroKit.getUser().getObjectId());
             }
         }
         tDriver.setUpdateTime(new Date());
@@ -1204,8 +1202,7 @@
                         }else if ("加盟司机".equals(one)){
                             driver.setIsPlatCar(2);
                         }
-                        driver.setCompanyId(companyId);
-                        driver.setFranchiseeId(franchiseeId);
+                        driver.setCompanyId(0 != franchiseeId ? franchiseeId : companyId);
                         driver.setState(2);
                         driver.setAuthState(2);
                         driver.setFlag("1");
@@ -1464,8 +1461,7 @@
                         driver.setDriveCard(three);
                         driver.setTaxiAptitudeCard(seven);
                         driver.setIsPlatCar(2);
-                        driver.setCompanyId(companyId);
-                        driver.setFranchiseeId(franchiseeId);
+                        driver.setCompanyId(0 != franchiseeId ? franchiseeId : companyId);
                         driver.setState(1);
                         driver.setAuthState(1);
                         driver.setFlag("1");
@@ -1718,8 +1714,7 @@
                         driver.setDriveCard(two);
                         driver.setTaxiAptitudeCard(six);
                         driver.setIsPlatCar(2);
-                        driver.setCompanyId(companyId);
-                        driver.setFranchiseeId(franchiseeId);
+                        driver.setCompanyId(0 != franchiseeId ? franchiseeId : companyId);
                         driver.setState(1);
                         driver.setAuthState(1);
                         driver.setFlag("1");
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java
index 918b69c..1703058 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java
@@ -707,7 +707,7 @@
         shellList.add("订单编号");
         shellList.add("订单来源");
         shellList.add("乘车时间");
-        shellList.add("下单用户昵称");
+        shellList.add("下单用户姓名");
         shellList.add("下单用户手机");
         shellList.add("乘车用户姓名");
         shellList.add("乘车用户手机");
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TReassignController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TReassignController.java
index 8e28d7e..2cd6487 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TReassignController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TReassignController.java
@@ -689,8 +689,7 @@
     
             orderPrivateCar.setDriverId(driver1.getId());
             orderPrivateCar.setCarId(driver1.getCarId());
-            orderPrivateCar.setCompanyId(driver1.getFranchiseeId() != null && driver1.getFranchiseeId() != 0 ? driver1.getFranchiseeId() : (
-                    driver1.getCompanyId() != null && driver1.getCompanyId() != 0 ? driver1.getCompanyId() : 1));
+            orderPrivateCar.setCompanyId(driver1.getCompanyId());
             orderPrivateCar.setSnatchOrderTime(new Date());
             orderPrivateCar.setState(orderPrivateCar.getOldState());
             orderPrivateCar.setOldState(null);
@@ -1116,8 +1115,7 @@
     
             orderLogistics.setDriverId(driver1.getId());
             orderLogistics.setCarId(driver1.getCarId());
-            orderLogistics.setCompanyId(driver1.getFranchiseeId() != null && driver1.getFranchiseeId() != 0 ? driver1.getFranchiseeId() : (
-                    driver1.getCompanyId() != null && driver1.getCompanyId() != 0 ? driver1.getCompanyId() : 1));
+            orderLogistics.setCompanyId(driver1.getCompanyId());
             orderLogistics.setState(orderLogistics.getOldState());
             orderLogistics.setOldState(null);
             orderLogistics.setSnatchOrderTime(new Date());
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IncomeMapper.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IncomeMapper.java
index 1c221d9..08ea9cb 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IncomeMapper.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/IncomeMapper.java
@@ -5,7 +5,6 @@
 import com.stylefeng.guns.modular.system.model.Income;
 import org.apache.ibatis.annotations.Param;
 
-import java.time.LocalDateTime;
 import java.util.List;
 import java.util.Map;
 
@@ -16,10 +15,10 @@
     List<Map<String,Object>> getExcelList(
                                      @Param("id") Integer id);
 
-    List<Map<String,Object>> getList1(@Param("page") Page<Map<String, Object>> page);
+    List<Map<String,Object>> getList1(@Param("page") Page<Map<String, Object>> page, @Param("company") Integer company);
 
     List<Map<String,Object>> getList2(@Param("page") Page<Map<String, Object>> page,
-                                      @Param("times") String times);
+                                      @Param("times") String times, @Param("company") Integer company);
 
     List<Map<String,Object>> getTotal(@Param("times") String times);
 
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IncomeMapper.xml b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IncomeMapper.xml
index bece06e..8d4fa12 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IncomeMapper.xml
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/IncomeMapper.xml
@@ -58,11 +58,19 @@
     <select  id="getList1" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
 		    select aa.startTime as times, aa.driverNum, bb.duration as timeNumber from (
 				select a.startTime, count(a.driverId) as driverNum from (
-					select DATE_FORMAT(startTime, '%Y-%m-%d') as startTime, driverId from t_driver_work group by DATE_FORMAT(startTime, '%Y-%m-%d'), driverId
+					select DATE_FORMAT(startTime, '%Y-%m-%d') as startTime, driverId from t_driver_work where 1 = 1
+                    <if test="null != company">
+                        and driverId in (select id from t_driver where companyId = #{company})
+                    </if>
+					group by DATE_FORMAT(startTime, '%Y-%m-%d'), driverId
 			    ) as a group by a.startTime
 		    ) as aa
 			left join (
-			    select DATE_FORMAT(startTime, '%Y-%m-%d') as startTime, sum(if(endTime is null, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(endTime)) - UNIX_TIMESTAMP(startTime)) as duration from t_driver_work group by DATE_FORMAT(startTime, '%Y-%m-%d')
+			    select DATE_FORMAT(startTime, '%Y-%m-%d') as startTime, sum(if(endTime is null, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(endTime)) - UNIX_TIMESTAMP(startTime)) as duration from t_driver_work where 1 = 1
+			    <if test="null != company">
+				    and driverId in (select id from t_driver where companyId = #{company})
+			    </if>
+			    group by DATE_FORMAT(startTime, '%Y-%m-%d')
 		    ) as bb on (aa.startTime = bb.startTime)
             ORDER BY aa.startTime DESC
     </select>
@@ -72,7 +80,7 @@
 		a.duration as timeNumber
 	    from (select DATE_FORMAT(startTime, '%Y-%m-%d') as startTime, driverId, sum(if(endTime is null, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(endTime)) - UNIX_TIMESTAMP(startTime)) as duration from t_driver_work group by DATE_FORMAT(startTime, '%Y-%m-%d'), driverId) as a
 		left join t_driver b on (a.driverId = b.id)
-	    where a.startTime = #{times}
+	    where a.startTime = #{times} and b.companyId = #{company}
     </select>
     <select  id="getTotal" resultType="map">
       SELECT COUNT(o.driverId) driverNum,SUM(o.timeNumber) timeNumber from (SELECT
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCarMapper.xml b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCarMapper.xml
index 84646ae..58363b6 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCarMapper.xml
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCarMapper.xml
@@ -59,7 +59,7 @@
         LEFT JOIN (select * from t_car_brand where state = 1) as cb on cb.id = cc.carBrandId
         LEFT JOIN (select * from t_car_model where state = 1) as cm on cm.id = cc.carModelId
         LEFT JOIN (select * from t_company where type = 2 and flag != 3) as c1 on c1.id = cc.companyId
-        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as c2 on c2.id = cc.franchiseeId
+        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as c2 on c2.id = cc.companyId
         LEFT JOIN (
         SELECT
         GROUP_CONCAT(case when type = 1 then '专车'
@@ -99,10 +99,10 @@
                 and o.franchiseeName  LIKE CONCAT('%',#{franchiseeName},'%')
             </if>
             <if test="roleType != null and roleType != '' and roleType == 2">
-                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.franchiseeId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
+                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.companyId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
             </if>
             <if test="roleType != null and roleType != '' and roleType == 3">
-                and o.franchiseeId = #{nowUserId}
+                and o.companyId = #{nowUserId}
             </if>
         </where>
         order by o.id desc
@@ -112,7 +112,7 @@
         LEFT JOIN (select * from t_car_brand where state = 1) as cb on cb.id = cc.carBrandId
         LEFT JOIN (select * from t_car_model where state = 1) as cm on cm.id = cc.carModelId
         LEFT JOIN (select * from t_company where type = 2 and flag != 3) as c1 on c1.id = cc.companyId
-        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as c2 on c2.id = cc.franchiseeId
+        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as c2 on c2.id = cc.companyId
         LEFT JOIN (
         SELECT
         GROUP_CONCAT(case when type = 1 then '专车'
@@ -154,10 +154,10 @@
                 and o.franchiseeName  LIKE CONCAT('%',#{franchiseeName},'%')
             </if>
             <if test="roleType != null and roleType != '' and roleType == 2">
-                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.franchiseeId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
+                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.companyId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
             </if>
             <if test="roleType != null and roleType != '' and roleType == 3">
-                and o.franchiseeId = #{nowUserId}
+                and o.companyId = #{nowUserId}
             </if>
         </where>
         order by o.id desc
@@ -169,7 +169,7 @@
         LEFT JOIN (select * from t_car_brand where state = 1) as cb on cb.id = cc.carBrandId
         LEFT JOIN (select * from t_car_model where state = 1) as cm on cm.id = cc.carModelId
         LEFT JOIN (select * from t_company where type = 2 and flag != 3) as c1 on c1.id = cc.companyId
-        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as c2 on c2.id = cc.franchiseeId
+        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as c2 on c2.id = cc.companyId
         LEFT JOIN (
         SELECT
         GROUP_CONCAT(case when type = 1 then '专车'
@@ -179,10 +179,10 @@
         <where>
             o.state = 1
             <if test="roleType != null and roleType != '' and roleType == 2">
-                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.franchiseeId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
+                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.companyId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
             </if>
             <if test="roleType != null and roleType != '' and roleType == 3">
-                and o.franchiseeId = #{nowUserId}
+                and o.companyId = #{nowUserId}
             </if>
         </where>
         order by o.id desc
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCompanyMapper.xml b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCompanyMapper.xml
index ced0f9b..df4bebc 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCompanyMapper.xml
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCompanyMapper.xml
@@ -120,8 +120,8 @@
         cc.* FROM t_company as cc
         LEFT JOIN (SELECT * FROM sys_user where roleType = 3) as ui on ui.objectId = cc.id
         LEFT JOIN (select * from t_company where type = 2 and flag != 3) as ci on ci.id = cc.superiorId
-        LEFT JOIN (SELECT COUNT(id) as num,franchiseeId FROM t_car where state = 1 GROUP BY franchiseeId) as ca on ca.franchiseeId = cc.id
-        LEFT JOIN (SELECT COUNT(id) as num,franchiseeId FROM t_driver where flag != 3 GROUP BY franchiseeId) as di on di.franchiseeId = cc.id) as o
+        LEFT JOIN (SELECT COUNT(id) as num,companyId FROM t_car where state = 1 GROUP BY companyId) as ca on ca.companyId = cc.id
+        LEFT JOIN (SELECT COUNT(id) as num,companyId FROM t_driver where flag != 3 GROUP BY companyId) as di on di.companyId = cc.id) as o
         <where>
             o.type = 3 and o.flag != 3
             <if test="beginTime != null and beginTime != '' and endTime != null and endTime != ''">
@@ -190,7 +190,7 @@
             left join t_driver b on (a.driverId = b.id)
             where 1 = 1
             <if test="null != companyId">
-                and if(b.franchiseeId is null or b.franchiseeId = 0, b.companyId = #{companyId}, b.franchiseeId = #{companyId})
+                and b.companyId = #{companyId}
             </if>
             <if test="null != start and '' != start and null != end and '' != end">
                 and DATE_FORMAT(a.startTime, '%Y-%m-%d') between #{start} and #{end}
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TComplaintMapper.xml b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TComplaintMapper.xml
index efb19f7..3d55ca3 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TComplaintMapper.xml
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TComplaintMapper.xml
@@ -48,10 +48,10 @@
                 and o.isHandle = 1
             </if>
             <if test="roleType != null and roleType != '' and roleType == 2">
-                and o.companyId = #{nowUserId} and (o.franchiseeId = 0 or o.franchiseeId is null)
+                and o.companyId = #{nowUserId}
             </if>
             <if test="roleType != null and roleType != '' and roleType == 3">
-                and o.franchiseeId = #{nowUserId}
+                and o.companyId = #{nowUserId}
             </if>
         </where>
         order by o.id desc
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TDispatchMapper.xml b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TDispatchMapper.xml
index fd5433c..f2a5777 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TDispatchMapper.xml
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TDispatchMapper.xml
@@ -26,7 +26,7 @@
     <select id="getDispatchList" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
         SELECT * FROM (SELECT c1.name as companyName,c2.name as franchiseeName,dd.* FROM t_dispatch as dd
         LEFT JOIN (select * from t_company where type = 2 and flag != 3) as c1 on c1.id = dd.companyId
-        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as c2 on c2.id = dd.franchiseeId) as o
+        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as c2 on c2.id = dd.companyId) as o
         <where>
             o.state != 3
             <if test="beginTime != null and beginTime != '' and endTime != null and endTime != ''">
@@ -48,10 +48,10 @@
                 and o.state = #{state}
             </if>
             <if test="roleType != null and roleType != '' and roleType == 2">
-                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.franchiseeId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
+                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.companyId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
             </if>
             <if test="roleType != null and roleType != '' and roleType == 3">
-                and o.franchiseeId = #{nowUserId}
+                and o.companyId = #{nowUserId}
             </if>
         </where>
         order by o.id desc
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TDriverMapper.xml b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TDriverMapper.xml
index 6871d80..462cc7c 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TDriverMapper.xml
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TDriverMapper.xml
@@ -83,7 +83,7 @@
     <select id="getAuthDriverList" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
         SELECT * FROM (SELECT cc1.`name` as companyName,cc2.`name` as franchiseeName,ds.serverStr,dd.* from t_driver as dd
         LEFT JOIN (select * from t_company where type = 2 and flag != 3) as cc1 on cc1.id = dd.companyId
-        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as cc2 on cc2.id = dd.franchiseeId
+        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as cc2 on cc2.id = dd.companyId
         LEFT JOIN (
         SELECT
         GROUP_CONCAT(case when type = 1 then '专车'
@@ -145,7 +145,7 @@
         from t_driver as dd
         LEFT JOIN t_driver_team tdt on dd.teamId=tdt.id and tdt.state!=3
         LEFT JOIN (select * from t_company where type = 2 and flag != 3) as cc1 on cc1.id = dd.companyId
-        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as cc2 on cc2.id = dd.franchiseeId
+        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as cc2 on cc2.id = dd.companyId
         LEFT JOIN (select * from t_car where state = 1) as ci on ci.id = dd.carId
         LEFT JOIN (
         SELECT
@@ -188,10 +188,10 @@
                 and o.authState = #{authState}
             </if>
             <if test="roleType != null and roleType != '' and roleType == 2">
-                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.franchiseeId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
+                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.companyId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
             </if>
             <if test="roleType != null and roleType != '' and roleType == 3">
-                and o.franchiseeId = #{nowUserId}
+                and o.companyId = #{nowUserId}
             </if>
             <if test="state != null and state != ''">
                 and o.state = #{state}
@@ -242,10 +242,10 @@
                 and o.serverStr  LIKE CONCAT('%',#{serverStr},'%')
             </if>
             <if test="roleType != null and roleType != '' and roleType == 2">
-                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.franchiseeId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where type = 3 and superiorId = #{nowUserId} GROUP BY superiorId)))
+                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.companyId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where type = 3 and superiorId = #{nowUserId} GROUP BY superiorId)))
             </if>
             <if test="roleType != null and roleType != '' and roleType == 3">
-                and o.franchiseeId = #{nowUserId}
+                and o.companyId = #{nowUserId}
             </if>
         </where>
         order by o.id desc
@@ -257,7 +257,7 @@
         <set>
             <if test="authState != null"> authState = #{authState} </if>
         </set>
-        where companyId = #{companyId} and (franchiseeId = 0 or franchiseeId is null)
+        where companyId = #{companyId}
     </update>
 
     <!--修改加盟商司机的状态-->
@@ -266,7 +266,7 @@
         <set>
             <if test="authState != null"> authState = #{authState} </if>
         </set>
-        where franchiseeId = #{franchiseeId}
+        where companyId = #{franchiseeId}
     </update>
 
     <!--根据审核通过的司机列表无分页-->
@@ -274,7 +274,7 @@
         SELECT * FROM (SELECT cc1.`name` as companyName,cc2.`name` as franchiseeName,ci.carLicensePlate,ds.serverStr,IFNULL(oe.evaluateNum,0) as evaluateNum,
         (IFNULL(ot1.taxiNum, 0) + IFNULL(ot3.num, 0) + IFNULL(ot5.num, 0)) as historyNum,(IFNULL(ot2.taxiMoney, 0)+ IFNULL(ot4.money, 0) + IFNULL(ot6.money, 0)) as historyMoney,dd.* from t_driver as dd
         LEFT JOIN (select * from t_company where type = 2 and flag != 3) as cc1 on cc1.id = dd.companyId
-        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as cc2 on cc2.id = dd.franchiseeId
+        LEFT JOIN (select * from t_company where type = 3 and flag != 3) as cc2 on cc2.id = dd.companyId
         LEFT JOIN (select * from t_car where state = 1) as ci on ci.id = dd.carId
         LEFT JOIN (
         SELECT
@@ -295,10 +295,10 @@
                 and FIND_IN_SET(o.authState,'2,3')
             </if>
             <if test="roleType != null and roleType != '' and roleType == 2">
-                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.franchiseeId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
+                and (o.companyId = #{nowUserId} or FIND_IN_SET(o.companyId,(SELECT GROUP_CONCAT(id) as ids FROM t_company where superiorId = #{nowUserId} GROUP BY superiorId)))
             </if>
             <if test="roleType != null and roleType != '' and roleType == 3">
-                and o.franchiseeId = #{nowUserId}
+                and o.companyId = #{nowUserId}
             </if>
         </where>
         order by o.id desc
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderEvaluateMapper.xml b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderEvaluateMapper.xml
index 759ffae..e391deb 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderEvaluateMapper.xml
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderEvaluateMapper.xml
@@ -48,10 +48,10 @@
                 and o.orderType = #{orderType}
             </if>
             <if test="roleType != null and roleType != '' and roleType == 2">
-                and o.companyId = #{nowUserId} and (o.franchiseeId = 0 or o.franchiseeId is null)
+                and o.companyId = #{nowUserId}
             </if>
             <if test="roleType != null and roleType != '' and roleType == 3">
-                and o.franchiseeId = #{nowUserId}
+                and o.companyId = #{nowUserId}
             </if>
         </where>
         order by o.id desc
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderTaxiMapper.xml b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderTaxiMapper.xml
index 1a6338f..804e12e 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderTaxiMapper.xml
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderTaxiMapper.xml
@@ -141,10 +141,10 @@
     <select id="getCanSelectTaxiDriverList" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
         SELECT dd.*,c1.name as companyName,c2.name as franchiseeName from t_driver AS dd
         LEFT JOIN t_company as c1 on c1.id = dd.companyId
-        LEFT JOIN t_company as c2 on c2.id = dd.franchiseeId
+        LEFT JOIN t_company as c2 on c2.id = dd.companyId
         LEFT JOIN (SELECT * from t_driver_service where type = 2) as ds on ds.driverId = dd.id
         <where>
-            (dd.companyId = #{companyId} or dd.franchiseeId = #{companyId}) and dd.authState = 2 and dd.state = 2 and (ds.id is not null ) and (dd.carId is not null)
+            dd.companyId = #{companyId} and dd.authState = 2 and dd.state = 2 and (ds.id is not null ) and (dd.carId is not null)
             <if test="name != null and name != ''">
                 and CONCAT(dd.firstName, ' ', dd.lastName) LIKE CONCAT('%',#{name},'%')
             </if>
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TReassignMapper.xml b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TReassignMapper.xml
index afceb7a..8ce8edb 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TReassignMapper.xml
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TReassignMapper.xml
@@ -87,7 +87,7 @@
     <select id="getCanSelectPrivateCarDriverList" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
         SELECT dd.*,c1.name as companyName,c2.name as franchiseeName from t_driver AS dd
         LEFT JOIN t_company as c1 on c1.id = dd.companyId
-        LEFT JOIN t_company as c2 on c2.id = dd.franchiseeId
+        LEFT JOIN t_company as c2 on c2.id = dd.companyId
         <where>
             dd.id != #{driverId} and dd.authState = 2 and dd.state = 2
             and dd.id in
@@ -115,7 +115,7 @@
     <select id="getCanSelectSmallDriverList" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
         SELECT dd.*,c1.name as companyName,c2.name as franchiseeName from t_driver AS dd
         LEFT JOIN t_company as c1 on c1.id = dd.companyId
-        LEFT JOIN t_company as c2 on c2.id = dd.franchiseeId
+        LEFT JOIN t_company as c2 on c2.id = dd.companyId
         <where>
             dd.id != #{driverId} and dd.authState = 2 and dd.state = 2
             and dd.id in
@@ -264,8 +264,8 @@
         left join t_driver_line f on (a.id = f.driverId)
         left join t_line_shift g on (f.lineId = g.lineId)
         left join t_company as h on (h.id = a.companyId)
-        left join t_company as i on (i.id = a.franchiseeId)
-        where a.authState = 2 and a.state != 1 and a.flag != 3 and if(a.franchiseeId is null or a.franchiseeId = 0, a.companyId = #{companyId}, a.franchiseeId = #{companyId})
+        left join t_company as i on (i.id = a.companyId)
+        where a.authState = 2 and a.state != 1 and a.flag != 3 and a.companyId = #{companyId}
         and a.id in (select driverId from t_driver_work where state = 1 and type like '%3%')
         and b.type = 3 and c.type = 3 and e.type = 3 and e.serverCarModelId = #{serverCarModelId} and f.lineId = #{lineId} and g.id = #{lineShiftId}
         and a.id in (select driverId from t_line_shift_driver where lineShiftId = #{lineShiftId} and DATE_FORMAT(`day`, '%Y-%m-%d') = DATE_FORMAT(#{time}, '%Y-%m-%d') and laveSeat >= #{num})
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIncomeService.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIncomeService.java
index 7d54d74..0c810dd 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIncomeService.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IIncomeService.java
@@ -5,7 +5,6 @@
 import com.stylefeng.guns.modular.system.model.Income;
 import org.apache.ibatis.annotations.Param;
 
-import java.time.LocalDateTime;
 import java.util.List;
 import java.util.Map;
 
@@ -29,10 +28,10 @@
     List<Map<String,Object>> getExcelList(
                                      @Param("id") Integer id);
 
-    List<Map<String,Object>> getList1(@Param("page") Page<Map<String, Object>> page);
+    List<Map<String,Object>> getList1(@Param("page") Page<Map<String, Object>> page, Integer company);
 
     List<Map<String,Object>> getList2(@Param("page") Page<Map<String, Object>> page,
-                                      @Param("times") String times);
+                                      @Param("times") String times, Integer company);
 
     List<Map<String,Object>> getTotal(
                                       @Param("times") String times);
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IncomeServiceImpl.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IncomeServiceImpl.java
index b2b2ffc..a04ba65 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IncomeServiceImpl.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/IncomeServiceImpl.java
@@ -7,7 +7,6 @@
 import com.stylefeng.guns.modular.system.service.IIncomeService;
 import org.springframework.stereotype.Service;
 
-import java.time.LocalDateTime;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -49,13 +48,13 @@
     }
 
     @Override
-    public List<Map<String, Object>> getList1(Page<Map<String, Object>> page) {
-        return this.baseMapper.getList1(page);
+    public List<Map<String, Object>> getList1(Page<Map<String, Object>> page, Integer company) {
+        return this.baseMapper.getList1(page, company);
     }
 
     @Override
-    public List<Map<String, Object>> getList2(Page<Map<String, Object>> page, String times) {
-        return this.baseMapper.getList2(page,times);
+    public List<Map<String, Object>> getList2(Page<Map<String, Object>> page, String times, Integer company) {
+        return this.baseMapper.getList2(page,times, company);
     }
 
     @Override
diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java
index f4a5724..790a8b5 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java
@@ -22,6 +22,11 @@
 		props.put("mail.smtp.port", "587");
 	}
 	
+	public static void main(String[] args) throws Exception {
+		send("liuarchy32@gmail.com", "测试", "测试");
+	}
+	
+	
 	/**
 	 * 创建邮件内容
 	 *
@@ -36,10 +41,13 @@
 		Properties props = new Properties();
 		//选择ssl方式
 		gmailssl(props);
+//		qqmailtls(props);
 		
 		final String displayName = "I-GO";//昵称
-		final String username = "i-gotech@i-go.group";// gmail 邮箱
-		final String password = "wpwfkrlvridoayyh";// Google应用专用密码
+		final String username = "noreply@i-go.group";// gmail 邮箱
+		final String password = "fggipafjlcqxjmef";// Google应用专用密码
+//		final String username = "1019712155@qq.com";// qq 邮箱
+//		final String password = "ctuaexczdrembcfd";// 授权码
 		Session session = Session.getInstance(props,
 				new Authenticator() {
 					protected PasswordAuthentication getPasswordAuthentication() {
@@ -90,6 +98,13 @@
 		props.put("mail.smtp.auth", "true");
 	}
 	
+	private static void qqmailtls(Properties props) {
+		props.put("mail.smtp.auth", "true");
+		props.put("mail.smtp.starttls.enable", "true");
+		props.put("mail.smtp.host", "smtp.qq.com");
+		props.put("mail.smtp.port", "587");
+	}
+	
 	public static String getWeek(int language, int i) {
 		String week = "";
 		if (language == 1) {
diff --git a/ManagementIGOTravel/guns-admin/src/main/resources/application-dev.yml b/ManagementIGOTravel/guns-admin/src/main/resources/application-dev.yml
index 9eff51b..81f9224 100644
--- a/ManagementIGOTravel/guns-admin/src/main/resources/application-dev.yml
+++ b/ManagementIGOTravel/guns-admin/src/main/resources/application-dev.yml
@@ -7,8 +7,8 @@
   spring-session-open: false      #是否开启spring session,如果是多机环境需要开启(true/false)
   session-invalidate-time: 1800     #session失效时间(只在单机环境下生效,多机环境在SpringSessionConfig类中配置) 单位:秒
   session-validation-interval: 900  #多久检测一次失效的session(只在单机环境下生效) 单位:秒
-#  file-upload-path: C:\Users\hi\Desktop\ #文件上传目录(不配置的话为java.io.tmpdir目录)
-#  picture-server-address: http://192.168.0.43/resources/  #图片服务器地址
+  #  file-upload-path: C:\Users\hi\Desktop\ #文件上传目录(不配置的话为java.io.tmpdir目录)
+  #  picture-server-address: http://192.168.0.43/resources/  #图片服务器地址
   file-upload-path: C:\Users\Administrator\Desktop\apache-tomcat-8.0.33\webapps\ROOT\upload\ #文件上传目录(不配置的话为java.io.tmpdir目录)
   picture-server-address: http://139.9.249.67:8080/upload/  #图片服务器地址
   rest-url: http://139.9.249.67:8080/rest/    #前端接口调用基础路径
@@ -49,9 +49,9 @@
 
 spring:
   datasource:
-    url: jdbc:mysql://34.35.60.126:3306/igotravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B0
-    username: xiwang
-    password: HjKbXilb9zajmXbl
+    url: jdbc:mysql://34.35.67.173:3306/igotravel?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B0
+    username: root
+    password: _6)S]<vpfvj?N#t2
     db-name: igotravel #用来搜集数据库的所有表
     filters: wall,mergeStat
 
@@ -89,10 +89,10 @@
             clusterCheckinInterval: 10000
             useProperties: false
           threadPool:
-              class: org.quartz.simpl.SimpleThreadPool
-              threadCount: 10
-              threadPriority: 5
-              threadsInheritContextClassLoaderOfInitializingThread: true
+            class: org.quartz.simpl.SimpleThreadPool
+            threadCount: 10
+            threadPriority: 5
+            threadsInheritContextClassLoaderOfInitializingThread: true
       job-store-type: jdbc
 
 ---
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/platform/commission.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/platform/commission.html
index 1ffddb5..0322bef 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/platform/commission.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/platform/commission.html
@@ -83,6 +83,14 @@
                                     <option value="2">未结算</option>
                                 </#SelectCon>
                             </div>
+		                    <div class="col-sm-3">
+			                    <#SelectCon id="company" name="运营商" >
+				                    <option value="">全部</option>
+				                    @for(c in company!){
+				                    <option value="${c.id}">${c.name}</option>
+				                    @}
+			                    </#SelectCon>
+		                    </div>
                             <div class="col-sm-3">
                                 <#button name="查询" icon="fa-search" clickFun="TUser.search()"/>
                                 <#button name="重置" icon="fa-trash" clickFun="TUser.resetSearch()" space="true"/>
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/grant.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/grant.html
index 3dbeb8f..78c2911 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/grant.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/grant.html
@@ -85,6 +85,14 @@
                                     <option value="4">折扣</option>
                                 </#SelectCon>
                             </div>
+		                    <div class="col-sm-3">
+			                    <#SelectCon id="company" name="运营商" >
+				                    <option value="">全部</option>
+				                    @for(c in company!){
+				                    <option value="${c.id}">${c.name}</option>
+				                    @}
+			                    </#SelectCon>
+		                    </div>
                             <div class="col-sm-3">
                                 <#button name="查询" icon="fa-search" clickFun="TUser.search()"/>
                                 <#button name="重置" icon="fa-trash" clickFun="TUser.resetSearch()" space="true"/>
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/use.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/use.html
index 5e5e6c2..7a03b2a 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/use.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/use.html
@@ -89,15 +89,23 @@
                             <div class="col-sm-3">
                                 <#TimeCon id="insertTime" name="时间" isTime="false"/>
                             </div>
-                        <div class="col-sm-3">
-                            <#SelectCon id="type" name="补贴类型" >
-                            <option value="">全部</option>
-                            <option value="1">红包</option>
-                            <option value="2">优惠券</option>
-                            <option value="3">司机奖励</option>
-                            <option value="4">折扣</option>
-                        </#SelectCon>
-                    </div>
+	                        <div class="col-sm-3">
+	                            <#SelectCon id="type" name="补贴类型" >
+		                            <option value="">全部</option>
+		                            <option value="1">红包</option>
+		                            <option value="2">优惠券</option>
+		                            <option value="3">司机奖励</option>
+		                            <option value="4">折扣</option>
+		                        </#SelectCon>
+		                    </div>
+		                    <div class="col-sm-3">
+			                    <#SelectCon id="company" name="运营商" >
+				                    <option value="">全部</option>
+				                    @for(c in company!){
+				                    <option value="${c.id}">${c.name}</option>
+				                    @}
+			                    </#SelectCon>
+		                    </div>
                             <div class="col-sm-3">
                                 <#button name="查询" icon="fa-search" clickFun="TUser.search()"/>
                                 <#button name="重置" icon="fa-trash" clickFun="TUser.resetSearch()" space="true"/>
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tIncome/driverWork.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tIncome/driverWork.html
index fadf431..e51b355 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tIncome/driverWork.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tIncome/driverWork.html
@@ -3,11 +3,25 @@
     <div class="col-sm-12">
         <div class="ibox float-e-margins">
             <div class="ibox-title">
-                <h5>管理</h5>
+                <h5>在线时长统计</h5>
             </div>
             <div class="ibox-content">
                 <div class="row row-lg">
                     <div class="col-sm-12">
+	                    <div class="row">
+		                    <div class="col-sm-3">
+			                    <#SelectCon id="company" name="运营商" >
+				                    <option value="">全部</option>
+				                    @for(c in company!){
+				                    <option value="${c.id}">${c.name}</option>
+				                    @}
+			                    </#SelectCon>
+		                    </div>
+		                    <div class="col-sm-3">
+			                    <#button name="搜索" icon="fa-search" clickFun="TIncome.search()"/>
+			                    <#button name="重置" icon="fa-search" clickFun="TIncome.resetSearch()"/>
+		                    </div>
+	                    </div>
                         <div class="hidden-xs" id="TIncomeTableToolbar" role="group">
                                 <#button name="详情" icon="fa-plus" clickFun="TIncome.detail()"/>
                         </div>
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tIncome/driverWorkDetail.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tIncome/driverWorkDetail.html
index d74c86e..9db7aa3 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tIncome/driverWorkDetail.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tIncome/driverWorkDetail.html
@@ -9,7 +9,8 @@
                 <div class="row row-lg">
                     <div class="col-sm-12">
                         <div class="row">
-                            <input type="hidden" id="times" value="${times}">
+                            <input id="times" type="hidden" value="${times}">
+	                        <input id="company" type="hidden" value="${company}">
                         </div>
                         <#table id="TIncomeTable"/>
                     </div>
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderCrossCity/tOrderCrossCity.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderCrossCity/tOrderCrossCity.html
index 1f54e1a..5adc095 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderCrossCity/tOrderCrossCity.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderCrossCity/tOrderCrossCity.html
@@ -26,7 +26,7 @@
                                 </#SelectCon>
                             </div>
                             <div class="col-sm-3">
-                                <#NameCon id="userName" name="下单用户昵称" />
+                                <#NameCon id="userName" name="下单用户姓名" />
                             </div>
                             <div class="col-sm-3">
                                 <#NameCon id="userPhone" name="下单用户手机" />
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderCrossCity/tOrderCrossCity_detail.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderCrossCity/tOrderCrossCity_detail.html
index ae24a8e..c0a8cf6 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderCrossCity/tOrderCrossCity_detail.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderCrossCity/tOrderCrossCity_detail.html
@@ -17,7 +17,7 @@
 <div class="ibox float-e-margins">
     <div class="ibox-content">
         <div class="form-horizontal">
-            <input type="hidden" id="id" name="id" value="${item.id}">
+            <input id="id" name="id" type="hidden" value="${item.id}">
             <div class="row" style="margin-top: 30px;">
                 <div class="col-sm-4">
                     <h2 class="h3Class" style="font-weight: 700;">订单详情</h2>
@@ -27,8 +27,8 @@
                 <div class="col-sm-6 b-r">
                     <#label id="insertTimeStr" name="下单时间" value="${item.insertTimeStr}"/>
                     <#label id="orderSourceStr" name="订单来源" value="${item.orderSourceStr}"/>
-                    <#label id="userName" name="下单用户昵称" value="${item.userName}"/>
-                    <#label id="passengers" name="乘车用户昵称" value="${item.passengers}"/>
+                    <#label id="userName" name="下单用户姓名" value="${item.userName}"/>
+                    <#label id="passengers" name="乘车用户姓名" value="${item.passengers}"/>
                     <#label id="placementAddress" name="起点" value="${item.startAddress}"/>
                     <#label id="driver" name="接单司机" value="${item.driver}"/>
                     <#label id="car" name="接单车辆" value="${item.car}"/>
@@ -85,10 +85,10 @@
                     <div class="input-card" style="margin-left: 50px;">
                         <h4>轨迹回放控制</h4>
                         <div class="input-item">
-                            <input type="button" class="btn" value="开始动画" id="start" onclick="startAnimation()"/>
-                            <input type="button" class="btn" value="暂停动画" id="pause" onclick="pauseAnimation()"/>
-                            <input type="button" class="btn" value="继续动画" id="resume" onclick="resumeAnimation()"/>
-                            <input type="button" class="btn" value="停止动画" id="stop" onclick="stopAnimation()"/>
+                            <input class="btn" id="start" onclick="startAnimation()" type="button" value="开始动画"/>
+                            <input class="btn" id="pause" onclick="pauseAnimation()" type="button" value="暂停动画"/>
+                            <input class="btn" id="resume" onclick="resumeAnimation()" type="button" value="继续动画"/>
+                            <input class="btn" id="stop" onclick="stopAnimation()" type="button" value="停止动画"/>
                         </div>
                         <div class="input-item">
 
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderLogistics/tOrderLogistics.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderLogistics/tOrderLogistics.html
index 54ef65a..f7d8017 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderLogistics/tOrderLogistics.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderLogistics/tOrderLogistics.html
@@ -32,7 +32,7 @@
                                 </#SelectCon>
                             </div>
                             <div class="col-sm-3">
-                                <#NameCon id="userName" name="下单用户昵称" />
+                                <#NameCon id="userName" name="下单用户姓名" />
                             </div>
                             <div class="col-sm-3">
                                 <#NameCon id="userPhone" name="下单用户手机" />
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderLogistics/tOrderLogistics_detail.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderLogistics/tOrderLogistics_detail.html
index a807869..a09199d 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderLogistics/tOrderLogistics_detail.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderLogistics/tOrderLogistics_detail.html
@@ -11,8 +11,8 @@
                 <div class="col-sm-6 b-r">
                     <#label id="insertTimeStr" name="下单时间" value="${item.insertTimeStr}"/>
                     <#label id="orderSourceStr" name="订单来源" value="${item.orderSourceStr}"/>
-                    <#label id="userName" name="下单用户昵称" value="${item.userName}"/>
-                    <#label id="recipient" name="收货人昵称" value="${item.recipient}"/>
+                    <#label id="userName" name="下单用户姓名" value="${item.userName}"/>
+                    <#label id="recipient" name="收货人姓名" value="${item.recipient}"/>
                     <#label id="startAddress" name="起点" value="${item.startAddress}"/>
                     <#label id="driver" name="接单司机" value="${item.driver}"/>
                     <#label id="companyName" name="订单所属机构" value="${item.companyName}"/>
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderPrivateCar/tOrderPrivateCar.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderPrivateCar/tOrderPrivateCar.html
index 8d042cb..82a66ca 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderPrivateCar/tOrderPrivateCar.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderPrivateCar/tOrderPrivateCar.html
@@ -28,7 +28,7 @@
                                 </#SelectCon>
                             </div>
                             <div class="col-sm-3">
-                                <#NameCon id="userName" name="下单用户昵称" />
+                                <#NameCon id="userName" name="下单用户姓名" />
                             </div>
                             <div class="col-sm-3">
                                 <#NameCon id="userPhone" name="下单用户手机" />
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderPrivateCar/tOrderPrivateCar_orderDetail.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderPrivateCar/tOrderPrivateCar_orderDetail.html
index a5d64ab..997823b 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderPrivateCar/tOrderPrivateCar_orderDetail.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderPrivateCar/tOrderPrivateCar_orderDetail.html
@@ -17,7 +17,7 @@
 <div class="ibox float-e-margins">
     <div class="ibox-content">
         <div class="form-horizontal">
-            <input type="hidden" id="id" name="id" value="${item.id}">
+            <input id="id" name="id" type="hidden" value="${item.id}">
             <div class="row" style="margin-top: 30px;">
                 <div class="col-sm-4">
                     <h2 class="h3Class" style="font-weight: 700;">订单详情</h2>
@@ -27,8 +27,8 @@
                 <div class="col-sm-6 b-r">
                     <#label id="insertTimeStr" name="下单时间" value="${item.insertTimeStr}"/>
                     <!--<#label id="orderSourceStr" name="订单来源" value="${item.orderSourceStr}"/>-->
-                    <#label id="userName" name="下单用户昵称" value="${item.userName}"/>
-                    <#label id="passengers" name="乘车用户昵称" value="${item.passengers}"/>
+                    <#label id="userName" name="下单用户姓名" value="${item.userName}"/>
+                    <#label id="passengers" name="乘车用户姓名" value="${item.passengers}"/>
                     <#label id="placementAddress" name="起点" value="${item.startAddress}"/>
                     <#label id="serverCarModel" name="选择车型" value="${item.serverCarModel}"/>
                     <#label id="car" name="接单车辆" value="${item.car}"/>
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTaxi/tOrderTaxi.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTaxi/tOrderTaxi.html
index fdd15b6..4d768c6 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTaxi/tOrderTaxi.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTaxi/tOrderTaxi.html
@@ -26,7 +26,7 @@
                                 </#SelectCon>
                             </div>
                             <div class="col-sm-3">
-                                <#NameCon id="userName" name="下单用户昵称" />
+                                <#NameCon id="userName" name="下单用户姓名" />
                             </div>
                             <div class="col-sm-3">
                                 <#NameCon id="userPhone" name="下单用户手机" />
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTaxi/tOrderTaxi_edit.html b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTaxi/tOrderTaxi_edit.html
index d871c85..2d28b5c 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTaxi/tOrderTaxi_edit.html
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTaxi/tOrderTaxi_edit.html
@@ -17,7 +17,7 @@
 <div class="ibox float-e-margins">
     <div class="ibox-content">
         <div class="form-horizontal">
-            <input type="hidden" id="id" name="id" value="${item.id}">
+            <input id="id" name="id" type="hidden" value="${item.id}">
             <div class="row" style="margin-top: 30px;">
                 <div class="col-sm-4">
                     <h2 class="h3Class" style="font-weight: 700;">订单详情</h2>
@@ -27,8 +27,8 @@
                 <div class="col-sm-6 b-r">
                     <#label id="insertTimeStr" name="下单时间" value="${item.insertTimeStr}"/>
                     <#label id="orderSourceStr" name="订单来源" value="${item.orderSourceStr}"/>
-                    <#label id="userName" name="下单用户昵称" value="${item.userName}"/>
-                    <#label id="passengers" name="乘车用户昵称" value="${item.passengers}"/>
+                    <#label id="userName" name="下单用户姓名" value="${item.userName}"/>
+                    <#label id="passengers" name="乘车用户姓名" value="${item.passengers}"/>
                     <#label id="placementAddress" name="起点" value="${item.startAddress}"/>
                     <#label id="driver" name="接单司机" value="${item.driver}"/>
                     <#label id="car" name="接单车辆" value="${item.car}"/>
@@ -85,10 +85,10 @@
                     <div class="input-card" style="margin-left: 50px;">
                         <h4>轨迹回放控制</h4>
                         <div class="input-item">
-                            <input type="button" class="btn" value="开始动画" id="start" onclick="startAnimation()"/>
-                            <input type="button" class="btn" value="暂停动画" id="pause" onclick="pauseAnimation()"/>
-                            <input type="button" class="btn" value="继续动画" id="resume" onclick="resumeAnimation()"/>
-                            <input type="button" class="btn" value="停止动画" id="stop" onclick="stopAnimation()"/>
+                            <input class="btn" id="start" onclick="startAnimation()" type="button" value="开始动画"/>
+                            <input class="btn" id="pause" onclick="pauseAnimation()" type="button" value="暂停动画"/>
+                            <input class="btn" id="resume" onclick="resumeAnimation()" type="button" value="继续动画"/>
+                            <input class="btn" id="stop" onclick="stopAnimation()" type="button" value="停止动画"/>
                         </div>
                         <div class="input-item">
 
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/platform/platform.js b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/platform/platform.js
index 7e6839f..cc79001 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/platform/platform.js
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/platform/platform.js
@@ -204,6 +204,7 @@
     ajax.set("time",1);
     ajax.set("insertTime",null);
     ajax.set("state",null);
+    ajax.set('company', null);
     ajax.start();
 }
 // 点击搜索
@@ -222,6 +223,7 @@
     ajax.set("time",$("#time").val());
     ajax.set("insertTime",$("#insertTime").val());
     ajax.set("state",$("#state").val());
+    ajax.set('company', $("#company").val());
     ajax.start();
 }
 /**
@@ -232,6 +234,7 @@
     queryData['time'] = $("#time").val();
     queryData['insertTime'] = $("#insertTime").val();
     queryData['state'] = $("#state").val();
+    queryData['company'] = $("#company").val();
     TUser.table.refresh({query: queryData});
     TUser.getCount();
 };
@@ -239,6 +242,7 @@
     $("#time").val("1");
     $("#insertTime").val("");
     $("#state").val("");
+    $("#company").val("");
     TUser.search();
 };
 
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/grant.js b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/grant.js
index aff89ee..9e9c9c0 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/grant.js
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/grant.js
@@ -180,6 +180,7 @@
     ajax.set("time",1);
     ajax.set("insertTime",null);
     ajax.set("type",null);
+    ajax.set('company', null);
     ajax.start();
 }
 // 点击搜索
@@ -198,6 +199,7 @@
     ajax.set("time",$("#time").val());
     ajax.set("insertTime",$("#insertTime").val());
     ajax.set("type",$("#type").val());
+    ajax.set('company', $("#company").val());
     ajax.start();
 }
 /**
@@ -208,6 +210,7 @@
     queryData['time'] = $("#time").val();
     queryData['insertTime'] = $("#insertTime").val();
     queryData['type'] = $("#type").val();
+    queryData['company'] = $("#company").val();
     TUser.table.refresh({query: queryData});
     TUser.getCount();
 };
@@ -215,6 +218,7 @@
     $("#time").val("1");
     $("#insertTime").val("");
     $("#type").val("");
+    $("#company").val("");
     TUser.search();
     TUser.getCount1();
 };
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/use.js b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/use.js
index 4b0a6e3..0a4b736 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/use.js
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/use.js
@@ -182,6 +182,7 @@
     ajax.set("time",1);
     ajax.set("insertTime",null);
     ajax.set("type",null);
+    ajax.set('company', null);
     ajax.start();
 }
 // 点击搜索
@@ -202,6 +203,7 @@
     ajax.set("time",$("#time").val());
     ajax.set("insertTime",$("#insertTime").val());
     ajax.set("type",$("#type").val());
+    ajax.set('company', $("#company").val());
     ajax.start();
 }
 /**
@@ -212,6 +214,7 @@
     queryData['time'] = $("#time").val();
     queryData['insertTime'] = $("#insertTime").val();
     queryData['type'] = $("#type").val();
+    queryData['company'] = $("#company").val();
     TUser.table.refresh({query: queryData});
     TUser.getCount();
 };
@@ -219,6 +222,7 @@
     $("#time").val("1");
     $("#insertTime").val("");
     $("#type").val("");
+    $("#company").val("");
     TUser.search();
 };
 
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/tIncome/driverWork.js b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/tIncome/driverWork.js
index eddbceb..aaa7a27 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/tIncome/driverWork.js
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/tIncome/driverWork.js
@@ -60,7 +60,7 @@
             area: ['800px', '420px'], //宽高
             fix: false, //不固定
             maxmin: true,
-            content: Feng.ctxPath + '/tIncome/driverWorkDetail?times=' + TIncome.seItem.times
+            content: Feng.ctxPath + '/tIncome/driverWorkDetail?times=' + TIncome.seItem.times + "&company=" + $("#company").val()
         });
         this.layerIndex = index;
     }
@@ -90,10 +90,15 @@
  */
 TIncome.search = function () {
     var queryData = {};
-    queryData['id'] = $("#id").val();
+    queryData['company'] = $("#company").val();
     TIncome.table.refresh({query: queryData});
 };
 
+TIncome.resetSearch = function () {
+    $("#company").val("");
+    TIncome.search();
+};
+
 $(function () {
     var defaultColunms = TIncome.initColumn();
     var table = new BSTable(TIncome.id, "/tIncome/driverWorkList", defaultColunms);
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/tIncome/driverWorkDetail.js b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/tIncome/driverWorkDetail.js
index 1742adb..5d20a0d 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/tIncome/driverWorkDetail.js
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/tIncome/driverWorkDetail.js
@@ -99,6 +99,7 @@
     table.setPaginationType("server");
     var queryData = {};
     queryData['times'] = $("#times").val();
+    queryData['company'] = $("#company").val();
     table.setQueryParams(queryData);
     TIncome.table = table.init();
 });
diff --git a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/userActivity/userActivity.js b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/userActivity/userActivity.js
index c358b41..e147f72 100644
--- a/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/userActivity/userActivity.js
+++ b/ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/userActivity/userActivity.js
@@ -73,7 +73,7 @@
 		} else if (type == 1 && selected[0].status != 1) {
 			Feng.info("当前状态不能审核!");
 			return false;
-		} else if (type == 2 && ((selected[0].status != 1 && selected[0].status != 2) || new Date() >= new Date(selected[0].startTime.replace(/-/g, "/")))) {
+		} else if (type == 2 && ((selected[0].status != 1 && selected[0].status != 2 && selected[0].status != 5 && selected[0].status != 7) || new Date() >= new Date(selected[0].startTime.replace(/-/g, "/")))) {
 			Feng.info("当前状态不能编辑!");
 			return false;
 		}
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java
index 7be7757..cc7d3f4 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/config/web/ShiroConfig.java
@@ -102,7 +102,7 @@
     @Bean
     public CookieRememberMeManager rememberMeManager(SimpleCookie rememberMeCookie) {
         CookieRememberMeManager manager = new CookieRememberMeManager();
-        manager.setCipherKey(Base64.decode("Z3VucwAAAAAAAAAAAAAAAA=="));
+        manager.setCipherKey(Base64.decode("1IuXNg73B4lqGJsB"));
         manager.setCookie(rememberMeCookie);
         return manager;
     }
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
index 5a6b32d..188670a 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -757,8 +757,7 @@
             }
     
             orderLogistics.setDriverId(driverId);
-            orderLogistics.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                    driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+            orderLogistics.setCompanyId(driver.getCompanyId());
             orderLogistics.setState(2);
             orderLogistics.setCarId(driver.getCarId());
             CarService query1 = carServiceMapper.query(1, driver.getCarId());
@@ -969,8 +968,7 @@
                             .eq("state", 1).like("type", "4"));
                     if(driver1.getState() == 2 || null != driverWork){
                         orderLogistics.setDriverId(dr.getId());
-                        orderLogistics.setCompanyId(dr.getFranchiseeId() != null && dr.getFranchiseeId() != 0 ? dr.getFranchiseeId() : (
-                                dr.getCompanyId() != null && dr.getCompanyId() != 0 ? dr.getCompanyId() : 1));
+                        orderLogistics.setCompanyId(dr.getCompanyId());
                         orderLogistics.setState(2);
                         orderLogistics.setCarId(dr.getCarId());
                         CarService query1 = carServiceMapper.query(4, dr.getCarId());
@@ -1133,7 +1131,7 @@
             if(userCouponRecord.getCouponType() == 2 && orderMoney.compareTo(new BigDecimal(userCouponRecord.getFullMoney())) < 0){
                 return ResultUtil.error(language == 1 ? "优惠券不能用于此订单" : language == 2 ? "Coupon cannot be used for this order." : "Le coupon ne peut pas être utilisé pour cette commande.", "");
             }
-            orderMoney = orderMoney.subtract(new BigDecimal(userCouponRecord.getMoney())).setScale(2, RoundingMode.HALF_EVEN);
+            orderMoney = orderMoney.subtract(new BigDecimal(userCouponRecord.getMoney()));
             orderLogistics.setCouponMoney(userCouponRecord.getMoney());
             orderLogistics.setCouponId(couponId);
         }
@@ -1149,7 +1147,7 @@
                 BigDecimal multiply1 = orderMoney.multiply(deductionRatio.divide(new BigDecimal(100))).setScale(2, RoundingMode.HALF_EVEN);
                 if(total > 0 && multiply1.doubleValue() > 0 && total.compareTo(multiply1.doubleValue()) >= 0){
                     orderLogistics.setRedPacketMoney(multiply1.doubleValue());
-                    orderMoney = orderMoney.subtract(multiply1).setScale(2, RoundingMode.HALF_EVEN);
+                    orderMoney = orderMoney.subtract(multiply1);
                 
                     //获取红包id
                     JSONArray jsonArray = new JSONArray();
@@ -1180,7 +1178,7 @@
                     orderLogistics.setRedPacketId(jsonArray.toJSONString());
                 }else if(total > 0 && total.compareTo(multiply1.doubleValue()) < 0){
                     orderLogistics.setRedPacketMoney(total);
-                    orderMoney = orderMoney.subtract(new BigDecimal(total)).setScale(2, RoundingMode.HALF_EVEN);
+                    orderMoney = orderMoney.subtract(new BigDecimal(total));
                     //获取红包id
                     JSONArray jsonArray = new JSONArray();
                     for (UserRedPacketRecord userRedPacketRecord : userRedPacketRecords) {
@@ -1359,7 +1357,7 @@
                             }
     
                             Double aDouble1 = new BigDecimal(orderLogistics.getMileage()).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
-                            Long serviceTime = new BigDecimal(orderLogistics.getEndServiceTime().getTime() - orderLogistics.getStartServiceTime().getTime()).divide(new BigDecimal(60000)).setScale(0, RoundingMode.HALF_EVEN).longValue();
+                            Long serviceTime = new BigDecimal(orderLogistics.getEndServiceTime().getTime() - orderLogistics.getStartServiceTime().getTime()).divide(new BigDecimal(60000), 0, RoundingMode.HALF_EVEN).setScale(0, RoundingMode.HALF_EVEN).longValue();
                             if(1 == finalLanguage1){
                                 document.getElementById("english").remove();
                                 document.getElementById("french").remove();
@@ -2004,7 +2002,7 @@
                                 aDouble = orderEvaluateService.queryDriverScore(orderLogistics.getDriverId());
                             }
                             Double aDouble1 = new BigDecimal(orderLogistics.getMileage()).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
-                            Long serviceTime = new BigDecimal(orderLogistics.getEndServiceTime().getTime() - orderLogistics.getStartServiceTime().getTime()).divide(new BigDecimal(60000)).setScale(0, RoundingMode.HALF_EVEN).longValue();
+                            Long serviceTime = new BigDecimal(orderLogistics.getEndServiceTime().getTime() - orderLogistics.getStartServiceTime().getTime()).divide(new BigDecimal(60000), 0, RoundingMode.HALF_EVEN).setScale(0, RoundingMode.HALF_EVEN).longValue();
                             if(1 == finalLanguage){
                                 document.getElementById("english").remove();
                                 document.getElementById("french").remove();
@@ -2660,7 +2658,7 @@
                     aDouble = orderEvaluateService.queryDriverScore(orderLogistics.getDriverId());
                 }
                 Double aDouble1 = new BigDecimal(orderLogistics.getMileage()).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
-                Long serviceTime = new BigDecimal(orderLogistics.getEndServiceTime().getTime() - orderLogistics.getStartServiceTime().getTime()).divide(new BigDecimal(60000)).setScale(0, RoundingMode.HALF_EVEN).longValue();
+                Long serviceTime = new BigDecimal(orderLogistics.getEndServiceTime().getTime() - orderLogistics.getStartServiceTime().getTime()).divide(new BigDecimal(60000), 0, RoundingMode.HALF_EVEN).setScale(0, RoundingMode.HALF_EVEN).longValue();
                 if(1 == language){
                     document.getElementById("english").remove();
                     document.getElementById("french").remove();
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
index bd8cfd1..5cd66b3 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -351,8 +351,7 @@
             }
 
             orderPrivateCar.setDriverId(driverId);
-            orderPrivateCar.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                    driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+            orderPrivateCar.setCompanyId(driver.getCompanyId());
             orderPrivateCar.setState(2);
             orderPrivateCar.setCarId(driver.getCarId());
             CarService query1 = carServiceMapper.query(1, driver.getCarId());
@@ -568,8 +567,7 @@
                             .eq("state", 1).like("type", "1"));
                     if(driver.getState() == 2 && null != driverWork){
                         orderPrivateCar.setDriverId(dr.getId());
-                        orderPrivateCar.setCompanyId(dr.getFranchiseeId() != null && dr.getFranchiseeId() != 0 ? dr.getFranchiseeId() : (
-                                dr.getCompanyId() != null && dr.getCompanyId() != 0 ? dr.getCompanyId() : 1));
+                        orderPrivateCar.setCompanyId(dr.getCompanyId());
                         orderPrivateCar.setState(2);
                         orderPrivateCar.setCarId(dr.getCarId());
                         CarService query1 = carServiceMapper.query(1, dr.getCarId());
@@ -1345,7 +1343,7 @@
             if(userCouponRecord.getCouponType() == 2 && orderMoney.compareTo(new BigDecimal(userCouponRecord.getFullMoney())) < 0){
                 return ResultUtil.error(language == 1 ? "优惠券不能用于此订单" : language == 2 ? "Coupon cannot be used for this order." : "Le coupon ne peut pas être utilisé pour cette commande.", "");
             }
-            orderMoney = orderMoney.subtract(new BigDecimal(userCouponRecord.getMoney())).setScale(2, RoundingMode.HALF_EVEN);
+            orderMoney = orderMoney.subtract(new BigDecimal(userCouponRecord.getMoney()));
             orderPrivateCar.setCouponMoney(userCouponRecord.getMoney());
             orderPrivateCar.setCouponId(couponId);
         }
@@ -1361,7 +1359,7 @@
                 BigDecimal multiply1 = orderMoney.multiply(deductionRatio.divide(new BigDecimal(100))).setScale(2, RoundingMode.HALF_EVEN);
                 if(total > 0 && multiply1.doubleValue() > 0 && total.compareTo(multiply1.doubleValue()) >= 0){
                     orderPrivateCar.setRedPacketMoney(multiply1.doubleValue());
-                    orderMoney = orderMoney.subtract(multiply1).setScale(2, RoundingMode.HALF_EVEN);
+                    orderMoney = orderMoney.subtract(multiply1);
                 
                     //获取红包id
                     JSONArray jsonArray = new JSONArray();
@@ -1391,7 +1389,7 @@
                     orderPrivateCar.setRedPacketId(jsonArray.toJSONString());
                 }else if(total > 0 && total.compareTo(multiply1.doubleValue()) < 0){
                     orderPrivateCar.setRedPacketMoney(total);
-                    orderMoney = orderMoney.subtract(new BigDecimal(total)).setScale(2, RoundingMode.HALF_EVEN);
+                    orderMoney = orderMoney.subtract(new BigDecimal(total));
                     //获取红包id
                     JSONArray jsonArray = new JSONArray();
                     for (UserRedPacketRecord userRedPacketRecord : userRedPacketRecords) {
@@ -1530,7 +1528,7 @@
                                 aDouble = orderEvaluateService.queryDriverScore(orderPrivateCar.getDriverId());
                             }
                             Double aDouble1 = new BigDecimal(orderPrivateCar.getMileage()).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
-                            Long serviceTime = new BigDecimal(orderPrivateCar.getEndServiceTime().getTime() - orderPrivateCar.getStartServiceTime().getTime()).divide(new BigDecimal(60000)).setScale(0, RoundingMode.HALF_EVEN).longValue();
+                            Long serviceTime = new BigDecimal(orderPrivateCar.getEndServiceTime().getTime() - orderPrivateCar.getStartServiceTime().getTime()).divide(new BigDecimal(60000), 0, RoundingMode.HALF_EVEN).setScale(0, RoundingMode.HALF_EVEN).longValue();
                             if(1 == language){
                                 document.getElementById("english").remove();
                                 document.getElementById("french").remove();
@@ -2121,7 +2119,7 @@
                                 aDouble = orderEvaluateService.queryDriverScore(orderPrivateCar.getDriverId());
                             }
                             Double aDouble1 = new BigDecimal(orderPrivateCar.getMileage()).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
-                            Long serviceTime = new BigDecimal(orderPrivateCar.getEndServiceTime().getTime() - orderPrivateCar.getStartServiceTime().getTime()).divide(new BigDecimal(60000)).setScale(0, RoundingMode.HALF_EVEN).longValue();
+                            Long serviceTime = new BigDecimal(orderPrivateCar.getEndServiceTime().getTime() - orderPrivateCar.getStartServiceTime().getTime()).divide(new BigDecimal(60000), 0, RoundingMode.HALF_EVEN).setScale(0, RoundingMode.HALF_EVEN).longValue();
                             Driver driver = driverService.selectById(orderPrivateCar.getDriverId());
                             if(1 == language){
                                 document.getElementById("english").remove();
@@ -2854,7 +2852,7 @@
                                 aDouble = orderEvaluateService.queryDriverScore(orderPrivateCar.getDriverId());
                             }
                             Double aDouble1 = new BigDecimal(orderPrivateCar.getMileage()).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
-                            Long serviceTime = new BigDecimal(orderPrivateCar.getEndServiceTime().getTime() - orderPrivateCar.getStartServiceTime().getTime()).divide(new BigDecimal(60000)).setScale(0, RoundingMode.HALF_EVEN).longValue();
+                            Long serviceTime = new BigDecimal(orderPrivateCar.getEndServiceTime().getTime() - orderPrivateCar.getStartServiceTime().getTime()).divide(new BigDecimal(60000), 0, RoundingMode.HALF_EVEN).setScale(0, RoundingMode.HALF_EVEN).longValue();
                             if(1 == language){
                                 document.getElementById("english").remove();
                                 document.getElementById("french").remove();
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml
index 858805f..e73e306 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CarMapper.xml
@@ -36,7 +36,7 @@
         where a.state = 1
         <choose>
             <when test="companyId != 1">
-                and  a.companyId = #{companyId} or a.franchiseeId = #{companyId}
+                and  a.companyId = #{companyId}
             </when>
             <otherwise>
                 and a.isPlatCar = 1
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml
index 62b2bd0..9e3b0cd 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml
@@ -90,10 +90,10 @@
         <if test="null != companyId">
             <choose>
                 <when test="companyId != 1">
-                    and companyId = #{companyId} or franchiseeId = #{companyId}
+                    and companyId = #{companyId}
                 </when>
                 <otherwise>
-                    and companyId is null or companyId = 0 or companyId = 1 or franchiseeId is null or franchiseeId = 0
+                    and companyId is null or companyId = 0 or companyId = 1
                 </otherwise>
             </choose>
 
@@ -117,10 +117,10 @@
         <if test="null != companyId">
             <choose>
                 <when test="companyId != 1">
-                    and companyId = #{companyId} or franchiseeId = #{companyId}
+                    and companyId = #{companyId}
                 </when>
                 <otherwise>
-                    and companyId is null or companyId = 0 or companyId = 1 or franchiseeId is null or franchiseeId = 0
+                    and companyId is null or companyId = 0 or companyId = 1
                 </otherwise>
             </choose>
 
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
index 9e42453..2e753be 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
@@ -673,104 +673,106 @@
                         driverActivityHistory.setCompletionTime(new Date());
                         driverActivityHistoryMapper.updateById(driverActivityHistory);
                     }
-                    driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
-                    driver.setLaveActivityMoney(bigDecimal.add(new BigDecimal(driver.getLaveActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
-                    driver.setBalance(bigDecimal.add(new BigDecimal(driver.getBalance())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
-                    driverMapper.updateById(driver);
-
-                    if(ToolUtil.isNotEmpty(driver.getEmail())){
-                        BigDecimal finalBigDecimal = bigDecimal;
-                        new Thread(new Runnable() {
-                            @Override
-                            public void run() {
-                                try {
-                                    String path1 = templatePath + "driver/index.html";
-                                    Document document1 = Jsoup.parse(new File(path1), "UTF-8");
-                                    if(1 == language){
-                                        document1.getElementById("english").remove();
-                                        document1.getElementById("french").remove();
-                                        document1.getElementById("invite").remove();
-                                        document1.getElementById("settle").remove();
-                                        document1.getElementById("pass").remove();
-                                        document1.getElementById("bill").remove();
-                                        document1.getElementById("reward").remove();
-                                        document1.getElementById("rewardToday").remove();
-            
-                                        document1.getElementsByTag("title").get(0).text("司机奖励通知");
-                                        Element user_user = document1.getElementById("user_user");
-                                        user_user.text("您好 " + driver.getFirstName() + " " + driver.getLastName() + ",");
-                                        Element user_content = document1.getElementById("user_content");
-                                        user_content.text("您已成功邀请一位用户注册I-GO,获得奖励GHS " + finalBigDecimal.doubleValue() + ",请查收");
+                    if(bigDecimal.compareTo(BigDecimal.ZERO) > 0){
+                        driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                        driver.setLaveActivityMoney(bigDecimal.add(new BigDecimal(driver.getLaveActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                        driver.setBalance(bigDecimal.add(new BigDecimal(driver.getBalance())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                        driverMapper.updateById(driver);
+    
+                        if(ToolUtil.isNotEmpty(driver.getEmail())){
+                            BigDecimal finalBigDecimal = bigDecimal;
+                            new Thread(new Runnable() {
+                                @Override
+                                public void run() {
+                                    try {
+                                        String path1 = templatePath + "driver/index.html";
+                                        Document document1 = Jsoup.parse(new File(path1), "UTF-8");
+                                        if(1 == language){
+                                            document1.getElementById("english").remove();
+                                            document1.getElementById("french").remove();
+                                            document1.getElementById("invite").remove();
+                                            document1.getElementById("settle").remove();
+                                            document1.getElementById("pass").remove();
+                                            document1.getElementById("bill").remove();
+                                            document1.getElementById("reward").remove();
+                                            document1.getElementById("rewardToday").remove();
+                        
+                                            document1.getElementsByTag("title").get(0).text("司机奖励通知");
+                                            Element user_user = document1.getElementById("user_user");
+                                            user_user.text("您好 " + driver.getFirstName() + " " + driver.getLastName() + ",");
+                                            Element user_content = document1.getElementById("user_content");
+                                            user_content.text("您已成功邀请一位用户注册I-GO,获得奖励GHS " + finalBigDecimal.doubleValue() + ",请查收");
+                                        }
+                                        if(2 == language){
+                                            document1.getElementById("chinese").remove();
+                                            document1.getElementById("french").remove();
+                                            document1.getElementById("invite1").remove();
+                                            document1.getElementById("settle1").remove();
+                                            document1.getElementById("pass1").remove();
+                                            document1.getElementById("bill1").remove();
+                                            document1.getElementById("reward1").remove();
+                                            document1.getElementById("rewardToday1").remove();
+                        
+                                            document1.getElementsByTag("title").get(0).text("Reward-driver notice");
+                                            Element user1_user = document1.getElementById("user1_user");
+                                            user1_user.text("Hello " + driver.getFirstName() + " " + driver.getLastName() + ",");
+                                            Element user1_content = document1.getElementById("user1_content");
+                                            user1_content.text("You have succeeded to invite a rider to register with I-GO, so you received a GHS " + finalBigDecimal.doubleValue() + " bonus, please check your balance.");
+                                        }
+                                        if(3 == language){
+                                            document1.getElementById("chinese").remove();
+                                            document1.getElementById("english").remove();
+                                            document1.getElementById("invite1").remove();
+                                            document1.getElementById("settle1").remove();
+                                            document1.getElementById("pass1").remove();
+                                            document1.getElementById("bill1").remove();
+                                            document1.getElementById("reward1").remove();
+                                            document1.getElementById("rewardToday1").remove();
+                        
+                                            document1.getElementsByTag("title").get(0).text("Avis de chauffeur de récompense");
+                                            Element user2_user = document1.getElementById("user2_user");
+                                            user2_user.text("Bonjour " + driver.getFirstName() + " " + driver.getLastName() + ",");
+                                            Element user2_content = document1.getElementById("user2_content");
+                                            user2_content.text("Vous avez invité avec succès un utilisateur à s’inscrire à i-go pour recevoir une récompense GHS " + finalBigDecimal.doubleValue() + ". Veuillez vérifier");
+                                        }
+                                        EmailUtil.send(driver.getEmail(), language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense",  document1.html());
+                                        //开始生成pdf收据和html收据
+                                        File file = new File("/home/igotechgh/nginx/html/files/html/");
+                                        if(!file.exists()){
+                                            file.mkdirs();
+                                        }
+                                        String randomString = ToolUtil.getRandomString(10);
+                                        file = new File("/home/igotechgh/nginx/html/files/html/invitation_" + randomString + ".html");
+                                        if(!file.exists()){
+                                            file.createNewFile();
+                                        }
+                                        FileWriter fileWriter = new FileWriter(file);
+                                        fileWriter.write(document1.html());
+                                        fileWriter.flush();
+                                        fileWriter.close();
+                    
+                                        String link ="https://igo.i-go.group/files/html/invitation_" + randomString + ".html";
+                                        TEmail tEmail = new TEmail();
+                                        tEmail.setLink(link);
+                                        tEmail.setUserId(driver.getId());
+                                        tEmail.setType(2);
+                                        tEmail.setName(language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense");
+                                        tEmail.setCreateTime(new Date());
+                                        int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
+                                        tEmail.setWeek(EmailUtil.getWeek(language,i));
+                                        boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
+                                        if(am){
+                                            tEmail.setAmOrPm(language==1?"上午":language==2?"morning":"matin");
+                                        }else {
+                                            tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
+                                        }
+                                        emailService.insert(tEmail);
+                                    }catch (Exception e){
+                                        e.printStackTrace();
                                     }
-                                    if(2 == language){
-                                        document1.getElementById("chinese").remove();
-                                        document1.getElementById("french").remove();
-                                        document1.getElementById("invite1").remove();
-                                        document1.getElementById("settle1").remove();
-                                        document1.getElementById("pass1").remove();
-                                        document1.getElementById("bill1").remove();
-                                        document1.getElementById("reward1").remove();
-                                        document1.getElementById("rewardToday1").remove();
-            
-                                        document1.getElementsByTag("title").get(0).text("Reward-driver notice");
-                                        Element user1_user = document1.getElementById("user1_user");
-                                        user1_user.text("Hello " + driver.getFirstName() + " " + driver.getLastName() + ",");
-                                        Element user1_content = document1.getElementById("user1_content");
-                                        user1_content.text("You have succeeded to invite a rider to register with I-GO, so you received a GHS " + finalBigDecimal.doubleValue() + " bonus, please check your balance.");
-                                    }
-                                    if(3 == language){
-                                        document1.getElementById("chinese").remove();
-                                        document1.getElementById("english").remove();
-                                        document1.getElementById("invite1").remove();
-                                        document1.getElementById("settle1").remove();
-                                        document1.getElementById("pass1").remove();
-                                        document1.getElementById("bill1").remove();
-                                        document1.getElementById("reward1").remove();
-                                        document1.getElementById("rewardToday1").remove();
-            
-                                        document1.getElementsByTag("title").get(0).text("Avis de chauffeur de récompense");
-                                        Element user2_user = document1.getElementById("user2_user");
-                                        user2_user.text("Bonjour " + driver.getFirstName() + " " + driver.getLastName() + ",");
-                                        Element user2_content = document1.getElementById("user2_content");
-                                        user2_content.text("Vous avez invité avec succès un utilisateur à s’inscrire à i-go pour recevoir une récompense GHS " + finalBigDecimal.doubleValue() + ". Veuillez vérifier");
-                                    }
-                                    EmailUtil.send(driver.getEmail(), language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense",  document1.html());
-                                    //开始生成pdf收据和html收据
-                                    File file = new File("/home/igotechgh/nginx/html/files/html/");
-                                    if(!file.exists()){
-                                        file.mkdirs();
-                                    }
-                                    String randomString = ToolUtil.getRandomString(10);
-                                    file = new File("/home/igotechgh/nginx/html/files/html/invitation_" + randomString + ".html");
-                                    if(!file.exists()){
-                                        file.createNewFile();
-                                    }
-                                    FileWriter fileWriter = new FileWriter(file);
-                                    fileWriter.write(document1.html());
-                                    fileWriter.flush();
-                                    fileWriter.close();
-        
-                                    String link ="https://igo.i-go.group/files/html/invitation_" + randomString + ".html";
-                                    TEmail tEmail = new TEmail();
-                                    tEmail.setLink(link);
-                                    tEmail.setUserId(driver.getId());
-                                    tEmail.setType(2);
-                                    tEmail.setName(language == 1 ? "司机奖励通知" : language == 2 ? "Reward-driver notice" : "Avis de chauffeur de récompense");
-                                    tEmail.setCreateTime(new Date());
-                                    int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1;
-                                    tEmail.setWeek(EmailUtil.getWeek(language,i));
-                                    boolean am = cn.hutool.core.date.DateUtil.isAM(new Date());
-                                    if(am){
-                                        tEmail.setAmOrPm(language==1?"上午":language==2?"morning":"matin");
-                                    }else {
-                                        tEmail.setAmOrPm(language==1?"下午":language==2?"afternoon":"après-midi");
-                                    }
-                                    emailService.insert(tEmail);
-                                }catch (Exception e){
-                                    e.printStackTrace();
                                 }
-                            }
-                        }).start();
+                            }).start();
+                        }
                     }
                 }
 
@@ -1002,15 +1004,32 @@
                     phone=json.getString("phoneNumber");
                 }
             }
-            if(null!=userInfo && !openid.equals(userInfo.getAppletsOpenId())){
+            if(null != userInfo && ToolUtil.isEmpty(userInfo.getPhone())){
+                String result= weChatUtil.decrypt1(encryptedData,map.get("sessionKey"),iv);
+                JSONObject json=JSONObject.parseObject(result);
+    
+                if (!ToolUtil.isEmpty(result) && result.length()>0) {
+                    UserInfo userInfo1 = userInfoMapper.queryByPhone(json.getString("phoneNumber"));
+                    phone=json.getString("phoneNumber");
+                    //删除新注册的数据,将小程序标识合并到就数据上
+                    if(null != userInfo1){
+                        userInfo.setFlag(2);
+                        userInfoMapper.updateById(userInfo);
+                        userInfo = userInfo1;
+                    }
+                }
+            }
+            
+            if(null != userInfo && ToolUtil.isEmpty(userInfo.getAppletsOpenId())){
                 userInfo.setAppletsOpenId(openid);
                 userInfo.setUnionid(unionid);
                 userInfo.setNickName(ToolUtil.isNotEmpty(nickName) ? nickName : this.getDefaultName());
                 userInfo.setAvatar(avatar);
                 userInfoMapper.updateById(userInfo);
             }
-
-
+            if(null != userInfo && ToolUtil.isNotEmpty(userInfo.getAppletsOpenId()) && !openid.equals(userInfo.getAppletsOpenId())){
+                return ResultUtil.error(language == 1 ? "手机号已被注册" : language == 2 ? "The mobile phone number has been registered" : "Le numéro de téléphone portable a été enregistré");
+            }
         }else{//APP
             userInfo = userInfoMapper.queryByOpenid(openid);
         }
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java
index 285cbd6..70f5b12 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java
@@ -53,8 +53,8 @@
         gmailssl(props);
     
         final String displayName = "I-GO";//昵称
-        final String username = "i-gotech@i-go.group";// gmail 邮箱
-        final String password = "wpwfkrlvridoayyh";// Google应用专用密码
+        final String username = "noreply@i-go.group";// gmail 邮箱
+        final String password = "fggipafjlcqxjmef";// Google应用专用密码
         Session session = Session.getInstance(props,
                 new Authenticator() {
                     protected PasswordAuthentication getPasswordAuthentication() {
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ICBCPayUtil.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ICBCPayUtil.java
deleted file mode 100644
index e1f373b..0000000
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/ICBCPayUtil.java
+++ /dev/null
@@ -1,659 +0,0 @@
-/*
-package com.stylefeng.guns.modular.system.util;
-
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
-import com.icbc.api.DefaultIcbcClient;
-import com.icbc.api.IcbcApiException;
-import com.icbc.api.IcbcConstants;
-import com.icbc.api.request.*;
-import com.icbc.api.response.*;
-import com.icbc.api.utils.IcbcSignature;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-import org.springframework.web.client.RestTemplate;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.io.PrintWriter;
-import java.math.BigDecimal;
-import java.net.Inet4Address;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.text.SimpleDateFormat;
-import java.util.*;
-
-*/
-/**
- * 工商银行支付工具类
- *//*
-
-@Component
-public class ICBCPayUtil {
-
-    private String app_id = "10000000000003159405";
-
-    private String privateKey = "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCBnf5bNOMF106sxlN6reQKs4wvUpnvRxXxFCzm13Bz70V6Oldx0EF4mFw/LCXMxwftGEanzjXOwDdk9apVeIYjedb8jsBjgwlREVLmpe3kFo65DedEao3MykpoXrm9kt8FPuxLAkTbfFuqim9f+nruXP1DA7cLt3N4PEzsfDA/WG4wXJgqWkHJaDbzcJOEX7pNZXWtTjoMznKufELsUEf3sdX+9/anIyObmq2+kv2w8H5RcRxBY+2M4K8Hd3Zf9u2Ffvr/phOsUB14XLrjfdXeWbZzHtHfGlfIQf5EK9HySEcaQHMHluEQSkriHdW7dlanIzzLY9M0lH+2Ok9j3Yp5AgMBAAECggEAVnHEfZecAP1DXz811Y+7kteEGtuABnDmVU4bVClCuk9NiuL2BtXZlFAo1Yjf/N6QjrOuC6Qfhq/zQcYFv9MNwwMzOmUKMlPmFsby/xiSu5e/v/Nh1eMqhvYzAcCLJ7+YNattc+kjey5JBEgnV196NRaXYeZMYegLfpjYxK9ejh+85kxp9ElXxZsSwrgzvICtyZ0Bl2ZD28kXr9/89dNIQX5sWRBN/dpxj99Ctz3JtlaMhxdnZ3cZKLeIAIAYFtqw5lSqeL7/7a6LPGpNa0kA+8KvHNEAnkpcEFg427k7h7nerFl2PQV/y5LuRLbUMZkdaIoo25Sh90xhtwfGCTAkcQKBgQC71mNkQL5HPYJbRirG3CjbLRAubztzlqtTSE/RZnPNiIinwACWZVHQ7Ob2+WLaIEOqIq6h1zWyYFO+peFNfCbcdZTfQHxiYfmzrY7ZlBtRJM3ez20RQ85TJvej08HjTM4vVKXt9DDqlBu4IATcmNlJqgBKeNXsDYORTNqTZlrocwKBgQCwpxdmd2yhRIrWXx9K4lZYfpGEUUMKrCI2SGX0bdiNtgn2p2HK3cDVO/gh8Iz6tKLI53HS3OTTsVZq1xoUm3M+27sPUk6KiUBQqOsDmYVayKjOY2IciwU0SmS/9C9ptYpchUrZSR7mejKvk7QKBkH3utBUnfYCQmqhyAnjHBhCYwKBgHBVxNc+CQ3d8UnY6thG7oA1sQm0KB/2qbuC8YlP9k2jK+b24uMO8SE7rN1jRAUjapQjbcEITerBxROtbNLEPxF1mHTzwe+snIMidt4Uv0mF80EfWCENJiWAlnV5vOjNFDomK53lfiOsM++n5oBvQPPXIZloLrefVWHeTpH8kr2VAoGAbB+JqhT0r2yVkgqcy6fnc7jcdmGKqFCdjB4aEVbekjZWuNrQd2vtaFaRVKy4jYbckB1hRNAhWxUTMMfB1dUj39h8ES+ulQrXC8eoOQbRYbSp5dFcrt3EbLIQIpFiJ9CPBHwtSPuBZ05qEZ9VNkGIRQnaE8CvX8ipHaajrpd2ncMCgYAdjW2LFmc+K9tai8idbhEu1uzez+HPT8PgE5iy6ZE8gxQvzUdHaqgO+OgNhWEY+QJOEyM0YJuidaN9qiTiWJHs04/03qAy1wCZCYhvHuRMh1mPvqdA9ybUmG/K0bMqkqS9B2GxKQPtlnmeUG/pXjQ12U8WrS2ayjDoHBtimuxkIQ==";
-
-    private String icbcPulicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCMpjaWjngB4E3ATh+G1DVAmQnIpiPEFAEDqRfNGAVvvH35yDetqewKi0l7OEceTMN1C6NPym3zStvSoQayjYV+eIcZERkx31KhtFu9clZKgRTyPjdKMIth/wBtPKjL/5+PYalLdomM4ONthrPgnkN4x4R0+D4+EBpXo8gNiAFsNwIDAQAB";
-
-    private String mer_id = "210541210043";//商户编号
-
-    private String mer_id1 = "210541210044";//商户编号
-
-    private String mer_prtcl_no = "2105412100430201";//收单产品协议编号
-
-    private String mer_acct = "2105402019300157124";//商户账号,商户入账账号,只能交易时指定。(商户付给银行手续费的账户,可以在开户的时候指定,也可以用交易指定方式;用交易指定方式则使用此商户账号)目前暂不支持
-
-    private String wx_appid_user = "wx0071ebcb539570f8";
-
-    private String wx_appid_driver = "wx65d2c03f04352f90";
-
-    private String wx_appid_user1 = "wx7608ef3dae49b691";//小程序
-
-    private String ali_appid_user = "2016120203722668";
-
-    private String ali_appid_driver = "2021001165630930";
-
-    private String payer_account = "2105455809300020994";//银行账户
-
-    private String payer_cnname = "广西云森科技有限公司";//账户名称
-
-    @Autowired
-    private JuHeUtil juHeUtil;
-
-    @Autowired
-    private HttpClientUtil httpClientUtil;
-
-    @Autowired
-    private RestTemplate restTemplate;
-
-    private String bank = "{\"CDB\":\"国家开发银行\",\"ICBC\":\"中国工商银行\",\"ABC\":\"中国农业银行\",\"BOC\":\"中国银行\",\"CCB\":\"中国建设银行\",\"PSBC\":\"中国邮政储蓄银行\",\"COMM\":\"交通银行\",\"CMB\":\"招商银行\",\"SPDB\":\"上海浦东发展银行\",\"CIB\":\"兴业银行\",\"HXBANK\":\"华夏银行\",\"GDB\":\"广东发展银行\",\"CMBC\":\"中国民生银行\",\"CITIC\":\"中信银行\",\"CEB\":\"中国光大银行\",\"EGBANK\":\"恒丰银行\",\"CZBANK\":\"浙商银行\",\"BOHAIB\":\"渤海银行\",\"SPABANK\":\"平安银行\",\"SHRCB\":\"上海农村商业银行\",\"YXCCB\":\"玉溪市商业银行\",\"YDRCB\":\"尧都农商行\",\"BJBANK\":\"北京银行\",\"SHBANK\":\"上海银行\",\"JSBANK\":\"江苏银行\",\"HZCB\":\"杭州银行\",\"NJCB\":\"南京银行\",\"NBBANK\":\"宁波银行\",\"HSBANK\":\"徽商银行\",\"CSCB\":\"长沙银行\",\"CDCB\":\"成都银行\",\"CQBANK\":\"重庆银行\",\"DLB\":\"大连银行\",\"NCB\":\"南昌银行\",\"FJHXBC\":\"福建海峡银行\",\"HKB\":\"汉口银行\",\"WZCB\":\"温州银行\",\"QDCCB\":\"青岛银行\",\"TZCB\":\"台州银行\",\"JXBANK\":\"嘉兴银行\",\"CSRCB\":\"常熟农村商业银行\",\"NHB\":\"南海农村信用联社\",\"CZRCB\":\"常州农村信用联社\",\"H3CB\":\"内蒙古银行\",\"SXCB\":\"绍兴银行\",\"SDEB\":\"顺德农商银行\",\"WJRCB\":\"吴江农商银行\",\"ZBCB\":\"齐商银行\",\"GYCB\":\"贵阳市商业银行\",\"ZYCBANK\":\"遵义市商业银行\",\"HZCCB\":\"湖州市商业银行\",\"DAQINGB\":\"龙江银行\",\"JINCHB\":\"晋城银行JCBANK\",\"ZJTLCB\":\"浙江泰隆商业银行\",\"GDRCC\":\"广东省农村信用社联合社\",\"DRCBCL\":\"东莞农村商业银行\",\"MTBANK\":\"浙江民泰商业银行\",\"GCB\":\"广州银行\",\"LYCB\":\"辽阳市商业银行\",\"JSRCU\":\"江苏省农村信用联合社\",\"LANGFB\":\"廊坊银行\",\"CZCB\":\"浙江稠州商业银行\",\"DYCB\":\"德阳商业银行\",\"JZBANK\":\"晋中市商业银行\",\"BOSZ\":\"苏州银行\",\"GLBANK\":\"桂林银行\",\"URMQCCB\":\"乌鲁木齐市商业银行\",\"CDRCB\":\"成都农商银行\",\"ZRCBANK\":\"张家港农村商业银行\",\"BOD\":\"东莞银行\",\"LSBANK\":\"莱商银行\",\"BJRCB\":\"北京农村商业银行\",\"TRCB\":\"天津农商银行\",\"SRBANK\":\"上饶银行\",\"FDB\":\"富滇银行\",\"CRCBANK\":\"重庆农村商业银行\",\"ASCB\":\"鞍山银行\",\"NXBANK\":\"宁夏银行\",\"BHB\":\"河北银行\",\"HRXJB\":\"华融湘江银行\",\"ZGCCB\":\"自贡市商业银行\",\"YNRCC\":\"云南省农村信用社\",\"JLBANK\":\"吉林银行\",\"DYCCB\":\"东营市商业银行\",\"KLB\":\"昆仑银行\",\"ORBANK\":\"鄂尔多斯银行\",\"XTB\":\"邢台银行\",\"JSB\":\"晋商银行\",\"TCCB\":\"天津银行\",\"BOYK\":\"营口银行\",\"JLRCU\":\"吉林农信\",\"SDRCU\":\"山东农信\",\"XABANK\":\"西安银行\",\"HBRCU\":\"河北省农村信用社\",\"NXRCU\":\"宁夏黄河农村商业银行\",\"GZRCU\":\"贵州省农村信用社\",\"FXCB\":\"阜新银行\",\"HBHSBANK\":\"湖北银行黄石分行\",\"ZJNX\":\"浙江省农村信用社联合社\",\"XXBANK\":\"新乡银行\",\"HBYCBANK\":\"湖北银行宜昌分行\",\"LSCCB\":\"乐山市商业银行\",\"TCRCB\":\"江苏太仓农村商业银行\",\"BZMD\":\"驻马店银行\",\"GZB\":\"赣州银行\",\"WRCB\":\"无锡农村商业银行\",\"BGB\":\"广西北部湾银行\",\"GRCB\":\"广州农商银行\",\"JRCB\":\"江苏江阴农村商业银行\",\"BOP\":\"平顶山银行\",\"TACCB\":\"泰安市商业银行\",\"CGNB\":\"南充市商业银行\",\"CCQTGB\":\"重庆三峡银行\",\"XLBANK\":\"中山小榄村镇银行\",\"HDBANK\":\"邯郸银行\",\"KORLABANK\":\"库尔勒市商业银行\",\"BOJZ\":\"锦州银行\",\"QLBANK\":\"齐鲁银行\",\"BOQH\":\"青海银行\",\"YQCCB\":\"阳泉银行\",\"SJBANK\":\"盛京银行\",\"FSCB\":\"抚顺银行\",\"ZZBANK\":\"郑州银行\",\"SRCB\":\"深圳农村商业银行\",\"BANKWF\":\"潍坊银行\",\"JJBANK\":\"九江银行\",\"JXRCU\":\"江西省农村信用\",\"HNRCU\":\"河南省农村信用\",\"GSRCU\":\"甘肃省农村信用\",\"SCRCU\":\"四川省农村信用\",\"GXRCU\":\"广西省农村信用\",\"SXRCCU\":\"陕西信合\",\"WHRCB\":\"武汉农村商业银行\",\"YBCCB\":\"宜宾市商业银行\",\"KSRB\":\"昆山农村商业银行\",\"SZSBK\":\"石嘴山银行\",\"HSBK\":\"衡水银行\",\"XYBANK\":\"信阳银行\",\"NBYZ\":\"鄞州银行\",\"ZJKCCB\":\"张家口市商业银行\",\"XCYH\":\"许昌银行\",\"JNBANK\":\"济宁银行\",\"CBKF\":\"开封市商业银行\",\"WHCCB\":\"威海市商业银行\",\"HBC\":\"湖北银行\",\"BOCD\":\"承德银行\",\"BODD\":\"丹东银行\",\"JHBANK\":\"金华银行\",\"BOCY\":\"朝阳银行\",\"LSBC\":\"临商银行\",\"BSB\":\"包商银行\",\"LZYH\":\"兰州银行\",\"BOZK\":\"周口银行\",\"DZBANK\":\"德州银行\",\"SCCB\":\"三门峡银行\",\"AYCB\":\"安阳银行\",\"ARCU\":\"安徽省农村信用社\",\"HURCB\":\"湖北省农村信用社\",\"HNRCC\":\"湖南省农村信用社\",\"NYNB\":\"广东南粤银行\",\"LYBANK\":\"洛阳银行\",\"NHQS\":\"农信银清算中心\",\"CBBQS\":\"城市商业银行资金清算中心\"}";
-
-
-
-    */
-/**
-     * 统一下单接口
-     * @param out_trade_no      商户订单号
-     * @param pay_mode          支付方式,9-微信,10-支付宝
-     * @param access_type       收单接入方式,5-APP,7-微信公众号,8-支付宝生活号,9-微信小程序
-     * @param deciveInfo        设备号(设备唯一编号)
-     * @param body
-     * @param total_fee
-     * @param mer_url           回调地址(完整地址)
-     * @param attach            附加信息
-     * @param type              支付端类型(1:用户端,2:司机端,3:小程序)
-     * @throws UnknownHostException
-     *//*
-
-    public Map<String, String> placeAnOrder(String out_trade_no, Integer pay_mode, Integer access_type, String deciveInfo, String body, Double total_fee, String mer_url, String attach, Integer type, String openId) throws Exception {
-        //签名类型为RSA时,需传入appid,私钥和网关公钥,签名类型使用定值IcbcConstants.SIGN_TYPE_RSA,其他参数使用缺省值
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1 request = new
-                CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1();
-        //根据测试环境和生产环境替换相应ip和端口
-        request.setServiceUrl("https://gw.open.icbc.com.cn/api/cardbusiness/aggregatepay/b2c/online/consumepurchase/V1");
-        CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1.CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1Biz bizContent = new CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1.CardbusinessAggregatepayB2cOnlineConsumepurchaseRequestV1Biz();
-        request.setBizContent(bizContent);
-        //请对照接口文档用bizContent.setxxx()方法对业务上送数据进行赋值
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
-        String format = sdf.format(new Date());
-        bizContent.setMer_id(mer_id);
-        bizContent.setOut_trade_no(out_trade_no);
-        bizContent.setPay_mode(pay_mode.toString());
-        bizContent.setAccess_type(access_type.toString());
-        bizContent.setMer_prtcl_no(mer_prtcl_no);
-        bizContent.setOrig_date_time(format);
-        bizContent.setDecive_info(deciveInfo);
-        bizContent.setBody("OK出行-" + body);
-        bizContent.setFee_type("001");
-        InetAddress ip4 = Inet4Address.getLocalHost();
-        bizContent.setSpbill_create_ip(ip4.getHostAddress());
-        bizContent.setTotal_fee(Double.valueOf(total_fee * 100).intValue() + "");
-        bizContent.setMer_url(mer_url);
-        bizContent.setOpen_id("");
-        bizContent.setShop_appid("");
-        bizContent.setUnion_id("");
-        bizContent.setIcbc_appid(app_id);
-        if(pay_mode == 9){
-            switch (type){
-                case 1://用户端
-                    bizContent.setShop_appid(wx_appid_user);
-                    break;
-                case 2://司机端
-                    bizContent.setShop_appid(wx_appid_driver);
-                    break;
-                case 3://小程序
-                    bizContent.setShop_appid(wx_appid_user1);
-                    bizContent.setAccess_type("9");
-                    bizContent.setOpen_id(openId);
-                    break;
-            }
-        }
-        if(pay_mode == 10){
-            switch (type){
-                case 1://用户端
-                    bizContent.setUnion_id(ali_appid_user);
-                    break;
-                case 2://司机端
-                    bizContent.setUnion_id(ali_appid_driver);
-                    break;
-            }
-        }
-        bizContent.setMer_acct(mer_acct);
-        bizContent.setExpire_time("120");
-        bizContent.setAttach(attach);
-        bizContent.setNotify_type("HS");
-        bizContent.setResult_type("0");
-        bizContent.setPay_limit("no_credit");
-        bizContent.setOrder_apd_inf("");
-        CardbusinessAggregatepayB2cOnlineConsumepurchaseResponseV1 response;
-        response = client.execute(request, System.currentTimeMillis()+"");//msgId消息通讯唯一编号,要求每次调用独立生成,APP级唯一
-        Map<String, String> map = new HashMap<>();
-        if (response.getReturnCode() == 0) {
-            // 6、业务成功处理,请根据接口文档用response.getxxx()获取同步返回的业务数据
-            System.err.println("ReturnCode:"+response.getReturnCode());
-            System.err.println("response:" + JSON.toJSONString(response));
-            if(pay_mode == 9){//微信
-                String order_id = response.getOrder_id();//工行订单号
-                String out_trade_no1 = response.getOut_trade_no();//商户订单号
-                map.put("order_id", order_id);
-                map.put("out_trade_no1", out_trade_no1);
-                map.put("data", response.getWx_data_package());
-                map.put("code", "200");
-                map.put("msg", "成功");
-
-                return map;
-            }
-            if(pay_mode == 10){//支付宝
-                String order_id = response.getOrder_id();//工行订单号
-                String out_trade_no1 = response.getOut_trade_no();//商户订单号
-                map.put("order_id", order_id);
-                map.put("out_trade_no1", out_trade_no1);
-                map.put("data", response.getZfb_data_package());
-                map.put("code", "200");
-                map.put("msg", "成功");
-                return map;
-            }
-        }
-        if(response.getReturnCode() == 92209500){
-            System.err.println("response:" + JSON.toJSONString(response));
-            System.err.println("ReturnCode:"+response.getReturnCode());
-            System.err.println("ReturnMsg:"+response.getReturnMsg());
-            map.put("order_id", "");
-            map.put("out_trade_no1", "");
-            map.put("data", "");
-            map.put("code", "300");
-            map.put("msg", "支付失败,请过两分钟后再重新支付!");
-            return map;
-        }else {
-            // 失败
-            System.err.println("response:" + JSON.toJSONString(response));
-            System.err.println("ReturnCode:"+response.getReturnCode());
-            System.err.println("ReturnMsg:"+response.getReturnMsg());
-            map.put("order_id", "");
-            map.put("out_trade_no1", "");
-            map.put("data", "");
-            map.put("code", "300");
-            map.put("msg", "支付失败");
-            return map;
-        }
-    }
-
-
-
-
-    */
-/**
-     * 查询交易(商户订单号和工行订单号二选其一)
-     * @param out_trade_no  商户订单号
-     * @param order_id      工行订单号
-     * @return
-     *//*
-
-    public String queryTransaction(String out_trade_no, String order_id){
-        //签名类型为RSA时,需传入appid,私钥和网关公钥,签名类型使用定值IcbcConstants.SIGN_TYPE_RSA,其他参数使用缺省值
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        CardbusinessAggregatepayB2cOnlineOrderqryRequestV1 request = new CardbusinessAggregatepayB2cOnlineOrderqryRequestV1();
-        //根据测试环境和生产环境替换相应ip和端口
-        request.setServiceUrl("https://gw.open.icbc.com.cn/api/cardbusiness/aggregatepay/b2c/online/orderqry/V1");
-        CardbusinessAggregatepayB2cOnlineOrderqryRequestV1.CardbusinessAggregatepayB2cOnlineOrderqryRequestV1Biz bizContent = new
-                CardbusinessAggregatepayB2cOnlineOrderqryRequestV1.CardbusinessAggregatepayB2cOnlineOrderqryRequestV1Biz();
-        request.setBizContent(bizContent);
-        //请对照接口文档用bizContent.setxxx()方法对业务上送数据进行赋值
-        bizContent.setMer_id(mer_id);
-        bizContent.setOut_trade_no(out_trade_no);
-        bizContent.setOrder_id(order_id);
-        bizContent.setDeal_flag("0");//操作标志,0-查询;1-关单
-        bizContent.setIcbc_appid(app_id);
-        CardbusinessAggregatepayB2cOnlineOrderqryResponseV1 response;
-        try {
-            response = client.execute(request, System.currentTimeMillis()+"");//msgId消息通讯唯一编号,要求每次调用独立生成,APP级唯一
-            if (response.getReturnCode() == 0) {
-                // 6、业务成功处理,请根据接口文档用response.getxxx()获取同步返回的业务数据
-                System.out.println("ReturnCode:"+response.getReturnCode());
-                System.out.println("response:" + JSON.toJSONString(response));
-
-                String pay_status = response.getPay_status();
-
-                return pay_status;
-            } else {
-                // 失败
-                System.out.println("response:" + JSON.toJSONString(response));
-                System.out.println("ReturnCode:"+response.getReturnCode());
-                System.out.println("ReturnMsg:"+response.getReturnMsg());
-            }
-        } catch (IcbcApiException e) {
-            e.printStackTrace();
-        }
-        return "";
-    }
-
-
-
-    */
-/**
-     * 支付回调处理
-     * @param request
-     * @return
-     * @throws Exception
-     *//*
-
-    public Map<String, String> payCallback(HttpServletRequest request) throws Exception{
-        String biz_content1 = request.getParameter("biz_content");
-        JSONObject biz_content = JSON.parseObject(biz_content1);
-        int return_code = biz_content.getIntValue("return_code");
-        String return_msg = biz_content.getString("return_msg");
-        Map<String, String> map = new HashMap<>();
-        if(return_code == 0){
-            String out_trade_no = biz_content.getString("out_trade_no");//商家订单编号
-            String order_id = biz_content.getString("order_id");//工行订单号
-            String third_trade_no = biz_content.getString("third_trade_no");//第三方订单号(微信/支付宝)
-            String attach = biz_content.getString("attach");//附加信息
-            String pay_time = biz_content.getString("pay_time");//支付完成时间"20190112"
-
-            map.put("out_trade_no", out_trade_no);
-            map.put("order_id", order_id);
-            map.put("third_trade_no", third_trade_no);
-            map.put("attach", attach);
-            map.put("pay_time", pay_time);
-        }else{
-            System.err.println("支付失败:" + return_msg);
-        }
-        return map;
-    }
-
-
-    */
-/**
-     * 回调通知应答
-     * @param response
-     * @throws Exception
-     *//*
-
-    public void answer(HttpServletResponse response) throws Exception{
-        response.setContentType("application/json;charset=UTF-8");
-        StringBuffer sb = new StringBuffer();
-        String nativeUUID = UUIDUtil.getNativeUUID();
-        sb.append("\"response_biz_content\":{\"return_code\":0,\"return_msg\":\"success\",\"msg_id\":\"" + nativeUUID + "\"},\"sign_type\":\"RSA2\"");
-        String sign = IcbcSignature.sign(sb.toString(), IcbcConstants.SIGN_TYPE_RSA2, privateKey, "UTF-8");
-        StringBuffer string = new StringBuffer();
-        string.append("{\"response_biz_content\":{\"return_code\":0,\"return_msg\":\"success\",\"msg_id\":\"" + nativeUUID + "\"},\"sign_type\":\"RSA2\",\"sign\":\"" + sign + "\"}");
-        PrintWriter out = response.getWriter();
-        out.write(string.toString());
-        out.flush();
-        out.close();
-    }
-
-
-
-
-
-    */
-/**
-     * 转账
-     * @param money             转账金额(分)
-     * @param payeeAccount      收款账户(默认使用工行账户)
-     * @param payeeCnname       收款账户名称
-     * @return
-     *//*
-
-    public ResultUtil<String> transfer(Long money, String payeeAccount, String payeeCnname) throws Exception{
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
-        SimpleDateFormat sdf_ = new SimpleDateFormat("HHmmssSSS");
-        Date date = new Date();
-        String url = "https://gw.open.icbc.com.cn/api/mybank/enterprise/pay/payent/V1";
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        MybankEnterprisePayPayentRequestV1.MybankEnterprisePayPayentRequestBizV1 bizContent =
-                new MybankEnterprisePayPayentRequestV1.MybankEnterprisePayPayentRequestBizV1();
-        MybankEnterprisePayPayentRequestV1 request = new MybankEnterprisePayPayentRequestV1();
-        // 请对照接⼝⽂档⽤bizContent.setxxx()⽅法对业务上送数据进⾏赋值
-        bizContent.setTransCode("PAYPER");
-        bizContent.setCis("210590000448207");//集团CIS号
-        bizContent.setBankCode("102");//归属银行编号
-        bizContent.setLoginId("GXYS01.y.2105");//证书ID
-        bizContent.setTranDate(sdf.format(date));
-        bizContent.setTranTime(sdf_.format(date));
-        bizContent.setfSeqno(System.currentTimeMillis() + "");
-        bizContent.setSettleMode(0);//入账方式。0:逐笔记账;2:并笔记账
-        bizContent.setInstrCount(1);//总笔数
-        bizContent.setTotalAmount(new BigDecimal(money));//总金额(分)
-        ArrayList<MybankEnterprisePayPayentRequestV1.MybankEnterprisePayPayentRequestRdV1> list = new ArrayList<>();
-        MybankEnterprisePayPayentRequestV1.MybankEnterprisePayPayentRequestRdV1 rd = new MybankEnterprisePayPayentRequestV1.MybankEnterprisePayPayentRequestRdV1();
-        rd.setiSeqno(UUIDUtil.getRandomCode());//指令顺序号:每笔指令的序号,本包内不重复
-        rd.setPayType("1");//记账处理方式:1:加急;2:普通;3:跨行快汇。联机批量标志为2-批量时,此字段无意义,上送1即可
-        rd.setPayerAccount(mer_acct);//本方账户
-        rd.setPayerCnname(payer_cnname);//本方账户名
-        rd.setPayeeAccount(payeeAccount);//收方账号
-        rd.setPayeeCnname(payeeCnname);//收方账户名
-        rd.setIoFlag("1");//系统内外标志:1:系统内;2:系统外
-        rd.setCurrency("CNY");
-        rd.setAmount(new BigDecimal(money));//金额:无正负号,以分为单位
-        rd.setPurpose("代收款");//用途描述
-
-        list.add(rd);
-        bizContent.setRd(list);
-        request.setServiceUrl(url);
-        request.setBizContent(bizContent);
-        MybankEnterprisePayPayentResponseV1 response = client.execute(request);
-        if (response.isSuccess()) {
-            // 业务成功处理
-            System.err.println("ReturnCode:"+response.getReturnCode());
-            System.err.println("response:" + JSON.toJSONString(response));
-            if(response.getReturnCode() == 0){
-                return ResultUtil.success(response.getSerialNo());
-            }else{
-                return ResultUtil.error("转账申请提交失败(" + response.getReturnMsg() + ")");
-            }
-        } else {
-            System.err.println("response:" + JSON.toJSONString(response));
-            System.err.println("ReturnCode:"+response.getReturnCode());
-            System.err.println("ReturnMsg:"+response.getReturnMsg());
-            return ResultUtil.error("转账申请提交失败(" + response.getReturnMsg() + ")");
-        }
-    }
-
-
-    */
-/**
-     * 查询转账交易状态
-     * @param serialNo      转账申请序列号(转账接口返回)
-     * @return              -1=查询异常,0=交易成功,1=交易处理中,2=交易拒绝
-     *//*
-
-    public Integer queryTransfer(String serialNo){
-        String url = "https://gw.open.icbc.com.cn/api/mybank/enterprise/pay/qpayent/V1";
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        try {
-            MybankEnterprisePayQpayentRequestV1.MybankEnterprisePayQpayentRequestBizV1 bizContent =
-                    new MybankEnterprisePayQpayentRequestV1.MybankEnterprisePayQpayentRequestBizV1();
-            MybankEnterprisePayQpayentRequestV1 request = new MybankEnterprisePayQpayentRequestV1();
-            Date date = new Date();
-            SimpleDateFormat sdf1 = new SimpleDateFormat("yyyyMMdd");
-            SimpleDateFormat sdf2 = new SimpleDateFormat("HHmmssSSS");
-            bizContent.setTransCode("QPAYPER");//交易代码
-            bizContent.setTranDate(sdf1.format(date));//交易日期:ERP系统产生,格式是yyyyMMdd
-            bizContent.setTranTime(sdf2.format(date));//交易时间:ERP系统产生,格式如HHmmssSSS,精确到毫秒
-            bizContent.setLanguage("zh_CN");
-            bizContent.setfSeqNo(UUIDUtil.getRandomCode());//指令包序列号:ERP系统产生,一个集团永远不能重复
-            bizContent.setQryfSeqno("");//待查指令包序列号:判断待查指令包序列号和待查平台交易流水号必须至少有一项有值
-            bizContent.setQrySerialNo(serialNo);//待查平台交易序列号
-            request.setServiceUrl(url);
-            request.setBizContent(bizContent);
-            MybankEnterprisePayQpayentResponseV1 response = client.execute(request);
-            if (response.isSuccess()) {
-                int returnCode = response.getReturnCode();//返回码,交易成功返回0,正表示业务报错,负表示系统报错,负值时须考虑疑帐
-                String returnMsg = response.getReturnMsg();//返回说明
-                if(0 == returnCode){
-                    List<MybankEnterprisePayQpayentResponseV1.MybankEnterprisePayQpayentResponseRdV1> rd = response.getRd();
-                    MybankEnterprisePayQpayentResponseV1.MybankEnterprisePayQpayentResponseRdV1 bank = rd.get(0);
-                    String result = bank.getResult();//指令状态:0:提交成功,等待银行处理 1:授权成功, 等待银行处理 2:等待授权 3:等待二次授权 4:等待银行答复 5:主机返回待处理 6:被银行拒绝 7:处理成功 8:指令被拒绝授权 9:银行正在处理 10:预约指令 11:预约取消 86:等待电话核实 95:待核查 98:区域中心通讯可疑
-                    if(result.equals("7")){//交易成功
-                        return 0;
-                    }
-                    if(result.equals("6") || result.equals("8")){//交易拒绝
-                        return 2;
-                    }
-                    return 1;//交易处理中
-                }else{
-                    System.err.println(returnMsg);
-                    return -1;
-                }
-            } else {
-                return -1;
-            }
-        } catch (Exception e) {
-            e.printStackTrace();
-            return -1;
-        }
-    }
-
-
-    */
-/**
-     * 获取扫码支付二维码(客户扫商户二维码)
-     * @param out_trade_no      商户系统订单号
-     * @param order_amt         订单金额
-     * @param orderTime         订单生成时间
-     * @param attach            附加信息
-     * @param notify_url        支付成功回调地址
-     * @return
-     * @throws Exception
-     *//*
-
-    public ResultUtil<Map<String, Object>> generate(String out_trade_no, Double order_amt, Date orderTime, String attach, String notify_url) throws Exception{
-        order_amt = order_amt * 100;
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
-        SimpleDateFormat sdf1 = new SimpleDateFormat("HHmmss");
-        //签名类型为RSA2时,需传入appid,私钥和网关公钥,签名类型使用定值IcbcConstants.SIGN_TYPE_RSA2,其他参数使用缺省值
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        QrcodeGenerateRequestV2 request = new QrcodeGenerateRequestV2();
-        request.setServiceUrl("https://gw.open.icbc.com.cn/api/qrcode/V2/generate");
-        QrcodeGenerateRequestV2.QrcodeGenerateRequestV2Biz bizContent = new QrcodeGenerateRequestV2.QrcodeGenerateRequestV2Biz();
-        bizContent.setMerId(mer_id1);
-        bizContent.setStoreCode("21050022636");//E生活编号
-        bizContent.setOutTradeNo(out_trade_no);
-        bizContent.setOrderAmt(order_amt.intValue() + "");
-        bizContent.setTradeDate(sdf.format(orderTime));
-        bizContent.setTradeTime(sdf1.format(orderTime));
-        bizContent.setAttach(attach);//该字段非必输项
-        bizContent.setPayExpire("1200");
-        bizContent.setNotifyUrl(notify_url);//该字段非必输项
-        bizContent.setTporderCreateIp(InetAddress.getLocalHost().getHostAddress());
-        bizContent.setSpFlag("0");//该字段非必输项
-        bizContent.setNotifyFlag("1");
-        request.setBizContent(bizContent);
-        QrcodeGenerateResponseV2 response = client.execute(request, System.currentTimeMillis()+"");
-        if (response.isSuccess()) {
-            // 业务成功处理
-            System.out.println("ReturnCode:"+response.getReturnCode());
-            System.out.println("response:" + response);
-            Map<String, Object> map = new HashMap<>();
-            map.put("qrcode", response.getQrcode());
-            map.put("attach", response.getAttach());
-            return ResultUtil.success(map);
-        } else {
-            // 失败
-            System.out.println("ReturnCode:" + response.getReturnCode());
-            System.out.println("ReturnMsg:" + response.getReturnMsg());
-            return ResultUtil.error("获取支付二维码失败(" + response.getReturnMsg() + ")");
-        }
-    }
-
-
-    */
-/**
-     * 扫码支付成功回调客户扫商户二维码)
-     * @param request
-     * @return
-     * @throws Exception
-     *//*
-
-    public Map<String, String> generatePayCallback(HttpServletRequest request) throws Exception{
-        String biz_content1 = request.getParameter("biz_content");
-        JSONObject biz_content = JSON.parseObject(biz_content1);
-        int return_code = biz_content.getIntValue("return_code");
-        String return_msg = biz_content.getString("return_msg");
-        Map<String, String> map = new HashMap<>();
-        if(return_code == 0){
-            String out_trade_no = biz_content.getString("out_trade_no");//商家订单编号
-            String order_id = biz_content.getString("order_id");//工行订单号
-//            String third_trade_no = biz_content.getString("third_trade_no");//第三方订单号(微信/支付宝)
-            String attach = biz_content.getString("attach");//附加信息
-            String pay_time = biz_content.getString("pay_time");//支付完成时间"20190112"
-
-            map.put("out_trade_no", out_trade_no);
-            map.put("order_id", order_id);
-//            map.put("third_trade_no", third_trade_no);
-            map.put("attach", attach);
-            map.put("pay_time", pay_time);
-        }else{
-            System.err.println("支付失败:" + return_msg);
-        }
-        return map;
-    }
-
-
-
-
-    */
-/**
-     * 退款申请
-     * @param order_id          工行下单订单号(与“商户系统下单订单号”二选一)
-     * @param out_trade_no      商户系统下单订单号(与“工行下单订单号”二选一)
-     * @param ret_total_amt     退款金额
-     * @param order_apd_inf     附加信息
-     * @param outtrx_serial_no  外部退货流水号
-     * @return
-     * @throws Exception
-     *//*
-
-    public Map<String, Object> merrefund(String order_id, String out_trade_no, Double ret_total_amt, String order_apd_inf, String outtrx_serial_no) throws Exception{
-        ret_total_amt = ret_total_amt * 100;
-        //签名类型为RSA2时,需传入appid,私钥和网关公钥,签名类型使用定值IcbcConstants.SIGN_TYPE_RSA2,其他参数使用缺省值
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        CardbusinessAggregatepayB2cOnlineMerrefundRequestV1 request = new CardbusinessAggregatepayB2cOnlineMerrefundRequestV1();
-        //根据测试环境和生产环境替换相应ip和端口
-        request.setServiceUrl("https://gw.open.icbc.com.cn/api/cardbusiness/aggregatepay/b2c/online/merrefund/V1");
-        //请对照接口文档用bizContent.setxxx()方法对业务上送数据进行赋值
-        CardbusinessAggregatepayB2cOnlineMerrefundRequestV1.CardbusinessAggregatepayB2cOnlineMerrefundRequestV1Biz bizContent = new
-                CardbusinessAggregatepayB2cOnlineMerrefundRequestV1.CardbusinessAggregatepayB2cOnlineMerrefundRequestV1Biz();
-        request.setBizContent(bizContent);
-        bizContent.setOrder_id(order_id);//消费工行订单号,工行订单号,商户订单号或行内订单号必须其中一个不为空
-        bizContent.setMer_id(mer_id);//商户编号‐必输项
-        bizContent.setOut_trade_no(out_trade_no);//商户订单号,工行订单号,商户订单号或行内订单号必须其中一个不为空
-        bizContent.setOuttrx_serial_no(outtrx_serial_no);//外部退货流水号‐必输项
-        bizContent.setRet_total_amt(ret_total_amt.intValue() + "");//退货总金额‐必输项
-        bizContent.setTrnsc_ccy("001");//交易币种‐必输项
-        bizContent.setOrder_apd_inf(order_apd_inf);//备注信息
-        bizContent.setIcbc_appid(app_id);
-        bizContent.setMer_acct("");
-        CardbusinessAggregatepayB2cOnlineMerrefundResponseV1 response;
-        Map<String, Object> map = new HashMap<>();
-        try {
-            response = client.execute(request, "msgId3");//msgId消息通讯唯一编号,要求每次调用独立生成,APP级唯一
-            if (response.isSuccess()) {
-                // 业务成功处理,请根据接口文档用response.getxxx()获取同步返回的业务数据
-                System.out.println("ReturnCode:"+response.getReturnCode());
-                System.out.println("ReturnCode:"+response.getReturnCode());
-                System.out.println("response:" + response);
-                map.put("intrx_serial_no", response.getIntrx_serial_no());//退货工行流水号
-                map.put("code", response.getReturnCode());
-                map.put("mag", response.getReturnMsg());
-            } else {
-                // 失败
-                System.out.println("ReturnCode:"+response.getReturnCode());
-                System.out.println("ReturnMsg:"+response.getReturnMsg());
-                map.put("code", response.getReturnCode());
-                map.put("mag", response.getReturnMsg());
-            }
-        } catch (IcbcApiException e) {
-            e.printStackTrace();
-        }
-        return map;
-    }
-
-
-    */
-/**
-     * 退款查询
-     * @param out_trade_no          商户系统消费下单订单号
-     * @param order_id              工行消费下单订单号
-     * @param outtrx_serial_no      商户系统退货编号
-     * @return
-     *//*
-
-    public Map<String, Object> refundqry(String out_trade_no, String order_id, String outtrx_serial_no){
-        // 签名类型为RSA时,需传入appid,私钥和网关公钥,签名类型使用定值IcbcConstants.SIGN_TYPE_RSA,其他参数使用缺省值
-        DefaultIcbcClient client = new DefaultIcbcClient(app_id, IcbcConstants.SIGN_TYPE_RSA2, privateKey, icbcPulicKey);
-        CardbusinessAggregatepayB2cOnlineRefundqryRequestV1 request = new CardbusinessAggregatepayB2cOnlineRefundqryRequestV1();
-        // 根据测试环境和生产环境替换相应ip和端口
-        request.setServiceUrl("https://gw.open.icbc.com.cn/api/cardbusiness/aggregatepay/b2c/online/refundqry/V1");
-        CardbusinessAggregatepayB2cOnlineRefundqryRequestV1.CardbusinessAggregatepayB2cOnlineRefundqryRequestV1Biz bizContent = new
-                CardbusinessAggregatepayB2cOnlineRefundqryRequestV1.CardbusinessAggregatepayB2cOnlineRefundqryRequestV1Biz();
-        request.setBizContent(bizContent);
-        // 请对照接口文档用bizContent.setxxx()方法对业务上送数据进行赋值
-        bizContent.setMer_id(mer_id);
-        bizContent.setOut_trade_no(out_trade_no);
-        bizContent.setOuttrx_serial_no(outtrx_serial_no);
-        bizContent.setOrder_id(order_id);
-        CardbusinessAggregatepayB2cOnlineRefundqryResponseV1 response;
-        Map<String, Object> map = new HashMap<>();
-        try {
-            response = client.execute(request, System.currentTimeMillis() + "");// msgId消息通讯唯一编号,要求每次调用独立生成,APP级唯一
-            if (response.getReturnCode() == 0) {
-                // 业务成功处理,请根据接口文档用response.getxxx()获取同步返回的业务数据
-                System.out.println("ReturnCode:" + response.getReturnCode());
-                System.out.println("response:" + JSON.toJSONString(response));
-                map.put("code", response.getReturnCode());//0
-                map.put("msg", response.getReturnMsg());
-                map.put("pay_status", response.getPay_status());//订单状态说明:0-退货成功;1-退货失败;2-退货状态未知
-            } else {
-                // 失败
-                System.out.println("response:" + JSON.toJSONString(response));
-                System.out.println("ReturnCode:" + response.getReturnCode());
-                System.out.println("ReturnMsg:" + response.getReturnMsg());
-                map.put("code", response.getReturnCode());//0
-                map.put("msg", response.getReturnMsg());
-            }
-        } catch (IcbcApiException e) {
-            e.printStackTrace();
-        }
-        return map;
-    }
-
-
-
-
-    */
-/**
-     * 获取银行卡号归属地
-     * @param code
-     * @return
-     *//*
-
-    public Map<String, String> queryBank(String code){
-        String url = "https://bankaddress.shumaidata.com/bankaddress?bankcard=" + code;
-        Map<String, String> header = new HashMap<>();
-        header.put("Authorization", "APPCODE b7d32437d08149099457dcb50fb57df2");
-        String get = httpClientUtil.pushHttpRequset("GET", url, null, header, "form");
-        JSONObject jsonObject = JSON.parseObject(get);
-        int code1 = jsonObject.getIntValue("code");
-        Map<String, String> map = new HashMap<>();
-        if(code1 == 200){
-            map.put("msg", "success");
-            JSONObject data = jsonObject.getJSONObject("data");
-            map.put("province", data.getString("province"));//开通省
-            map.put("city", data.getString("city"));//开通市
-            map.put("abbreviation", data.getString("abbreviation"));//银行英文大写
-            map.put("type", data.getString("type"));//卡类型(借记卡)
-            map.put("bank", data.getString("bank"));//总行名称
-        }else{
-            map.put("msg", jsonObject.getString("msg"));
-        }
-        return map;
-    }
-}
-*/
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 81db6eb..293aaa2 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
@@ -265,8 +265,7 @@
                 return ResultUtil.error("该司机不能服务此业务");
             }
 
-            orderTaxi.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-                    driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
+            orderTaxi.setCompanyId(driver.getCompanyId());
             orderTaxi.setCarId(driver.getCarId());
             orderTaxi.setState(2);//待出发
             orderTaxi.setSnatchOrderTime(new Date());
diff --git a/UserIGOTravel/guns-admin/src/main/resources/application-produce.yml b/UserIGOTravel/guns-admin/src/main/resources/application-produce.yml
index 1204cee..f9767c2 100644
--- a/UserIGOTravel/guns-admin/src/main/resources/application-produce.yml
+++ b/UserIGOTravel/guns-admin/src/main/resources/application-produce.yml
@@ -23,6 +23,10 @@
       enabled: false
       additional-paths: src/main/java
       exclude: static/**,WEB-INF/view/**
+  servlet:
+    multipart:
+      max-request-size: 100MB
+      max-file-size: 100MB
   redis:
     database: 0
     host: 127.0.0.1
@@ -120,17 +124,6 @@
 
 spring:
   mail:
-    host: smtp.gmail.com # 配置 smtp 服务器地址
-    port: 465 # smtp 服务器的端口
-    username: i-gotech@i-go.group # 配置邮箱用户名(你的邮箱地址)
-    password: mhizkqkhuknbitps # 配置申请到的授权码(刚让复制的授权码)
-    default-encoding: UTF-8 # 配置邮件编码
-    properties:
-      mail:
-        smtp:
-          socketFactoryClass: javax.net.ssl.SSLSocketFactory # 配饰 SSL 加密工厂
-        debug: true
-    from: i-gotech@i-go.group # 发送方邮件,配在yml中可方便更改
     template-path: /home/igotechgh/nginx/html/mailbox/
 
 ---
diff --git a/ZuulIGOTravel/src/main/resources/application.yml b/ZuulIGOTravel/src/main/resources/application.yml
index 1e5f55d..e9825f3 100644
--- a/ZuulIGOTravel/src/main/resources/application.yml
+++ b/ZuulIGOTravel/src/main/resources/application.yml
@@ -9,13 +9,12 @@
     multipart:
       max-file-size: 100MB
       max-request-size: 100MB
+      file-size-threshold: 100MB
   redis:
     database: 0
     host: 127.0.0.1
     port: 16379
     password: mPMHThYzlT8DWgl8HLqwPEyPOiHDPPB5
-#    port: 6379
-#    password: 123456
 
 eureka:
   client:

--
Gitblit v1.7.1