xiaoyong931011
2022-09-22 cf0f93a4c122121b205ab52bb5fc3b3b93682670
20220902
3 files modified
74 ■■■■■ changed files
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java 19 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/IMallElectronicFenceServiceImpl.java 53 ●●●●● patch | view | raw | blame | history
src/test/java/cc/mrbird/febs/ProfitTest.java 2 ●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java
@@ -318,14 +318,19 @@
            mallElectronicFenceAdd.setServiceId(serviceId);
            mallElectronicFenceMapper.insert(mallElectronicFenceAdd);
        }else{
            String fenceUpdate = iMallElectronicFenceService.fenceUpdate(xcxProperties.getGaodeKey(), serviceId,
                    mallElectronicFence.getGid(), mallElectronicFence.getFenceName(),
                    adminLeaderAddFenceDto.getLonglatiarr());
            if("fail".equals(fenceUpdate)){
                return new FebsResponse().fail().message("高德地图更新多边形围栏失败");
            //删除电子围栏
            if(StrUtil.isEmpty(adminLeaderAddFenceDto.getLonglatiarr())){
                iMallElectronicFenceService.fenceDelete(xcxProperties.getGaodeKey(),serviceId,mallElectronicFence.getGid());
            }else{
                String fenceUpdate = iMallElectronicFenceService.fenceUpdate(xcxProperties.getGaodeKey(), serviceId,
                        mallElectronicFence.getGid(), mallElectronicFence.getFenceName(),
                        adminLeaderAddFenceDto.getLonglatiarr());
                if("fail".equals(fenceUpdate)){
                    return new FebsResponse().fail().message("高德地图更新多边形围栏失败");
                }
                mallElectronicFence.setLonglatiarr(adminLeaderAddFenceDto.getLonglatiarr());
                mallElectronicFenceMapper.updateById(mallElectronicFence);
            }
            mallElectronicFence.setLonglatiarr(adminLeaderAddFenceDto.getLonglatiarr());
            mallElectronicFenceMapper.updateById(mallElectronicFence);
        }
        return new FebsResponse().success();
    }
src/main/java/cc/mrbird/febs/mall/service/impl/IMallElectronicFenceServiceImpl.java
@@ -208,23 +208,39 @@
            return "fail";
        }
    }
    @Override
    public String fenceDelete(String gaodeKey, String serviceId, String fenceId) {
        String url = "https://tsapi.amap.com/v1/track/geofence/delete";
    //电子围栏删除
    public String fenceDel(String gaodeKey, String sid,String fenceId) {
        String url = "https://tsapi.amap.com/v1/track/geofence/delete?key="+gaodeKey+"&sid="+sid+"&gfids="+fenceId;
        HttpPost httpPost = new HttpPost(url);
        Map<String,String> map = new HashMap<>();
        //高德Key
        //用户在高德地图官网申请Web服务API类型Key
        map.put("key",gaodeKey);
        //服务唯一编号
        //sid为猎鹰service唯一编号
        map.put("sid",serviceId);
        //围栏id
        //围栏唯一标识,指定要更新的围栏
        map.put("sid",sid);
        map.put("gfids",fenceId);
        String  param= JSON.toJSONString(map);
        log.info("删除围栏"+param);
        String result = null;
        try {
            result = HttpCurlUtil.sendPostHttp(url, param);
        } catch (IOException e) {
            e.printStackTrace();
        }
        cn.hutool.json.JSONObject maps = JSONUtil.parseObj(result);
        System.out.println(maps);
        String errcode = maps.get("errcode").toString();
        if(!"10000".equals(errcode)){
            return "fail";
        }else{
            return maps.toString();
        }
    }
    @Override
    public String fenceDelete(String gaodeKey, String serviceId, String fenceId) {
        String url = "https://tsapi.amap.com/v1/track/geofence/delete?key="+gaodeKey+"&sid="+serviceId+"&gfids="+fenceId;
        HttpPost httpPost = new HttpPost(url);
        Map<String,String> map = new HashMap<>();
        map.put("key",gaodeKey);
        map.put("sid",serviceId);
        map.put("gfids",fenceId);
        String  param= JSON.toJSONString(map);
        String result = null;
        try {
            result = HttpCurlUtil.sendPostHttp(url, param);
@@ -232,15 +248,14 @@
            e.printStackTrace();
        }
        log.info("删除围栏"+result);
        cn.hutool.json.JSONObject maps = JSONUtil.parseObj(result);
        String errCode = maps.get("errcode").toString();
        if("10000".equals(errCode)){
            String dataStr = maps.get("data").toString();
            cn.hutool.json.JSONObject gfidsJson = JSONUtil.parseObj(dataStr);
            String gfidsStr = gfidsJson.get("gfids").toString();
            return gfidsStr;
        }else{
        System.out.println(maps);
        String errcode = maps.get("errcode").toString();
        if(!"10000".equals(errcode)){
            return "fail";
        }else{
            return maps.toString();
        }
    }
src/test/java/cc/mrbird/febs/ProfitTest.java
@@ -219,7 +219,7 @@
//        trackServiceInfo("e024c63342930addc57189c8608cdb01",null);
//        String e024c63342930addc57189c8608cdb01 = trackServiceDel("e024c63342930addc57189c8608cdb01", "792477");
//        System.out.println(e024c63342930addc57189c8608cdb01);
        String ss = fenceDel("95ede7157929f5f6b6c758971be924b1", "795278","798477");
        String ss = fenceDel("95ede7157929f5f6b6c758971be924b1", "795278","795554");
        System.out.println(ss);
    }