luodangjia
2024-10-08 4c96637a005891c709662ae84edd072ad9a4a57d
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
@@ -132,7 +132,31 @@
      siteInfoVO.setSpaceChargeExplain(byId.getSpaceChargeExplain());
      return R.ok(siteInfoVO);
   }
   /**
    * 通过桩编号获取电站信息 遠程調用
    * @param number
    * @return
    */
   @PostMapping("/getSiteInfoByNumber1")
   public R<SiteInfoVO> getSiteInfoByNumber1(@RequestParam("number") String number){
      SiteInfoVO siteInfoVO = new SiteInfoVO();
      TChargingPile one = chargingPileService.lambdaQuery().eq(TChargingPile::getCode, number).one();
      Site byId = siteService.getById(one.getSiteId());
      TAccountingStrategy byId1 = accountingStrategyService.getById(byId.getAccountingStrategyId());
      List<TAccountingStrategyDetail> list = accountingStrategyDetailService.lambdaQuery().eq(TAccountingStrategyDetail::getAccountingStrategyId, byId1.getId()).list();
      for (TAccountingStrategyDetail tAccountingStrategyDetail : list) {
         // 当前时间属于那个阶段 取哪个阶段的电价
         if(LocalTime.now().isAfter(LocalTime.parse(tAccountingStrategyDetail.getStartTime())) && LocalTime.now().isBefore(LocalTime.parse(tAccountingStrategyDetail.getEndTime()))){
            siteInfoVO.setElectrovalence(tAccountingStrategyDetail.getElectrovalence());
            siteInfoVO.setVipElectrovalence(tAccountingStrategyDetail.getElectrovalence().multiply(byId1.getDiscount()).setScale(4, BigDecimal.ROUND_HALF_UP));
         }
      }
      siteInfoVO.setChargingPileId(one.getId());
      siteInfoVO.setName(byId.getName());
      siteInfoVO.setNumber(one.getNumber().toString());
      siteInfoVO.setSpaceChargeExplain(byId.getSpaceChargeExplain());
      return R.ok(siteInfoVO);
   }
   
   @GetMapping("/getSiteList")
   @ApiOperation(value = "获取站点列表", tags = {"管理后台-站点管理"})
@@ -140,6 +164,8 @@
      PageInfo<GetSiteListDTO> list = siteService.getSiteList(siteList);
      return AjaxResult.success(list);
   }
   @GetMapping("/getSiteList/byUserId")
   @ApiOperation(value = "获取站点列表", tags = {"管理后台-站点管理"})
   public R<List<GetSiteListDTO>> getSiteListByUserId(@RequestParam("userId") Long userId){
@@ -258,7 +284,7 @@
      return AjaxResult.success(siteService.getSiteListGun());
   }
   @PostMapping("/getSiteListParkLot")
   @GetMapping("/getSiteListParkLot")
   @ApiOperation(value = "获取站点列表不分页", tags = {"管理后台-停车场绑定"})
   public AjaxResult<List<Site>> getSiteListParkLot(){
      return AjaxResult.success(siteService.getSiteListParkLot());
@@ -278,15 +304,15 @@
   @ApiOperation(value = "获取站点详细信息", tags = {"小程序-站点管理-站点详情"})
   @PostMapping("/getDetailById")
   public AjaxResult<SiteDetailVO> getDetailById(@Validated @RequestBody SiteDetailQuery query){
      SiteDetailVO siteDetailVO = siteService.getDetailById(query.getSiteId());
      SiteDetailVO siteDetailVO = siteService.getDetailById(query);
      // 查询合作商名称
      Partner partner = partnerService.getById(siteDetailVO.getPartnerId());
      if(Objects.nonNull(partner)){
         siteDetailVO.setPartnerName(partner.getName());
      }
      // 计算距离
      Map<String, Double> distance = GeodesyUtil.getDistance(query.getLat() + "," + query.getLon(), siteDetailVO.getLat() + "," + siteDetailVO.getLon());
      siteDetailVO.setDistance(distance.get("WGS84"));
//      Map<String, Double> distance = GeodesyUtil.getDistance(query.getLat() + "," + query.getLon(), siteDetailVO.getLat() + "," + siteDetailVO.getLon());
//      siteDetailVO.setDistance(distance.get("WGS84"));
      // 查询绑定车牌提示文案
      TParkingLot parkingLot = parkingLotService.getOne(Wrappers.lambdaQuery(TParkingLot.class)
            .eq(TParkingLot::getSiteId, query.getSiteId()));
@@ -400,7 +426,7 @@
   @ResponseBody
   @PostMapping("/getSiteByIds")
   public R<List<Site>> getSiteByIds(@RequestBody List<Integer> ids){
      List<Site> sites = siteService.listByIds(ids);
      List<Site> sites = siteService.list(new LambdaQueryWrapper<Site>().in(Site::getId, ids).eq(Site::getDelFlag, 0));
      return R.ok(sites);
   }