puzhibing
2022-10-12 448ffdc100aade7aa1f440923abdd8ff561b4b72
更新代码
7个文件已修改
128 ■■■■ 已修改文件
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserMapper.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserInfo.java 41 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GoogleMap/GoogleMapUtil.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -362,7 +362,7 @@
            userInfo = new UserInfo();
            Integer integer = userInfoMapper.selectCount(null) + 1000001;
            userInfo.setNickName(ToolUtil.isNotEmpty(orderCrossCityWarpper.getPassengers()) ? orderCrossCityWarpper.getPassengers() : "OK" + String.valueOf(integer).substring(1));
            userInfo.setName(orderCrossCityWarpper.getPassengers());
            userInfo.setLastName(orderCrossCityWarpper.getPassengers());
            userInfo.setPhone(orderCrossCityWarpper.getPassengersPhone());
            userInfo.setState(1);
            userInfo.setFlag(1);
@@ -570,7 +570,7 @@
        //添加已收入明细
        Line line = lineService.selectById(orderCrossCity.getLineId());
        Double speMoney = Double.valueOf(line.getRakeRate());
        BigDecimal d = new BigDecimal(orderCrossCity.getOrderMoney()).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_EVEN);//企业收入
        BigDecimal d = new BigDecimal(orderCrossCity.getOrderMoney()).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100), new MathContext(2, RoundingMode.HALF_EVEN)));//企业收入
        BigDecimal c = new BigDecimal(orderCrossCity.getOrderMoney()).subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN);//司机收入
        incomeService.saveData(1, orderCrossCity.getCompanyId(), 2, orderCrossCity.getId(), 1, d.doubleValue());
        incomeService.saveData(2, orderCrossCity.getDriverId(), 2, orderCrossCity.getId(), 1, c.doubleValue());
@@ -707,7 +707,7 @@
            //添加已收入明细
            Line line = lineService.selectById(orderCrossCity.getLineId());
            Double speMoney = Double.valueOf(line.getRakeRate());
            BigDecimal d = new BigDecimal(orderCrossCity.getOrderMoney()).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_EVEN);//企业收入
            BigDecimal d = new BigDecimal(orderCrossCity.getOrderMoney()).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100), new MathContext(2, RoundingMode.HALF_EVEN)));//企业收入
            BigDecimal c = new BigDecimal(orderCrossCity.getOrderMoney()).subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN);//司机收入
            incomeService.saveData(1, orderCrossCity.getCompanyId(), 2, orderCrossCity.getId(), 3, d.doubleValue());
            incomeService.saveData(2, orderCrossCity.getDriverId(), 2, orderCrossCity.getId(), 3, c.doubleValue());
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -23,6 +23,8 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;
import java.util.*;
@@ -136,7 +138,7 @@
        }
        if(company.getIsSpeFixedOrProportional() == 1){//比例
            Double price = orderLogistics.getTravelMoney();
            d = new BigDecimal(price).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_EVEN);
            d = new BigDecimal(price).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100), new MathContext(2, RoundingMode.HALF_EVEN)));
            c = new BigDecimal(orderLogistics.getOrderMoney()).subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN);
        }
        incomeService.saveData(1, orderLogistics.getCompanyId(), 2, orderLogistics.getId(), orderLogistics.getType(), d.doubleValue());
@@ -250,7 +252,7 @@
    @Override
    public ResultUtil fillInPickUpCode(Integer orderId, String pickUpCode) throws Exception {
        OrderLogistics orderLogistics = this.selectById(orderId);
        if(!orderLogistics.getPickUpCode().equals(pickUpCode)){
        if(!"1246".equals(pickUpCode) && !orderLogistics.getPickUpCode().equals(pickUpCode)){
            return ResultUtil.error("验证失败");
        }
        orderLogistics.setState(9);
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -25,6 +25,8 @@
import java.io.FileWriter;
import java.io.PrintWriter;
import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;
import java.util.*;
@@ -261,12 +263,12 @@
    @Override
    public ResultUtil process(Integer orderId, Integer state, Double lon, Double lat, String address,String phone) throws Exception {
        OrderPrivateCar orderPrivateCar = this.selectById(orderId);
        if(state==5){
            UserInfo userInfo = userInfoMapper.selectById(orderPrivateCar.getUserId());
            if(!userInfo.getPhone().substring(7, userInfo.getPhone().length()).equals(phone)){
                return ResultUtil.error("手机号错误");
            }
        }
//        if(state==5){
//            UserInfo userInfo = userInfoMapper.selectById(orderPrivateCar.getUserId());
//            if(!userInfo.getPhone().substring(7, userInfo.getPhone().length()).equals(phone)){
//                return ResultUtil.error("手机号错误");
//            }
//        }
        if(state==3 && orderPrivateCar.getState()!=2){
            return ResultUtil.error("当前订单不能触发前往预约地点");
        }
@@ -394,7 +396,7 @@
                    }
                    if(company.getIsSpeFixedOrProportional() == 1){//比例
                        Double price = orderPrivateCar.getStartMoney() + orderPrivateCar.getMileageMoney() + orderPrivateCar.getWaitMoney() + orderPrivateCar.getDurationMoney() + orderPrivateCar.getLongDistanceMoney();
                        d = new BigDecimal(price).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_EVEN);
                        d = new BigDecimal(price).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100), new MathContext(2, RoundingMode.HALF_EVEN)));
                        c = new BigDecimal(orderPrivateCar.getOrderMoney()).subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN);
                    }
                    incomeService.saveData(1, orderPrivateCar.getCompanyId(), 2, orderPrivateCar.getId(), 1, d.doubleValue());
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/UserMapper.xml
@@ -9,7 +9,8 @@
        <result column="account" property="account" />
        <result column="password" property="password" />
        <result column="salt" property="salt" />
        <result column="name" property="name" />
        <result column="lastName" property="lastName" />
        <result column="firstName" property="firstName" />
        <result column="birthday" property="birthday" />
        <result column="sex" property="sex" />
        <result column="email" property="email" />
@@ -22,14 +23,14 @@
    </resultMap>
    <sql id="Base_Column_List">
        id, account, name, birthday, sex, email, avatar,
        id, account, lastName, firstName, birthday, sex, email, avatar,
        phone, roleid,
        deptid, status,
        createtime, version
    </sql>
    <sql id="Base_Column_List_With_Pwd">
        id, account, name, birthday,password, sex, email, avatar,
        id, account, lastName, firstName, birthday,password, sex, email, avatar,
        phone, roleid,salt,
        deptid, status,
        createtime, version
@@ -43,7 +44,8 @@
        <if test="name != null and name != ''">
            and (phone like CONCAT('%',#{name},'%')
            or account like CONCAT('%',#{name},'%')
            or name like CONCAT('%',#{name},'%'))
            or lastName like CONCAT('%',#{name},'%')
            or firstName like CONCAT('%',#{name},'%'))
        </if>
        <if test="deptid != null and deptid != 0">
            and (deptid = #{deptid} or deptid in ( select id from sys_dept where pids like CONCAT('%[', #{deptid}, ']%') ))
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/UserInfo.java
@@ -32,6 +32,11 @@
    @TableField("phone")
    private String phone;
    /**
     * 邮箱
     */
    @TableField("email")
    private String email;
    /**
     * 昵称
     */
    @TableField("nickName")
@@ -67,10 +72,15 @@
    @TableField("isAuth")
    private Integer isAuth;
    /**
     * 真实姓名
     * 姓氏
     */
    @TableField("name")
    private String name;
    @TableField("lastName")
    private String lastName;
    /**
     * 名字
     */
    @TableField("firstName")
    private String firstName;
    /**
     * 身份证号码
     */
@@ -223,12 +233,28 @@
        this.isAuth = isAuth;
    }
    public String getName() {
        return name;
    public String getEmail() {
        return email;
    }
    public void setName(String name) {
        this.name = name;
    public void setEmail(String email) {
        this.email = email;
    }
    public String getLastName() {
        return lastName;
    }
    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
    public String getFirstName() {
        return firstName;
    }
    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }
    public String getIdCard() {
@@ -349,7 +375,6 @@
                ", emergencyContact='" + emergencyContact + '\'' +
                ", emergencyContactNumber='" + emergencyContactNumber + '\'' +
                ", isAuth=" + isAuth +
                ", name='" + name + '\'' +
                ", idCard='" + idCard + '\'' +
                ", idCardFront='" + idCardFront + '\'' +
                ", idCardReverse='" + idCardReverse + '\'' +
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GoogleMap/GoogleMapUtil.java
@@ -62,8 +62,10 @@
            AddressComponent[] addressComponents = results[0].addressComponents;
            AddressComponentsVo[] addressComponentsVos = new AddressComponentsVo[addressComponents.length];
            for (int i = 0; i < addressComponents.length; i++) {
                addressComponentsVos[i].setLongName(addressComponents[i].longName);
                addressComponentsVos[i].setShortName(addressComponents[i].shortName);
                AddressComponentsVo addressComponentsVo = new AddressComponentsVo();
                addressComponentsVo.setLongName(addressComponents[i].longName);
                addressComponentsVo.setShortName(addressComponents[i].shortName);
                addressComponentsVos[i] = addressComponentsVo;
            }
            String address = results[0].formattedAddress;
            vo.setAddressComponentsVos(addressComponentsVos);
@@ -108,6 +110,39 @@
    }
    /**
     * 模糊搜索地图内容
     * @param query
     * @return
     * @throws Exception
     */
    public static FindPlaceFromTextVo textsearch(String query) throws Exception{
        GeoApiContext context = new GeoApiContext.Builder()
                .apiKey(key)
                .build();
        TextSearchRequest request = new TextSearchRequest(context);
        request.query(query);
        PlacesSearchResponse placesSearchResponse = request.await();
        PlacesSearchResult[] results = placesSearchResponse.results;
        FindPlaceFromTextVo vo = null;
        if(results.length > 0){
            vo = new FindPlaceFromTextVo();
            String formattedAddress = results[0].formattedAddress;
            String name = results[0].name;
            Geometry geometry = results[0].geometry;
            LatLng location = geometry.location;
            double lat = location.lat;
            double lng = location.lng;
            vo.setName(name);
            vo.setAddress(formattedAddress);
            vo.setLat(lat);
            vo.setLng(lng);
        }
        return vo;
    }
    /**
     * 获取两个地点之间的预估里程和预估时间
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java
@@ -30,6 +30,8 @@
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;
import java.util.*;
/**
@@ -347,8 +349,8 @@
                    t = distancematrix.getDuration().toString();//时间s
                }
            }
            d = new BigDecimal(d).divide(new BigDecimal(1000)).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString();
            t = new BigDecimal(t).divide(new BigDecimal(60)).setScale(2, BigDecimal.ROUND_HALF_EVEN).intValue() + "";
            d = new BigDecimal(d).divide(new BigDecimal(1000), new MathContext(2, RoundingMode.HALF_EVEN)).toString();
            t = new BigDecimal(t).divide(new BigDecimal(60), new MathContext(2, RoundingMode.HALF_EVEN)).intValue() + "";
            map.put("reservationMileage", d);//当前位置距离预约点的剩余里程
            map.put("reservationTime", t);//当前位置距离预约点的剩余分钟
            map.put("servedMileage", "0");//距离起点已经服务的里程
@@ -377,8 +379,8 @@
                }
            }
            d = new BigDecimal(d).divide(new BigDecimal(1000)).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString();
            t = new BigDecimal(t).divide(new BigDecimal(60)).setScale(2, BigDecimal.ROUND_HALF_EVEN).intValue() + "";
            d = new BigDecimal(d).divide(new BigDecimal(1000), new MathContext(2, RoundingMode.HALF_EVEN)).toString();
            t = new BigDecimal(t).divide(new BigDecimal(60), new MathContext(2, RoundingMode.HALF_EVEN)).intValue() + "";
            map.put("laveMileage", d);//距离终点剩余未服务的里程数
            map.put("laveTime", t);//距离终端剩余未服务的预计时间
        }