diff --git a/ridelease-system/src/main/java/com/ruoyi/system/domain/model/RlModelVO.java b/ridelease-system/src/main/java/com/ruoyi/system/domain/model/RlModelVO.java index dc0ba63..fecd56b 100644 --- a/ridelease-system/src/main/java/com/ruoyi/system/domain/model/RlModelVO.java +++ b/ridelease-system/src/main/java/com/ruoyi/system/domain/model/RlModelVO.java @@ -1,6 +1,7 @@ package com.ruoyi.system.domain.model; -import com.ruoyi.system.domain.accessory.RlAccessory; +import com.ruoyi.system.domain.RlFunction; +import com.ruoyi.system.domain.accessory.RlAccessoryVO; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -11,7 +12,7 @@ import java.util.List; public class RlModelVO extends RlModel{ /** 配件 */ - private List accessorys; + private List accessorys; /** 价格 */ private BigDecimal price; @@ -21,4 +22,7 @@ public class RlModelVO extends RlModel{ @ApiModelProperty("可租车辆") private Integer rentalCar; + + @ApiModelProperty("功能列表") + private List functionList; } diff --git a/ridelease-system/src/main/java/com/ruoyi/system/domain/store/StoreVo.java b/ridelease-system/src/main/java/com/ruoyi/system/domain/store/StoreVo.java index ff699b9..35402ca 100644 --- a/ridelease-system/src/main/java/com/ruoyi/system/domain/store/StoreVo.java +++ b/ridelease-system/src/main/java/com/ruoyi/system/domain/store/StoreVo.java @@ -27,7 +27,5 @@ public class StoreVo extends Store { @ApiModelProperty("车型列表") private List models; -// @ApiModelProperty("是否免费送取车") -// private Boolean isFreeCar; } diff --git a/ridelease-system/src/main/java/com/ruoyi/system/mapper/RlAccessoryMapper.java b/ridelease-system/src/main/java/com/ruoyi/system/mapper/RlAccessoryMapper.java index f903da3..93d6dbd 100644 --- a/ridelease-system/src/main/java/com/ruoyi/system/mapper/RlAccessoryMapper.java +++ b/ridelease-system/src/main/java/com/ruoyi/system/mapper/RlAccessoryMapper.java @@ -67,7 +67,7 @@ public interface RlAccessoryMapper * @param modelId 车型id * @return 配件集合 */ - List selectRlAccessoryListByModelId(Long modelId); + List selectRlAccessoryListByModelId(Long modelId); /** * 根据车辆id查询车辆配件列表 diff --git a/ridelease-system/src/main/java/com/ruoyi/system/service/IRlAccessoryService.java b/ridelease-system/src/main/java/com/ruoyi/system/service/IRlAccessoryService.java index 64a09b8..7e5e7ac 100644 --- a/ridelease-system/src/main/java/com/ruoyi/system/service/IRlAccessoryService.java +++ b/ridelease-system/src/main/java/com/ruoyi/system/service/IRlAccessoryService.java @@ -35,7 +35,7 @@ public interface IRlAccessoryService * @param modelId 车型id * @return 配件集合 */ - public List selectRlAccessoryListByModelId(Long modelId); + public List selectRlAccessoryListByModelId(Long modelId); /** * 新增配件 @@ -75,6 +75,6 @@ public interface IRlAccessoryService * @param deviceId 车辆id * @return 车辆配件 */ - public List selectRlDeviceAccessoryByDeviceId(Long deviceId); + public List selectRlDeviceAccessoryByModelId(Long deviceId); } diff --git a/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlAccessoryServiceImpl.java b/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlAccessoryServiceImpl.java index 2dfa9e5..655e27a 100644 --- a/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlAccessoryServiceImpl.java +++ b/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlAccessoryServiceImpl.java @@ -53,7 +53,7 @@ public class RlAccessoryServiceImpl implements IRlAccessoryService * @return 配件集合 */ @Override - public List selectRlAccessoryListByModelId(Long modelId) { + public List selectRlAccessoryListByModelId(Long modelId) { return rlAccessoryMapper.selectRlAccessoryListByModelId(modelId); } @@ -111,12 +111,12 @@ public class RlAccessoryServiceImpl implements IRlAccessoryService /** * 根据车辆id * - * @param deviceId 车辆id + * @param modelId 车型id * @return 车辆配件 */ @Override - public List selectRlDeviceAccessoryByDeviceId(Long deviceId) + public List selectRlDeviceAccessoryByModelId(Long modelId) { - return rlAccessoryMapper.selectRlDeviceAccessoryByDeviceId(deviceId); + return rlAccessoryMapper.selectRlAccessoryListByModelId(modelId); } } diff --git a/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlDeviceServiceImpl.java b/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlDeviceServiceImpl.java index 395ddc9..1522b59 100644 --- a/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlDeviceServiceImpl.java +++ b/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlDeviceServiceImpl.java @@ -210,10 +210,6 @@ public class RlDeviceServiceImpl extends ServiceImpl i rlDevice.setLongitude(lon.toString()); rlDevice.setLatitude(lat.toString()); } - List accessorys = accessoryService.selectRlDeviceAccessoryByDeviceId(rlDevice.getDeviceId()); - if(ObjectUtil.isNotNull(accessorys)){ - rlDevice.setAccessorys(accessorys); - } StoreVo storeVo = storeService.selectSmStoreById(rlDevice.getStoreId()); if(ObjectUtil.isNotNull(storeVo)){ rlDevice.setStoreLocation(storeVo.getAddress()); diff --git a/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlModelServiceImpl.java b/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlModelServiceImpl.java index 7c2a408..0c8b706 100644 --- a/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlModelServiceImpl.java +++ b/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlModelServiceImpl.java @@ -4,8 +4,8 @@ import cn.hutool.core.util.ObjectUtil; import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.system.domain.RlFunction; +import com.ruoyi.system.domain.accessory.RlAccessoryVO; import com.ruoyi.system.domain.device.RlDevice; -import com.ruoyi.system.domain.accessory.RlAccessory; import com.ruoyi.system.domain.model.RlModel; import com.ruoyi.system.domain.model.RlModelVO; import com.ruoyi.system.mapper.RlModelMapper; @@ -56,13 +56,15 @@ public class RlModelServiceImpl implements IRlModelService { RlModelVO etModel = rlModelMapper.selectEModelByModelId(modelId); if(ObjectUtil.isNotNull(etModel)){ - // 有几辆车待租 // 配件列表 - List accessories = accessoryService.selectRlAccessoryListByModelId(modelId); + List accessories = accessoryService.selectRlAccessoryListByModelId(modelId); if(ObjectUtil.isNotNull(accessories)){ etModel.setAccessorys(accessories); } - Integer allNum = eDeviceService.selectCountByModelId(modelId); + // 功能列表 + List functionList = getFunctionListByModelId(modelId); + etModel.setFunctionList(functionList); +// Integer allNum = eDeviceService.selectCountByModelId(modelId); // etModel.setDeviceNum(allNum); } return etModel; @@ -112,8 +114,17 @@ public class RlModelServiceImpl implements IRlModelService @Override public List selectEModelListByStoreId(Long storeId) { - List etModels = rlModelMapper.selectEModelListByStoreId(storeId); - return etModels; + List models = rlModelMapper.selectEModelListByStoreId(storeId); + for (RlModelVO model:models) { + List functionList = getFunctionListByModelId(model.getModelId()); + model.setFunctionList(functionList); + + List accessories = accessoryService.selectRlAccessoryListByModelId(model.getModelId()); + if(ObjectUtil.isNotNull(accessories)){ + model.setAccessorys(accessories); + } + } + return models; } /** diff --git a/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlOrderServiceImpl.java b/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlOrderServiceImpl.java index 34ca49c..26ff91f 100644 --- a/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlOrderServiceImpl.java +++ b/ridelease-system/src/main/java/com/ruoyi/system/service/impl/RlOrderServiceImpl.java @@ -99,7 +99,7 @@ public class RlOrderServiceImpl implements IRlOrderService RlOrderVO order = orderMapper.selectRlOrderByOrderNo(orderNo); RlDevice rlDevice = deviceService.selectDeviceBySn(order.getSn()); if(ObjectUtil.isNull(rlDevice)) throw new RuntimeException("未找到车辆信息"); - List accessorys = accessoryService.selectRlDeviceAccessoryByDeviceId(rlDevice.getDeviceId()); + List accessorys = accessoryService.selectRlAccessoryListByModelId(order.getModelId()); order.setAccessorys(accessorys); order.setPicture(rlDevice.getPicture()); return order; diff --git a/ridelease-system/src/main/java/com/ruoyi/system/service/store/impl/StoreServiceImpl.java b/ridelease-system/src/main/java/com/ruoyi/system/service/store/impl/StoreServiceImpl.java index 05925fc..8619b40 100644 --- a/ridelease-system/src/main/java/com/ruoyi/system/service/store/impl/StoreServiceImpl.java +++ b/ridelease-system/src/main/java/com/ruoyi/system/service/store/impl/StoreServiceImpl.java @@ -7,7 +7,6 @@ import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.ServiceUtil; import com.ruoyi.common.utils.bean.collection.CollectionUtils; import com.ruoyi.common.utils.map.GeoUtils; -import com.ruoyi.system.domain.model.RlModel; import com.ruoyi.system.domain.model.RlModelVO; import com.ruoyi.system.domain.store.Store; import com.ruoyi.system.domain.store.StoreCountVO; @@ -439,8 +438,8 @@ public class StoreServiceImpl implements RlStoreService */ @Override public List getStoreListByLocation(StoreQuery query) { - String nearby = sysConfigService.selectConfigByKey("nearby.store"); - double radiusInMeters = Double.parseDouble(nearby) * 1000; // 将半径转换为米 + BigDecimal radiusFromQuery = query.getRadius(); + double radiusInMeters = (radiusFromQuery != null) ? radiusFromQuery.doubleValue() : Double.parseDouble(sysConfigService.selectConfigByKey("nearby.store")) * 1000; // 根据定位获取附近方圆X公里的店铺列表 double userLon = Double.parseDouble(query.getPhoneLon()); double userLat = Double.parseDouble(query.getPhoneLat()); diff --git a/ridelease-system/src/main/resources/mapper/system/RlAccessoryMapper.xml b/ridelease-system/src/main/resources/mapper/system/RlAccessoryMapper.xml index 3db94f5..f27bea8 100644 --- a/ridelease-system/src/main/resources/mapper/system/RlAccessoryMapper.xml +++ b/ridelease-system/src/main/resources/mapper/system/RlAccessoryMapper.xml @@ -4,15 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - - - - - - - - - + select accessory_id, name, model_id, status, create_by, create_time, update_time from rl_accessory