Pu Zhibing
2 天以前 a0536b4aac5867173d6b0280cddbf87cb52de78b
Merge branch 'dev' of http://120.76.84.145:10101/gitblit/r/java/ZhaoYangChuXing
7个文件已修改
115 ■■■■ 已修改文件
DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TPubWithdrawalController.java 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TSpecialAreaBillingController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/alipay/AlipayUtils.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementZYTravel/guns-admin/src/main/webapp/WEB-INF/view/system/specialAreaBilling/specialAreaBilling_add.html 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementZYTravel/guns-admin/src/main/webapp/WEB-INF/view/system/specialAreaBilling/specialAreaBilling_edit.html 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementZYTravel/guns-admin/src/main/webapp/static/modular/system/specialAreaBilling/electricFence.js 76 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -530,6 +530,7 @@
                orderPrivateCar.setLongDistanceMoney(Objects.nonNull(orderPrivateCar.getLongDistanceMoney())?new BigDecimal(orderPrivateCar.getLongDistanceMoney()).multiply(priceCoefficient).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue():0D);
                orderPrivateCar.setParkMoney(Objects.nonNull(orderPrivateCar.getParkMoney())?new BigDecimal(orderPrivateCar.getParkMoney()).multiply(priceCoefficient).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue():0D);
                orderPrivateCar.setRoadTollMoney(Objects.nonNull(orderPrivateCar.getRoadTollMoney())?new BigDecimal(orderPrivateCar.getRoadTollMoney()).multiply(priceCoefficient).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue():0D);
                this.updateById(orderPrivateCar);
            }
        }
ManagementZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TPubWithdrawalController.java
@@ -141,25 +141,31 @@
                stateObj = 1;
                // 支付宝提现
                String certNo = "";
                String name = "";
                if (tPubWithdrawal.getUserType()==1){
                    TUser tUser = userService.selectById(tPubWithdrawal.getUserId());
                    certNo = tUser.getIdCard();
                    name = tUser.getName();
                }else{
                    TDriver tDriver = driverService.selectById(tPubWithdrawal.getUserId());
                    certNo = tDriver.getIdCard();
                    name = tDriver.getName();
                }
                if (SinataUtil.isEmpty(name)){
                    return ResultUtil.error("提现失败:用户未保存真实姓名!");
                }
                SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
                String code = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
                String s = AlipayUtils.aliWithdrawal(code, tPubWithdrawal.getMoney() + "", tPubWithdrawal.getCode(), certNo);
                String s = AlipayUtils.aliWithdrawal(code, tPubWithdrawal.getMoney() + "", tPubWithdrawal.getCode(), certNo, name);
                JSONObject res = JSONObject.parseObject(s);
                JSONObject alipayFundTransUniTransferResponse = res.getJSONObject("alipay_fund_trans_uni_transfer_response");
                if (alipayFundTransUniTransferResponse!=null){
                    if (alipayFundTransUniTransferResponse.getString("status").equals("Success")){
                    if (alipayFundTransUniTransferResponse.getString("status")!=null && alipayFundTransUniTransferResponse.getString("status").equals("Success")){
                        String string = alipayFundTransUniTransferResponse.getString("order_id");
                        tPubWithdrawal.setOrderNumber(string);
                    }else{
                        return ResultUtil.error("提现失败:"+alipayFundTransUniTransferResponse.getString("msg"));
                        return ResultUtil.error("提现失败:"+alipayFundTransUniTransferResponse.getString("sub_msg"));
                    }
                }
                System.err.println("支付宝提现返回信息"+s);
@@ -189,6 +195,20 @@
        return SUCCESS_TIP;
    }
    public static void main(String[] args) throws AlipayApiException {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
        String code = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
        String s = AlipayUtils.aliWithdrawal(code, 0.1 + "", "19983174515", "513902200006257079","");
        JSONObject res = JSONObject.parseObject(s);
        JSONObject alipayFundTransUniTransferResponse = res.getJSONObject("alipay_fund_trans_uni_transfer_response");
        if (alipayFundTransUniTransferResponse!=null){
            if (alipayFundTransUniTransferResponse.getString("status")!=null && alipayFundTransUniTransferResponse.getString("status").equals("Success")){
                String string = alipayFundTransUniTransferResponse.getString("order_id");
            }else{
                System.err.println("提现失败"+alipayFundTransUniTransferResponse.getString("sub_msg"));
            }
        }
    }
    /**
     * 修改提现列表
     */
ManagementZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TSpecialAreaBillingController.java
@@ -63,6 +63,8 @@
     */
    @RequestMapping("/add")
    public String add(Model model) {
        SpecialAreaBilling specialAreaBilling = new SpecialAreaBilling();
        model.addAttribute("data",specialAreaBilling);
        return PREFIX + "specialAreaBilling_add.html";
    }
    /**
ManagementZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/alipay/AlipayUtils.java
@@ -58,7 +58,8 @@
    /**
     * 提现
     */
    public static String aliWithdrawal(String outBizNo, String money, String account, String idCard) throws AlipayApiException {
    public static String aliWithdrawal(String outBizNo, String money, String account, String idCard
    ,String name) throws AlipayApiException {
        // 初始化SDK
        AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
@@ -82,6 +83,7 @@
        payeeInfo.setCertType("IDENTITY_CARD");
        payeeInfo.setCertNo(idCard);
        payeeInfo.setIdentityType("ALIPAY_LOGON_ID");
        payeeInfo.setName(name);
        model.setPayeeInfo(payeeInfo);
        // 设置业务备注
        model.setRemark("司机提现");
ManagementZYTravel/guns-admin/src/main/webapp/WEB-INF/view/system/specialAreaBilling/specialAreaBilling_add.html
@@ -120,7 +120,8 @@
<script src="https://webapi.amap.com/maps?v=1.4.15&key=83a918fd5e6ed82be74e3056d403dbe6&plugin=AMap.MouseTool,AMap.DistrictSearch,AMap.PolyEditor,AMap.RectangleEditor,AMap.CircleEditor"></script>
<script src="${ctxPath}/static/modular/system/specialAreaBilling/electricFence.js"></script>
<script src="${ctxPath}/static/modular/system/specialAreaBilling/specialAreaBilling_info.js"></script>
<script>    var coordinateData = "${data.coordinate}";
</script>
<script>
    $(function() {
        var elem = document.querySelector(".js-switch");
ManagementZYTravel/guns-admin/src/main/webapp/WEB-INF/view/system/specialAreaBilling/specialAreaBilling_edit.html
@@ -123,7 +123,8 @@
<script src="https://webapi.amap.com/maps?v=1.4.15&key=83a918fd5e6ed82be74e3056d403dbe6&plugin=AMap.MouseTool,AMap.DistrictSearch,AMap.PolyEditor,AMap.RectangleEditor,AMap.CircleEditor"></script>
<script src="${ctxPath}/static/modular/system/specialAreaBilling/electricFence.js"></script>
<script src="${ctxPath}/static/modular/system/specialAreaBilling/specialAreaBilling_info.js"></script>
<script>    var coordinateData = "${data.coordinate}";
</script>
<script>
    $(function() {
        var elem = document.querySelector(".js-switch");
ManagementZYTravel/guns-admin/src/main/webapp/static/modular/system/specialAreaBilling/electricFence.js
@@ -1,7 +1,9 @@
var map = new AMap.Map('container',{
// 将 polygons 数组声明提前并确保全局唯一
var polygons = [];
var map = new AMap.Map('container', {
    resizeEnable: true,
    zoom:15,
    center: [102.2667, 27.8833] // 西昌坐标
    zoom: 4, // 使用更小的缩放级别以适应大范围坐标
    center: [77.3833, 34.8833] // 使用更居中的坐标
});
setCenterCoordinate();
function setCenterCoordinate() {
@@ -14,12 +16,35 @@
        map.setCenter(center)
    }
}
// 修改 setElectricFence 函数来支持单个坐标数据
function setElectricFence() {
    console.log("检查 coordinateData:", typeof coordinateData, coordinateData);
    if (typeof coordinateData !== 'undefined' && coordinateData) {
        console.log("开始绘制多边形,坐标数据:", coordinateData);
        var path = convertData(coordinateData);
        console.log("转换后的路径:", path);
        var polygon = new AMap.Polygon({
            path: path,
            strokeWeight: 2,
            fillOpacity: 0.4,
            fillColor: '#00b0ff',
            strokeColor: '#80d8ff'
        });
        map.add(polygon);
        polygons.push(polygon);
        // 使用 setFitView 确保多边形可见
        map.setFitView([polygon]);
        console.log("多边形已添加到地图");
        return;
    }
    // 原有的处理多个位置的逻辑保持不变
    var locationsStr = $("#locationList1").val();
    if ("" != locationsStr && null != locationsStr) {
        var locations = JSON.parse(locationsStr);
        for (let i = 0; i < locations.length; i++) {
            console.log(locations[i])
            var gid = locations[i].coordinate
            if (gid == null || gid == "") {
                continue;
@@ -33,6 +58,7 @@
                strokeColor: '#80d8ff'
            });
            map.add(polygon);
            polygons.push(polygon);
        }
    }
}
@@ -110,10 +136,15 @@
var district = null;
var polygons=[];
function drawBounds() {
    // 在编辑模式下不执行行政区划绘制
    if (typeof coordinateData !== 'undefined' && coordinateData) {
        return;
    }
    if(value == ''){
        value = '北京市';
        value = '西昌市';
    }
    //加载行政区划插件
@@ -129,8 +160,23 @@
    //行政区查询
    district.setLevel(document.getElementById('level').value)
    district.search(value, function(status, result) {
        map.remove(polygons)//清除上次结果
        polygons = [];
        // 只清除行政区划多边形,保留电子围栏
        var tempPolygons = [];
        for (var i = 0; i < polygons.length; i++) {
            // 保留用户绘制的电子围栏(通过判断是否在objs中)
            var isUserPolygon = false;
            for (var j = 0; j < objs.polygon.length; j++) {
                if (polygons[i] === objs.polygon[j]) {
                    isUserPolygon = true;
                    break;
                }
            }
            if (!isUserPolygon) {
                tempPolygons.push(polygons[i]);
            }
        }
        map.remove(tempPolygons);
        var bounds = result.districtList[0].boundaries;
        if (bounds) {
            for (var i = 0, l = bounds.length; i < l; i++) {
@@ -142,18 +188,21 @@
                    fillColor: '#80d8ff',
                    strokeColor: '#0091ea'
                });
                map.add(polygon);
                polygons.push(polygon);
            }
        }
        map.add(polygons)
        map.setFitView(polygons);//视口自适应
        // 只对行政区划多边形进行视野调整
        if (bounds && bounds.length > 0) {
            map.setFitView(polygons.slice(polygons.length - bounds.length));
        }
    });
}
document.getElementById('find').onclick = function () {
    value = document.getElementById('district').value;
    if(value == ''){
        value = "北京市";
        value = "西昌市";
    }
    drawBounds()
};
@@ -161,7 +210,7 @@
    if (e.keyCode === 13) {
        value = document.getElementById('district').value;
        if(value == ''){
            value = "北京市";
            value = "西昌市";
        }
        drawBounds();
        return false;
@@ -236,6 +285,7 @@
document.getElementById('clear').onclick = function(){
    map.remove(overlays)
    map.remove(polygons);
    overlays = [];
    coordinate = '';
    objs.circle = [];
@@ -372,6 +422,8 @@
        editor.close();
    }
}
$(function () {
    console.log("coordinateData:", coordinateData); // 添加调试日志
    setElectricFence()
})