From a7b578c7a052aa9aa370afd6fe3e91a7a9e95a3a Mon Sep 17 00:00:00 2001 From: xiaoqiantx223 <491437285@qq.com> Date: Wed, 17 Jul 2024 17:23:45 +0800 Subject: [PATCH 1/2] xiaoqiantx --- maku-framework/src/main/resources/auth.yml | 6 ++- .../net/maku/maku/controller/TBookController.java | 18 +++++++ .../net/maku/maku/controller/TUserController.java | 58 +++++++++++++++++++++- .../java/net/maku/maku/service/TBookService.java | 1 + .../java/net/maku/maku/service/TUserService.java | 5 ++ .../maku/maku/service/impl/TUserServiceImpl.java | 27 ++++++++++ 6 files changed, 113 insertions(+), 2 deletions(-) diff --git a/maku-framework/src/main/resources/auth.yml b/maku-framework/src/main/resources/auth.yml index 12dbb99..00fcd50 100644 --- a/maku-framework/src/main/resources/auth.yml +++ b/maku-framework/src/main/resources/auth.yml @@ -8,4 +8,8 @@ auth: - /swagger-ui.html - /swagger-ui/** - /doc.html - - / \ No newline at end of file + - / + - /maku/t_user/login + - /maku/t_user/updateUser + - /maku/t_user/register + - /maku/t_user/logout \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/controller/TBookController.java b/maku-server/src/main/java/net/maku/maku/controller/TBookController.java index 582b6e5..c1fb10f 100644 --- a/maku-server/src/main/java/net/maku/maku/controller/TBookController.java +++ b/maku-server/src/main/java/net/maku/maku/controller/TBookController.java @@ -1,6 +1,7 @@ package net.maku.maku.controller; import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.AllArgsConstructor; import net.maku.framework.common.utils.PageResult; @@ -30,6 +31,23 @@ import java.util.List; public class TBookController { private final TBookService tBookService; + @GetMapping("/list") + @Operation(summary = "列表") + public Result> list() { + List list = tBookService.list(); + + return Result.ok(list); + } + + @GetMapping("") + @Operation(summary = "书籍") + @Parameter + public Result getById(@PathVariable Long id){ + TBookEntity entity = tBookService.getById(id); + + return Result.ok(entity); + } + @GetMapping("page") @Operation(summary = "分页") @PreAuthorize("hasAuthority('maku:t_book:page')") diff --git a/maku-server/src/main/java/net/maku/maku/controller/TUserController.java b/maku-server/src/main/java/net/maku/maku/controller/TUserController.java index 507c1b9..ff71544 100644 --- a/maku-server/src/main/java/net/maku/maku/controller/TUserController.java +++ b/maku-server/src/main/java/net/maku/maku/controller/TUserController.java @@ -1,8 +1,11 @@ package net.maku.maku.controller; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.HttpServletRequest; import lombok.AllArgsConstructor; +import net.maku.framework.common.cache.RedisCache; import net.maku.framework.common.utils.PageResult; import net.maku.framework.common.utils.Result; import net.maku.maku.convert.TUserConvert; @@ -10,7 +13,9 @@ import net.maku.maku.entity.TUserEntity; import net.maku.maku.service.TUserService; import net.maku.maku.query.TUserQuery; import net.maku.maku.vo.TUserVO; +import oracle.jdbc.proxy.annotation.Post; import org.springdoc.core.annotations.ParameterObject; +import org.springframework.http.ResponseEntity; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; @@ -18,7 +23,7 @@ import jakarta.validation.Valid; import java.util.List; /** -* +* * * @author 阿沐 babamu@126.com * @since 1.0.0 2024-07-16 @@ -29,6 +34,55 @@ import java.util.List; @AllArgsConstructor public class TUserController { private final TUserService tUserService; + private final RedisCache redisCache; + + @PostMapping("/register") + @Operation(summary = "注册") + public ResponseEntity> register(@RequestBody TUserEntity entity) { + TUserEntity existingUser = tUserService.login(entity); + if (existingUser != null) { + return ResponseEntity.badRequest().body(Result.error("用户名已存在")); + } else { + tUserService.save(entity); + return ResponseEntity.ok(Result.ok("注册成功")); + } + } + + + @PostMapping("/login") + @Operation(summary = "登录") + public Result login(@RequestBody TUserEntity entity){ + TUserEntity entity1 = tUserService.login(entity); + if(ObjectUtils.isNotNull(entity1)){ + return Result.ok(entity1); + }else { + return Result.error("登录失败"); + } + } + + + @GetMapping("/updateUser") + @Operation(summary = "修改") + public Result updateUser(@RequestBody TUserVO vo){ + TUserVO tUserVO = tUserService.updateUser(vo); + + return Result.ok(tUserVO); + } + + @PostMapping("/logout") + @Operation(summary = "退出登录") + public Result logout(HttpServletRequest request) { + String token = request.getHeader("token"); + if (token == null) { + return Result.error("token为空"); + } + Object o = redisCache.get(token); + if (o != null) { + redisCache.delete(token); + return Result.ok("退出登录"); + } + return Result.error("登录失败"); + } @GetMapping("page") @Operation(summary = "分页") @@ -74,4 +128,6 @@ public class TUserController { return Result.ok(); } + + } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/service/TBookService.java b/maku-server/src/main/java/net/maku/maku/service/TBookService.java index 96bdeed..896f5ca 100644 --- a/maku-server/src/main/java/net/maku/maku/service/TBookService.java +++ b/maku-server/src/main/java/net/maku/maku/service/TBookService.java @@ -23,4 +23,5 @@ public interface TBookService extends BaseService { void update(TBookVO vo); void delete(List idList); + } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/service/TUserService.java b/maku-server/src/main/java/net/maku/maku/service/TUserService.java index 9279f5c..5dbb763 100644 --- a/maku-server/src/main/java/net/maku/maku/service/TUserService.java +++ b/maku-server/src/main/java/net/maku/maku/service/TUserService.java @@ -23,4 +23,9 @@ public interface TUserService extends BaseService { void update(TUserVO vo); void delete(List idList); + + TUserEntity login(TUserEntity entity); + + TUserVO updateUser(TUserVO vo); + } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TUserServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TUserServiceImpl.java index 36f00e8..38412d7 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TUserServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TUserServiceImpl.java @@ -1,5 +1,6 @@ package net.maku.maku.service.impl; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -16,6 +17,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.UUID; /** * @@ -27,6 +29,7 @@ import java.util.List; @AllArgsConstructor public class TUserServiceImpl extends BaseServiceImpl implements TUserService { + @Override public PageResult page(TUserQuery query) { IPage page = baseMapper.selectPage(getPage(query), getWrapper(query)); @@ -60,4 +63,28 @@ public class TUserServiceImpl extends BaseServiceImpl imp removeByIds(idList); } + public TUserEntity login(TUserEntity entity) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TUserEntity::getUsername, entity.getUsername()); + wrapper.eq(TUserEntity::getPassword, entity.getPassword()); + TUserEntity user = getOne(wrapper); + if (ObjectUtils.isNotNull(user)){ + UUID uuid = UUID.randomUUID(); + user.setAvatar(uuid.toString()); + updateById(user); + return user; + }else{ + return null; + } + } + + @Override + public TUserVO updateUser(TUserVO vo) { + TUserEntity entity =new TUserEntity(); + entity.setUsername(vo.getUsername()); + entity.setPassword(vo.getPassword()); + updateById(entity); + return vo; + } + } \ No newline at end of file From 1289e2a378a0ca435d6698bb35451203869c8303 Mon Sep 17 00:00:00 2001 From: xiaoqiantx223 <491437285@qq.com> Date: Wed, 17 Jul 2024 17:42:52 +0800 Subject: [PATCH 2/2] xiaoqiantx --- .../java/net/maku/maku/entity/TUserEntity.java | 1 - .../maku/maku/service/impl/TUserServiceImpl.java | 26 ++++++++++++++++++++++ maku-server/src/main/resources/application-dev.yml | 2 +- 3 files changed, 27 insertions(+), 2 deletions(-) diff --git a/maku-server/src/main/java/net/maku/maku/entity/TUserEntity.java b/maku-server/src/main/java/net/maku/maku/entity/TUserEntity.java index 8caa01e..0344b43 100644 --- a/maku-server/src/main/java/net/maku/maku/entity/TUserEntity.java +++ b/maku-server/src/main/java/net/maku/maku/entity/TUserEntity.java @@ -1,7 +1,6 @@ package net.maku.maku.entity; import lombok.Data; -import lombok.EqualsAndHashCode; import com.baomidou.mybatisplus.annotation.*; import java.math.BigDecimal; import java.util.Date; diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TUserServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TUserServiceImpl.java index 36f00e8..3cea877 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TUserServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TUserServiceImpl.java @@ -1,5 +1,6 @@ package net.maku.maku.service.impl; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -16,6 +17,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.UUID; /** * @@ -60,4 +62,28 @@ public class TUserServiceImpl extends BaseServiceImpl imp removeByIds(idList); } + @Override + public TUserEntity login(TUserEntity entity) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TUserEntity::getUsername, entity.getUsername()); + wrapper.eq(TUserEntity::getPassword, entity.getPassword()); + TUserEntity one = getOne(wrapper); + if(ObjectUtils.isNotNull(one)) { + UUID uuid = UUID.randomUUID(); + one.setAvatar(uuid.toString()); + updateById(one); + return one; + } + return null; + } + + @Override + public TUserVO updateUser(TUserVO vo) { + TUserEntity entity = new TUserEntity(); + entity.setUsername(vo.getUsername()); + entity.setPassword(vo.getPassword()); + updateById(entity); + return vo; + } + } \ No newline at end of file diff --git a/maku-server/src/main/resources/application-dev.yml b/maku-server/src/main/resources/application-dev.yml index cccf1ff..88c8b35 100644 --- a/maku-server/src/main/resources/application-dev.yml +++ b/maku-server/src/main/resources/application-dev.yml @@ -4,7 +4,7 @@ spring: database: 0 host: 127.0.0.1 port: 6379 - # password: wxbc5b16589b8f183e + password: 123456 #timeout: 6000ms # 连接超时时长(毫秒) datasource: dynamic: