refactor(scenic): 重构景区相关接口和数据结构

-移除了 ScenicMapper 中的冗余方法
- 更新了 ScenicEntity 和 ScenicRespVO 的字段结构
- 重构了 ScenicRepository 中的缓存逻辑
- 优化了 AppScenicServiceImpl 中的景区详情获取方法
This commit is contained in:
2025-08-27 10:25:51 +08:00
parent 7d40b8043d
commit 21f76ff9c5
5 changed files with 66 additions and 60 deletions

View File

@@ -14,9 +14,12 @@ import com.ycwl.basic.model.mobile.scenic.account.ScenicLoginRespVO;
import com.ycwl.basic.model.pc.device.entity.DeviceEntity;
import com.ycwl.basic.model.pc.device.resp.DeviceRespVO;
import com.ycwl.basic.model.pc.scenic.entity.ScenicAccountEntity;
import com.ycwl.basic.model.pc.scenic.entity.ScenicConfigEntity;
import com.ycwl.basic.model.pc.scenic.entity.ScenicEntity;
import com.ycwl.basic.model.pc.scenic.req.ScenicReqQuery;
import com.ycwl.basic.model.pc.scenic.resp.ScenicRespVO;
import com.ycwl.basic.repository.DeviceRepository;
import com.ycwl.basic.repository.ScenicRepository;
import com.ycwl.basic.service.mobile.AppScenicService;
import com.ycwl.basic.service.pc.ScenicAccountService;
import com.ycwl.basic.utils.ApiResponse;
@@ -57,6 +60,8 @@ public class AppScenicServiceImpl implements AppScenicService {
private ExtraDeviceMapper extraDeviceMapper;
@Autowired
private RedisTemplate<String, String> redisTemplate;
@Autowired
private ScenicRepository scenicRepository;
@Override
public ApiResponse<PageInfo<ScenicAppVO>> pageQuery(ScenicReqQuery scenicReqQuery) {
@@ -75,7 +80,27 @@ public class AppScenicServiceImpl implements AppScenicService {
@Override
public ApiResponse<ScenicRespVO> getDetails(Long id) {
ScenicRespVO scenicRespVO = scenicMapper.getAppById(id);
ScenicEntity scenic = scenicRepository.getScenic(id);
ScenicRespVO scenicRespVO = new ScenicRespVO();
// 将ScenicEntity的值通过set/get方式写入到ScenicRespVO
if (scenic != null) {
scenicRespVO.setId(scenic.getId());
scenicRespVO.setName(scenic.getName());
scenicRespVO.setPhone(scenic.getPhone());
scenicRespVO.setLogoUrl(scenic.getLogoUrl());
scenicRespVO.setCoverUrl(scenic.getCoverUrl());
scenicRespVO.setIntroduction(scenic.getIntroduction());
scenicRespVO.setLongitude(scenic.getLongitude());
scenicRespVO.setLatitude(scenic.getLatitude());
scenicRespVO.setRadius(scenic.getRadius());
scenicRespVO.setProvince(scenic.getProvince());
scenicRespVO.setCity(scenic.getCity());
scenicRespVO.setArea(scenic.getArea());
scenicRespVO.setAddress(scenic.getAddress());
scenicRespVO.setKfCodeUrl(scenic.getKfCodeUrl());
}
ScenicDeviceCountVO scenicDeviceCountVO = deviceMapper.deviceCountByScenicId(id);
scenicRespVO.setLensNum(scenicDeviceCountVO.getTotalDeviceCount());
return ApiResponse.success(scenicRespVO);