From 4f3ac61a6a2ba1f9ac86841eaa0febffdbe2bdf5 Mon Sep 17 00:00:00 2001 From: pengjie <17373303529@163.com> Date: Wed, 7 Jan 2026 10:53:43 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/VideoConfigController.java | 8 ++-- .../device/service/VideoConfigService.java | 2 +- .../controller/TravelIndexController.java | 44 +++++++++++++++++++ .../travel/domain/vo/LandscapeTypeVO.java | 25 +++++++++++ .../travel/service/LandscapeService.java | 16 +++++++ 5 files changed, 90 insertions(+), 5 deletions(-) create mode 100644 sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/controller/TravelIndexController.java create mode 100644 sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/domain/vo/LandscapeTypeVO.java diff --git a/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/device/controller/VideoConfigController.java b/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/device/controller/VideoConfigController.java index 47e14b1..c9bad33 100644 --- a/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/device/controller/VideoConfigController.java +++ b/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/device/controller/VideoConfigController.java @@ -37,28 +37,28 @@ public class VideoConfigController { @Operation(summary = "分页查询 @author pengjie") @PostMapping("/videoConfig/queryPage") - @SaCheckPermission("videoConfig:query") +// @SaCheckPermission("videoConfig:query") public ResponseDTO> queryPage(@RequestBody @Valid VideoConfigQueryForm queryForm) { return ResponseDTO.ok(videoConfigService.queryPage(queryForm)); } @Operation(summary = "添加 @author pengjie") @PostMapping("/videoConfig/add") - @SaCheckPermission("videoConfig:add") +// @SaCheckPermission("videoConfig:add") public ResponseDTO add(@RequestBody @Valid VideoConfigAddForm addForm) { return videoConfigService.add(addForm); } @Operation(summary = "更新 @author pengjie") @PostMapping("/videoConfig/update") - @SaCheckPermission("videoConfig:update") +// @SaCheckPermission("videoConfig:update") public ResponseDTO update(@RequestBody @Valid VideoConfigUpdateForm updateForm) { return videoConfigService.update(updateForm); } @Operation(summary = "单个删除 @author pengjie") @GetMapping("/videoConfig/delete/{id}") - @SaCheckPermission("videoConfig:delete") +// @SaCheckPermission("videoConfig:delete") public ResponseDTO batchDelete(@PathVariable Long id) { return videoConfigService.delete(id); } diff --git a/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/device/service/VideoConfigService.java b/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/device/service/VideoConfigService.java index 4e3e751..41a570c 100644 --- a/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/device/service/VideoConfigService.java +++ b/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/device/service/VideoConfigService.java @@ -93,7 +93,7 @@ public class VideoConfigService { public ResponseDTO updateEnable(Map map) { LambdaUpdateWrapper wrapper = Wrappers.lambdaUpdate(); wrapper.set(VideoConfigEntity::getIsEnable, 0); - wrapper.set(VideoConfigEntity::getVillageId, SmartRequestUtil.getRequestUser().getVillageId()); + wrapper.eq(VideoConfigEntity::getVillageId, SmartRequestUtil.getRequestUser().getVillageId()); videoConfigManager.update(wrapper); VideoConfigEntity videoConfig = videoConfigDao.selectOne(Wrappers.lambdaQuery() .eq(VideoConfigEntity::getVillageId, SmartRequestUtil.getRequestUser().getVillageId()) diff --git a/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/controller/TravelIndexController.java b/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/controller/TravelIndexController.java new file mode 100644 index 0000000..09dbd19 --- /dev/null +++ b/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/controller/TravelIndexController.java @@ -0,0 +1,44 @@ +package net.lab1024.sa.admin.module.business.travel.controller; + +import cn.dev33.satoken.annotation.SaCheckPermission; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import net.lab1024.sa.admin.module.business.travel.domain.form.LandscapeQueryForm; +import net.lab1024.sa.admin.module.business.travel.domain.vo.LandscapeTypeVO; +import net.lab1024.sa.admin.module.business.travel.domain.vo.LandscapeVO; +import net.lab1024.sa.admin.module.business.travel.service.LandscapeService; +import net.lab1024.sa.base.common.domain.PageResult; +import net.lab1024.sa.base.common.domain.ResponseDTO; +import net.lab1024.sa.base.module.support.dict.dao.DictValueDao; +import net.lab1024.sa.base.module.support.dict.domain.vo.DictValueVO; +import net.lab1024.sa.base.module.support.dict.service.DictCacheService; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.validation.Valid; +import java.util.List; + +/** + * 文旅大屏 Controller + * + * @Author pengjie + * @Date 2025-08-06 10:05:52 + * @Copyright jxj + */ + +@RestController +@Tag(name = "乡村文旅大屏") +public class TravelIndexController { + + @Resource + private LandscapeService landscapeService; + + @Operation(summary = "景区类型统计 @author pengjie") + @GetMapping("/landscapeIndex/landscapeTypeState") + public ResponseDTO> landscapeTypeState() { + return ResponseDTO.ok(landscapeService.landscapeTypeState()); + } +} diff --git a/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/domain/vo/LandscapeTypeVO.java b/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/domain/vo/LandscapeTypeVO.java new file mode 100644 index 0000000..c320a28 --- /dev/null +++ b/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/domain/vo/LandscapeTypeVO.java @@ -0,0 +1,25 @@ +package net.lab1024.sa.admin.module.business.travel.domain.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * 景区类型统计 VO + * + * @Author pengjie + * @Date 2025-08-06 10:02:18 + * @Copyright jxj + */ + +@Data +public class LandscapeTypeVO { + + + @Schema(description = "景区类型名称") + private String typeName; + + @Schema(description = "数量") + private Integer number; +} diff --git a/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/service/LandscapeService.java b/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/service/LandscapeService.java index 34ec97b..85c487f 100644 --- a/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/service/LandscapeService.java +++ b/sa-admin/src/main/java/net/lab1024/sa/admin/module/business/travel/service/LandscapeService.java @@ -1,5 +1,6 @@ package net.lab1024.sa.admin.module.business.travel.service; +import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; @@ -9,6 +10,7 @@ import net.lab1024.sa.admin.module.business.travel.domain.entity.*; import net.lab1024.sa.admin.module.business.travel.domain.form.LandscapeAddForm; import net.lab1024.sa.admin.module.business.travel.domain.form.LandscapeQueryForm; import net.lab1024.sa.admin.module.business.travel.domain.form.LandscapeUpdateForm; +import net.lab1024.sa.admin.module.business.travel.domain.vo.LandscapeTypeVO; import net.lab1024.sa.admin.module.business.travel.domain.vo.LandscapeVO; import net.lab1024.sa.admin.module.business.travel.manager.GuideRouteManager; import net.lab1024.sa.admin.module.business.travel.manager.RecommendRouteManager; @@ -167,6 +169,20 @@ public class LandscapeService { return ResponseDTO.ok(landscapeVO); } + public List landscapeTypeState() { + List resultList = new ArrayList<>(); + List type = dictCacheService.selectByKeyCode("LANDSCAPE_TYPE"); + List landscapeList = landscapeDao.selectList(null); + for (DictValueVO dictValueVO : type) { + LandscapeTypeVO landscapeTypeVO = new LandscapeTypeVO(); + landscapeTypeVO.setTypeName(dictValueVO.getValueName()); + landscapeTypeVO.setNumber((int) landscapeList.stream().filter(l -> l.getType().equals(dictValueVO.getValueCode())).count()); + resultList.add(landscapeTypeVO); + } + return resultList; + } + + private void build(List landscapeVOList) { List type = dictCacheService.selectByKeyCode("LANDSCAPE_TYPE"); List level = dictCacheService.selectByKeyCode("LANDSCAPE_LEVEL");