From 80bc2c6201000212c9ee60b681834d51ce42d5d0 Mon Sep 17 00:00:00 2001 From: zvv <508748680@qq.com> Date: Sat, 28 Mar 2026 20:55:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=97=E9=93=BA=E8=90=A5=E4=B8=9A=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E8=AE=BE=E7=BD=AE=E4=B8=9A=E5=8A=A1=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/sky/config/RedisConfiguration.java | 26 ++++++++++ .../com/sky/config/WebMvcConfiguration.java | 23 +++++++- .../sky/controller/admin/ShopController.java | 52 +++++++++++++++++++ .../sky/controller/user/ShopController.java | 37 +++++++++++++ .../src/main/resources/application-dev.yml | 6 +++ sky-server/src/main/resources/application.yml | 5 ++ 6 files changed, 147 insertions(+), 2 deletions(-) create mode 100644 sky-server/src/main/java/com/sky/config/RedisConfiguration.java create mode 100644 sky-server/src/main/java/com/sky/controller/admin/ShopController.java create mode 100644 sky-server/src/main/java/com/sky/controller/user/ShopController.java diff --git a/sky-server/src/main/java/com/sky/config/RedisConfiguration.java b/sky-server/src/main/java/com/sky/config/RedisConfiguration.java new file mode 100644 index 0000000..89088ee --- /dev/null +++ b/sky-server/src/main/java/com/sky/config/RedisConfiguration.java @@ -0,0 +1,26 @@ +package com.sky.config; + + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.data.redis.connection.RedisConnectionFactory; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.serializer.StringRedisSerializer; + +@Configuration +@Slf4j +public class RedisConfiguration { + + + @Bean + public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory) { + log.info("开始创建redis模板对象..."); + RedisTemplate redisTemplate = new RedisTemplate(); + //设置redis的连接工厂对象 + redisTemplate.setConnectionFactory(redisConnectionFactory); + //设置redis key的序列化器 + redisTemplate.setKeySerializer(new StringRedisSerializer()); + return redisTemplate; + } +} diff --git a/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java b/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java index 5d1b6ef..ee617e4 100644 --- a/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java +++ b/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java @@ -47,16 +47,35 @@ public class WebMvcConfiguration extends WebMvcConfigurationSupport { * @return */ @Bean - public Docket docket() { + public Docket docket1() { ApiInfo apiInfo = new ApiInfoBuilder() .title("苍穹外卖项目接口文档") .version("2.0") .description("苍穹外卖项目接口文档") .build(); Docket docket = new Docket(DocumentationType.SWAGGER_2) + .groupName("管理端接口") .apiInfo(apiInfo) .select() - .apis(RequestHandlerSelectors.basePackage("com.sky.controller")) + .apis(RequestHandlerSelectors.basePackage("com.sky.controller.admin")) + .paths(PathSelectors.any()) + .build(); + return docket; + } + + + @Bean + public Docket docket2() { + ApiInfo apiInfo = new ApiInfoBuilder() + .title("苍穹外卖项目接口文档") + .version("2.0") + .description("苍穹外卖项目接口文档") + .build(); + Docket docket = new Docket(DocumentationType.SWAGGER_2) + .groupName("用户端接口") + .apiInfo(apiInfo) + .select() + .apis(RequestHandlerSelectors.basePackage("com.sky.controller.user")) .paths(PathSelectors.any()) .build(); return docket; diff --git a/sky-server/src/main/java/com/sky/controller/admin/ShopController.java b/sky-server/src/main/java/com/sky/controller/admin/ShopController.java new file mode 100644 index 0000000..25d41bd --- /dev/null +++ b/sky-server/src/main/java/com/sky/controller/admin/ShopController.java @@ -0,0 +1,52 @@ +package com.sky.controller.admin; + + +import com.sky.result.Result; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.models.auth.In; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.web.bind.annotation.*; + +@RestController("adminShopController") +@RequestMapping("/admin/shop") +@Api(tags = "店铺相关接口") +@Slf4j +public class ShopController { + + + public static final String KEY = "SHOP_STATUS"; + + @Autowired + private RedisTemplate redisTemplate; + + + /** + * 设置店铺的营业状态 + * @param status + * @return + */ + @PutMapping("/{status}") + @ApiOperation("设置店铺的营业状态") + public Result setStatus(@PathVariable Integer status){ + log.info("设置店铺的营业状态:{}", status == 1?"营业中":"打烊中"); + redisTemplate.opsForValue().set(KEY,status); + return Result.success(); + } + + + /** + * 获取店铺的营业状态 + * @return + */ + @GetMapping("/status") + @ApiOperation("获取店铺的营业状态") + public Result getStatus( ){ + + Integer status = (Integer) redisTemplate.opsForValue().get(KEY); + log.info("获取店铺的营业状态:{}", status == 1?"营业中":"打烊中"); + return Result.success(status); + } +} diff --git a/sky-server/src/main/java/com/sky/controller/user/ShopController.java b/sky-server/src/main/java/com/sky/controller/user/ShopController.java new file mode 100644 index 0000000..e92f7e6 --- /dev/null +++ b/sky-server/src/main/java/com/sky/controller/user/ShopController.java @@ -0,0 +1,37 @@ +package com.sky.controller.user; + + +import com.sky.result.Result; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.web.bind.annotation.*; + +@RestController("userShopController") +@RequestMapping("/user/shop") +@Api(tags = "店铺相关接口") +@Slf4j +public class ShopController { + + public static final String KEY = "SHOP_STATUS"; + + + @Autowired + private RedisTemplate redisTemplate; + + + /** + * 获取店铺的营业状态 + * @return + */ + @GetMapping("/status") + @ApiOperation("获取店铺的营业状态") + public Result getStatus( ){ + + Integer status = (Integer) redisTemplate.opsForValue().get(KEY); + log.info("获取店铺的营业状态:{}", status == 1?"营业中":"打烊中"); + return Result.success(status); + } +} diff --git a/sky-server/src/main/resources/application-dev.yml b/sky-server/src/main/resources/application-dev.yml index 84ca8d8..3f78d97 100644 --- a/sky-server/src/main/resources/application-dev.yml +++ b/sky-server/src/main/resources/application-dev.yml @@ -12,3 +12,9 @@ sky: access-key-id: LTAI5tPB4TemZaPXduvaV89G access-key-secret: 0oqBHnXTw4C2bIeuVdEJCpMNvXtaB5 bucket-name: web-tlias-901 + + redis: + host: localhost + port: 6379 + password: 123456 + database: 10 diff --git a/sky-server/src/main/resources/application.yml b/sky-server/src/main/resources/application.yml index f441f97..90daabf 100644 --- a/sky-server/src/main/resources/application.yml +++ b/sky-server/src/main/resources/application.yml @@ -12,6 +12,11 @@ spring: url: jdbc:mysql://${sky.datasource.host}:${sky.datasource.port}/${sky.datasource.database}?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true username: ${sky.datasource.username} password: ${sky.datasource.password} + redis: + host: ${sky.redis.host} + port: ${sky.redis.port} + password: ${sky.redis.password} + database: ${sky.redis.database} mybatis: #mapper配置文件