From 008db77fd439915711b1916efd3c2789fcd96cd2 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期日, 27 四月 2025 16:57:03 +0800 Subject: [PATCH] 大屏接口 --- ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/large/AnalysisOrderDataController.java | 62 ++++++++++++++++++++++++++++++ 1 files changed, 61 insertions(+), 1 deletions(-) diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/large/AnalysisOrderDataController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/large/AnalysisOrderDataController.java index d3d1d45..533fc99 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/large/AnalysisOrderDataController.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/large/AnalysisOrderDataController.java @@ -9,12 +9,16 @@ import cn.hutool.core.io.resource.ClassPathResource; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.admin.entity.MasterWorker; import com.ruoyi.admin.large.model.AnalysisOrderData; import com.ruoyi.admin.large.model.query.OrderDataQuery; import com.ruoyi.admin.large.service.AnalysisOrderDataService; +import com.ruoyi.admin.service.MasterWorkerService; import com.ruoyi.admin.service.SysUserService; import com.ruoyi.admin.utils.ImportExcelUtil; import com.ruoyi.admin.utils.WebUtils; +import com.ruoyi.admin.vo.SiteLargeeVO; +import com.ruoyi.admin.vo.WorkersLargeeVO; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.security.service.TokenService; @@ -36,6 +40,7 @@ import java.net.URLEncoder; import java.text.SimpleDateFormat; import java.util.*; +import java.util.stream.Collectors; /** * <p> @@ -53,16 +58,71 @@ private final TokenService tokenService; private final SysUserService sysUserService; private final OrderClient orderClient; + private final MasterWorkerService masterWorkerService; @Autowired - public AnalysisOrderDataController(AnalysisOrderDataService analysisOrderDataService, TokenService tokenService, SysUserService sysUserService, OrderClient orderClient) { + public AnalysisOrderDataController(AnalysisOrderDataService analysisOrderDataService, TokenService tokenService, SysUserService sysUserService, OrderClient orderClient,MasterWorkerService masterWorkerService) { this.analysisOrderDataService = analysisOrderDataService; this.tokenService = tokenService; this.sysUserService = sysUserService; this.orderClient = orderClient; + this.masterWorkerService = masterWorkerService; } /** + * 大屏-站点分布 + */ + @ApiOperation( value = "大屏-站点分布") + @GetMapping(value = "/listSiteLarge") + public R<SiteLargeeVO> listSiteLarge() { + SiteLargeeVO siteLargeeVO = new SiteLargeeVO(); + // 回收订单数量 + Map<String, Integer> orderMap = new HashMap<>(); + // 回收人员数量 + Map<String, Integer> userMap = new HashMap<>(); + // 根据city为键,值为对应city的订单数量 + List<AnalysisOrderData> list1 = analysisOrderDataService.list(); + for (AnalysisOrderData analysisOrderData : list1) { + if (orderMap.containsKey(analysisOrderData.getCity())) { + orderMap.put(analysisOrderData.getCity(), orderMap.get(analysisOrderData.getCity()) + 1); + } else { + orderMap.put(analysisOrderData.getCity(), 1); + } + if (userMap.containsKey(analysisOrderData.getCity())) { + userMap.put(analysisOrderData.getCity(), userMap.get(analysisOrderData.getCity()) + 1); + } else { + userMap.put(analysisOrderData.getCity(), 1); + } + } + siteLargeeVO.setOrderMap(orderMap); + siteLargeeVO.setUserMap(userMap); + return R.ok(siteLargeeVO); + } + /** + * 大屏-师傅定位分布 + */ + @ApiOperation( value = "大屏-师傅定位分布") + @GetMapping(value = "/listWorkersLarge") + public R<WorkersLargeeVO> listWorkersLarge() { + WorkersLargeeVO siteLargeeVO = new WorkersLargeeVO(); + // 查询师傅经纬度 + List<MasterWorker> list = masterWorkerService.lambdaQuery().isNotNull(MasterWorker::getWorkerLat).isNotNull(MasterWorker::getWorkerLon) + .list(); + siteLargeeVO.setWorkers(list); + // 师傅数量 + Map<String, Integer> userMap = new HashMap<>(); + for (MasterWorker masterWorker : list) { + if (userMap.containsKey(masterWorker.getCity())) { + userMap.put(masterWorker.getCity(), userMap.get(masterWorker.getCity()) + 1); + } else { + userMap.put(masterWorker.getCity(), 1); + } + } +// siteLargeeVO.setSiteMap(); + siteLargeeVO.setUserMap(userMap); + return R.ok(siteLargeeVO); + } + /** * 查询上门回收订单列表 */ @ApiOperation( value = "查询上门回收订单列表") -- Gitblit v1.7.1