puzhibing
2024-03-01 32ca180560a3e09d0a4b1ab7567ea70180ef8070
cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupServiceImpl.java
@@ -159,9 +159,6 @@
     */
    @Override
    public List<WorldCupListVo> getWorldCupList(WorldCupList worldCupList) {
        if(null == worldCupList.getSort()){
            worldCupList.setSort(1);
        }
        //没有筛选门店,默认使用当前门店
        if(null == worldCupList.getStoreId()){
            worldCupList.setStoreId(worldCupList.getStoreId());
@@ -177,20 +174,34 @@
                heat += count;
            }
            worldCupListVo.setHeat(heat);
            String lat = worldCupListVo.getLat();
            String lon = worldCupListVo.getLon();
            Map<String, Double> distance = GeodesyUtil.getDistance(lon + "," + lat, worldCupList.getLon() + "," + worldCupList.getLat());
            worldCupListVo.setDistance(distance.get("WGS84"));
        }
        Collections.sort(worldCupList1, new Comparator<WorldCupListVo>() {
            @Override
            public int compare(WorldCupListVo o1, WorldCupListVo o2) {
                if(worldCupList.getSort() == 1){
                    return o1.getHeat().compareTo(o2.getHeat());
        if(null != worldCupList.getSort()){
            Collections.sort(worldCupList1, new Comparator<WorldCupListVo>() {
                @Override
                public int compare(WorldCupListVo o1, WorldCupListVo o2) {
                    if(worldCupList.getSort() == 1){
                        return o1.getHeat().compareTo(o2.getHeat());
                    }
                    if(worldCupList.getSort() == 2){
                        return o1.getHeat().compareTo(o2.getHeat()) * -1;
                    }
                    return 0;
                }
                if(worldCupList.getSort() == 2){
                    return o1.getHeat().compareTo(o2.getHeat()) * -1;
            });
        }else{
            Collections.sort(worldCupList1, new Comparator<WorldCupListVo>() {
                @Override
                public int compare(WorldCupListVo o1, WorldCupListVo o2) {
                    return o1.getDistance().compareTo(o2.getDistance()) * -1;
                }
                return 0;
            }
        });
            });
        }
        return worldCupList1;
    }