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/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/query/TBookCollectionQuery.java b/maku-server/src/main/java/net/maku/maku/query/TBookCollectionQuery.java index 5ff4b55..34f21a6 100644 --- a/maku-server/src/main/java/net/maku/maku/query/TBookCollectionQuery.java +++ b/maku-server/src/main/java/net/maku/maku/query/TBookCollectionQuery.java @@ -18,4 +18,8 @@ import java.util.Date; @EqualsAndHashCode(callSuper = false) @Schema(description = "查询") public class TBookCollectionQuery extends Query { + @Schema(description = "用户id") + private Integer userId; + @Schema(description = "书本id") + private Integer bookId; } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/query/TBookCommentQuery.java b/maku-server/src/main/java/net/maku/maku/query/TBookCommentQuery.java index de6c1da..68df672 100644 --- a/maku-server/src/main/java/net/maku/maku/query/TBookCommentQuery.java +++ b/maku-server/src/main/java/net/maku/maku/query/TBookCommentQuery.java @@ -18,4 +18,10 @@ import java.util.Date; @EqualsAndHashCode(callSuper = false) @Schema(description = "查询") public class TBookCommentQuery extends Query { + @Schema(description = "用户id") + private Integer userId; + @Schema(description = "书籍id") + private Integer bookId; + @Schema(description = "用户名") + private String userName; } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/query/TBookQuery.java b/maku-server/src/main/java/net/maku/maku/query/TBookQuery.java index ed1c582..aae5546 100644 --- a/maku-server/src/main/java/net/maku/maku/query/TBookQuery.java +++ b/maku-server/src/main/java/net/maku/maku/query/TBookQuery.java @@ -19,4 +19,6 @@ import java.util.Date; @EqualsAndHashCode(callSuper = false) @Schema(description = "查询") public class TBookQuery extends Query { + private String author; + private String bookName; } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/query/TPurchaseDetailsQuery.java b/maku-server/src/main/java/net/maku/maku/query/TPurchaseDetailsQuery.java index e91b0f7..cdc7434 100644 --- a/maku-server/src/main/java/net/maku/maku/query/TPurchaseDetailsQuery.java +++ b/maku-server/src/main/java/net/maku/maku/query/TPurchaseDetailsQuery.java @@ -18,4 +18,8 @@ import java.math.BigDecimal; @EqualsAndHashCode(callSuper = false) @Schema(description = "查询") public class TPurchaseDetailsQuery extends Query { + @Schema(description = "订单编号") + private Integer purchaseId; + @Schema(description = "书本编号") + private Integer bookId; } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/query/TPurchaseQuery.java b/maku-server/src/main/java/net/maku/maku/query/TPurchaseQuery.java index c8ec28a..9d4bc36 100644 --- a/maku-server/src/main/java/net/maku/maku/query/TPurchaseQuery.java +++ b/maku-server/src/main/java/net/maku/maku/query/TPurchaseQuery.java @@ -19,4 +19,6 @@ import java.util.Date; @EqualsAndHashCode(callSuper = false) @Schema(description = "查询") public class TPurchaseQuery extends Query { + private Integer id; + private BigDecimal totalPrice; } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/query/TShoppingTrolleyQuery.java b/maku-server/src/main/java/net/maku/maku/query/TShoppingTrolleyQuery.java index 91c9cce..0deb6c8 100644 --- a/maku-server/src/main/java/net/maku/maku/query/TShoppingTrolleyQuery.java +++ b/maku-server/src/main/java/net/maku/maku/query/TShoppingTrolleyQuery.java @@ -18,4 +18,6 @@ import java.util.Date; @EqualsAndHashCode(callSuper = false) @Schema(description = "查询") public class TShoppingTrolleyQuery extends Query { + private Integer userId; + private Integer bookId; } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/query/TUserQuery.java b/maku-server/src/main/java/net/maku/maku/query/TUserQuery.java index 9fada3c..35a714d 100644 --- a/maku-server/src/main/java/net/maku/maku/query/TUserQuery.java +++ b/maku-server/src/main/java/net/maku/maku/query/TUserQuery.java @@ -19,4 +19,6 @@ import java.util.Date; @EqualsAndHashCode(callSuper = false) @Schema(description = "查询") public class TUserQuery extends Query { + private String username; + private Integer status; } \ 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/TBookCollectionServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java index 00d9e60..7679fff 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.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; @@ -36,7 +37,8 @@ public class TBookCollectionServiceImpl extends BaseServiceImpl getWrapper(TBookCollectionQuery query){ LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); - + wrapper.eq(ObjectUtils.isNotNull(query.getUserId()),TBookCollectionEntity::getUserId,query.getUserId()); + wrapper.eq(ObjectUtils.isNotNull(query.getBookId()),TBookCollectionEntity::getBookId,query.getBookId()); return wrapper; } diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TBookCommentServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TBookCommentServiceImpl.java index d8b500a..72a7801 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TBookCommentServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TBookCommentServiceImpl.java @@ -1,5 +1,6 @@ package net.maku.maku.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -36,6 +37,8 @@ public class TBookCommentServiceImpl extends BaseServiceImpl getWrapper(TBookCommentQuery query){ LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); + wrapper.eq(ObjectUtil.isNotNull(query.getUserId()), TBookCommentEntity::getUserId, query.getUserId()); + wrapper.eq(ObjectUtil.isNotNull(query.getBookId()), TBookCommentEntity::getBookId, query.getBookId()); return wrapper; } diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TBookServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TBookServiceImpl.java index 4c9b703..b6045f6 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TBookServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TBookServiceImpl.java @@ -36,7 +36,8 @@ public class TBookServiceImpl extends BaseServiceImpl imp private LambdaQueryWrapper getWrapper(TBookQuery query){ LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); - + wrapper.like(TBookEntity::getBookName, query.getBookName()); + wrapper.like(TBookEntity::getAuthor, query.getAuthor()); return wrapper; } diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TPurchaseDetailsServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TPurchaseDetailsServiceImpl.java index 8ca160b..8313013 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TPurchaseDetailsServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TPurchaseDetailsServiceImpl.java @@ -1,5 +1,6 @@ package net.maku.maku.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -36,7 +37,8 @@ public class TPurchaseDetailsServiceImpl extends BaseServiceImpl getWrapper(TPurchaseDetailsQuery query){ LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); - + wrapper.eq(ObjectUtil.isNotNull(query.getPurchaseId()),TPurchaseDetailsEntity::getPurchaseId,query.getPurchaseId()); + wrapper.eq(ObjectUtil.isNotNull(query.getBookId()),TPurchaseDetailsEntity::getBookId,query.getBookId()); return wrapper; } diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TPurchaseServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TPurchaseServiceImpl.java index f06e6fd..f91b90e 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TPurchaseServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TPurchaseServiceImpl.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; @@ -36,7 +37,8 @@ public class TPurchaseServiceImpl extends BaseServiceImpl getWrapper(TPurchaseQuery query){ LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); - + wrapper.eq(ObjectUtils.isNotNull(query.getId()),TPurchaseEntity::getId,query.getId()); + wrapper.eq(ObjectUtils.isNotNull(query.getTotalPrice()),TPurchaseEntity::getTotalPrice, query.getTotalPrice()); return wrapper; } diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TShoppingTrolleyServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TShoppingTrolleyServiceImpl.java index b399c7b..d77d729 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TShoppingTrolleyServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TShoppingTrolleyServiceImpl.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; @@ -36,7 +37,8 @@ public class TShoppingTrolleyServiceImpl extends BaseServiceImpl getWrapper(TShoppingTrolleyQuery query){ LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); - + wrapper.eq(ObjectUtils.isNotNull(query.getUserId()), TShoppingTrolleyEntity::getUserId,query.getUserId()); + wrapper.eq(ObjectUtils.isNotNull(query.getBookId()),TShoppingTrolleyEntity::getBookId, query.getBookId()); return wrapper; } 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..daffc3e 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,7 @@ package net.maku.maku.service.impl; +import cn.hutool.core.util.ObjectUtil; +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 +18,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.UUID; /** * @@ -36,6 +39,8 @@ public class TUserServiceImpl extends BaseServiceImpl imp private LambdaQueryWrapper getWrapper(TUserQuery query){ LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); + wrapper.like(TUserEntity::getUsername, query.getUsername()); + wrapper.eq(ObjectUtil.isNotNull(query.getStatus()), TUserEntity::getStatus, query.getStatus()); return wrapper; } @@ -60,4 +65,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: