From c4a098e3f88bc5071e36b92b9e5dcceb51129957 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 01 六月 2023 23:25:07 +0800
Subject: [PATCH] 同步后台代码

---
 management/guns-admin/src/main/resources/logback-spring.xml                                                       |  334 +++++--
 management/guns-admin/src/main/resources/application.yml                                                          |   20 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/AccountChangeDetailMapper.java          |   11 
 management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js                        |   28 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/AccountChangeDetail.java              |   75 +
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/AccountChangeDetailMapper.xml   |   19 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java   |   36 
 /dev/null                                                                                                         | 1900 ---------------------------------------------
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java |    3 
 management/guns-admin/pom.xml                                                                                     |    7 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRevenueServiceImpl.java       |    1 
 management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html              |   28 
 management/guns-admin/src/main/resources/redis.properties                                                         |   21 
 13 files changed, 398 insertions(+), 2,085 deletions(-)

diff --git a/management/guns-admin/pom.xml b/management/guns-admin/pom.xml
index 7a85d66..6d11419 100644
--- a/management/guns-admin/pom.xml
+++ b/management/guns-admin/pom.xml
@@ -221,7 +221,12 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-data-redis</artifactId>
         </dependency>
-        <!--引入本地工行支付jar end-->
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+            <version>1.18.20</version>
+            <scope>provided</scope>
+        </dependency>
     </dependencies>
 
 
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverBackController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverBackController.java
deleted file mode 100644
index 9191044..0000000
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverBackController.java
+++ /dev/null
@@ -1,1900 +0,0 @@
-package com.stylefeng.guns.modular.system.controller.general;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.baomidou.mybatisplus.plugins.Page;
-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.DriverPunishMapper;
-import com.stylefeng.guns.modular.system.dao.DriverTrainMapper;
-import com.stylefeng.guns.modular.system.model.*;
-import com.stylefeng.guns.modular.system.service.*;
-import com.stylefeng.guns.modular.system.util.HttpRequestUtil;
-import com.stylefeng.guns.modular.system.util.PushURL;
-import com.stylefeng.guns.modular.system.util.ResultUtil;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Controller;
-import org.springframework.ui.Model;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-import org.springframework.web.multipart.MultipartHttpServletRequest;
-
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.text.SimpleDateFormat;
-import java.util.*;
-
-/**
- * 控制器
- *
- * @author fengshuonan
- * @Date 2023-02-20 09:07:06
- */
-@Controller
-@RequestMapping("/back-tDriver")
-public class TDriverBackController extends BaseController {
-
-    /*private String PREFIX = "/system/tDriver/";
-
-    @Autowired
-    private ITDriverService tDriverService;
-
-    @Autowired
-    private ITCompanyService tCompanyService;
-
-    @Autowired
-    private ITDriverServiceService tDriverServiceService;
-
-    @Autowired
-    private ITDriverLineService tDriverLineService;
-
-    @Autowired
-    private ITLineService itLineService;
-
-    @Autowired
-    private PushMinistryOfTransportUtil pushMinistryOfTransportUtil;
-
-    @Resource
-    private DriverTrainMapper driverTrainMapper;
-
-    @Resource
-    private DriverPunishMapper driverPunishMapper;
-
-    @Value("${pushMinistryOfTransport}")
-    private boolean pushMinistryOfTransport;
-
-
-
-    *//**
-     * 跳转到司机审核列表首页
-     *//*
-    @RequestMapping("")
-    public String index() {
-        return PREFIX + "tDriver.html";
-    }
-
-    *//**
-     * 跳转到审核通过司机首页
-     *//*
-    @RequestMapping("/yesDriver")
-    public String yesDriver() {
-        return PREFIX + "yesDriver.html";
-    }
-
-    *//**
-     * 跳转到添加司机
-     *//*
-    @RequestMapping("/tDriver_add")
-    public String tDriverAdd(Model model) {
-        List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2));
-        model.addAttribute("companyList",companyList);
-
-        Integer roleType = ShiroKit.getUser().getRoleType();
-        model.addAttribute("roleType",roleType);
-        if (2 == roleType){
-            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>()
-                    .eq("type", 3)
-                    .eq("superiorId",ShiroKit.getUser().getObjectId())
-                    .notIn("state",1)
-                    .notIn("flag",3));
-            model.addAttribute("franchiseeList",franchiseeList);
-        }else{
-            model.addAttribute("franchiseeList",null);
-        }
-        //查询当前用户所属分公司/加盟商
-        model.addAttribute("objectName",tCompanyService.selectById(ShiroKit.getUser().getObjectId()).getName());
-
-        //查询线路列表
-        List<TLine> lineList = itLineService.selectList(new EntityWrapper<TLine>().eq("state", 1));
-        model.addAttribute("lineList",lineList);
-        return PREFIX + "tDriver_add.html";
-    }
-
-    *//**
-     * 跳转到修改审核司机
-     *//*
-    @RequestMapping("/tDriver_immediately/{tDriverId}")
-    public String tDriver_immediately(@PathVariable Integer tDriverId, Model model) {
-        Map<String, Object> tDriver = tDriverService.getDriverById(tDriverId);
-        model.addAttribute("item",tDriver);
-        LogObjectHolder.me().set(tDriver);
-        return PREFIX + "tDriver_immediately.html";
-    }
-
-    *//**
-     * 跳转到选择车辆页面
-     *//*
-    @RequestMapping("/tDriver_changeCar/{tDriverId}")
-    public String tDriver_changeCar(@PathVariable Integer tDriverId, Model model) {
-        model.addAttribute("tDriverId",tDriverId);
-        return PREFIX + "tDriver_changeCar.html";
-    }
-
-    *//**
-     * 跳转到冻结/解冻司机页面
-     *//*
-    @RequestMapping("/tDriver_optDriver/{tDriverId}/{optType}")
-    public String tDriver_optDriver(@PathVariable Integer tDriverId,@PathVariable Integer optType, Model model) {
-        model.addAttribute("tDriverId",tDriverId);
-        model.addAttribute("optType",optType);
-        return PREFIX + "tDriver_optDriver.html";
-    }
-
-    *//**
-     * 跳转到查看司机详情
-     *//*
-    @RequestMapping("/tDriver_look/{tDriverId}")
-    public String tDriver_look(@PathVariable Integer tDriverId, Model model) {
-        Map<String, Object> tDriver = tDriverService.getDriverById(tDriverId);
-        model.addAttribute("item",tDriver);
-        LogObjectHolder.me().set(tDriver);
-        return PREFIX + "tDriver_look.html";
-    }
-
-    *//**
-     * 跳转到修改司机
-     *//*
-    @RequestMapping("/tDriver_update/{tDriverId}")
-    public String tDriverUpdate(@PathVariable Integer tDriverId, Model model) {
-        TDriver tDriver = tDriverService.selectById(tDriverId);
-        model.addAttribute("item",tDriver);
-        LogObjectHolder.me().set(tDriver);
-
-        Integer roleType = ShiroKit.getUser().getRoleType();
-        model.addAttribute("roleType",roleType);
-        model.addAttribute("objectName",tCompanyService.selectById(ShiroKit.getUser().getObjectId()).getName());
-
-        if (1 == roleType){
-            List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2));
-            model.addAttribute("companyList",companyList);
-            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId",tDriver.getCompanyId()));
-            model.addAttribute("franchiseeList",franchiseeList);
-        }else if (2 == roleType){
-            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId",ShiroKit.getUser().getObjectId()));
-            model.addAttribute("franchiseeList",franchiseeList);
-        }
-
-        //查询平台ID
-        TCompany company = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1));
-        //判断是平台司机还是加盟司机
-        if ((SinataUtil.isEmpty(tDriver.getCompanyId()) || tDriver.getCompanyId() == 0 || tDriver.getCompanyId() == company.getId()) && (SinataUtil.isEmpty(tDriver.getFranchiseeId()) || tDriver.getFranchiseeId() == 0)){
-            model.addAttribute("companyType",1);
-        }else{
-            model.addAttribute("companyType",2);
-        }
-
-        //获取经营业务
-        List<TDriverService> serviceList = tDriverServiceService.selectList(new EntityWrapper<TDriverService>().eq("driverId", tDriverId));
-        Integer one = 1;
-        Integer two = 1;
-        Integer three = 1;
-        Integer four = 1;
-        Integer five = 1;
-        Integer six = 1;
-        for (TDriverService obj : serviceList){
-            if (obj.getType() == 1){
-                one = 2;
-            }
-            if (obj.getType() == 2){
-                two = 2;
-            }
-            if (obj.getType() == 3){
-                three = 2;
-            }
-            if (obj.getType() == 4){
-                four = 2;
-            }
-            if (obj.getType() == 5){
-                five = 2;
-            }
-            if (obj.getType() == 6){
-                six = 2;
-            }
-        }
-        model.addAttribute("one",one);
-        model.addAttribute("two",two);
-        model.addAttribute("three",three);
-        model.addAttribute("four",four);
-        model.addAttribute("five",five);
-        model.addAttribute("six",six);
-
-        //查询线路列表
-        List<TLine> lineList = itLineService.selectList(new EntityWrapper<TLine>().eq("state", 1));
-        model.addAttribute("lineList",lineList);
-        //查询驾驶员已添加的线路列表
-        List<Map<String, Object>> driverLineList = tDriverLineService.getDriverLineListByDriverId(tDriverId);
-        model.addAttribute("driverLineList",driverLineList);
-        return PREFIX + "tDriver_edit.html";
-    }
-
-    *//**
-     * 跳转到添加培训页
-     * @param id
-     * @param model
-     * @return
-     *//*
-    @RequestMapping("/showTraining")
-    public String showTraining(Integer id, Model model){
-        model.addAttribute("id", id);
-        return PREFIX + "training.html";
-    }
-
-
-    *//**
-     * 保存培训数据
-     * @param train
-     * @param driverId
-     * @return
-     *//*
-    @ResponseBody
-    @RequestMapping(value = "/saveTrain", method = RequestMethod.POST)
-    public ResultUtil saveTrain(String train, Integer driverId){
-        if(ToolUtil.isEmpty(train)){
-            return ResultUtil.error("请添加有效的培训记录");
-        }
-        String[] split = train.split(",");
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-        try {
-            List<DriverTrain> update = new ArrayList<>();
-            List<DriverTrain> add = new ArrayList<>();
-            for(String s : split){
-                String[] s1 = s.split("_");
-                if(ToolUtil.isNotEmpty(s1[0])){//修改
-                    DriverTrain driverTrain = driverTrainMapper.selectById(s1[0]);
-                    driverTrain.setDriverId(driverId);
-                    driverTrain.setCourseName(s1[1]);
-                    driverTrain.setCourseDate(sdf.parse(s1[2]));
-                    driverTrain.setStartTime(s1[3]);
-                    driverTrain.setStopTime(s1[4]);
-                    driverTrain.setDuration(Integer.valueOf(s1[5]));
-                    update.add(driverTrain);
-                }else{//添加
-                    DriverTrain driverTrain = new DriverTrain();
-                    driverTrain.setDriverId(driverId);
-                    driverTrain.setCourseName(s1[1]);
-                    driverTrain.setCourseDate(sdf.parse(s1[2]));
-                    driverTrain.setStartTime(s1[3]);
-                    driverTrain.setStopTime(s1[4]);
-                    driverTrain.setDuration(Integer.valueOf(s1[5]));
-                    add.add(driverTrain);
-                }
-            }
-            List<DriverTrain> driverTrains = driverTrainMapper.queryAllTrain(driverId);
-            for(DriverTrain driverTrain : driverTrains){
-                boolean b = true;
-                for(String s : split){
-                    String[] s1 = s.split("_");
-                    if(ToolUtil.isNotEmpty(s1[0]) && driverTrain.getId() == Integer.valueOf(s1[0])){
-                        b = false;
-                        break;
-                    }
-                }
-                if(b){
-                    driverTrainMapper.deleteById(driverTrain.getId());
-                    new Thread(new Runnable() {
-                        @Override
-                        public void run() {
-                            if(pushMinistryOfTransport){//上传数据
-                                pushMinistryOfTransportUtil.baseInfoDriverEducate(driverTrain.getId(), 3);
-                            }
-                        }
-                    }).start();
-                }
-            }
-            if(update.size() > 0){
-                for(DriverTrain driverTrain : update){
-                    driverTrainMapper.updateById(driverTrain);
-                    new Thread(new Runnable() {
-                        @Override
-                        public void run() {
-                            if(pushMinistryOfTransport){//上传数据
-                                pushMinistryOfTransportUtil.baseInfoDriverEducate(driverTrain.getId(), 2);
-                            }
-                        }
-                    }).start();
-                }
-            }
-            if(add.size() > 0){
-                for(DriverTrain driverTrain : add){
-                    driverTrainMapper.insert(driverTrain);
-                    new Thread(new Runnable() {
-                        @Override
-                        public void run() {
-                            if(pushMinistryOfTransport){//上传数据
-                                pushMinistryOfTransportUtil.baseInfoDriverEducate(driverTrain.getId(), 1);
-                            }
-                        }
-                    }).start();
-                }
-            }
-
-        }catch (Exception e){
-            e.printStackTrace();
-            return ResultUtil.runErr();
-        }
-        return ResultUtil.success();
-    }
-
-    *//**
-     * 获取司机的所有培训数据
-     * @param driverId
-     * @return
-     *//*
-    @ResponseBody
-    @RequestMapping(value = "/queryAllTrain", method = RequestMethod.POST)
-    public ResultUtil queryAllTrain(Integer driverId){
-        List<DriverTrain> driverTrains = driverTrainMapper.queryAllTrain(driverId);
-        return ResultUtil.success(driverTrains);
-    }
-
-
-    *//**
-     * 跳转到处罚页
-     * @param id
-     * @param model
-     * @return
-     *//*
-    @RequestMapping("/showPunish")
-    public String showPunish(Integer id, Model model){
-        model.addAttribute("id", id);
-        return PREFIX + "punish.html";
-    }
-
-
-    *//**
-     * 保存处罚数据
-     * @param punish
-     * @param driverId
-     * @return
-     *//*
-    @ResponseBody
-    @RequestMapping(value = "/savePunish", method = RequestMethod.POST)
-    public ResultUtil savePunish(String punish, Integer driverId){
-        if(ToolUtil.isEmpty(punish)){
-            return ResultUtil.error("请添加有效的培训记录");
-        }
-        String[] split = punish.split(",");
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-        try {
-            List<DriverPunish> update = new ArrayList<>();
-            List<DriverPunish> add = new ArrayList<>();
-            for(String s : split){
-                String[] s1 = s.split("_");
-                if(ToolUtil.isNotEmpty(s1[0])){//修改
-                    DriverPunish driverPunish = driverPunishMapper.selectById(s1[0]);
-                    driverPunish.setDriverId(driverId);
-                    driverPunish.setPunishTime(sdf.parse(s1[1]));
-                    driverPunish.setPunishReason(s1[2]);
-                    driverPunish.setPunishReault(s1[3]);
-                    update.add(driverPunish);
-                }else{//添加
-                    DriverPunish driverPunish = new DriverPunish();
-                    driverPunish.setDriverId(driverId);
-                    driverPunish.setPunishTime(sdf.parse(s1[1]));
-                    driverPunish.setPunishReason(s1[2]);
-                    driverPunish.setPunishReault(s1[3]);
-                    add.add(driverPunish);
-                }
-            }
-            List<DriverPunish> driverPunishes = driverPunishMapper.queryAllPunish(driverId);
-            for(DriverPunish driverTrain : driverPunishes){
-                boolean b = true;
-                for(String s : split){
-                    String[] s1 = s.split("_");
-                    if(ToolUtil.isNotEmpty(s1[0]) && driverTrain.getId() == Integer.valueOf(s1[0])){
-                        b = false;
-                        break;
-                    }
-                }
-                if(b){
-                    driverTrainMapper.deleteById(driverTrain.getId());
-                }
-            }
-            if(update.size() > 0){
-                for(DriverPunish driverTrain : update){
-                    driverPunishMapper.updateById(driverTrain);
-                }
-            }
-            if(add.size() > 0){
-                for(DriverPunish driverTrain : add){
-                    driverPunishMapper.insert(driverTrain);
-                    new Thread(new Runnable() {
-                        @Override
-                        public void run() {
-                            if(pushMinistryOfTransport){//上传数据
-                                pushMinistryOfTransportUtil.ratedDriverPunish(driverTrain.getId());
-                            }
-                        }
-                    }).start();
-                }
-            }
-
-        }catch (Exception e){
-            e.printStackTrace();
-            return ResultUtil.runErr();
-        }
-        return ResultUtil.success();
-    }
-
-
-    *//**
-     * 获取所有处罚数据
-     * @param driverId
-     * @return
-     *//*
-    @ResponseBody
-    @RequestMapping(value = "/queryAllPunish", method = RequestMethod.POST)
-    public ResultUtil queryAllPunish(Integer driverId){
-        List<DriverPunish> driverPunishes = driverPunishMapper.queryAllPunish(driverId);
-        return ResultUtil.success(driverPunishes);
-    }
-
-
-    *//**
-     * 根据分公司ID获取加盟商
-     * @param oneId
-     * @return
-     *//*
-    @RequestMapping(value = "/oneChange")
-    @ResponseBody
-    public Object oneChange(@RequestParam Integer oneId) {
-        List<TCompany> list = new ArrayList<>();
-        if (SinataUtil.isNotEmpty(oneId)){
-            list = tCompanyService.selectList(new EntityWrapper<TCompany>()
-                    .eq("type", 3)
-                    .eq("superiorId", oneId)
-                    .notIn("flag",3)
-                    .notIn("state",1));
-        }
-        return list;
-    }
-
-    *//**
-     * 获取司机审核列表列表
-     *//*
-    @RequestMapping(value = "/list")
-    @ResponseBody
-    public Object list(String insertTime,
-                       String companyName,
-                       String phone,
-                       String account,
-                       Integer addType,
-                       Integer authState) {
-        String beginTime = null;
-        String endTime = null;
-        if (SinataUtil.isNotEmpty(insertTime)){
-            String[] timeArray = insertTime.split(" - ");
-            beginTime = timeArray[0];
-            endTime = timeArray[1];
-        }
-        Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
-        if (ShiroKit.getUser().getRoleType() != 1){
-            page.setRecords(null);
-        }else{
-            page.setRecords(tDriverService.getAuthDriverList(page,beginTime,endTime,companyName,phone,account,addType,authState));
-        }
-        return super.packForBT(page);
-    }
-
-    *//**
-     * 获取审核通过的司机列表
-     *//*
-    @RequestMapping(value = "/listYesDriver")
-    @ResponseBody
-    public Object listYesDriver(String insertTime,
-                       String companyName,
-                       String phone,
-                       String name,
-                       Integer addType,
-                       Integer authState) {
-        String beginTime = null;
-        String endTime = null;
-        if (SinataUtil.isNotEmpty(insertTime)){
-            String[] timeArray = insertTime.split(" - ");
-            beginTime = timeArray[0];
-            endTime = timeArray[1];
-        }
-        Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
-        page.setRecords(tDriverService.getDriverList(page,ShiroKit.getUser().getRoleType(),ShiroKit.getUser().getObjectId(),beginTime,endTime,companyName,phone,name,addType,authState));
-        return super.packForBT(page);
-    }
-
-    *//**
-     * 获取可被选择的车辆列表
-     *//*
-    @RequestMapping(value = "/selectCarList/{tDriverId}")
-    @ResponseBody
-    public Object selectCarList(@PathVariable Integer tDriverId,
-                                String carLicensePlate,
-                                String brandName,
-                                String modelName,
-                                String color,
-                                String serverStr) {
-        TDriver driver = tDriverService.selectById(tDriverId);
-        *//*String useCarIdStr = null;
-        //查询已被使用的车辆ID
-        if (SinataUtil.isNotEmpty(driver.getCarId())){
-            useCarIdStr = tDriverService.getUseCarIdStr(driver.getCarId());
-        }else{
-            useCarIdStr = tDriverService.getUseCarIdStr(null);
-        }*//*
-        //2020-08-21:新需求,已被绑定的车辆可以被继续绑定
-        Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
-        page.setRecords(tDriverService.getCanSelectCarList(page,ShiroKit.getUser().getRoleType(),ShiroKit.getUser().getObjectId(),null,carLicensePlate,brandName,modelName,color,serverStr));
-        return super.packForBT(page);
-
-    }
-
-    *//**
-     * 审核操作  1=通过 2=不通过
-     *//*
-    @RequestMapping(value = "/authOpt")
-    @ResponseBody
-    public Object authOpt(Integer id,Integer authState) {
-        if (SinataUtil.isNotEmpty(id) && SinataUtil.isNotEmpty(authState)){
-            TDriver tDriver = tDriverService.selectById(id);
-            Integer type = 0;
-            if (1 == authState){
-                type = 5;
-                tDriver.setAuthState(2);
-
-                new Thread(new Runnable() {
-                    @Override
-                    public void run() {
-                        if(pushMinistryOfTransport){//上传数据
-                            pushMinistryOfTransportUtil.baseInfoCompanyStat();
-                            pushMinistryOfTransportUtil.baseInfoDriver(id);
-                            pushMinistryOfTransportUtil.baseInfoDriverApp(id);
-                        }
-                    }
-                }).start();
-            }else{
-                type = 6;
-                tDriver.setAuthState(4);
-            }
-
-            Map<String,String> map = new HashMap<>();
-            map.put("uid", String.valueOf(tDriver.getId()));
-            map.put("type", String.valueOf(type));
-            String result = HttpRequestUtil.postRequest(PushURL.driver_auth_url, map);
-            System.out.println("司机注册审核发送短信 :【driverId="+tDriver.getId().toString()+"】,调用接口:"+result);
-
-            tDriverService.updateById(tDriver);
-        }
-        return SUCCESS_TIP;
-    }
-
-    *//**
-     * 更换车辆操作
-     *//*
-    @RequestMapping(value = "/selectCarOpt")
-    @ResponseBody
-    public Object selectCarOpt(Integer tDriverId,Integer carId) {
-        if (SinataUtil.isNotEmpty(tDriverId) && SinataUtil.isNotEmpty(carId)){
-            TDriver tDriver = tDriverService.selectById(tDriverId);
-            tDriver.setCarId(carId);
-            tDriverService.updateById(tDriver);
-        }
-        return SUCCESS_TIP;
-    }
-
-    *//**
-     * 新增司机审核列表
-     *//*
-    @RequestMapping(value = "/add")
-    @ResponseBody
-    public Object add(TDriver tDriver,@RequestParam String serverBox,@RequestParam String lineStr,Integer roleType,Integer companyType,Integer oneId,Integer twoId,Integer franchiseeId) {
-        //判断登录账户是否重复
-        int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", tDriver.getPhone()).in("authState", "1,2,3").ne("flag", 3));
-        if (count > 0){
-            return "error";
-        }
-        if (1 == roleType){  //平台
-            if (2 == companyType.intValue()){
-                if (SinataUtil.isNotEmpty(oneId)){
-                    tDriver.setCompanyId(oneId);
-                }
-                if (SinataUtil.isNotEmpty(twoId)){
-                    tDriver.setFranchiseeId(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);
-            tDriver.setAuthState(2);
-        }else if (2 == roleType){  //分公司
-            if (SinataUtil.isNotEmpty(ShiroKit.getUser().getObjectId())){
-                tDriver.setCompanyId(ShiroKit.getUser().getObjectId());
-            }
-            if (SinataUtil.isNotEmpty(franchiseeId)){
-                tDriver.setFranchiseeId(franchiseeId);
-            }
-            tDriver.setAddType(3);
-            tDriver.setIsPlatCar(2);
-            tDriver.setAuthState(1);
-            tDriver.setAddObjectId(ShiroKit.getUser().getObjectId());
-        }else if (3 == roleType){  //加盟商
-            TCompany tCompany = tCompanyService.selectById(ShiroKit.getUser().getObjectId());
-            if (SinataUtil.isNotEmpty(tCompany)){
-                tDriver.setCompanyId(tCompany.getSuperiorId());
-            }
-            if (SinataUtil.isNotEmpty(ShiroKit.getUser().getObjectId())){
-                tDriver.setFranchiseeId(ShiroKit.getUser().getObjectId());
-            }
-            tDriver.setAddType(4);
-            tDriver.setIsPlatCar(2);
-            tDriver.setAuthState(1);
-            tDriver.setAddObjectId(ShiroKit.getUser().getObjectId());
-        }
-        tDriver.setInsertTime(new Date());
-        tDriver.setInsertUser(ShiroKit.getUser().getId());
-//        tDriver.setPassword(MD5Util.encrypt(tDriver.getPassword()));
-
-        tDriver.setPassword(ShiroKit.md5(tDriver.getPassword(), "SA;d5#"));
-
-        tDriverService.insert(tDriver);
-
-        //添加经营业务
-        String[] serverArray = serverBox.split(",");
-        for (int i=0;i<serverArray.length;i++){
-            TDriverService service = new TDriverService();
-            service.setDriverId(tDriver.getId());
-            service.setType(Integer.valueOf(serverArray[i]));
-            tDriverServiceService.insert(service);
-
-            if (3 == Integer.valueOf(serverArray[i])){
-                //添加线路
-                if (SinataUtil.isNotEmpty(lineStr)){
-                    addLine(lineStr,tDriver.getId());
-                }
-            }
-        }
-
-        return SUCCESS_TIP;
-    }
-
-    *//**
-     * 添加线路
-     * @param subArr
-     * @param id
-     *//*
-    public void addLine(String subArr,Integer id){
-        JSONArray jsonArray = JSON.parseArray(subArr);
-        int size = jsonArray.size();
-        for (int i = 0; i < size; i++){
-            JSONObject jsonObject = jsonArray.getJSONObject(i);
-            TDriverLine line = new TDriverLine();
-            line.setCreateTime(new Date());
-            line.setAddTime(jsonObject.getString("time"));
-            line.setLineId(jsonObject.getInteger("lineId"));
-            line.setDriverId(id);
-            tDriverLineService.insert(line);
-        }
-    }
-
-
-    *//**
-     * 删除司机审核列表
-     *//*
-    @RequestMapping(value = "/delete")
-    @ResponseBody
-    public Object delete(@RequestParam Integer tDriverId) {
-        TDriver driver = tDriverService.selectById(tDriverId);
-        driver.setFlag("3");
-        tDriverService.updateById(driver);
-        return SUCCESS_TIP;
-    }
-    *//**
-     * 操作司机状态
-     *//*
-    @RequestMapping(value = "/optDriver")
-    @ResponseBody
-    public Object optDriver(@RequestParam Integer driverId,@RequestParam String remark,@RequestParam Integer optType) {
-        if (SinataUtil.isNotEmpty(driverId) && SinataUtil.isNotEmpty(optType)){
-            TDriver tDriver = tDriverService.selectById(driverId);
-            if (1 == optType){  //解冻
-                tDriver.setAuthState(2);
-                new Thread(new Runnable() {
-                    @Override
-                    public void run() {
-                        if(pushMinistryOfTransport){//上传数据
-                            pushMinistryOfTransportUtil.baseInfoCompanyStat();
-                            pushMinistryOfTransportUtil.baseInfoDriver(driverId);
-                        }
-                    }
-                }).start();
-            }else if (2 == optType){  //冻结
-                tDriver.setAuthState(3);
-                new Thread(new Runnable() {
-                    @Override
-                    public void run() {
-                        if(pushMinistryOfTransport){//上传数据
-                            pushMinistryOfTransportUtil.baseInfoCompanyStat();
-                            pushMinistryOfTransportUtil.baseInfoDriver(driverId);
-                        }
-                    }
-                }).start();
-            }
-            tDriver.setRemark(remark);
-            tDriverService.updateById(tDriver);
-        }
-        return SUCCESS_TIP;
-    }
-
-    *//**
-     * 修改司机审核列表
-     *//*
-    @RequestMapping(value = "/update")
-    @ResponseBody
-    public Object update(TDriver tDriver,@RequestParam String serverBox,@RequestParam String lineStr,Integer roleType,Integer companyType,Integer oneId,Integer twoId,Integer franchiseeId) {
-        TDriver obj = tDriverService.selectById(tDriver.getId());
-        if (!obj.getPhone().equals(tDriver.getPhone())){
-            //判断登录账户是否重复
-            int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", tDriver.getPhone()).in("authState", "1,2,3"));
-            if (count > 0){
-                return "error";
-            }
-        }
-        if (1 == roleType){  //平台
-            if (2 == companyType.intValue()){
-                if (SinataUtil.isNotEmpty(oneId)){
-                    tDriver.setCompanyId(oneId);
-                }
-                if (SinataUtil.isNotEmpty(twoId)){
-                    tDriver.setFranchiseeId(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);
-            }
-        }else if (3 == roleType){  //加盟商
-            TCompany tCompany = tCompanyService.selectById(ShiroKit.getUser().getObjectId());
-            if (SinataUtil.isNotEmpty(tCompany)){
-                tDriver.setCompanyId(tCompany.getSuperiorId());
-            }
-            if (SinataUtil.isNotEmpty(ShiroKit.getUser().getObjectId())){
-                tDriver.setFranchiseeId(ShiroKit.getUser().getObjectId());
-            }
-        }
-        tDriver.setUpdateTime(new Date());
-        tDriver.setUpdateUser(ShiroKit.getUser().getId());
-//        tDriver.setPassword(MD5Util.encrypt(tDriver.getPassword()));
-        tDriver.setPassword(ShiroKit.md5(tDriver.getPassword(), "SA;d5#"));
-        tDriverService.updateById(tDriver);
-
-        //删除业务
-        tDriverServiceService.delete(new EntityWrapper<TDriverService>().eq("driverId",tDriver.getId()));
-
-        //删除线路
-        tDriverLineService.delete(new EntityWrapper<TDriverLine>().eq("driverId",tDriver.getId()));
-
-        //添加经营业务
-        String[] serverArray = serverBox.split(",");
-        for (int i=0;i<serverArray.length;i++){
-            TDriverService service = new TDriverService();
-            service.setDriverId(tDriver.getId());
-            service.setType(Integer.valueOf(serverArray[i]));
-            tDriverServiceService.insert(service);
-
-            if (3 == Integer.valueOf(serverArray[i])){
-                //添加线路
-                if (SinataUtil.isNotEmpty(lineStr)){
-                    addLine(lineStr,tDriver.getId());
-                }
-            }
-        }
-
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                if(pushMinistryOfTransport){//上传数据
-                    pushMinistryOfTransportUtil.baseInfoDriver(tDriver.getId());
-                }
-            }
-        }).start();
-
-        return SUCCESS_TIP;
-    }
-
-    *//**
-     * 下载模板
-     * @param request
-     * @param response
-     *//*
-    @RequestMapping(value = "/uploadDriverModel")
-    public void uploadDriverModel(HttpServletRequest request, HttpServletResponse response) {
-        // 表格数据【封装】
-        List<List<String>> dataList = new ArrayList<List<String>>();
-
-        String title = "";
-
-        // 首行【封装】
-        List<String> shellList = new ArrayList<String>();
-        if (ShiroKit.getUser().getRoleType() == 1){
-            title = "平台导入司机模板";
-
-            shellList.add("司机名称");
-            shellList.add("所属机构[平台司机/加盟司机]");
-            shellList.add("所属分公司[提示:加盟司机选填]");
-            shellList.add("所属加盟商[提示:加盟司机选填]");
-            shellList.add("性别[男/女]");
-            shellList.add("驾驶证号码");
-            shellList.add("驾龄");
-            shellList.add("身份证号");
-            shellList.add("居住地址");
-            shellList.add("出租车资格证号");
-            shellList.add("工号[选填]");
-            shellList.add("经营业务:专车[是/否]");
-            shellList.add("经营业务:出租车[是/否]");
-            shellList.add("经营业务:跨城出行[是/否]");
-            shellList.add("经营业务:小件同城物流[是/否]");
-            shellList.add("经营业务:小件跨城物流[是/否]");
-            shellList.add("经营业务:包车[是/否]");
-            shellList.add("登录账号[手机号]");
-            shellList.add("登录密码[密码长度为6-18]");
-        }else if (ShiroKit.getUser().getRoleType() == 2){
-            title = "分公司导入司机模板";
-
-            shellList.add("司机名称");
-            shellList.add("所属加盟商[选填]");
-            shellList.add("性别[男/女]");
-            shellList.add("驾驶证号码");
-            shellList.add("驾龄");
-            shellList.add("身份证号");
-            shellList.add("居住地址");
-            shellList.add("出租车资格证号");
-            shellList.add("工号[选填]");
-            shellList.add("经营业务:专车[是/否]");
-            shellList.add("经营业务:出租车[是/否]");
-            shellList.add("经营业务:跨城出行[是/否]");
-            shellList.add("经营业务:小件同城物流[是/否]");
-            shellList.add("经营业务:小件跨城物流[是/否]");
-            shellList.add("经营业务:包车[是/否]");
-            shellList.add("登录账号[手机号]");
-            shellList.add("登录密码[密码长度为6-18]");
-        }else if (ShiroKit.getUser().getRoleType() == 3){
-            title = "加盟商导入司机模板";
-
-            shellList.add("司机名称");
-            shellList.add("性别[男/女]");
-            shellList.add("驾驶证号码");
-            shellList.add("驾龄");
-            shellList.add("身份证号");
-            shellList.add("居住地址");
-            shellList.add("出租车资格证号");
-            shellList.add("工号[选填]");
-            shellList.add("经营业务:专车[是/否]");
-            shellList.add("经营业务:出租车[是/否]");
-            shellList.add("经营业务:跨城出行[是/否]");
-            shellList.add("经营业务:小件同城物流[是/否]");
-            shellList.add("经营业务:小件跨城物流[是/否]");
-            shellList.add("经营业务:包车[是/否]");
-            shellList.add("登录账号[手机号]");
-            shellList.add("登录密码[密码长度为6-18]");
-        }
-        dataList.add(shellList);
-
-        try {
-            // 调用工具类进行导出
-            ExcelExportUtil.easySheet(title+DateUtil.formatDate(new Date(), "YYYYMMddHHmmss"), title, dataList, request, response);
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-    }
-
-    *//**
-     * 导入操作
-     * @param request
-     * @return
-     *//*
-    @RequestMapping(value="/exportDriver",method = RequestMethod.POST)
-    @ResponseBody
-    public Object exportDriver(HttpServletRequest request){
-        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
-        MultipartFile file = (MultipartFile) multipartRequest.getFile("myfile");
-        try {
-            if (ShiroKit.getUser().getRoleType() == 1){
-                Workbook book = WoUtil.ImportFile(file);
-                Sheet sh = book.getSheetAt(0);   //获取到第一个表
-                for (int i = 1; i <= sh.getLastRowNum(); i++) {
-                    Row row = sh.getRow(i);
-
-                    Cell cell0 = row.getCell(0);  //司机名称
-                    String zero = null;
-                    if (SinataUtil.isNotEmpty(cell0)){
-                        zero = String.valueOf(cell0.getStringCellValue()).trim();
-                    }
-
-                    Cell cell1 = row.getCell(1);  //所属机构[平台司机/加盟司机]
-                    String one = null;
-                    if (SinataUtil.isNotEmpty(cell1)){
-                        one = String.valueOf(cell1.getStringCellValue()).trim();
-                    }
-
-                    Cell cell2 = row.getCell(2);  //所属分公司[提示:加盟司机选填]
-                    String two = null;
-                    if (SinataUtil.isNotEmpty(cell2)){
-                        two = String.valueOf(cell2.getStringCellValue()).trim();
-                    }
-
-                    Cell cell3 = row.getCell(3);  //所属加盟商[提示:加盟司机选填]
-                    String three = null;
-                    if (SinataUtil.isNotEmpty(cell3)){
-                        three = String.valueOf(cell3.getStringCellValue()).trim();
-                    }
-
-                    Cell cell4 = row.getCell(4);  //性别[男/女]
-                    String four = null;
-                    if (SinataUtil.isNotEmpty(cell4)){
-                        four = String.valueOf(cell4.getStringCellValue()).trim();
-                    }
-
-                    Cell cell5 = row.getCell(5);  //驾驶证号码
-                    String five = null;
-                    if (SinataUtil.isNotEmpty(cell5)){
-                        five = String.valueOf(cell5.getStringCellValue()).trim();
-                    }
-
-                    Cell cell6 = row.getCell(6);  //驾龄
-                    String six = null;
-                    if (SinataUtil.isNotEmpty(cell6)){
-                        six = String.valueOf(cell6.getStringCellValue()).trim();
-                    }
-
-                    Cell cell7 = row.getCell(7);  //身份证号
-                    String seven = null;
-                    if (SinataUtil.isNotEmpty(cell7)){
-                        seven = String.valueOf(cell7.getStringCellValue()).trim();
-                    }
-
-                    Cell cell8 = row.getCell(8);  //居住地址
-                    String eight = null;
-                    if (SinataUtil.isNotEmpty(cell8)){
-                        eight = String.valueOf(cell8.getStringCellValue()).trim();
-                    }
-
-                    Cell cell9 = row.getCell(9);  //出租车资格证号
-                    String nine = null;
-                    if (SinataUtil.isNotEmpty(cell9)){
-                        nine = String.valueOf(cell9.getStringCellValue()).trim();
-                    }
-
-                    Cell cell10 = row.getCell(10);  //工号[选填]
-                    String ten = null;
-                    if (SinataUtil.isNotEmpty(cell10)){
-                        ten = String.valueOf(cell10.getStringCellValue()).trim();
-                    }
-
-                    Cell cell11 = row.getCell(11);  //经营业务:专车[是/否]
-                    String eleven = null;
-                    if (SinataUtil.isNotEmpty(cell11)){
-                        eleven = String.valueOf(cell11.getStringCellValue()).trim();
-                    }
-
-                    Cell cell12 = row.getCell(12);  //经营业务:专车[是/否]
-                    String twelve = null;
-                    if (SinataUtil.isNotEmpty(cell12)){
-                        twelve = String.valueOf(cell12.getStringCellValue()).trim();
-                    }
-
-                    Cell cell13 = row.getCell(13);  //经营业务:跨城出行[是/否]
-                    String thirteen = null;
-                    if (SinataUtil.isNotEmpty(cell13)){
-                        thirteen = String.valueOf(cell13.getStringCellValue()).trim();
-                    }
-
-                    Cell cell14 = row.getCell(14);  //经营业务:小件同城物流[是/否]
-                    String fourteen = null;
-                    if (SinataUtil.isNotEmpty(cell14)){
-                        fourteen = String.valueOf(cell14.getStringCellValue()).trim();
-                    }
-
-                    Cell cell15 = row.getCell(15);  //经营业务:小件跨城物流[是/否]
-                    String fifteen = null;
-                    if (SinataUtil.isNotEmpty(cell15)){
-                        fifteen = String.valueOf(cell15.getStringCellValue()).trim();
-                    }
-
-                    Cell cell16 = row.getCell(16);  //经营业务:包车[是/否]
-                    String sixteen = null;
-                    if (SinataUtil.isNotEmpty(cell16)){
-                        sixteen = String.valueOf(cell16.getStringCellValue()).trim();
-                    }
-
-                    Cell cell17 = row.getCell(17);  //登录账号[手机号]
-                    String seventeen = null;
-                    if (SinataUtil.isNotEmpty(cell17)){
-                        seventeen = String.valueOf(cell17.getStringCellValue()).trim();
-                    }
-
-                    Cell cell18 = row.getCell(18);  //登录密码[密码长度为6-18]
-                    String eighteen = null;
-                    if (SinataUtil.isNotEmpty(cell18)){
-                        eighteen = String.valueOf(cell18.getStringCellValue()).trim();
-                    }
-
-                    if (SinataUtil.isEmpty(zero) || SinataUtil.isEmpty(one) || SinataUtil.isEmpty(four)
-                            || SinataUtil.isEmpty(five) || SinataUtil.isEmpty(six) || SinataUtil.isEmpty(nine)
-                            || SinataUtil.isEmpty(eleven) || SinataUtil.isEmpty(twelve) || SinataUtil.isEmpty(thirteen)
-                            || SinataUtil.isEmpty(fourteen) || SinataUtil.isEmpty(fifteen) || SinataUtil.isEmpty(sixteen)
-                            || SinataUtil.isEmpty(seventeen)|| SinataUtil.isEmpty(eighteen)){
-                        return new ErrorTip(500, "单元格不能为空");
-                    }else{
-                        //判断账号是否存在
-                        int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", seventeen).in("authState", "1,2,3").ne("flag", 3));
-                        if (count > 0){
-                            continue;
-                        }
-
-                        //判断所属机构
-                        if (!one.equals("平台司机") && !one.equals("加盟司机")){
-                            return new ErrorTip(500, "所属机构内容不正确");
-                        }
-                        //判断性别
-                        if (!four.equals("男") && !four.equals("女")){
-                            return new ErrorTip(500, "性别内容不正确");
-                        }
-                        //判断经营业务【专车】
-                        if (!eleven.equals("是") && !eleven.equals("否")){
-                            return new ErrorTip(500, "经营业务【专车】内容不正确");
-                        }
-                        //判断经营业务【出租车】
-                        if (!twelve.equals("是") && !twelve.equals("否")){
-                            return new ErrorTip(500, "经营业务【出租车】内容不正确");
-                        }
-                        //判断经营业务【跨城出行】
-                        if (!thirteen.equals("是") && !thirteen.equals("否")){
-                            return new ErrorTip(500, "经营业务【跨城出行】内容不正确");
-                        }
-                        //判断经营业务【小件同城物流】
-                        if (!fourteen.equals("是") && !fourteen.equals("否")){
-                            return new ErrorTip(500, "经营业务【小件同城物流】内容不正确");
-                        }
-                        //判断经营业务【小件跨城物流】
-                        if (!fifteen.equals("是") && !fifteen.equals("否")){
-                            return new ErrorTip(500, "经营业务【小件跨城物流】内容不正确");
-                        }
-                        //判断经营业务【包车】
-                        if (!sixteen.equals("是") && !sixteen.equals("否")){
-                            return new ErrorTip(500, "经营业务【包车】内容不正确");
-                        }
-                        //判断驾龄
-                        if (!isInteger(six)){
-                            return new ErrorTip(500, "驾龄格式不正确");
-                        }
-                        //判断手机号
-                        if (!isPhone(seventeen)){
-                            return new ErrorTip(500, "登录账号[手机号]格式不正确");
-                        }
-                        //判断登录密码
-                        if (!isPassword(eighteen)){
-                            return new ErrorTip(500, "登录密码格式不正确");
-                        }
-
-                        //查找平台公司
-                        TCompany platCompany = itCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1).notIn("flag", "3").last(" limit 1"));
-                        Integer companyId = platCompany.getId();
-                        Integer franchiseeId = 0;
-                        if ("加盟司机".equals(one)){
-                            //判断所属分公司是否存在
-                            if (SinataUtil.isNotEmpty(two)){
-                                TCompany company = itCompanyService.selectOne(new EntityWrapper<TCompany>().eq("name", two).eq("type", 2).notIn("flag", "3").last(" limit 1"));
-                                if (SinataUtil.isNotEmpty(company)){
-                                    companyId = company.getId();
-                                    //判断加盟商是否存在
-                                    if (SinataUtil.isNotEmpty(three)){
-                                        TCompany franchisee = itCompanyService.selectOne(new EntityWrapper<TCompany>().eq("superiorId",company.getId()).eq("name", three).eq("type", 3).notIn("flag", "3").last(" limit 1"));
-                                        if (SinataUtil.isNotEmpty(franchisee)){
-                                            franchiseeId = franchisee.getId();
-                                        }
-                                    }
-                                }
-                            }
-                        }
-                        TDriver driver = new TDriver();
-                        driver.setAccount(seventeen);
-                        driver.setJobNumber(ten);
-                        driver.setPhone(seventeen);
-                        driver.setPassword(ShiroKit.md5(eighteen, "SA;d5#"));
-                        driver.setName(zero);
-                        if ("男".equals(four)){
-                            driver.setSex(1);
-                        }else if ("女".equals(four)){
-                            driver.setSex(2);
-                        }
-                        driver.setIdCard(seven);
-                        driver.setDriverAge(Integer.valueOf(six));
-                        driver.setDriveCard(five);
-                        driver.setTaxiAptitudeCard(nine);
-                        if ("平台司机".equals(one)){
-                            driver.setIsPlatCar(1);
-                        }else if ("加盟司机".equals(one)){
-                            driver.setIsPlatCar(2);
-                        }
-                        driver.setCompanyId(companyId);
-                        driver.setFranchiseeId(franchiseeId);
-                        driver.setState(2);
-                        driver.setAuthState(2);
-                        driver.setFlag("1");
-                        driver.setInsertUser(ShiroKit.getUser().getId());
-                        driver.setInsertTime(new Date());
-                        driver.setAddType(2);
-                        driver.setAddObjectId(ShiroKit.getUser().getObjectId());
-                        if(SinataUtil.isNotEmpty(eight)){
-                            driver.setDriverAddress(eight);
-                        }
-                        tDriverService.insert(driver);
-
-
-                        //添加专车服务模式
-                        if ("是".equals(eleven)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(1);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加出租车服务模式
-                        if ("是".equals(twelve)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(2);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加跨城出行服务模式
-                        if ("是".equals(thirteen)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(3);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加小件同城物流服务模式
-                        if ("是".equals(fourteen)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(4);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加小件跨城物流服务模式
-                        if ("是".equals(fifteen)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(5);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加包车服务模式
-                        if ("是".equals(sixteen)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(6);
-                            itDriverServiceService.insert(service);
-                        }
-                    }
-                }
-            }else if (ShiroKit.getUser().getRoleType() == 2){
-                Workbook book = WoUtil.ImportFile(file);
-                Sheet sh = book.getSheetAt(0);   //获取到第一个表
-                for (int i = 1; i <= sh.getLastRowNum(); i++) {
-                    Row row = sh.getRow(i);
-
-                    Cell cell0 = row.getCell(0);  //司机名称
-                    String zero = null;
-                    if (SinataUtil.isNotEmpty(cell0)){
-                        zero = String.valueOf(cell0.getStringCellValue()).trim();
-                    }
-
-                    Cell cell1 = row.getCell(1);  //所属加盟商[选填]
-                    String one = null;
-                    if (SinataUtil.isNotEmpty(cell1)){
-                        one = String.valueOf(cell1.getStringCellValue()).trim();
-                    }
-
-                    Cell cell2 = row.getCell(2);  //性别[男/女]
-                    String two = null;
-                    if (SinataUtil.isNotEmpty(cell2)){
-                        two = String.valueOf(cell2.getStringCellValue()).trim();
-                    }
-
-                    Cell cell3 = row.getCell(3);  //驾驶证号码
-                    String three = null;
-                    if (SinataUtil.isNotEmpty(cell3)){
-                        three = String.valueOf(cell3.getStringCellValue()).trim();
-                    }
-
-                    Cell cell4 = row.getCell(4);  //驾龄
-                    String four = null;
-                    if (SinataUtil.isNotEmpty(cell4)){
-                        four = String.valueOf(cell4.getStringCellValue()).trim();
-                    }
-
-                    Cell cell5 = row.getCell(5);  //身份证号
-                    String five = null;
-                    if (SinataUtil.isNotEmpty(cell5)){
-                        five = String.valueOf(cell5.getStringCellValue()).trim();
-                    }
-
-                    Cell cell6 = row.getCell(6);  //居住地址
-                    String six = null;
-                    if (SinataUtil.isNotEmpty(cell6)){
-                        six = String.valueOf(cell6.getStringCellValue()).trim();
-                    }
-
-                    Cell cell7 = row.getCell(7);  //出租车资格证号
-                    String seven = null;
-                    if (SinataUtil.isNotEmpty(cell7)){
-                        seven = String.valueOf(cell7.getStringCellValue()).trim();
-                    }
-
-                    Cell cell8 = row.getCell(8);  //工号[选填]
-                    String eight = null;
-                    if (SinataUtil.isNotEmpty(cell8)){
-                        eight = String.valueOf(cell8.getStringCellValue()).trim();
-                    }
-
-                    Cell cell9 = row.getCell(9);  //经营业务:专车[是/否]
-                    String nine = null;
-                    if (SinataUtil.isNotEmpty(cell9)){
-                        nine = String.valueOf(cell9.getStringCellValue()).trim();
-                    }
-
-                    Cell cell10 = row.getCell(10);  //经营业务:出租车[是/否]
-                    String ten = null;
-                    if (SinataUtil.isNotEmpty(cell10)){
-                        ten = String.valueOf(cell10.getStringCellValue()).trim();
-                    }
-
-                    Cell cell11 = row.getCell(11);  //经营业务:跨城出行[是/否]
-                    String eleven = null;
-                    if (SinataUtil.isNotEmpty(cell11)){
-                        eleven = String.valueOf(cell11.getStringCellValue()).trim();
-                    }
-
-                    Cell cell12 = row.getCell(12);  //经营业务:小件同城物流[是/否]
-                    String twelve = null;
-                    if (SinataUtil.isNotEmpty(cell12)){
-                        twelve = String.valueOf(cell12.getStringCellValue()).trim();
-                    }
-
-                    Cell cell13 = row.getCell(13);  //经营业务:小件跨城物流[是/否]
-                    String thirteen = null;
-                    if (SinataUtil.isNotEmpty(cell13)){
-                        thirteen = String.valueOf(cell13.getStringCellValue()).trim();
-                    }
-
-                    Cell cell14 = row.getCell(14);  //经营业务:包车[是/否]
-                    String fourteen = null;
-                    if (SinataUtil.isNotEmpty(cell14)){
-                        fourteen = String.valueOf(cell14.getStringCellValue()).trim();
-                    }
-
-                    Cell cell15 = row.getCell(15);  //登录账号[手机号]
-                    String fifteen = null;
-                    if (SinataUtil.isNotEmpty(cell15)){
-                        fifteen = String.valueOf(cell15.getStringCellValue()).trim();
-                    }
-
-                    Cell cell16 = row.getCell(16);  //登录密码[密码长度为6-18]
-                    String sixteen = null;
-                    if (SinataUtil.isNotEmpty(cell16)){
-                        sixteen = String.valueOf(cell16.getStringCellValue()).trim();
-                    }
-                    if (SinataUtil.isEmpty(zero) || SinataUtil.isEmpty(two) || SinataUtil.isEmpty(three) || SinataUtil.isEmpty(four)
-                            || SinataUtil.isEmpty(five) || SinataUtil.isEmpty(seven)
-                            || SinataUtil.isEmpty(nine) || SinataUtil.isEmpty(ten)
-                            || SinataUtil.isEmpty(eleven) || SinataUtil.isEmpty(twelve) || SinataUtil.isEmpty(thirteen)
-                            || SinataUtil.isEmpty(fourteen) || SinataUtil.isEmpty(fifteen) || SinataUtil.isEmpty(sixteen)){
-                        return new ErrorTip(500, "单元格不能为空");
-                    }else{
-                        //判断账号是否存在
-                        int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", fifteen).in("authState", "1,2,3").ne("flag", 3));
-                        if (count > 0){
-                            continue;
-                        }
-                        //判断性别
-                        if (!two.equals("男") && !two.equals("女")){
-                            return new ErrorTip(500, "性别内容不正确");
-                        }
-                        //判断经营业务【专车】
-                        if (!nine.equals("是") && !nine.equals("否")){
-                            return new ErrorTip(500, "经营业务【专车】内容不正确");
-                        }
-                        //判断经营业务【出租车】
-                        if (!ten.equals("是") && !ten.equals("否")){
-                            return new ErrorTip(500, "经营业务【出租车】内容不正确");
-                        }
-                        //判断经营业务【跨城出行】
-                        if (!eleven.equals("是") && !eleven.equals("否")){
-                            return new ErrorTip(500, "经营业务【跨城出行】内容不正确");
-                        }
-                        //判断经营业务【小件同城物流】
-                        if (!twelve.equals("是") && !twelve.equals("否")){
-                            return new ErrorTip(500, "经营业务【小件同城物流】内容不正确");
-                        }
-                        //判断经营业务【小件跨城物流】
-                        if (!thirteen.equals("是") && !thirteen.equals("否")){
-                            return new ErrorTip(500, "经营业务【小件跨城物流】内容不正确");
-                        }
-                        //判断经营业务【包车】
-                        if (!fourteen.equals("是") && !fourteen.equals("否")){
-                            return new ErrorTip(500, "经营业务【包车】内容不正确");
-                        }
-                        //判断驾龄
-                        if (!isInteger(four)){
-                            return new ErrorTip(500, "驾龄格式不正确");
-                        }
-                        //判断手机号
-                        if (!isPhone(fifteen)){
-                            return new ErrorTip(500, "登录账号[手机号]格式不正确");
-                        }
-                        //判断登录密码
-                        if (!isPassword(sixteen)){
-                            return new ErrorTip(500, "登录密码格式不正确");
-                        }
-                        //查找平台公司
-                        Integer companyId = ShiroKit.getUser().getObjectId();
-                        Integer franchiseeId = 0;
-                        //判断所属分公司是否存在
-                        if (SinataUtil.isNotEmpty(one)){
-                            TCompany franchisee = itCompanyService.selectOne(new EntityWrapper<TCompany>().eq("superiorId",companyId).eq("name", one).eq("type", 3).notIn("flag", "3").last(" limit 1"));
-                            if (SinataUtil.isNotEmpty(franchisee)){
-                                franchiseeId = franchisee.getId();
-                            }
-                        }
-
-                        TDriver driver = new TDriver();
-                        driver.setAccount(fifteen);
-                        driver.setJobNumber(eight);
-                        driver.setPhone(fifteen);
-                        driver.setPassword(ShiroKit.md5(sixteen, "SA;d5#"));
-                        driver.setName(zero);
-                        if ("男".equals(two)){
-                            driver.setSex(1);
-                        }else if ("女".equals(two)){
-                            driver.setSex(2);
-                        }
-                        driver.setIdCard(five);
-                        driver.setDriverAge(Integer.valueOf(four));
-                        driver.setDriveCard(three);
-                        driver.setTaxiAptitudeCard(seven);
-                        driver.setIsPlatCar(2);
-                        driver.setCompanyId(companyId);
-                        driver.setFranchiseeId(franchiseeId);
-                        driver.setState(1);
-                        driver.setAuthState(1);
-                        driver.setFlag("1");
-                        driver.setInsertUser(ShiroKit.getUser().getId());
-                        driver.setInsertTime(new Date());
-                        driver.setAddType(3);
-                        driver.setAddObjectId(ShiroKit.getUser().getObjectId());
-                        if (SinataUtil.isNotEmpty(six)){
-                            driver.setDriverAddress(six);
-                        }
-                        tDriverService.insert(driver);
-
-                        //添加专车服务模式
-                        if ("是".equals(nine)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(1);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加出租车服务模式
-                        if ("是".equals(ten)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(2);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加跨城出行服务模式
-                        if ("是".equals(eleven)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(3);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加小件同城物流服务模式
-                        if ("是".equals(twelve)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(4);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加小件跨城物流服务模式
-                        if ("是".equals(thirteen)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(5);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加包车服务模式
-                        if ("是".equals(fourteen)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(6);
-                            itDriverServiceService.insert(service);
-                        }
-
-                    }
-                }
-            }else if (ShiroKit.getUser().getRoleType() == 3){
-                Workbook book = WoUtil.ImportFile(file);
-                Sheet sh = book.getSheetAt(0);   //获取到第一个表
-                for (int i = 1; i <= sh.getLastRowNum(); i++) {
-                    Row row = sh.getRow(i);
-
-                    Cell cell0 = row.getCell(0);  //司机名称
-                    String zero = null;
-                    if (SinataUtil.isNotEmpty(cell0)){
-                        zero = String.valueOf(cell0.getStringCellValue()).trim();
-                    }
-
-                    Cell cell2 = row.getCell(1);  //性别[男/女]
-                    String one = null;
-                    if (SinataUtil.isNotEmpty(cell2)){
-                        one = String.valueOf(cell2.getStringCellValue()).trim();
-                    }
-
-                    Cell cell3 = row.getCell(2);  //驾驶证号码
-                    String two = null;
-                    if (SinataUtil.isNotEmpty(cell3)){
-                        two = String.valueOf(cell3.getStringCellValue()).trim();
-                    }
-
-                    Cell cell4 = row.getCell(3);  //驾龄
-                    String three = null;
-                    if (SinataUtil.isNotEmpty(cell4)){
-                        three = String.valueOf(cell4.getStringCellValue()).trim();
-                    }
-
-                    Cell cell5 = row.getCell(4);  //身份证号
-                    String four = null;
-                    if (SinataUtil.isNotEmpty(cell5)){
-                        four = String.valueOf(cell5.getStringCellValue()).trim();
-                    }
-
-                    Cell cell6 = row.getCell(5);  //居住地址
-                    String five = null;
-                    if (SinataUtil.isNotEmpty(cell6)){
-                        five = String.valueOf(cell6.getStringCellValue()).trim();
-                    }
-
-                    Cell cell7 = row.getCell(6);  //出租车资格证号
-                    String six = null;
-                    if (SinataUtil.isNotEmpty(cell7)){
-                        six = String.valueOf(cell7.getStringCellValue()).trim();
-                    }
-
-                    Cell cell8 = row.getCell(7);  //工号[选填]
-                    String seven = null;
-                    if (SinataUtil.isNotEmpty(cell8)){
-                        seven = String.valueOf(cell8.getStringCellValue()).trim();
-                    }
-
-                    Cell cell9 = row.getCell(8);  //经营业务:专车[是/否]
-                    String eight = null;
-                    if (SinataUtil.isNotEmpty(cell9)){
-                        eight = String.valueOf(cell9.getStringCellValue()).trim();
-                    }
-
-                    Cell cell10 = row.getCell(9);  //经营业务:出租车[是/否]
-                    String nine = null;
-                    if (SinataUtil.isNotEmpty(cell10)){
-                        nine = String.valueOf(cell10.getStringCellValue()).trim();
-                    }
-
-                    Cell cell11 = row.getCell(10);  //经营业务:跨城出行[是/否]
-                    String ten = null;
-                    if (SinataUtil.isNotEmpty(cell11)){
-                        ten = String.valueOf(cell11.getStringCellValue()).trim();
-                    }
-
-                    Cell cell12 = row.getCell(11);  //经营业务:小件同城物流[是/否]
-                    String eleven = null;
-                    if (SinataUtil.isNotEmpty(cell12)){
-                        eleven = String.valueOf(cell12.getStringCellValue()).trim();
-                    }
-
-                    Cell cell13 = row.getCell(12);  //经营业务:小件跨城物流[是/否]
-                    String twelve = null;
-                    if (SinataUtil.isNotEmpty(cell13)){
-                        twelve = String.valueOf(cell13.getStringCellValue()).trim();
-                    }
-
-                    Cell cell14 = row.getCell(13);  //经营业务:包车[是/否]
-                    String thirteen = null;
-                    if (SinataUtil.isNotEmpty(cell14)){
-                        thirteen = String.valueOf(cell14.getStringCellValue()).trim();
-                    }
-
-                    Cell cell15 = row.getCell(14);  //登录账号[手机号]
-                    String fourteen = null;
-                    if (SinataUtil.isNotEmpty(cell15)){
-                        fourteen = String.valueOf(cell15.getStringCellValue()).trim();
-                    }
-
-                    Cell cell16 = row.getCell(15);  //登录密码[密码长度为6-18]
-                    String fifteen = null;
-                    if (SinataUtil.isNotEmpty(cell16)){
-                        fifteen = String.valueOf(cell16.getStringCellValue()).trim();
-                    }
-                    if (SinataUtil.isEmpty(zero) || SinataUtil.isEmpty(one)  || SinataUtil.isEmpty(two) || SinataUtil.isEmpty(three) || SinataUtil.isEmpty(four)
-                            || SinataUtil.isEmpty(six) || SinataUtil.isEmpty(eight)
-                            || SinataUtil.isEmpty(nine) || SinataUtil.isEmpty(ten)
-                            || SinataUtil.isEmpty(eleven) || SinataUtil.isEmpty(twelve) || SinataUtil.isEmpty(thirteen)
-                            || SinataUtil.isEmpty(fourteen) || SinataUtil.isEmpty(fifteen) ){
-                        return new ErrorTip(500, "单元格不能为空");
-                    }else{
-                        //判断账号是否存在
-                        int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", fourteen).in("authState", "1,2,3").ne("flag", 3));
-                        if (count > 0){
-                            continue;
-                        }
-                        //判断性别
-                        if (!one.equals("男") && !one.equals("女")){
-                            return new ErrorTip(500, "性别内容不正确");
-                        }
-                        //判断经营业务【专车】
-                        if (!eight.equals("是") && !eight.equals("否")){
-                            return new ErrorTip(500, "经营业务【专车】内容不正确");
-                        }
-                        //判断经营业务【出租车】
-                        if (!nine.equals("是") && !nine.equals("否")){
-                            return new ErrorTip(500, "经营业务【出租车】内容不正确");
-                        }
-                        //判断经营业务【跨城出行】
-                        if (!ten.equals("是") && !ten.equals("否")){
-                            return new ErrorTip(500, "经营业务【跨城出行】内容不正确");
-                        }
-                        //判断经营业务【小件同城物流】
-                        if (!eleven.equals("是") && !eleven.equals("否")){
-                            return new ErrorTip(500, "经营业务【小件同城物流】内容不正确");
-                        }
-                        //判断经营业务【小件跨城物流】
-                        if (!twelve.equals("是") && !twelve.equals("否")){
-                            return new ErrorTip(500, "经营业务【小件跨城物流】内容不正确");
-                        }
-                        //判断经营业务【包车】
-                        if (!thirteen.equals("是") && !thirteen.equals("否")){
-                            return new ErrorTip(500, "经营业务【包车】内容不正确");
-                        }
-                        //判断驾龄
-                        if (!isInteger(three)){
-                            return new ErrorTip(500, "驾龄格式不正确");
-                        }
-                        //判断手机号
-                        if (!isPhone(fourteen)){
-                            return new ErrorTip(500, "登录账号[手机号]格式不正确");
-                        }
-                        //判断登录密码
-                        if (!isPassword(fifteen)){
-                            return new ErrorTip(500, "登录密码格式不正确");
-                        }
-                        //查找平台公司
-                        Integer companyId = 0;
-                        Integer franchiseeId = 0;
-                        TCompany franchisee = itCompanyService.selectById(ShiroKit.getUser().getObjectId());
-                        if (SinataUtil.isNotEmpty(franchisee)){
-                            companyId = franchisee.getSuperiorId();
-                            franchiseeId = franchisee.getId();
-                        }
-                        if (companyId == 0 && franchiseeId == 0){
-                            return new ErrorTip(500, "当前登录账户上级分公司不能为空");
-                        }
-
-                        TDriver driver = new TDriver();
-                        driver.setAccount(fourteen);
-                        driver.setJobNumber(seven);
-                        driver.setPhone(fourteen);
-                        driver.setPassword(ShiroKit.md5(fifteen, "SA;d5#"));
-                        driver.setName(zero);
-                        if ("男".equals(one)){
-                            driver.setSex(1);
-                        }else if ("女".equals(one)){
-                            driver.setSex(2);
-                        }
-                        driver.setIdCard(four);
-                        driver.setDriverAge(Integer.valueOf(three));
-                        driver.setDriveCard(two);
-                        driver.setTaxiAptitudeCard(six);
-                        driver.setIsPlatCar(2);
-                        driver.setCompanyId(companyId);
-                        driver.setFranchiseeId(franchiseeId);
-                        driver.setState(1);
-                        driver.setAuthState(1);
-                        driver.setFlag("1");
-                        driver.setInsertUser(ShiroKit.getUser().getId());
-                        driver.setInsertTime(new Date());
-                        driver.setAddType(4);
-                        driver.setAddObjectId(ShiroKit.getUser().getObjectId());
-                        if (SinataUtil.isNotEmpty(five)){
-                            driver.setDriverAddress(five);
-                        }
-                        tDriverService.insert(driver);
-
-                        //添加专车服务模式
-                        if ("是".equals(eight)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(1);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加出租车服务模式
-                        if ("是".equals(nine)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(2);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加跨城出行服务模式
-                        if ("是".equals(ten)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(3);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加小件同城物流服务模式
-                        if ("是".equals(eleven)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(4);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加小件跨城物流服务模式
-                        if ("是".equals(twelve)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(5);
-                            itDriverServiceService.insert(service);
-                        }
-                        //添加包车服务模式
-                        if ("是".equals(thirteen)){
-                            TDriverService service = new TDriverService();
-                            service.setDriverId(driver.getId());
-                            service.setType(6);
-                            itDriverServiceService.insert(service);
-                        }
-                    }
-                }
-            }
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        return SUCCESS_TIP;
-    }
-
-
-
-
-    @Autowired
-    private ITCompanyService itCompanyService;
-
-    @Autowired
-    private ITDriverServiceService itDriverServiceService;
-
-    *//**
-     * 验证是否可以字符转为整数
-     * @param str
-     * @return
-     *//*
-    public static boolean isInteger(String str) {
-        try{
-            String reg = "^[0-9]\\d*$";
-            boolean flag = str.matches(reg);
-            return flag;
-        }catch(NumberFormatException e) {
-            System.out.println("异常:\"" + str + "\"...");
-            return false;
-        }
-    }
-    *//**
-     * 验证手机号格式是否正确
-     * @param str
-     * @return
-     *//*
-    public static boolean isPhone(String str) {
-        try{
-            String reg = "^1\\d{10}$";
-            boolean flag = str.matches(reg);
-            return flag;
-        }catch(NumberFormatException e) {
-            System.out.println("异常:\"" + str + "\"...");
-            return false;
-        }
-    }
-    *//**
-     * 验证密码长度是否正确
-     * @param str
-     * @return
-     *//*
-    public static boolean isPassword(String str) {
-        try{
-            String reg = "^.{6,18}$";
-            boolean flag = str.matches(reg);
-            return flag;
-        }catch(NumberFormatException e) {
-            System.out.println("异常:\"" + str + "\"...");
-            return false;
-        }
-    }
-
-    *//**
-     *  导出司机信息
-     *//*
-    @RequestMapping(value = "/outDriver")
-    public void outDriver(HttpServletRequest request, HttpServletResponse response) {
-        List<Map<String,Object>> listMap = tDriverService.getDriverListNoPage(ShiroKit.getUser().getRoleType(),ShiroKit.getUser().getObjectId());
-
-        // 表格数据【封装】
-        List<List<String>> dataList = new ArrayList<>();
-
-        //第一行显示【封装】
-        List<String> twoList = new ArrayList<String>();
-        twoList.add("总计:");
-        twoList.add(String.valueOf(listMap.size())+"条");
-        dataList.add(twoList);
-
-        // 列【封装】
-        List<String> shellList = new ArrayList<String>();
-        shellList.add("添加时间");
-        shellList.add("姓名");
-        shellList.add("登录账号【手机号】");
-        shellList.add("性别");
-        shellList.add("司机来源");
-        shellList.add("所属分公司");
-        shellList.add("所属加盟商");
-        shellList.add("当前车辆");
-        shellList.add("服务模式");
-        shellList.add("关联线路");
-        shellList.add("评分");
-        shellList.add("历史接单数");
-        shellList.add("历史订单总金额");
-        shellList.add("当前钱包余额");
-        shellList.add("钱包活动余额");
-        shellList.add("钱包收入余额");
-        shellList.add("状态");
-        dataList.add(shellList);
-
-        for (Map<String,Object> object : listMap){
-            // 详细数据列【封装】
-            shellList = new ArrayList<String>();
-            if(SinataUtil.isNotEmpty(object.get("insertTime"))){
-                shellList.add(DateUtil.formatDate(DateUtil.parse(object.get("insertTime").toString(),"YYYY-MM-dd HH:mm:ss.S"), "YYYY-MM-dd HH:mm:ss"));
-            }else{
-                shellList.add("-");
-            }
-            if(SinataUtil.isNotEmpty(object.get("name"))){
-                shellList.add(object.get("name").toString());
-            }else{
-                shellList.add("-");
-            }
-            if(SinataUtil.isNotEmpty(object.get("phone"))){
-                shellList.add(object.get("phone").toString());
-            }else{
-                shellList.add("-");
-            }
-            if(SinataUtil.isNotEmpty(object.get("sex"))){
-                shellList.add(object.get("sex").toString() == "1"?"男":"女");
-            }else{
-                shellList.add("-");
-            }
-            if(SinataUtil.isNotEmpty(object.get("addType"))){
-
-                shellList.add(object.get("addType").toString().equals("1")?"司机注册":(object.get("addType").toString().equals("2")?"平台添加":(object.get("addType").toString().equals("3")?"分公司添加":(object.get("addType").toString().equals("4")?"加盟商添加":""))));
-            }else{
-                shellList.add("-");
-            }
-            if(SinataUtil.isNotEmpty(object.get("companyName"))){
-                shellList.add(object.get("companyName").toString());
-            }else{
-                shellList.add("-");
-            }
-            if(SinataUtil.isNotEmpty(object.get("franchiseeName"))){
-                shellList.add(object.get("franchiseeName").toString());
-            }else{
-                shellList.add("-");
-            }
-            if(SinataUtil.isNotEmpty(object.get("carLicensePlate"))){
-                shellList.add(object.get("carLicensePlate").toString());
-            }else{
-                shellList.add("-");
-            }
-            if(SinataUtil.isNotEmpty(object.get("serverStr"))){
-                shellList.add(object.get("serverStr").toString());
-            }else{
-                shellList.add("-");
-            }
-            if(SinataUtil.isNotEmpty(object.get("lineStr"))){
-                shellList.add(object.get("lineStr").toString());
-            }else{
-                shellList.add("-");
-            }
-            if(SinataUtil.isNotEmpty(object.get("evaluateNum"))){
-                shellList.add(object.get("evaluateNum").toString());
-            }else{
-                shellList.add("0");
-            }
-            if(SinataUtil.isNotEmpty(object.get("historyNum"))){
-                shellList.add(object.get("historyNum").toString());
-            }else{
-                shellList.add("0");
-            }
-            if(SinataUtil.isNotEmpty(object.get("historyMoney"))){
-                shellList.add(object.get("historyMoney").toString());
-            }else{
-                shellList.add("0");
-            }
-            if(SinataUtil.isNotEmpty(object.get("balance"))){
-                shellList.add(object.get("balance").toString());
-            }else{
-                shellList.add("0");
-            }
-            if(SinataUtil.isNotEmpty(object.get("laveActivityMoney"))){
-                shellList.add(object.get("laveActivityMoney").toString());
-            }else{
-                shellList.add("0");
-            }
-            if(SinataUtil.isNotEmpty(object.get("laveBusinessMoney"))){
-                shellList.add(object.get("laveBusinessMoney").toString());
-            }else{
-                shellList.add("0");
-            }
-            if(SinataUtil.isNotEmpty(object.get("authState"))){
-                shellList.add(object.get("authState").toString().equals("1")?"待审核":(object.get("authState").toString().equals("2")?"正常":(object.get("authState").toString().equals("3")?"冻结":(object.get("authState").toString().equals("4")?"已拒绝":""))));
-
-                shellList.add(object.get("authState").toString());
-            }else{
-                shellList.add("-");
-            }
-            dataList.add(shellList);
-        }
-        try {
-            // 调用工具类进行导出
-            ExcelExportUtil.easySheet("司机信息导出记录"+DateUtil.formatDate(new Date(), "YYYYMMddHHmmss"), "司机信息导出记录", dataList,request, response);
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-    }*/
-
-}
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java
index 9f1e6bd..bfc2786 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java
@@ -1,5 +1,6 @@
 package com.stylefeng.guns.modular.system.controller.general;
 
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
@@ -14,11 +15,9 @@
 import com.stylefeng.guns.modular.system.controller.util.HttpUtils;
 import com.stylefeng.guns.modular.system.controller.util.TokenUtils;
 import com.stylefeng.guns.modular.system.controller.util.UUIDUtil;
+import com.stylefeng.guns.modular.system.dao.AccountChangeDetailMapper;
 import com.stylefeng.guns.modular.system.enums.UserTypeEnum;
-import com.stylefeng.guns.modular.system.model.TDriver;
-import com.stylefeng.guns.modular.system.model.TDriverWork;
-import com.stylefeng.guns.modular.system.model.TRechargeRecord;
-import com.stylefeng.guns.modular.system.model.TRegion;
+import com.stylefeng.guns.modular.system.model.*;
 import com.stylefeng.guns.modular.system.service.*;
 import com.stylefeng.guns.modular.system.util.DateUtil;
 import com.stylefeng.guns.modular.system.util.RedisUtil;
@@ -42,6 +41,7 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
 import java.io.File;
 import java.io.IOException;
@@ -92,6 +92,12 @@
     private RedisUtil redisUtil;
     @Autowired
     private ITRechargeRecordService tRechargeRecordService;
+
+    @Autowired
+    private ITSystemConfigService systemConfigService;
+
+    @Resource
+    private AccountChangeDetailMapper accountChangeDetailMapper;
 
     private Logger log = LoggerFactory.getLogger(this.getClass());
 
@@ -499,6 +505,28 @@
         tDriver.setApprovalUserId(shiroUser.getId());
         tDriver.setApprovalTime(new Date());
         tDriverService.updateById(tDriver);
+
+        //增加积分奖励
+        if(approvalStatus == 2 &&  null != tDriver.getInviterId()){
+            TSystemConfig systemConfig = systemConfigService.selectOne(new EntityWrapper<TSystemConfig>().eq("type", 4));
+            Integer num7 = JSON.parseObject(systemConfig.getContent()).getInteger("num7");
+            TDriver tDriver1 = tDriverService.selectById(tDriver.getInviterId());
+
+            AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
+            accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(3));
+            accountChangeDetail.setUserType(2);
+            accountChangeDetail.setUserId(tDriver1.getId());
+            accountChangeDetail.setType(2);
+            accountChangeDetail.setChangeType(10);
+            accountChangeDetail.setOldData(tDriver1.getIntegral().doubleValue());
+            tDriver1.setIntegral(tDriver1.getIntegral() + num7);
+            accountChangeDetail.setNewData(tDriver1.getIntegral().doubleValue());
+            accountChangeDetail.setExplain("推荐奖励");
+            accountChangeDetail.setCreateTime(new Date());
+            accountChangeDetailMapper.insert(accountChangeDetail);
+            tDriverService.updateById(tDriver1);
+        }
+
         return SUCCESS_TIP;
     }
 
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java
index 2e81210..ab3dabf 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java
@@ -653,8 +653,7 @@
         }else {
             // 业绩排名 performanceTable
             // 查询广东全区域数据 查询广东所有的代理商
-            List<TAgent> tAgentList = tAgentService.selectList(new EntityWrapper<TAgent>()
-                    .eq("provinceCode", "440000"));
+            List<TAgent> tAgentList = tAgentService.selectList(null);
             List<Integer> ids = tAgentList.stream().map(TAgent::getId).collect(Collectors.toList());
             if (1 == type){
                 // 单量
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/AccountChangeDetailMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/AccountChangeDetailMapper.java
new file mode 100644
index 0000000..69676f9
--- /dev/null
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/AccountChangeDetailMapper.java
@@ -0,0 +1,11 @@
+package com.stylefeng.guns.modular.system.dao;
+
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.stylefeng.guns.modular.system.model.AccountChangeDetail;
+
+/**
+ * @author zhibing.pu
+ * @date 2023/3/4 11:33
+ */
+public interface AccountChangeDetailMapper extends BaseMapper<AccountChangeDetail> {
+}
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/AccountChangeDetailMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/AccountChangeDetailMapper.xml
new file mode 100644
index 0000000..118bed5
--- /dev/null
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/AccountChangeDetailMapper.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.stylefeng.guns.modular.system.dao.AccountChangeDetailMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.AccountChangeDetail">
+        <id column="id" property="id"/>
+        <result column="code" property="code"/>
+        <result column="userType" property="userType"/>
+        <result column="userId" property="userId"/>
+        <result column="type" property="type"/>
+        <result column="changeType" property="changeType"/>
+        <result column="oldData" property="oldData"/>
+        <result column="newData" property="newData"/>
+        <result column="orderId" property="orderId"/>
+        <result column="explain" property="explain"/>
+        <result column="createTime" property="createTime"/>
+    </resultMap>
+</mapper>
\ No newline at end of file
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/AccountChangeDetail.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/AccountChangeDetail.java
new file mode 100644
index 0000000..a9947a7
--- /dev/null
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/AccountChangeDetail.java
@@ -0,0 +1,75 @@
+package com.stylefeng.guns.modular.system.model;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 账户变动记录
+ * @author zhibing.pu
+ * @date 2023/3/4 11:30
+ */
+@Data
+@TableName("t_account_change_detail")
+public class AccountChangeDetail {
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    @TableField("id")
+    private Integer id;
+    /**
+     * 编号
+     */
+    @TableField("code")
+    private String code;
+    /**
+     * 用户类型(1=用户,2=司机)
+     */
+    @TableField("userType")
+    private Integer userType;
+    /**
+     * 用户id
+     */
+    @TableField("userId")
+    private Integer userId;
+    /**
+     * 类型(1=余额,2=积分)
+     */
+    @TableField("type")
+    private Integer type;
+    /**
+     * 变动类型(1=订单收入,2=订单支出,3=充值,4=提现,5=佣金收入,6=佣金提现,7=优惠券收入,8=保险支付,9=线下收款支付,10=推荐奖励)
+     */
+    @TableField("changeType")
+    private Integer changeType;
+    /**
+     * 历史数据
+     */
+    @TableField("oldData")
+    private Double oldData;
+    /**
+     * 新数据
+     */
+    @TableField("newData")
+    private Double newData;
+    /**
+     * 订单id
+     */
+    @TableField("orderId")
+    private Long orderId;
+    /**
+     * 变动说明
+     */
+    @TableField("explain")
+    private String explain;
+    /**
+     * 变动时间
+     */
+    @TableField("createTime")
+    private Date createTime;
+}
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRevenueServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRevenueServiceImpl.java
index a21e4bd..3ea8d2f 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRevenueServiceImpl.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TRevenueServiceImpl.java
@@ -151,5 +151,6 @@
             list = tRevenueMapper.getDataStatisticsIncomeOrCommissionByIds(ids,2,monthDate);
         }
         model.addAttribute("performanceResp",list);
+        map.put("performanceResp",list);
     }
 }
diff --git a/management/guns-admin/src/main/resources/application.yml b/management/guns-admin/src/main/resources/application.yml
index 8bda302..6c44712 100644
--- a/management/guns-admin/src/main/resources/application.yml
+++ b/management/guns-admin/src/main/resources/application.yml
@@ -15,7 +15,7 @@
 
 spring:
   profiles:
-    active: produce
+    active: dev
   mvc:
     static-path-pattern: /static/**
     view:
@@ -56,12 +56,11 @@
 ---
 
 spring:
-  profiles: local
   datasource:
     url: jdbc:mysql://192.168.110.80:3306/super_save_driving?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8
     username: root
-    password: f4OfRjqoN3jSiNGiUoiNsQdOBtCOKYRj
-#    password: 123456
+#    password: f4OfRjqoN3jSiNGiUoiNsQdOBtCOKYRj
+    password: 123456
     db-name: super_save_driving #用来搜集数据库的所有表
     filters: wall,mergeStat
 
@@ -78,22 +77,9 @@
       - dataSourceGuns
       - dataSourceBiz
 
----
-
-spring:
-  profiles: produce
-  datasource:
-      url: jdbc:mysql://127.0.0.1:3306/super_save_driving?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8
-      username: root
-      password: f4OfRjqoN3jSiNGiUoiNsQdOBtCOKYRj
-      db-name: super_save_driving #用来搜集数据库的所有表
-      filters: wall,mergeStat
 
 ---
 
 filePath: /usr/local/server/app/orderPostionFile/ #存储订单轨迹文件路径
 #filePath: C:/orderPostionFile/  #存储订单轨迹文件路径
 
-
-#交通部推送数据功能开关
-pushMinistryOfTransport: false
\ No newline at end of file
diff --git a/management/guns-admin/src/main/resources/logback-spring.xml b/management/guns-admin/src/main/resources/logback-spring.xml
index 894a46b..2102198 100644
--- a/management/guns-admin/src/main/resources/logback-spring.xml
+++ b/management/guns-admin/src/main/resources/logback-spring.xml
@@ -1,132 +1,228 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<configuration>
+<!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,比如: 如果设置为WARN,则低于WARN的信息都不会输出 -->
+<!-- scan:当此属性设置为true时,配置文档如果发生改变,将会被重新加载,默认值为true -->
+<!-- scanPeriod:设置监测配置文档是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 -->
+<!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
+<configuration  scan="true" scanPeriod="10 seconds">
+    <contextName>logback</contextName>
 
-    <!--定义日志存放的位置-->
-    <springProperty scope="context" name="gunsLogPath" source="log.path" defaultValue="guns-logs"/>
+    <!-- name的值是变量的名称,value的值时变量定义的值。通过定义的值会被插入到logger上下文中。定义后,可以使“${}”来使用变量。 -->
+    <property name="log.path" value="/usr/local/server/app/logs/management"/>
+    <!--<property name="log.path" value="d:/logs/driver"/>-->
 
-    <!-- ****************************************************************************************** -->
-    <!-- ****************************** 本地开发只在控制台打印日志 ******************************** -->
-    <!-- ****************************************************************************************** -->
-    <springProfile name="local">
+    <!--0. 日志格式和颜色渲染 -->
+    <!-- 彩色日志依赖的渲染类 -->
+    <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
+    <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
+    <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
+    <!-- 彩色日志格式 -->
+    <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
 
-        <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
-            <!--encoder 默认配置为PatternLayoutEncoder-->
-            <encoder>
-                <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %highlight(%-5level) %logger Line:%-3L - %msg%n</pattern>
-                <charset>utf-8</charset>
-            </encoder>
-        </appender>
+    <!--1. 输出到控制台-->
+    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
+        <!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息-->
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <level>debug</level>
+        </filter>
+        <encoder>
+            <Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
+            <!-- 设置字符集 -->
+            <charset>UTF-8</charset>
+        </encoder>
+    </appender>
 
-        <!-- 日志记录器,日期滚动记录 -->
-        <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
-            <!-- 正在记录的日志文件的路径及文件名 -->
-            <file>${gunsLogPath}/log_error.log</file>
-            <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
-            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                <!-- 归档的日志文件的路径,例如今天是2013-12-21日志,当前写的日志文件路径为file节点指定,可以将此文件与file指定文件路径设置为不同路径,从而将当前日志文件或归档日志文件置不同的目录。
-                而2013-12-21的日志文件在由fileNamePattern指定。%d{yyyy-MM-dd}指定日期格式,%i指定索引 -->
-                <fileNamePattern>${gunsLogPath}/error/log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
-                <!-- 除按日志记录之外,还配置了日志文件不能超过2M,若超过2M,日志文件会以索引0开始,
-                命名日志文件,例如log-error-2013-12-21.0.log -->
-                <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                    <maxFileSize>2MB</maxFileSize>
-                </timeBasedFileNamingAndTriggeringPolicy>
-            </rollingPolicy>
-            <!-- 追加方式记录日志 -->
-            <append>true</append>
-            <!-- 日志文件的格式 -->
-            <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
-                <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern>
-                <charset>utf-8</charset>
-            </encoder>
-            <!-- 日志文件记录级别配置。
-                日志级别:ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF
-                onMatch="ACCEPT" 表示匹配该级别及以上
-                onMatch="DENY" 表示不匹配该级别及以上
-                onMatch="NEUTRAL" 表示该级别及以上的,由下一个filter处理,如果当前是最后一个,则表示匹配该级别及以上
-                onMismatch="ACCEPT" 表示匹配该级别以下
-                onMismatch="NEUTRAL" 表示该级别及以下的,由下一个filter处理,如果当前是最后一个,则不匹配该级别以下的
-                onMismatch="DENY" 表示不匹配该级别以下的
-             -->
-            <filter class="ch.qos.logback.classic.filter.LevelFilter">
-                <level>ERROR</level>
-                <onMatch>ACCEPT</onMatch>
-                <onMismatch>DENY</onMismatch>
-            </filter>
-        </appender>
+    <!--2. 输出到文档-->
+    <!-- 2.1 level为 DEBUG 日志,时间滚动输出  -->
+    <appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <!-- 正在记录的日志文档的路径及文档名 -->
+        <file>${log.path}/debug.log</file>
+        <!--日志文档输出格式-->
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+            <charset>UTF-8</charset> <!-- 设置字符集 -->
+        </encoder>
+        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <!-- 日志归档 -->
+            <fileNamePattern>${log.path}/%d{yyyy-MM-dd}/debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <maxFileSize>100MB</maxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+            <!--日志文档保留天数-->
+            <maxHistory>15</maxHistory>
+        </rollingPolicy>
+        <!-- 此日志文档只记录debug级别的 -->
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <level>debug</level>
+            <onMatch>ACCEPT</onMatch>
+            <onMismatch>DENY</onMismatch>
+        </filter>
+    </appender>
 
-        <root level="INFO">
-            <appender-ref ref="STDOUT"/>
-            <appender-ref ref="FILE"/>
+    <!-- 2.2 level为 INFO 日志,时间滚动输出  -->
+    <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <!-- 正在记录的日志文档的路径及文档名 -->
+        <file>${log.path}/info.log</file>
+        <!--日志文档输出格式-->
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+            <charset>UTF-8</charset>
+        </encoder>
+        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <!-- 每天日志归档路径以及格式 -->
+            <fileNamePattern>${log.path}/%d{yyyy-MM-dd}/info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <maxFileSize>100MB</maxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+            <!--日志文档保留天数-->
+            <maxHistory>15</maxHistory>
+        </rollingPolicy>
+        <!-- 此日志文档只记录info级别的 -->
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <level>info</level>
+            <onMatch>ACCEPT</onMatch>
+            <onMismatch>DENY</onMismatch>
+        </filter>
+    </appender>
+
+    <!-- 2.3 level为 WARN 日志,时间滚动输出  -->
+    <appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <!-- 正在记录的日志文档的路径及文档名 -->
+        <file>${log.path}/warn.log</file>
+        <!--日志文档输出格式-->
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+            <charset>UTF-8</charset> <!-- 此处设置字符集 -->
+        </encoder>
+        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${log.path}/%d{yyyy-MM-dd}/warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <maxFileSize>100MB</maxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+            <!--日志文档保留天数-->
+            <maxHistory>15</maxHistory>
+        </rollingPolicy>
+        <!-- 此日志文档只记录warn级别的 -->
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <level>warn</level>
+            <onMatch>ACCEPT</onMatch>
+            <onMismatch>DENY</onMismatch>
+        </filter>
+    </appender>
+
+    <!-- 2.4 level为 ERROR 日志,时间滚动输出  -->
+    <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <!-- 正在记录的日志文档的路径及文档名 -->
+        <file>${log.path}/error.log</file>
+        <!--日志文档输出格式-->
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+            <charset>UTF-8</charset> <!-- 此处设置字符集 -->
+        </encoder>
+        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${log.path}/%d{yyyy-MM-dd}/error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <maxFileSize>100MB</maxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+            <!--日志文档保留天数-->
+            <maxHistory>15</maxHistory>
+        </rollingPolicy>
+        <!-- 此日志文档只记录ERROR级别的 -->
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <level>ERROR</level>
+            <onMatch>ACCEPT</onMatch>
+            <onMismatch>DENY</onMismatch>
+        </filter>
+    </appender>
+
+    <!-- 2.5 所有 除了DEBUG级别的其它高于DEBUG的 日志,记录到一个文件  -->
+    <appender name="ALL_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <!-- 正在记录的日志文档的路径及文档名 -->
+        <file>${log.path}/all.log</file>
+        <!--日志文档输出格式-->
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+            <charset>UTF-8</charset> <!-- 此处设置字符集 -->
+        </encoder>
+        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${log.path}/%d{yyyy-MM-dd}/all-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+                <maxFileSize>100MB</maxFileSize>
+            </timeBasedFileNamingAndTriggeringPolicy>
+            <!--日志文档保留天数-->
+            <maxHistory>15</maxHistory>
+        </rollingPolicy>
+        <!-- 此日志文档记录除了DEBUG级别的其它高于DEBUG的 -->
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <level>DEBUG</level>
+            <onMatch>DENY</onMatch>
+            <onMismatch>ACCEPT</onMismatch>
+        </filter>
+    </appender>
+
+    <!--
+        <logger>用来设置某一个包或者具体的某一个类的日志打印级别、
+        以及指定<appender>。<logger>仅有一个name属性,
+        一个可选的level和一个可选的addtivity属性。
+        name:用来指定受此logger约束的某一个包或者具体的某一个类。
+        level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,
+              还有一个特殊值INHERITED或者同义词NULL,代表强制执行上级的级别。
+              如果未设置此属性,那么当前logger将会继承上级的级别。
+        addtivity:是否向上级logger传递打印信息。默认是true。
+        <logger name="org.springframework.web" level="info"/>
+        <logger name="org.springframework.scheduling.annotation.ScheduledAnnotationBeanPostProcessor" level="INFO"/>
+    -->
+
+    <!--
+        root节点是必选节点,用来指定最基础的日志输出级别,只有一个level属性
+        level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,
+        不能设置为INHERITED或者同义词NULL。默认是DEBUG
+        可以包含零个或多个元素,标识这个appender将会添加到这个logger。
+    -->
+
+    <!-- 4  最终的策略:
+                 基本策略(root级) + 根据profile在启动时, logger标签中定制化package日志级别(优先级高于上面的root级)-->
+    <springProfile name="dev">
+        <root level="info">
+            <appender-ref ref="CONSOLE" />
+            <appender-ref ref="DEBUG_FILE" />
+            <appender-ref ref="INFO_FILE" />
+            <appender-ref ref="WARN_FILE" />
+            <appender-ref ref="ERROR_FILE" />
+            <appender-ref ref="ALL_FILE" />
         </root>
+        <logger name="ServiceLog" level="debug"/>
+        <logger name="com.supersavedriving.driver.modular.system.dao" level="debug"/>
     </springProfile>
 
-    <!-- ****************************************************************************************** -->
-    <!-- ********************** 放到服务器上不管在什么环境都只在文件记录日志 ********************** -->
-    <!-- ****************************************************************************************** -->
-    <springProfile name="!local">
-
-        <!-- 日志记录器,日期滚动记录 -->
-        <appender name="FILE_ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
-            <!-- 正在记录的日志文件的路径及文件名 -->
-            <file>${gunsLogPath}/log_error.log</file>
-            <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
-            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                <!-- 归档的日志文件的路径,例如今天是2013-12-21日志,当前写的日志文件路径为file节点指定,可以将此文件与file指定文件路径设置为不同路径,从而将当前日志文件或归档日志文件置不同的目录。
-                而2013-12-21的日志文件在由fileNamePattern指定。%d{yyyy-MM-dd}指定日期格式,%i指定索引 -->
-                <fileNamePattern>${gunsLogPath}/error/log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
-                <!-- 除按日志记录之外,还配置了日志文件不能超过2M,若超过2M,日志文件会以索引0开始,
-                命名日志文件,例如log-error-2013-12-21.0.log -->
-                <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                    <maxFileSize>2MB</maxFileSize>
-                </timeBasedFileNamingAndTriggeringPolicy>
-            </rollingPolicy>
-            <!-- 追加方式记录日志 -->
-            <append>true</append>
-            <!-- 日志文件的格式 -->
-            <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
-                <pattern>===%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern>
-                <charset>utf-8</charset>
-            </encoder>
-            <!-- 此日志文件只记录error级别的 -->
-            <filter class="ch.qos.logback.classic.filter.LevelFilter">
-                <level>error</level>
-                <onMatch>ACCEPT</onMatch>
-                <onMismatch>DENY</onMismatch>
-            </filter>
-        </appender>
-
-        <!-- 日志记录器,日期滚动记录 -->
-        <appender name="FILE_ALL" class="ch.qos.logback.core.rolling.RollingFileAppender">
-            <!-- 正在记录的日志文件的路径及文件名 -->
-            <file>${gunsLogPath}/log_total.log</file>
-            <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
-            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-                <!-- 归档的日志文件的路径,例如今天是2013-12-21日志,当前写的日志文件路径为file节点指定,可以将此文件与file指定文件路径设置为不同路径,从而将当前日志文件或归档日志文件置不同的目录。
-                而2013-12-21的日志文件在由fileNamePattern指定。%d{yyyy-MM-dd}指定日期格式,%i指定索引 -->
-                <fileNamePattern>${gunsLogPath}/total/log-total-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
-                <!-- 除按日志记录之外,还配置了日志文件不能超过2M,若超过2M,日志文件会以索引0开始,
-                命名日志文件,例如log-error-2013-12-21.0.log -->
-                <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                    <maxFileSize>2MB</maxFileSize>
-                </timeBasedFileNamingAndTriggeringPolicy>
-            </rollingPolicy>
-            <!-- 追加方式记录日志 -->
-            <append>true</append>
-            <!-- 日志文件的格式 -->
-            <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
-                <pattern>===%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern>
-                <charset>utf-8</charset>
-            </encoder>
-        </appender>
-
-        <root level="INFO">
-            <appender-ref ref="FILE_ERROR"/>
-            <appender-ref ref="FILE_ALL"/>
+    <springProfile name="fat">
+        <root level="info">
+            <appender-ref ref="CONSOLE" />
+            <appender-ref ref="DEBUG_FILE" />
+            <appender-ref ref="INFO_FILE" />
+            <appender-ref ref="WARN_FILE" />
+            <appender-ref ref="ERROR_FILE" />
+            <appender-ref ref="ALL_FILE" />
         </root>
-
+        <logger name="ServiceLog" level="debug"/>
+        <logger name="com.supersavedriving.driver.modular.system.dao" level="debug"/>
     </springProfile>
 
-</configuration>
+    <springProfile name="produce">
+        <root level="info">
+            <!-- 生产环境最好不配置console写文件 -->
+            <appender-ref ref="DEBUG_FILE" />
+            <appender-ref ref="INFO_FILE" />
+            <appender-ref ref="WARN_FILE" />
+            <appender-ref ref="ERROR_FILE" />
+            <appender-ref ref="ALL_FILE" />
+        </root>
+        <logger name="ServiceLog" level="debug"/>
+        <logger name="com.supersavedriving.driver.modular.system.dao" level="debug"/>
+    </springProfile>
 
-
+</configuration>
\ No newline at end of file
diff --git a/management/guns-admin/src/main/resources/redis.properties b/management/guns-admin/src/main/resources/redis.properties
index dc7e9bd..7d6a332 100644
--- a/management/guns-admin/src/main/resources/redis.properties
+++ b/management/guns-admin/src/main/resources/redis.properties
@@ -1,19 +1,20 @@
 #redis���ÿ�ʼ
 # Redis���ݿ�������Ĭ��Ϊ0��
 spring.redis.database=0
-# Redis��������ַ
-spring.redis.host=127.0.0.1
-## Redis���������Ӷ˿�
-spring.redis.port=16379
-## Redis�������������루Ĭ��Ϊ�գ�
-spring.redis.password=cKsEeyffDXG5PzNg8CIbrWxFluXrCprZ
 
 ## Redis��������ַ
 #spring.redis.host=127.0.0.1
-## Redis���������Ӷ˿�
-#spring.redis.port=6379
-## Redis�������������루Ĭ��Ϊ�գ�
-#spring.redis.password=123456
+### Redis���������Ӷ˿�
+#spring.redis.port=16379
+### Redis�������������루Ĭ��Ϊ�գ�
+#spring.redis.password=cKsEeyffDXG5PzNg8CIbrWxFluXrCprZ
+
+# Redis��������ַ
+spring.redis.host=127.0.0.1
+# Redis���������Ӷ˿�
+spring.redis.port=6379
+# Redis�������������루Ĭ��Ϊ�գ�
+spring.redis.password=123456
 
 # ���ӳ������������ʹ�ø�ֵ��ʾû�����ƣ�
 spring.redis.jedis.pool.max-active=1024
diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html
index 18f040d..02703f1 100644
--- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html
+++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html
@@ -24,9 +24,9 @@
                             <div name="rulesForm">
                                 <div class="initialLevel col-sm-12 control-label form-group"  >
                                     <span class="control-label" >时间段</span>
-                                    <input class="control-label" id="num1" name="num1" value="${ChargeStandard.num1}" type="text" placeholder="00:00" style="height: 30px;width: 80px">
+                                    <input class="control-label time-item" id="num1" name="num1" value="${ChargeStandard.num1}" type="text" placeholder="00:00" style="height: 30px;width: 80px" readonly>
                                     <span class="control-label" >——</span>
-                                    <input class="control-label" id="num2" name="num2" value="${ChargeStandard.num2}" type="text" placeholder="00:00" style="height: 30px;width: 80px">
+                                    <input class="control-label time-item" id="num2" name="num2" value="${ChargeStandard.num2}" type="text" placeholder="00:00" style="height: 30px;width: 80px" readonly>
                                     <span class="control-label" >代驾里程</span>
                                     <input class="control-label" id="num3" name="num3" value="${ChargeStandard.num3}" type="number" min="0" style="height: 30px;width: 80px">
                                     <span class="control-label" >公里,起步价</span>
@@ -124,20 +124,16 @@
 <script src="${ctxPath}/static/modular/system/tSystemConfig/tSystemConfig.js"></script>
 <script src="${ctxPath}/static/modular/system/tSystemConfig/tSystemConfig_info.js"></script>
 <script type="text/javascript">
-    // laydate.render({
-    //     elem: 'input[name=num1]',
-    //     type: 'time',
-    //     format: 'HH:mm',
-    //     range: false,
-    //     lang:'zn'
-    // });
-    // laydate.render({
-    //     elem: 'input[name=num2]',
-    //     type: 'time',
-    //     format: 'HH:mm',
-    //     range: false,
-    //     lang:'zn'
-    // });
+    lay('.time-item').each(function(){
+        laydate.render({
+            elem: this,
+            type: 'time',
+            format: 'HH:mm',
+            range: false,
+            lang:'zn',
+            trigger: 'click'
+        });
+    });
 
     var elem1 = document.querySelector(".js-switch1");
     var init1 = new Switchery(elem1);
diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js b/management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js
index 265d356..6502d8f 100644
--- a/management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js
+++ b/management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js
@@ -266,9 +266,9 @@
     var a ="<div>\n" +
         "                                <div class=\"initialLevel col-sm-12 control-label form-group\"  >\n" +
         "                                    <span class=\"control-label\" >时间段</span>\n" +
-        "                                    <input class=\"control-label\" id=\"num1-"+i+"\" name=\"num1\" type=\"text\" placeholder=\"00:00\" style=\"height: 30px;width: 80px\">\n" +
+        "                                    <input class=\"control-label time-item\" id=\"num1-"+i+"\" name=\"num1\" type=\"text\" placeholder=\"00:00\" style=\"height: 30px;width: 80px\" readonly>\n" +
         "                                    <span class=\"control-label\" >——</span>\n" +
-        "                                    <input class=\"control-label\" id=\"num2-"+i+"\" name=\"num2\" type=\"text\" placeholder=\"00:00\" style=\"height: 30px;width: 80px\">\n" +
+        "                                    <input class=\"control-label time-item\" id=\"num2-"+i+"\" name=\"num2\" type=\"text\" placeholder=\"00:00\" style=\"height: 30px;width: 80px\" readonly>\n" +
         "                                    <span class=\"control-label\" >代驾里程</span>\n" +
         "                                    <input class=\"control-label\" id=\"num3-"+i+"\" name=\"num3\" type=\"number\" style=\"height: 30px;width: 80px\">\n" +
         "                                    <span class=\"control-label\" >公里,起步价</span>\n" +
@@ -296,20 +296,16 @@
         "                            </div>"
 
     $("#rules").append($(a))
-    // laydate.render({
-    //     elem: '#num1-'+i,
-    //     type: 'time',
-    //     format: 'HH:mm',
-    //     range: false,
-    //     lang:'zn'
-    // });
-    // laydate.render({
-    //     elem: '#num2-'+i,
-    //     type: 'time',
-    //     format: 'HH:mm',
-    //     range: false,
-    //     lang:'zn'
-    // });
+    lay('.time-item').each(function(){
+        laydate.render({
+            elem: this,
+            type: 'time',
+            format: 'HH:mm',
+            range: false,
+            lang:'zn',
+            trigger: 'click'
+        });
+    });
 }
 
 TSystemConfig.delBox = function (o) {

--
Gitblit v1.7.1