From 4c17685ff07038e2d2501a73ef32c1c61a68a012 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=A0=E4=B8=80=E4=B8=AA=E4=BA=BA=E5=9C=A8=E8=BF=99?= =?UTF-8?q?=E5=84=BF=E5=B9=B2=E5=98=9B=E4=BD=A0=E6=98=AF=E6=9D=A5=E6=8B=89?= =?UTF-8?q?=E5=B1=8E=E7=9A=84=E5=90=A7?= <123456@qq.com> Date: Sun, 21 Aug 2022 17:35:29 +0800 Subject: [PATCH 1/2] =?UTF-8?q?:bug:=20map=E8=BF=94=E5=9B=9E=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ArticleThumbsUpService.java | 7 +- .../forest/service/PortfolioService.java | 16 ++-- .../com/rymcu/forest/service/RoleService.java | 11 +-- .../rymcu/forest/service/SponsorService.java | 5 +- .../com/rymcu/forest/service/TagService.java | 9 +- .../rymcu/forest/service/TopicService.java | 16 ++-- .../com/rymcu/forest/service/UserService.java | 53 +++++++----- .../impl/ArticleThumbsUpServiceImpl.java | 20 ++--- .../service/impl/DashboardServiceImpl.java | 5 +- .../service/impl/PortfolioServiceImpl.java | 52 +++++------- .../forest/service/impl/RoleServiceImpl.java | 27 +++--- .../service/impl/SponsorServiceImpl.java | 14 ++-- .../forest/service/impl/TagServiceImpl.java | 48 +++++------ .../forest/service/impl/TopicServiceImpl.java | 76 +++++++---------- .../forest/service/impl/UserServiceImpl.java | 81 +++++++----------- .../forest/web/api/admin/AdminController.java | 82 +++++++++---------- .../web/api/article/ArticleController.java | 11 ++- .../web/api/common/CommonApiController.java | 15 ++-- .../api/portfolio/PortfolioController.java | 25 +++--- .../web/api/user/UserInfoController.java | 27 +++--- 20 files changed, 273 insertions(+), 327 deletions(-) diff --git a/src/main/java/com/rymcu/forest/service/ArticleThumbsUpService.java b/src/main/java/com/rymcu/forest/service/ArticleThumbsUpService.java index d565c29..bfe17d8 100644 --- a/src/main/java/com/rymcu/forest/service/ArticleThumbsUpService.java +++ b/src/main/java/com/rymcu/forest/service/ArticleThumbsUpService.java @@ -4,17 +4,16 @@ import com.rymcu.forest.core.service.Service; import com.rymcu.forest.entity.ArticleThumbsUp; import com.rymcu.forest.web.api.exception.BaseApiException; -import java.util.Map; - /** * @author ronger */ public interface ArticleThumbsUpService extends Service { /** * 点赞 + * * @param articleThumbsUp - * @throws BaseApiException * @return + * @throws BaseApiException */ - Map thumbsUp(ArticleThumbsUp articleThumbsUp) throws BaseApiException; + String thumbsUp(ArticleThumbsUp articleThumbsUp) throws Exception; } diff --git a/src/main/java/com/rymcu/forest/service/PortfolioService.java b/src/main/java/com/rymcu/forest/service/PortfolioService.java index b7cb859..120d0ed 100644 --- a/src/main/java/com/rymcu/forest/service/PortfolioService.java +++ b/src/main/java/com/rymcu/forest/service/PortfolioService.java @@ -1,5 +1,6 @@ package com.rymcu.forest.service; +import com.github.pagehelper.PageInfo; import com.rymcu.forest.core.service.Service; import com.rymcu.forest.dto.PortfolioArticleDTO; import com.rymcu.forest.dto.PortfolioDTO; @@ -8,7 +9,6 @@ import com.rymcu.forest.entity.Portfolio; import com.rymcu.forest.web.api.exception.BaseApiException; import java.util.List; -import java.util.Map; /** * @author ronger @@ -44,32 +44,35 @@ public interface PortfolioService extends Service { * @param rows * @param searchText * @param idPortfolio - * @throws BaseApiException * @return + * @throws BaseApiException */ - Map findUnbindArticles(Integer page, Integer rows, String searchText, Long idPortfolio) throws BaseApiException; + PageInfo findUnbindArticles(Integer page, Integer rows, String searchText, Long idPortfolio) throws Exception; /** * 绑定文章 + * * @param portfolioArticle * @return */ - Map bindArticle(PortfolioArticleDTO portfolioArticle); + boolean bindArticle(PortfolioArticleDTO portfolioArticle) throws Exception; /** * 更新文章排序号 + * * @param portfolioArticle * @return */ - Map updateArticleSortNo(PortfolioArticleDTO portfolioArticle); + boolean updateArticleSortNo(PortfolioArticleDTO portfolioArticle) throws Exception; /** * 取消绑定文章 + * * @param idPortfolio * @param idArticle * @return */ - Map unbindArticle(Long idPortfolio, Long idArticle); + boolean unbindArticle(Long idPortfolio, Long idArticle) throws Exception; /** @@ -84,6 +87,7 @@ public interface PortfolioService extends Service { */ boolean deletePortfolio(Long idPortfolio, Long idUser, Integer roleWeights) throws BaseApiException, IllegalAccessException; + /** * 获取作品集列表数据 * @return diff --git a/src/main/java/com/rymcu/forest/service/RoleService.java b/src/main/java/com/rymcu/forest/service/RoleService.java index a63ae5e..3103fba 100644 --- a/src/main/java/com/rymcu/forest/service/RoleService.java +++ b/src/main/java/com/rymcu/forest/service/RoleService.java @@ -5,7 +5,6 @@ import com.rymcu.forest.entity.Role; import com.rymcu.forest.entity.User; import java.util.List; -import java.util.Map; /** @@ -31,16 +30,18 @@ public interface RoleService extends Service { /** * 更新用户状态 + * * @param idRole * @param status * @return - * */ - Map updateStatus(Long idRole, String status); + */ + boolean updateStatus(Long idRole, String status) throws Exception; /** * 添加/更新角色 + * * @param role * @return - * */ - Map saveRole(Role role); + */ + boolean saveRole(Role role) throws Exception; } diff --git a/src/main/java/com/rymcu/forest/service/SponsorService.java b/src/main/java/com/rymcu/forest/service/SponsorService.java index 3adf035..e2273eb 100644 --- a/src/main/java/com/rymcu/forest/service/SponsorService.java +++ b/src/main/java/com/rymcu/forest/service/SponsorService.java @@ -3,17 +3,16 @@ package com.rymcu.forest.service; import com.rymcu.forest.core.service.Service; import com.rymcu.forest.entity.Sponsor; -import java.util.Map; - /** * @author ronger */ public interface SponsorService extends Service { /** * 赞赏 + * * @param sponsor * @return * @throws Exception */ - Map sponsorship(Sponsor sponsor) throws Exception; + boolean sponsorship(Sponsor sponsor) throws Exception; } diff --git a/src/main/java/com/rymcu/forest/service/TagService.java b/src/main/java/com/rymcu/forest/service/TagService.java index 9affe2d..7290196 100644 --- a/src/main/java/com/rymcu/forest/service/TagService.java +++ b/src/main/java/com/rymcu/forest/service/TagService.java @@ -8,7 +8,6 @@ import com.rymcu.forest.web.api.exception.BaseApiException; import java.io.UnsupportedEncodingException; import java.util.List; -import java.util.Map; /** * @author ronger @@ -27,16 +26,18 @@ public interface TagService extends Service { /** * 清除未使用标签 + * * @return - * */ - Map cleanUnusedTag(); + */ + boolean cleanUnusedTag(); /** * 添加/更新标签 + * * @param tag * @return */ - Map saveTag(Tag tag); + Tag saveTag(Tag tag) throws Exception; /** * 获取标签列表 diff --git a/src/main/java/com/rymcu/forest/service/TopicService.java b/src/main/java/com/rymcu/forest/service/TopicService.java index 2e4a04a..7bb5641 100644 --- a/src/main/java/com/rymcu/forest/service/TopicService.java +++ b/src/main/java/com/rymcu/forest/service/TopicService.java @@ -1,12 +1,12 @@ package com.rymcu.forest.service; +import com.github.pagehelper.PageInfo; import com.rymcu.forest.core.service.Service; import com.rymcu.forest.dto.admin.TopicTagDTO; import com.rymcu.forest.entity.Tag; import com.rymcu.forest.entity.Topic; import java.util.List; -import java.util.Map; /** * @author ronger @@ -28,10 +28,11 @@ public interface TopicService extends Service { /** * 新增/更新主题信息 + * * @param topic 主题信息 * @return - * */ - Map saveTopic(Topic topic); + */ + Topic saveTopic(Topic topic) throws Exception; /** * 查询未绑定标签 @@ -43,24 +44,27 @@ public interface TopicService extends Service { /** * 绑定标签 + * * @param topicTag * @return */ - Map bindTopicTag(TopicTagDTO topicTag); + TopicTagDTO bindTopicTag(TopicTagDTO topicTag) throws Exception; /** * 取消绑定标签 + * * @param topicTag * @return */ - Map unbindTopicTag(TopicTagDTO topicTag); + TopicTagDTO unbindTopicTag(TopicTagDTO topicTag) throws Exception; /** * 获取主题下标签列表 + * * @param topicUri * @param page * @param rows * @return */ - Map findTagsByTopicUri(String topicUri, Integer page, Integer rows); + PageInfo findTagsByTopicUri(String topicUri, Integer page, Integer rows); } diff --git a/src/main/java/com/rymcu/forest/service/UserService.java b/src/main/java/com/rymcu/forest/service/UserService.java index b2d3772..0dc6fd3 100644 --- a/src/main/java/com/rymcu/forest/service/UserService.java +++ b/src/main/java/com/rymcu/forest/service/UserService.java @@ -1,5 +1,6 @@ package com.rymcu.forest.service; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.Service; import com.rymcu.forest.dto.*; import com.rymcu.forest.entity.User; @@ -27,20 +28,22 @@ public interface UserService extends Service { /** * 注册接口 - * @param email 邮箱 - * @param password 密码 - * @param code 验证码 + * + * @param email 邮箱 + * @param password 密码 + * @param code 验证码 * @return Map - * */ - Map register(String email, String password, String code); + */ + void register(String email, String password, String code) throws ServiceException; /** * 登录接口 - * @param account 邮箱 - * @param password 密码 + * + * @param account 邮箱 + * @param password 密码 * @return Map - * */ - TokenUser login(String account, String password); + */ + TokenUser login(String account, String password) throws ServiceException; /** * 通过 account 获取用户信息接口 @@ -51,27 +54,30 @@ public interface UserService extends Service { /** * 找回密码接口 - * @param code 验证码 + * + * @param code 验证码 * @param password 密码 * @return Map - * */ - Map forgetPassword(String code, String password); + */ + String forgetPassword(String code, String password) throws ServiceException; /** * 更新用户角色接口 + * * @param idUser 用户 id * @param idRole 角色 id * @return Map - * */ - Map updateUserRole(Long idUser, Long idRole); + */ + boolean updateUserRole(Long idUser, Long idRole) throws ServiceException; /** * 更新用户状态 + * * @param idUser 用户 id * @param status 状态 * @return Map - * */ - Map updateStatus(Long idUser, String status); + */ + boolean updateStatus(Long idUser, String status) throws ServiceException; /** * 获取用户信息 @@ -82,18 +88,20 @@ public interface UserService extends Service { /** * 更新用户信息 + * * @param user * @return */ - Map updateUserInfo(UserInfoDTO user); + UserInfoDTO updateUserInfo(UserInfoDTO user) throws Exception; /** * 验证昵称是否重复 + * * @param idUser * @param nickname * @return */ - Map checkNickname(Long idUser, String nickname); + boolean checkNickname(Long idUser, String nickname) throws ServiceException; /** * 获取用户权限 @@ -111,10 +119,11 @@ public interface UserService extends Service { /** * 更新用户扩展信息 + * * @param userExtend * @return */ - Map updateUserExtend(UserExtend userExtend); + UserExtend updateUserExtend(UserExtend userExtend) throws ServiceException; /** * 获取用户扩展信息 @@ -125,17 +134,19 @@ public interface UserService extends Service { /** * 更换邮箱 + * * @param changeEmailDTO * @return */ - Map updateEmail(ChangeEmailDTO changeEmailDTO); + String updateEmail(ChangeEmailDTO changeEmailDTO) throws ServiceException; /** * 更新密码 + * * @param updatePasswordDTO * @return */ - Map updatePassword(UpdatePasswordDTO updatePasswordDTO); + boolean updatePassword(UpdatePasswordDTO updatePasswordDTO); /** * 查询用户列表 diff --git a/src/main/java/com/rymcu/forest/service/impl/ArticleThumbsUpServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/ArticleThumbsUpServiceImpl.java index 4dcf87a..7bfd346 100644 --- a/src/main/java/com/rymcu/forest/service/impl/ArticleThumbsUpServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/ArticleThumbsUpServiceImpl.java @@ -1,5 +1,6 @@ package com.rymcu.forest.service.impl; +import com.rymcu.forest.core.exception.BusinessException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.entity.Article; import com.rymcu.forest.entity.ArticleThumbsUp; @@ -8,14 +9,11 @@ import com.rymcu.forest.mapper.ArticleThumbsUpMapper; import com.rymcu.forest.service.ArticleService; import com.rymcu.forest.service.ArticleThumbsUpService; import com.rymcu.forest.util.UserUtils; -import com.rymcu.forest.web.api.exception.BaseApiException; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.Date; -import java.util.HashMap; -import java.util.Map; import java.util.Objects; /** @@ -31,17 +29,14 @@ public class ArticleThumbsUpServiceImpl extends AbstractService @Override @Transactional(rollbackFor = Exception.class) - public Map thumbsUp(ArticleThumbsUp articleThumbsUp) throws BaseApiException { - Map map = new HashMap(3); + public String thumbsUp(ArticleThumbsUp articleThumbsUp) throws Exception { if (Objects.isNull(articleThumbsUp) || Objects.isNull(articleThumbsUp.getIdArticle())) { - map.put("message", "数据异常,文章不存在!"); - map.put("success", false); + throw new BusinessException("数据异常,文章不存在!"); } else { Integer thumbsUpNumber = 1; Article article = articleService.findById(String.valueOf(articleThumbsUp.getIdArticle())); if (Objects.isNull(article)) { - map.put("message", "数据异常,文章不存在!"); - map.put("success", false); + throw new BusinessException("数据异常,文章不存在!"); } else { User user = UserUtils.getCurrentUserByToken(); articleThumbsUp.setIdUser(user.getIdUser()); @@ -56,15 +51,12 @@ public class ArticleThumbsUpServiceImpl extends AbstractService thumbsUpNumber = -1; } articleThumbsUpMapper.updateArticleThumbsUpNumber(articleThumbsUp.getIdArticle(), thumbsUpNumber); - map.put("success", true); - map.put("thumbsUpNumber", thumbsUpNumber); if (thumbsUpNumber > 0) { - map.put("message", "点赞成功"); + return "点赞成功"; } else { - map.put("message", "已取消点赞"); + return "已取消点赞"; } } } - return map; } } diff --git a/src/main/java/com/rymcu/forest/service/impl/DashboardServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/DashboardServiceImpl.java index 8c6bf0c..633908d 100644 --- a/src/main/java/com/rymcu/forest/service/impl/DashboardServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/DashboardServiceImpl.java @@ -13,7 +13,10 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.time.LocalDate; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * @author ronger diff --git a/src/main/java/com/rymcu/forest/service/impl/PortfolioServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/PortfolioServiceImpl.java index 8ff425d..c1b622c 100644 --- a/src/main/java/com/rymcu/forest/service/impl/PortfolioServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/PortfolioServiceImpl.java @@ -3,6 +3,7 @@ package com.rymcu.forest.service.impl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.rymcu.forest.core.exception.BusinessException; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.dto.*; import com.rymcu.forest.entity.Portfolio; @@ -14,7 +15,6 @@ import com.rymcu.forest.service.ArticleService; import com.rymcu.forest.service.PortfolioService; import com.rymcu.forest.service.UserService; import com.rymcu.forest.util.UserUtils; -import com.rymcu.forest.util.Utils; import com.rymcu.forest.util.XssUtils; import com.rymcu.forest.web.api.common.UploadController; import com.rymcu.forest.web.api.exception.BaseApiException; @@ -23,9 +23,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; -import java.util.HashMap; import java.util.List; -import java.util.Map; /** * @author ronger @@ -99,76 +97,66 @@ public class PortfolioServiceImpl extends AbstractService implements } @Override - public Map findUnbindArticles(Integer page, Integer rows, String searchText, Long idPortfolio) throws BaseApiException { - Map map = new HashMap(1); + public PageInfo findUnbindArticles(Integer page, Integer rows, String searchText, Long idPortfolio) throws Exception { User user = UserUtils.getCurrentUserByToken(); Portfolio portfolio = portfolioMapper.selectByPrimaryKey(idPortfolio); if (portfolio == null) { - map.put("message", "该作品集不存在或已被删除!"); + throw new ServiceException("该作品集不存在或已被删除!"); } else { if (!user.getIdUser().equals(portfolio.getPortfolioAuthorId())) { - map.put("message", "非法操作!"); + throw new ServiceException("非法操作!"); } else { PageHelper.startPage(page, rows); List articles = articleService.selectUnbindArticles(idPortfolio, searchText, user.getIdUser()); PageInfo pageInfo = new PageInfo(articles); - map = Utils.getArticlesGlobalResult(pageInfo); + return pageInfo; } } - return map; } @Override - public Map bindArticle(PortfolioArticleDTO portfolioArticle) { - Map map = new HashMap(1); + public boolean bindArticle(PortfolioArticleDTO portfolioArticle) throws Exception { Integer count = portfolioMapper.selectCountPortfolioArticle(portfolioArticle.getIdArticle(), portfolioArticle.getIdPortfolio()); if (count.equals(0)) { Integer maxSortNo = portfolioMapper.selectMaxSortNo(portfolioArticle.getIdPortfolio()); portfolioMapper.insertPortfolioArticle(portfolioArticle.getIdArticle(), portfolioArticle.getIdPortfolio(), maxSortNo); - map.put("message", "绑定成功!"); + return true; } else { - map.put("message", "该文章已经在作品集下!!"); + throw new ServiceException("该文章已经在作品集下!!"); } - return map; } @Override - public Map updateArticleSortNo(PortfolioArticleDTO portfolioArticle) { - Map map = new HashMap(1); + public boolean updateArticleSortNo(PortfolioArticleDTO portfolioArticle) throws Exception { if (portfolioArticle.getIdPortfolio() == null || portfolioArticle.getIdPortfolio().equals(0)) { - map.put("message", "作品集数据异常!"); + throw new ServiceException("作品集数据异常!"); } if (portfolioArticle.getIdArticle() == null || portfolioArticle.getIdArticle().equals(0)) { - map.put("message", "文章数据异常!"); + throw new ServiceException("文章数据异常!"); } if (portfolioArticle.getSortNo() == null) { - map.put("message", "排序号不能为空!"); + throw new ServiceException("排序号不能为空!"); } Integer result = portfolioMapper.updateArticleSortNo(portfolioArticle.getIdPortfolio(), portfolioArticle.getIdArticle(), portfolioArticle.getSortNo()); if (result > 0) { - map.put("message", "更新成功!"); - } else { - map.put("message", "更新失败!"); + throw new ServiceException("更新失败!"); } - return map; + return true; } @Override - public Map unbindArticle(Long idPortfolio, Long idArticle) { - Map map = new HashMap(1); + public boolean unbindArticle(Long idPortfolio, Long idArticle) throws Exception { if (idPortfolio == null || idPortfolio.equals(0)) { - map.put("message", "作品集数据异常"); + throw new ServiceException("作品集数据异常"); } if (idArticle == null || idArticle.equals(0)) { - map.put("message", "文章数据异常"); + throw new ServiceException("文章数据异常"); } Integer result = portfolioMapper.unbindArticle(idPortfolio, idArticle); - if (result > 0) { - map.put("message", "操作成功!"); - } else { - map.put("message", "操作失败!"); + if (result == 0) { + throw new ServiceException("操作失败!"); } - return map; + return true; } @Override diff --git a/src/main/java/com/rymcu/forest/service/impl/RoleServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/RoleServiceImpl.java index e7fec58..c1f8ffd 100644 --- a/src/main/java/com/rymcu/forest/service/impl/RoleServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/RoleServiceImpl.java @@ -1,5 +1,6 @@ package com.rymcu.forest.service.impl; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.entity.Role; import com.rymcu.forest.entity.User; @@ -10,9 +11,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.Date; -import java.util.HashMap; import java.util.List; -import java.util.Map; /** @@ -38,33 +37,29 @@ public class RoleServiceImpl extends AbstractService implements RoleServic @Override @Transactional - public Map updateStatus(Long idRole, String status) { - Map map = new HashMap(1); - Integer result = roleMapper.updateStatus(idRole,status); - if(result == 0) { - map.put("message","更新失败!"); + public boolean updateStatus(Long idRole, String status) throws Exception { + Integer result = roleMapper.updateStatus(idRole, status); + if (result == 0) { + throw new ServiceException("更新失败"); } - return map; + return true; } @Override - public Map saveRole(Role role) { - Integer result = 0; + public boolean saveRole(Role role) throws Exception { + Integer result; if (role.getIdRole() == null) { role.setCreatedTime(new Date()); role.setUpdatedTime(role.getCreatedTime()); result = roleMapper.insertSelective(role); } else { role.setCreatedTime(new Date()); - result = roleMapper.update(role.getIdRole(),role.getName(),role.getInputCode(),role.getWeights()); + result = roleMapper.update(role.getIdRole(), role.getName(), role.getInputCode(), role.getWeights()); } - Map map = new HashMap(1); if (result == 0) { - map.put("message","操作失败!"); - } else { - map.put("role", role); + throw new ServiceException("操作失败!"); } - return map; + return true; } } diff --git a/src/main/java/com/rymcu/forest/service/impl/SponsorServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/SponsorServiceImpl.java index f8db4ea..8418188 100644 --- a/src/main/java/com/rymcu/forest/service/impl/SponsorServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/SponsorServiceImpl.java @@ -1,6 +1,7 @@ package com.rymcu.forest.service.impl; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.exception.TransactionException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.dto.ArticleDTO; @@ -19,7 +20,8 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; -import java.util.*; +import java.util.Date; +import java.util.Objects; /** * @author ronger @@ -36,11 +38,9 @@ public class SponsorServiceImpl extends AbstractService implements Spon @Override @Transactional(rollbackFor = Exception.class) - public Map sponsorship(Sponsor sponsor) throws Exception { - Map map = new HashMap(2); + public boolean sponsorship(Sponsor sponsor) throws Exception { if (Objects.isNull(sponsor) || Objects.isNull(sponsor.getDataId()) || Objects.isNull(sponsor.getDataType())) { - map.put("success", false); - map.put("message", "数据异常"); + throw new ServiceException("数据异常"); } else { TransactionEnum result = TransactionEnum.findTransactionEnum(sponsor.getDataType()); BigDecimal money = BigDecimal.valueOf(result.getMoney()); @@ -59,9 +59,7 @@ public class SponsorServiceImpl extends AbstractService implements Spon // 更新文章赞赏数 sponsorMapper.updateArticleSponsorCount(articleDTO.getIdArticle()); } - map.put("success", true); - map.put("message", "赞赏成功"); } - return map; + return true; } } diff --git a/src/main/java/com/rymcu/forest/service/impl/TagServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/TagServiceImpl.java index c59c9a4..2382e6f 100644 --- a/src/main/java/com/rymcu/forest/service/impl/TagServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/TagServiceImpl.java @@ -1,18 +1,17 @@ package com.rymcu.forest.service.impl; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.dto.ArticleTagDTO; import com.rymcu.forest.dto.LabelModel; import com.rymcu.forest.dto.baidu.TagNlpDTO; import com.rymcu.forest.entity.Article; import com.rymcu.forest.entity.Tag; -import com.rymcu.forest.entity.User; import com.rymcu.forest.mapper.ArticleMapper; import com.rymcu.forest.mapper.TagMapper; import com.rymcu.forest.service.TagService; import com.rymcu.forest.util.BaiDuAipUtils; import com.rymcu.forest.util.CacheUtils; -import com.rymcu.forest.util.UserUtils; import com.rymcu.forest.util.XssUtils; import com.rymcu.forest.web.api.common.UploadController; import com.rymcu.forest.web.api.exception.BaseApiException; @@ -25,9 +24,7 @@ import javax.annotation.Resource; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.util.Date; -import java.util.HashMap; import java.util.List; -import java.util.Map; /** * @author ronger @@ -115,47 +112,42 @@ public class TagServiceImpl extends AbstractService implements TagService { @Override @Transactional(rollbackFor = Exception.class) - public Map cleanUnusedTag() { - Map map = new HashMap(1); - tagMapper.deleteUnusedTag(); - return map; + public boolean cleanUnusedTag() { + return tagMapper.deleteUnusedTag() > 0; } @Override @Transactional(rollbackFor = Exception.class) - public Map saveTag(Tag tag) { + public Tag saveTag(Tag tag) throws Exception { Integer result; - Map map = new HashMap(1); tag.setTagDescription(XssUtils.filterHtmlCode(tag.getTagDescription())); if (tag.getIdTag() == null) { if (StringUtils.isBlank(tag.getTagTitle())) { - map.put("message", "标签名不能为空!"); - return map; + throw new ServiceException("标签名不能为空!"); } else { Condition tagCondition = new Condition(Tag.class); tagCondition.createCriteria().andCondition("tag_title =", tag.getTagTitle()); List tags = tagMapper.selectByCondition(tagCondition); if (!tags.isEmpty()) { - map.put("message", "标签 '" + tag.getTagTitle() + "' 已存在!"); - return map; + throw new ServiceException("标签 '" + tag.getTagTitle() + "' 已存在!"); } } - Tag newTag = new Tag(); - newTag.setTagTitle(tag.getTagTitle()); - newTag.setTagUri(tag.getTagUri()); + tag = new Tag(); + tag.setTagTitle(tag.getTagTitle()); + tag.setTagUri(tag.getTagUri()); if (StringUtils.isNotBlank(tag.getTagIconPath()) && tag.getTagIconPath().contains("base64")) { String tagIconPath = UploadController.uploadBase64File(tag.getTagIconPath(), 2); - newTag.setTagIconPath(tagIconPath); + tag.setTagIconPath(tagIconPath); } else { - newTag.setTagIconPath(tag.getTagIconPath()); + tag.setTagIconPath(tag.getTagIconPath()); } - newTag.setTagStatus(tag.getTagStatus()); - newTag.setTagDescription(tag.getTagDescription()); - newTag.setTagReservation(tag.getTagReservation()); - newTag.setCreatedTime(new Date()); - newTag.setUpdatedTime(tag.getCreatedTime()); - result = tagMapper.insertSelective(newTag); + tag.setTagStatus(tag.getTagStatus()); + tag.setTagDescription(tag.getTagDescription()); + tag.setTagReservation(tag.getTagReservation()); + tag.setCreatedTime(new Date()); + tag.setUpdatedTime(tag.getCreatedTime()); + result = tagMapper.insertSelective(tag); } else { tag.setUpdatedTime(new Date()); if (StringUtils.isNotBlank(tag.getTagIconPath()) && tag.getTagIconPath().contains("base64")) { @@ -165,11 +157,9 @@ public class TagServiceImpl extends AbstractService implements TagService { result = tagMapper.update(tag.getIdTag(), tag.getTagUri(), tag.getTagIconPath(), tag.getTagStatus(), tag.getTagDescription(), tag.getTagReservation()); } if (result == 0) { - map.put("message", "操作失败!"); - } else { - map.put("tag", tag); + throw new ServiceException("操作失败!"); } - return map; + return tag; } @Override diff --git a/src/main/java/com/rymcu/forest/service/impl/TopicServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/TopicServiceImpl.java index b514a96..4a3cb39 100644 --- a/src/main/java/com/rymcu/forest/service/impl/TopicServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/TopicServiceImpl.java @@ -1,8 +1,8 @@ package com.rymcu.forest.service.impl; -import cn.hutool.http.HtmlUtil; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.dto.admin.TagDTO; import com.rymcu.forest.dto.admin.TopicDTO; @@ -20,9 +20,7 @@ import tk.mybatis.mapper.entity.Condition; import javax.annotation.Resource; import java.util.Date; -import java.util.HashMap; import java.util.List; -import java.util.Map; /** * @author ronger @@ -48,40 +46,37 @@ public class TopicServiceImpl extends AbstractService implements TopicSer @Override @Transactional(rollbackFor = Exception.class) - public Map saveTopic(Topic topic) { + public Topic saveTopic(Topic topic) throws Exception { Integer result; topic.setTopicDescriptionHtml(XssUtils.filterHtmlCode(topic.getTopicDescriptionHtml())); - Map map = new HashMap(1); if (topic.getIdTopic() == null) { if (StringUtils.isBlank(topic.getTopicTitle())) { - map.put("message","标签名不能为空!"); - return map; + throw new ServiceException("标签名不能为空!"); } else { Condition topicCondition = new Condition(Topic.class); topicCondition.createCriteria().andCondition("topic_title =", topic.getTopicTitle()); List topics = topicMapper.selectByCondition(topicCondition); if (!topics.isEmpty()) { - map.put("message","专题 '" + topic.getTopicTitle() + "' 已存在!"); - return map; + throw new ServiceException("专题 '" + topic.getTopicTitle() + "' 已存在!"); } } - Topic newTopic = new Topic(); - newTopic.setTopicTitle(topic.getTopicTitle()); - newTopic.setTopicUri(topic.getTopicUri()); + topic = new Topic(); + topic.setTopicTitle(topic.getTopicTitle()); + topic.setTopicUri(topic.getTopicUri()); if (StringUtils.isNotBlank(topic.getTopicIconPath()) && topic.getTopicIconPath().contains("base64")) { String topicIconPath = UploadController.uploadBase64File(topic.getTopicIconPath(), 3); - newTopic.setTopicIconPath(topicIconPath); + topic.setTopicIconPath(topicIconPath); } else { - newTopic.setTopicIconPath(topic.getTopicIconPath()); + topic.setTopicIconPath(topic.getTopicIconPath()); } - newTopic.setTopicNva(topic.getTopicNva()); - newTopic.setTopicStatus(topic.getTopicStatus()); - newTopic.setTopicSort(topic.getTopicSort()); - newTopic.setTopicDescription(topic.getTopicDescription()); - newTopic.setTopicDescriptionHtml(topic.getTopicDescriptionHtml()); - newTopic.setCreatedTime(new Date()); - newTopic.setUpdatedTime(topic.getCreatedTime()); - result = topicMapper.insertSelective(newTopic); + topic.setTopicNva(topic.getTopicNva()); + topic.setTopicStatus(topic.getTopicStatus()); + topic.setTopicSort(topic.getTopicSort()); + topic.setTopicDescription(topic.getTopicDescription()); + topic.setTopicDescriptionHtml(topic.getTopicDescriptionHtml()); + topic.setCreatedTime(new Date()); + topic.setUpdatedTime(topic.getCreatedTime()); + result = topicMapper.insertSelective(topic); } else { if (StringUtils.isNotBlank(topic.getTopicIconPath()) && topic.getTopicIconPath().contains("base64")) { String topicIconPath = UploadController.uploadBase64File(topic.getTopicIconPath(), 3); @@ -93,11 +88,9 @@ public class TopicServiceImpl extends AbstractService implements TopicSer ,topic.getTopicSort(),topic.getTopicDescription(),topic.getTopicDescriptionHtml()); } if (result == 0) { - map.put("message","操作失败!"); - } else { - map.put("topic", topic); + throw new ServiceException("操作失败!"); } - return map; + return topic; } @Override @@ -110,46 +103,33 @@ public class TopicServiceImpl extends AbstractService implements TopicSer @Override @Transactional(rollbackFor = Exception.class) - public Map bindTopicTag(TopicTagDTO topicTag) { + public TopicTagDTO bindTopicTag(TopicTagDTO topicTag) throws Exception { Integer result = topicMapper.insertTopicTag(topicTag.getIdTopic(), topicTag.getIdTag()); - Map map = new HashMap(1); if (result == 0) { - map.put("message", "操作失败!"); - } else { - map.put("topicTag", topicTag); + throw new ServiceException("操作失败!"); } - return map; + return topicTag; } @Override @Transactional(rollbackFor = Exception.class) - public Map unbindTopicTag(TopicTagDTO topicTag) { + public TopicTagDTO unbindTopicTag(TopicTagDTO topicTag) throws Exception { Integer result = topicMapper.deleteTopicTag(topicTag.getIdTopic(), topicTag.getIdTag()); - Map map = new HashMap(1); if (result == 0) { - map.put("message", "操作失败!"); - } else { - map.put("topicTag", topicTag); + throw new ServiceException("操作失败!"); } - return map; + return topicTag; } @Override - public Map findTagsByTopicUri(String topicUri, Integer page, Integer rows) { - Map map = new HashMap(2); + public PageInfo findTagsByTopicUri(String topicUri, Integer page, Integer rows) { TopicDTO topic = topicMapper.selectTopicByTopicUri(topicUri); if (topic == null) { - return map; + return null; } PageHelper.startPage(page, rows); List list = topicMapper.selectTopicTag(topic.getIdTopic()); PageInfo pageInfo = new PageInfo(list); - map.put("tags", pageInfo.getList()); - Map pagination = new HashMap(3); - pagination.put("pageSize",pageInfo.getPageSize()); - pagination.put("total",pageInfo.getTotal()); - pagination.put("currentPage",pageInfo.getPageNum()); - map.put("pagination", pagination); - return map; + return pageInfo; } } diff --git a/src/main/java/com/rymcu/forest/service/impl/UserServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/UserServiceImpl.java index c8792ff..fc97c7a 100644 --- a/src/main/java/com/rymcu/forest/service/impl/UserServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/UserServiceImpl.java @@ -2,6 +2,7 @@ package com.rymcu.forest.service.impl; import com.rymcu.forest.core.exception.CaptchaException; import com.rymcu.forest.core.exception.ContentNotExistException; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.core.service.redis.RedisService; import com.rymcu.forest.dto.*; @@ -60,15 +61,13 @@ public class UserServiceImpl extends AbstractService implements UserServic @Override @Transactional(rollbackFor = Exception.class) - public Map register(String email, String password, String code) { - Map map = new HashMap(2); - map.put("message", "验证码无效!"); + public void register(String email, String password, String code) throws ServiceException { String vCode = redisService.get(email); if (StringUtils.isNotBlank(vCode)) { if (vCode.equals(code)) { User user = userMapper.findByAccount(email); if (user != null) { - map.put("message", "该邮箱已被注册!"); + throw new ServiceException("该邮箱已被注册!"); } else { user = new User(); String nickname = email.split("@")[0]; @@ -88,13 +87,12 @@ public class UserServiceImpl extends AbstractService implements UserServic .nickname(user.getNickname()) .signature(user.getSignature()) .build()); - map.put("message", "注册成功!"); - map.put("flag", 1); redisService.delete(email); + return; } } } - return map; + throw new ServiceException("验证码无效!"); } private String checkNickname(String nickname) { @@ -145,39 +143,34 @@ public class UserServiceImpl extends AbstractService implements UserServic } @Override - public Map forgetPassword(String code, String password) { - Map map = new HashMap<>(2); + public String forgetPassword(String code, String password) throws ServiceException { String email = redisService.get(code); if (StringUtils.isBlank(email)) { - map.put("message", "链接已失效"); + throw new ServiceException("链接已失效"); } else { userMapper.updatePasswordByEmail(email, Utils.entryptPassword(password)); - map.put("message", "修改成功,正在跳转登录登陆界面!"); - map.put("flag", 1); + return "修改成功,正在跳转登录登陆界面!"; } - return map; } @Override @Transactional(rollbackFor = Exception.class) - public Map updateUserRole(Long idUser, Long idRole) { - Map map = new HashMap(2); + public boolean updateUserRole(Long idUser, Long idRole) throws ServiceException { Integer result = userMapper.updateUserRole(idUser, idRole); if (result == 0) { - map.put("message", "更新失败!"); + throw new ServiceException("更新失败!"); } - return map; + return true; } @Override @Transactional(rollbackFor = Exception.class) - public Map updateStatus(Long idUser, String status) { - Map map = new HashMap(2); + public boolean updateStatus(Long idUser, String status) throws ServiceException { Integer result = userMapper.updateStatus(idUser, status); if (result == 0) { - map.put("message", "更新失败!"); + throw new ServiceException("更新失败!"); } - return map; + return true; } @Override @@ -201,13 +194,11 @@ public class UserServiceImpl extends AbstractService implements UserServic @Override @Transactional(rollbackFor = Exception.class) - public Map updateUserInfo(UserInfoDTO user) { - Map map = new HashMap(2); + public UserInfoDTO updateUserInfo(UserInfoDTO user) throws Exception { user.setNickname(formatNickname(user.getNickname())); Integer number = userMapper.checkNicknameByIdUser(user.getIdUser(), user.getNickname()); if (number > 0) { - map.put("message", "该昵称已使用!"); - return map; + throw new ServiceException("该昵称已使用!"); } if (StringUtils.isNotBlank(user.getAvatarType()) && AVATAR_SVG_TYPE.equals(user.getAvatarType())) { String avatarUrl = UploadController.uploadBase64File(user.getAvatarUrl(), 0); @@ -221,11 +212,10 @@ public class UserServiceImpl extends AbstractService implements UserServic .signature(user.getSignature()) .build()); if (result == 0) { - map.put("message", "操作失败!"); - return map; + throw new ServiceException("操作失败!"); } - map.put("user", user); - return map; + + return user; } private String formatNickname(String nickname) { @@ -233,13 +223,13 @@ public class UserServiceImpl extends AbstractService implements UserServic } @Override - public Map checkNickname(Long idUser, String nickname) { + public boolean checkNickname(Long idUser, String nickname) throws ServiceException { Map map = new HashMap(2); Integer number = userMapper.checkNicknameByIdUser(idUser, nickname); if (number > 0) { - map.put("message", "该昵称已使用!"); + throw new ServiceException("该昵称已使用!"); } - return map; + return true; } @Override @@ -253,15 +243,12 @@ public class UserServiceImpl extends AbstractService implements UserServic } @Override - public Map updateUserExtend(UserExtend userExtend) { - Map map = new HashMap(2); + public UserExtend updateUserExtend(UserExtend userExtend) throws ServiceException { int result = userExtendMapper.updateByPrimaryKeySelective(userExtend); if (result == 0) { - map.put("message", "操作失败!"); - return map; + throw new ServiceException("操作失败!"); } - map.put("userExtend", userExtend); - return map; + return userExtend; } @Override @@ -270,29 +257,23 @@ public class UserServiceImpl extends AbstractService implements UserServic } @Override - public Map updateEmail(ChangeEmailDTO changeEmailDTO) { - Map map = new HashMap(2); + public String updateEmail(ChangeEmailDTO changeEmailDTO) throws ServiceException { Long idUser = changeEmailDTO.getIdUser(); String email = changeEmailDTO.getEmail(); String code = changeEmailDTO.getCode(); String vCode = redisService.get(email); - if (StringUtils.isNotBlank(vCode) && StringUtils.isNotBlank(code)) { - if (vCode.equals(code)) { - userMapper.updateEmail(idUser, email); - map.put("message", "更新成功!"); - map.put("email", email); - } + if (StringUtils.isNotBlank(vCode) && StringUtils.isNotBlank(code) && vCode.equals(code)) { + userMapper.updateEmail(idUser, email); + return email; } throw new CaptchaException(); } @Override - public Map updatePassword(UpdatePasswordDTO updatePasswordDTO) { - Map map = new HashMap(2); + public boolean updatePassword(UpdatePasswordDTO updatePasswordDTO) { String password = Utils.entryptPassword(updatePasswordDTO.getPassword()); userMapper.updatePasswordById(updatePasswordDTO.getIdUser(), password); - map.put("message", "更新成功!"); - return map; + return true; } @Override diff --git a/src/main/java/com/rymcu/forest/web/api/admin/AdminController.java b/src/main/java/com/rymcu/forest/web/api/admin/AdminController.java index 214400c..dba0cea 100644 --- a/src/main/java/com/rymcu/forest/web/api/admin/AdminController.java +++ b/src/main/java/com/rymcu/forest/web/api/admin/AdminController.java @@ -2,6 +2,7 @@ package com.rymcu.forest.web.api.admin; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.result.GlobalResult; import com.rymcu.forest.core.result.GlobalResultGenerator; import com.rymcu.forest.dto.*; @@ -9,15 +10,12 @@ import com.rymcu.forest.dto.admin.TopicTagDTO; import com.rymcu.forest.dto.admin.UserRoleDTO; import com.rymcu.forest.entity.*; import com.rymcu.forest.service.*; -import com.rymcu.forest.util.Utils; import org.apache.commons.lang.StringUtils; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import java.util.HashMap; import java.util.List; -import java.util.Map; /** * @author ronger @@ -66,33 +64,33 @@ public class AdminController { } @PatchMapping("/user/update-role") - public GlobalResult updateUserRole(@RequestBody UserRoleDTO userRole){ - Map map = userService.updateUserRole(userRole.getIdUser(),userRole.getIdRole()); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult updateUserRole(@RequestBody UserRoleDTO userRole) throws ServiceException { + boolean flag = userService.updateUserRole(userRole.getIdUser(), userRole.getIdRole()); + return GlobalResultGenerator.genSuccessResult(flag); } @PatchMapping("/user/update-status") - public GlobalResult updateUserStatus(@RequestBody User user){ - Map map = userService.updateStatus(user.getIdUser(),user.getStatus()); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult updateUserStatus(@RequestBody User user) throws ServiceException { + boolean flag = userService.updateStatus(user.getIdUser(), user.getStatus()); + return GlobalResultGenerator.genSuccessResult(flag); } @PatchMapping("/role/update-status") - public GlobalResult updateRoleStatus(@RequestBody Role role){ - Map map = roleService.updateStatus(role.getIdRole(),role.getStatus()); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult updateRoleStatus(@RequestBody Role role) throws Exception { + boolean flag = roleService.updateStatus(role.getIdRole(), role.getStatus()); + return GlobalResultGenerator.genSuccessResult(flag); } @PostMapping("/role/post") - public GlobalResult addRole(@RequestBody Role role){ - Map map = roleService.saveRole(role); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult addRole(@RequestBody Role role) throws Exception { + boolean flag = roleService.saveRole(role); + return GlobalResultGenerator.genSuccessResult(role); } @PutMapping("/role/post") - public GlobalResult updateRole(@RequestBody Role role){ - Map map = roleService.saveRole(role); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult updateRole(@RequestBody Role role) throws Exception { + boolean flag = roleService.saveRole(role); + return GlobalResultGenerator.genSuccessResult(role); } @GetMapping("/topics") @@ -113,12 +111,12 @@ public class AdminController { } @GetMapping("/topic/{topicUri}/tags") - public GlobalResult topicTags(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows,@PathVariable String topicUri){ + public GlobalResult topicTags(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows,@PathVariable String topicUri) { if (StringUtils.isBlank(topicUri)) { return GlobalResultGenerator.genErrorResult("数据异常!"); } - Map map = topicService.findTagsByTopicUri(topicUri,page,rows); - return GlobalResultGenerator.genSuccessResult(map); + PageInfo pageInfo = topicService.findTagsByTopicUri(topicUri, page, rows); + return GlobalResultGenerator.genSuccessResult(pageInfo); } @GetMapping("/topic/detail/{idTopic}") @@ -138,27 +136,27 @@ public class AdminController { } @PostMapping("/topic/bind-topic-tag") - public GlobalResult bindTopicTag(@RequestBody TopicTagDTO topicTag){ - Map map = topicService.bindTopicTag(topicTag); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult bindTopicTag(@RequestBody TopicTagDTO topicTag) throws Exception { + TopicTagDTO newTopicTagDTO = topicService.bindTopicTag(topicTag); + return GlobalResultGenerator.genSuccessResult(newTopicTagDTO); } @DeleteMapping("/topic/unbind-topic-tag") - public GlobalResult unbindTopicTag(@RequestBody TopicTagDTO topicTag){ - Map map = topicService.unbindTopicTag(topicTag); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult unbindTopicTag(@RequestBody TopicTagDTO topicTag) throws Exception { + TopicTagDTO topicTagDTO = topicService.unbindTopicTag(topicTag); + return GlobalResultGenerator.genSuccessResult(topicTagDTO); } @PostMapping("/topic/post") - public GlobalResult addTopic(@RequestBody Topic topic){ - Map map = topicService.saveTopic(topic); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult addTopic(@RequestBody Topic topic) throws Exception { + Topic newTopic = topicService.saveTopic(topic); + return GlobalResultGenerator.genSuccessResult(newTopic); } @PutMapping("/topic/post") - public GlobalResult updateTopic(@RequestBody Topic topic){ - Map map = topicService.saveTopic(topic); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult updateTopic(@RequestBody Topic topic) throws Exception { + Topic newTopic = topicService.saveTopic(topic); + return GlobalResultGenerator.genSuccessResult(newTopic); } @GetMapping("/tags") @@ -170,9 +168,9 @@ public class AdminController { } @DeleteMapping("/tag/clean-unused") - public GlobalResult cleanUnusedTag(){ - Map map = tagService.cleanUnusedTag(); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult cleanUnusedTag() { + boolean bool = tagService.cleanUnusedTag(); + return GlobalResultGenerator.genSuccessResult(bool); } @GetMapping("/tag/detail/{idTag}") @@ -182,15 +180,15 @@ public class AdminController { } @PostMapping("/tag/post") - public GlobalResult addTag(@RequestBody Tag tag){ - Map map = tagService.saveTag(tag); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult addTag(@RequestBody Tag tag) throws Exception { + Tag newTag = tagService.saveTag(tag); + return GlobalResultGenerator.genSuccessResult(newTag); } @PutMapping("/tag/post") - public GlobalResult updateTag(@RequestBody Tag tag){ - Map map = tagService.saveTag(tag); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult updateTag(@RequestBody Tag tag) throws Exception { + Tag newTag = tagService.saveTag(tag); + return GlobalResultGenerator.genSuccessResult(newTag); } @GetMapping("/special-days") diff --git a/src/main/java/com/rymcu/forest/web/api/article/ArticleController.java b/src/main/java/com/rymcu/forest/web/api/article/ArticleController.java index 9fc6272..a2e1170 100644 --- a/src/main/java/com/rymcu/forest/web/api/article/ArticleController.java +++ b/src/main/java/com/rymcu/forest/web/api/article/ArticleController.java @@ -24,7 +24,6 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.io.UnsupportedEncodingException; import java.util.List; -import java.util.Map; import java.util.Objects; /** @@ -106,15 +105,15 @@ public class ArticleController { } @PostMapping("/thumbs-up") - public GlobalResult thumbsUp(@RequestBody ArticleThumbsUp articleThumbsUp) throws BaseApiException { - Map map = articleThumbsUpService.thumbsUp(articleThumbsUp); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult thumbsUp(@RequestBody ArticleThumbsUp articleThumbsUp) throws Exception { + String str = articleThumbsUpService.thumbsUp(articleThumbsUp); + return GlobalResultGenerator.genSuccessResult(str); } @PostMapping("/sponsor") public GlobalResult sponsor(@RequestBody Sponsor sponsor) throws Exception { - Map map = sponsorService.sponsorship(sponsor); - return GlobalResultGenerator.genSuccessResult(map); + boolean flag = sponsorService.sponsorship(sponsor); + return GlobalResultGenerator.genSuccessResult(flag); } } diff --git a/src/main/java/com/rymcu/forest/web/api/common/CommonApiController.java b/src/main/java/com/rymcu/forest/web/api/common/CommonApiController.java index ab9f04e..1c2058f 100644 --- a/src/main/java/com/rymcu/forest/web/api/common/CommonApiController.java +++ b/src/main/java/com/rymcu/forest/web/api/common/CommonApiController.java @@ -2,6 +2,7 @@ package com.rymcu.forest.web.api.common; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.result.GlobalResult; import com.rymcu.forest.core.result.GlobalResultGenerator; import com.rymcu.forest.core.result.GlobalResultMessage; @@ -68,13 +69,13 @@ public class CommonApiController { } @PostMapping("/register") - public GlobalResult register(@RequestBody UserRegisterInfoDTO registerInfo) { - Map map = userService.register(registerInfo.getEmail(), registerInfo.getPassword(), registerInfo.getCode()); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult register(@RequestBody UserRegisterInfoDTO registerInfo) throws ServiceException { + userService.register(registerInfo.getEmail(), registerInfo.getPassword(), registerInfo.getCode()); + return GlobalResultGenerator.genSuccessResult(); } @PostMapping("/login") - public GlobalResult login(@RequestBody User user) { + public GlobalResult login(@RequestBody User user) throws ServiceException { TokenUser tokenUser = userService.login(user.getAccount(), user.getPassword()); return GlobalResultGenerator.genSuccessResult(tokenUser); } @@ -109,9 +110,9 @@ public class CommonApiController { } @PatchMapping("/forget-password") - public GlobalResult forgetPassword(@RequestBody ForgetPasswordDTO forgetPassword) { - Map map = userService.forgetPassword(forgetPassword.getCode(), forgetPassword.getPassword()); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult forgetPassword(@RequestBody ForgetPasswordDTO forgetPassword) throws ServiceException { + String str = userService.forgetPassword(forgetPassword.getCode(), forgetPassword.getPassword()); + return GlobalResultGenerator.genSuccessResult(str); } @GetMapping("/portfolio/{id}") diff --git a/src/main/java/com/rymcu/forest/web/api/portfolio/PortfolioController.java b/src/main/java/com/rymcu/forest/web/api/portfolio/PortfolioController.java index e9324d3..5f69fec 100644 --- a/src/main/java/com/rymcu/forest/web/api/portfolio/PortfolioController.java +++ b/src/main/java/com/rymcu/forest/web/api/portfolio/PortfolioController.java @@ -1,5 +1,6 @@ package com.rymcu.forest.web.api.portfolio; +import com.github.pagehelper.PageInfo; import com.rymcu.forest.core.result.GlobalResult; import com.rymcu.forest.core.result.GlobalResultGenerator; import com.rymcu.forest.core.service.security.annotation.AuthorshipInterceptor; @@ -53,30 +54,30 @@ public class PortfolioController { @GetMapping("/{idPortfolio}/unbind-articles") @AuthorshipInterceptor(moduleName = Module.PORTFOLIO) - public GlobalResult unbindArticles(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, @RequestParam(defaultValue = "") String searchText,@PathVariable Long idPortfolio) throws BaseApiException { - Map map = portfolioService.findUnbindArticles(page, rows, searchText, idPortfolio); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult unbindArticles(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, @RequestParam(defaultValue = "") String searchText, @PathVariable Long idPortfolio) throws Exception { + PageInfo pageInfo = portfolioService.findUnbindArticles(page, rows, searchText, idPortfolio); + return GlobalResultGenerator.genSuccessResult(pageInfo); } @PostMapping("/bind-article") @AuthorshipInterceptor(moduleName = Module.PORTFOLIO) - public GlobalResult bindArticle(@RequestBody PortfolioArticleDTO portfolioArticle) { - Map map = portfolioService.bindArticle(portfolioArticle); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult bindArticle(@RequestBody PortfolioArticleDTO portfolioArticle) throws Exception { + boolean flag = portfolioService.bindArticle(portfolioArticle); + return GlobalResultGenerator.genSuccessResult(flag); } @PutMapping("/update-article-sort-no") @AuthorshipInterceptor(moduleName = Module.PORTFOLIO) - public GlobalResult updateArticleSortNo(@RequestBody PortfolioArticleDTO portfolioArticle) { - Map map = portfolioService.updateArticleSortNo(portfolioArticle); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult updateArticleSortNo(@RequestBody PortfolioArticleDTO portfolioArticle) throws Exception { + boolean flag = portfolioService.updateArticleSortNo(portfolioArticle); + return GlobalResultGenerator.genSuccessResult(flag); } @DeleteMapping("/unbind-article") @AuthorshipInterceptor(moduleName = Module.PORTFOLIO) - public GlobalResult unbindArticle(Long idArticle, Long idPortfolio) { - Map map = portfolioService.unbindArticle(idPortfolio,idArticle); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult unbindArticle(Long idArticle, Long idPortfolio) throws Exception { + boolean flag = portfolioService.unbindArticle(idPortfolio, idArticle); + return GlobalResultGenerator.genSuccessResult(flag); } @DeleteMapping("/delete") diff --git a/src/main/java/com/rymcu/forest/web/api/user/UserInfoController.java b/src/main/java/com/rymcu/forest/web/api/user/UserInfoController.java index 204b357..0abfa84 100644 --- a/src/main/java/com/rymcu/forest/web/api/user/UserInfoController.java +++ b/src/main/java/com/rymcu/forest/web/api/user/UserInfoController.java @@ -2,6 +2,7 @@ package com.rymcu.forest.web.api.user; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.result.GlobalResult; import com.rymcu.forest.core.result.GlobalResultGenerator; import com.rymcu.forest.core.service.security.annotation.SecurityInterceptor; @@ -41,37 +42,37 @@ public class UserInfoController { @GetMapping("/check-nickname") @SecurityInterceptor - public GlobalResult checkNickname(@RequestParam Long idUser, @RequestParam String nickname) { - Map map = userService.checkNickname(idUser, nickname); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult checkNickname(@RequestParam Long idUser, @RequestParam String nickname) throws ServiceException { + boolean flag = userService.checkNickname(idUser, nickname); + return GlobalResultGenerator.genSuccessResult(flag); } @PatchMapping("/update") @SecurityInterceptor - public GlobalResult updateUserInfo(@RequestBody UserInfoDTO user) { - Map map = userService.updateUserInfo(user); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult updateUserInfo(@RequestBody UserInfoDTO user) throws Exception { + UserInfoDTO newUsers = userService.updateUserInfo(user); + return GlobalResultGenerator.genSuccessResult(newUsers); } @PatchMapping("/update-extend") @SecurityInterceptor - public GlobalResult updateUserExtend(@RequestBody UserExtend userExtend) { - Map map = userService.updateUserExtend(userExtend); + public GlobalResult updateUserExtend(@RequestBody UserExtend userExtend) throws ServiceException { + UserExtend map = userService.updateUserExtend(userExtend); return GlobalResultGenerator.genSuccessResult(map); } @PatchMapping("/update-email") @SecurityInterceptor - public GlobalResult updateEmail(@RequestBody ChangeEmailDTO changeEmailDTO) { - Map map = userService.updateEmail(changeEmailDTO); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult updateEmail(@RequestBody ChangeEmailDTO changeEmailDTO) throws ServiceException { + String email = userService.updateEmail(changeEmailDTO); + return GlobalResultGenerator.genSuccessResult(email); } @PatchMapping("/update-password") @SecurityInterceptor public GlobalResult updatePassword(@RequestBody UpdatePasswordDTO updatePasswordDTO) { - Map map = userService.updatePassword(updatePasswordDTO); - return GlobalResultGenerator.genSuccessResult(map); + boolean flag = userService.updatePassword(updatePasswordDTO); + return GlobalResultGenerator.genSuccessResult(flag); } @GetMapping("/login-records") From e9c0475e50edfcb5d4df252fc9c16f7c0fd01c58 Mon Sep 17 00:00:00 2001 From: ronger Date: Sat, 27 Aug 2022 12:15:04 +0800 Subject: [PATCH 2/2] =?UTF-8?q?:art:=20=E4=BB=A3=E7=A0=81=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../exception/AccountExistsException.java | 28 ++++++++ .../exception/NicknameOccupyException.java | 32 +++++++++ .../core/exception/TransactionException.java | 2 +- .../service/ArticleThumbsUpService.java | 3 +- .../forest/service/PortfolioService.java | 24 +++---- .../com/rymcu/forest/service/RoleService.java | 9 +-- .../rymcu/forest/service/TopicService.java | 23 ++++--- .../service/TransactionRecordService.java | 12 ++-- .../com/rymcu/forest/service/UserService.java | 44 ++++++++---- .../impl/ArticleThumbsUpServiceImpl.java | 41 +++++------- .../service/impl/PortfolioServiceImpl.java | 59 ++++++---------- .../forest/service/impl/RoleServiceImpl.java | 9 ++- .../service/impl/SponsorServiceImpl.java | 35 +++++----- .../forest/service/impl/TagServiceImpl.java | 6 +- .../forest/service/impl/TopicServiceImpl.java | 21 +++--- .../impl/TransactionRecordServiceImpl.java | 8 +-- .../forest/service/impl/UserServiceImpl.java | 67 ++++++++++--------- .../forest/web/api/admin/AdminController.java | 42 ++++++------ .../web/api/article/ArticleController.java | 16 ++++- .../api/bank/TransactionRecordController.java | 4 +- .../web/api/common/CommonApiController.java | 36 +++++----- .../api/portfolio/PortfolioController.java | 63 ++++++++++++----- .../web/api/user/UserInfoController.java | 44 ++++++------ 23 files changed, 361 insertions(+), 267 deletions(-) create mode 100644 src/main/java/com/rymcu/forest/core/exception/AccountExistsException.java create mode 100644 src/main/java/com/rymcu/forest/core/exception/NicknameOccupyException.java diff --git a/src/main/java/com/rymcu/forest/core/exception/AccountExistsException.java b/src/main/java/com/rymcu/forest/core/exception/AccountExistsException.java new file mode 100644 index 0000000..fe97f41 --- /dev/null +++ b/src/main/java/com/rymcu/forest/core/exception/AccountExistsException.java @@ -0,0 +1,28 @@ +package com.rymcu.forest.core.exception; + +import org.apache.shiro.authc.AccountException; + +/** + * Created on 2022/8/25 19:27. + * + * @author ronger + * @email ronger-x@outlook.com + */ +public class AccountExistsException extends AccountException { + private static final long serialVersionUID = 3206734387536223284L; + + public AccountExistsException() { + } + + public AccountExistsException(String message) { + super(message); + } + + public AccountExistsException(String message, Throwable cause) { + super(message, cause); + } + + public AccountExistsException(Throwable cause) { + super(cause); + } +} diff --git a/src/main/java/com/rymcu/forest/core/exception/NicknameOccupyException.java b/src/main/java/com/rymcu/forest/core/exception/NicknameOccupyException.java new file mode 100644 index 0000000..90b281f --- /dev/null +++ b/src/main/java/com/rymcu/forest/core/exception/NicknameOccupyException.java @@ -0,0 +1,32 @@ +package com.rymcu.forest.core.exception; + +/** + * Created on 2022/8/25 19:11. + * + * @author ronger + * @email ronger-x@outlook.com + */ +public class NicknameOccupyException extends BusinessException { + + private static final long serialVersionUID = 3206744387536223284L; + + public NicknameOccupyException() { + } + + public NicknameOccupyException(String message) { + super(message); + } + + public NicknameOccupyException(String message, Throwable cause) { + super(message, cause); + } + + public NicknameOccupyException(Throwable cause) { + super(cause); + } + + public NicknameOccupyException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) { + super(message, cause, enableSuppression, writableStackTrace); + } + +} diff --git a/src/main/java/com/rymcu/forest/core/exception/TransactionException.java b/src/main/java/com/rymcu/forest/core/exception/TransactionException.java index 5ecb5dd..ddbb8ee 100644 --- a/src/main/java/com/rymcu/forest/core/exception/TransactionException.java +++ b/src/main/java/com/rymcu/forest/core/exception/TransactionException.java @@ -5,7 +5,7 @@ import com.rymcu.forest.enumerate.TransactionCode; /** * @author ronger */ -public class TransactionException extends Exception { +public class TransactionException extends BusinessException { private int code; diff --git a/src/main/java/com/rymcu/forest/service/ArticleThumbsUpService.java b/src/main/java/com/rymcu/forest/service/ArticleThumbsUpService.java index bfe17d8..8c71913 100644 --- a/src/main/java/com/rymcu/forest/service/ArticleThumbsUpService.java +++ b/src/main/java/com/rymcu/forest/service/ArticleThumbsUpService.java @@ -13,7 +13,6 @@ public interface ArticleThumbsUpService extends Service { * * @param articleThumbsUp * @return - * @throws BaseApiException */ - String thumbsUp(ArticleThumbsUp articleThumbsUp) throws Exception; + int thumbsUp(ArticleThumbsUp articleThumbsUp); } diff --git a/src/main/java/com/rymcu/forest/service/PortfolioService.java b/src/main/java/com/rymcu/forest/service/PortfolioService.java index 120d0ed..ccf7a10 100644 --- a/src/main/java/com/rymcu/forest/service/PortfolioService.java +++ b/src/main/java/com/rymcu/forest/service/PortfolioService.java @@ -1,7 +1,9 @@ package com.rymcu.forest.service; import com.github.pagehelper.PageInfo; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.Service; +import com.rymcu.forest.dto.ArticleDTO; import com.rymcu.forest.dto.PortfolioArticleDTO; import com.rymcu.forest.dto.PortfolioDTO; import com.rymcu.forest.dto.UserDTO; @@ -35,35 +37,34 @@ public interface PortfolioService extends Service { * @throws BaseApiException * @return */ - Portfolio postPortfolio(Portfolio portfolio) throws BaseApiException; + Portfolio postPortfolio(Portfolio portfolio); /** * 查询作品集下未绑定文章 - * * @param page * @param rows * @param searchText * @param idPortfolio + * @param idUser * @return - * @throws BaseApiException */ - PageInfo findUnbindArticles(Integer page, Integer rows, String searchText, Long idPortfolio) throws Exception; + PageInfo findUnbindArticles(Integer page, Integer rows, String searchText, Long idPortfolio, Long idUser); /** * 绑定文章 - * * @param portfolioArticle * @return + * @throws ServiceException */ - boolean bindArticle(PortfolioArticleDTO portfolioArticle) throws Exception; + boolean bindArticle(PortfolioArticleDTO portfolioArticle) throws ServiceException; /** * 更新文章排序号 - * * @param portfolioArticle * @return + * @throws ServiceException */ - boolean updateArticleSortNo(PortfolioArticleDTO portfolioArticle) throws Exception; + boolean updateArticleSortNo(PortfolioArticleDTO portfolioArticle) throws ServiceException; /** * 取消绑定文章 @@ -71,8 +72,9 @@ public interface PortfolioService extends Service { * @param idPortfolio * @param idArticle * @return + * @throws ServiceException */ - boolean unbindArticle(Long idPortfolio, Long idArticle) throws Exception; + boolean unbindArticle(Long idPortfolio, Long idArticle) throws ServiceException; /** @@ -82,10 +84,8 @@ public interface PortfolioService extends Service { * @param idUser * @param roleWeights * @return - * @throws BaseApiException - * @throws IllegalAccessException */ - boolean deletePortfolio(Long idPortfolio, Long idUser, Integer roleWeights) throws BaseApiException, IllegalAccessException; + boolean deletePortfolio(Long idPortfolio, Long idUser, Integer roleWeights); /** diff --git a/src/main/java/com/rymcu/forest/service/RoleService.java b/src/main/java/com/rymcu/forest/service/RoleService.java index 3103fba..e8fca74 100644 --- a/src/main/java/com/rymcu/forest/service/RoleService.java +++ b/src/main/java/com/rymcu/forest/service/RoleService.java @@ -1,5 +1,6 @@ package com.rymcu.forest.service; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.Service; import com.rymcu.forest.entity.Role; import com.rymcu.forest.entity.User; @@ -30,18 +31,18 @@ public interface RoleService extends Service { /** * 更新用户状态 - * * @param idRole * @param status * @return + * @throws ServiceException */ - boolean updateStatus(Long idRole, String status) throws Exception; + boolean updateStatus(Long idRole, String status) throws ServiceException; /** * 添加/更新角色 - * * @param role * @return + * @throws ServiceException */ - boolean saveRole(Role role) throws Exception; + boolean saveRole(Role role) throws ServiceException; } diff --git a/src/main/java/com/rymcu/forest/service/TopicService.java b/src/main/java/com/rymcu/forest/service/TopicService.java index 7bb5641..6cbe3dc 100644 --- a/src/main/java/com/rymcu/forest/service/TopicService.java +++ b/src/main/java/com/rymcu/forest/service/TopicService.java @@ -1,7 +1,8 @@ package com.rymcu.forest.service; -import com.github.pagehelper.PageInfo; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.Service; +import com.rymcu.forest.dto.admin.TagDTO; import com.rymcu.forest.dto.admin.TopicTagDTO; import com.rymcu.forest.entity.Tag; import com.rymcu.forest.entity.Topic; @@ -15,15 +16,17 @@ public interface TopicService extends Service { /** * 获取导航主题数据 + * * @return - * */ + */ List findTopicNav(); /** * 根据 topicUri 获取主题信息及旗下标签数据 + * * @param topicUri 主题 URI * @return - * */ + */ Topic findTopicByTopicUri(String topicUri); /** @@ -31,11 +34,13 @@ public interface TopicService extends Service { * * @param topic 主题信息 * @return + * @throws ServiceException */ - Topic saveTopic(Topic topic) throws Exception; + Topic saveTopic(Topic topic) throws ServiceException; /** * 查询未绑定标签 + * * @param idTopic * @param tagTitle * @return @@ -47,24 +52,24 @@ public interface TopicService extends Service { * * @param topicTag * @return + * @throws ServiceException */ - TopicTagDTO bindTopicTag(TopicTagDTO topicTag) throws Exception; + TopicTagDTO bindTopicTag(TopicTagDTO topicTag) throws ServiceException; /** * 取消绑定标签 * * @param topicTag * @return + * @throws ServiceException */ - TopicTagDTO unbindTopicTag(TopicTagDTO topicTag) throws Exception; + TopicTagDTO unbindTopicTag(TopicTagDTO topicTag) throws ServiceException; /** * 获取主题下标签列表 * * @param topicUri - * @param page - * @param rows * @return */ - PageInfo findTagsByTopicUri(String topicUri, Integer page, Integer rows); + List findTagsByTopicUri(String topicUri); } diff --git a/src/main/java/com/rymcu/forest/service/TransactionRecordService.java b/src/main/java/com/rymcu/forest/service/TransactionRecordService.java index 6d8f7e0..33ef0ea 100644 --- a/src/main/java/com/rymcu/forest/service/TransactionRecordService.java +++ b/src/main/java/com/rymcu/forest/service/TransactionRecordService.java @@ -15,9 +15,8 @@ public interface TransactionRecordService extends Service { * 交易 * @param transactionRecord * @return - * @throws Exception */ - TransactionRecord transfer(TransactionRecord transactionRecord) throws Exception; + TransactionRecord transfer(TransactionRecord transactionRecord); /** * 查询指定账户的交易记录 @@ -34,24 +33,21 @@ public interface TransactionRecordService extends Service { * @param formUserId * @param transactionType * @return - * @throws Exception */ - TransactionRecord userTransfer(Long toUserId, Long formUserId, TransactionEnum transactionType) throws Exception; + TransactionRecord userTransfer(Long toUserId, Long formUserId, TransactionEnum transactionType); /** * 社区银行转账/奖励发放 * @param idUser * @param transactionType * @return - * @throws Exception */ - TransactionRecord bankTransfer(Long idUser, TransactionEnum transactionType) throws Exception; + TransactionRecord bankTransfer(Long idUser, TransactionEnum transactionType); /** * 发放新手奖励 * @param transactionRecord * @return - * @throws Exception */ - TransactionRecord newbieRewards(TransactionRecord transactionRecord) throws Exception; + TransactionRecord newbieRewards(TransactionRecord transactionRecord); } diff --git a/src/main/java/com/rymcu/forest/service/UserService.java b/src/main/java/com/rymcu/forest/service/UserService.java index 0dc6fd3..9c74efb 100644 --- a/src/main/java/com/rymcu/forest/service/UserService.java +++ b/src/main/java/com/rymcu/forest/service/UserService.java @@ -12,7 +12,6 @@ import java.util.Map; /** - * * @author CodeGenerator * @date 2018/05/29 */ @@ -20,10 +19,11 @@ public interface UserService extends Service { /** * 通过账号查询用户信息 + * * @param account - * @throws TooManyResultsException * @return User - * */ + * @throws TooManyResultsException + */ User findByAccount(String account) throws TooManyResultsException; /** @@ -34,7 +34,7 @@ public interface UserService extends Service { * @param code 验证码 * @return Map */ - void register(String email, String password, String code) throws ServiceException; + boolean register(String email, String password, String code); /** * 登录接口 @@ -47,9 +47,10 @@ public interface UserService extends Service { /** * 通过 account 获取用户信息接口 + * * @param account 昵称 - * @return UserDTO - * */ + * @return UserDTO + */ UserDTO findUserDTOByAccount(String account); /** @@ -58,8 +59,9 @@ public interface UserService extends Service { * @param code 验证码 * @param password 密码 * @return Map + * @throws ServiceException */ - String forgetPassword(String code, String password) throws ServiceException; + boolean forgetPassword(String code, String password) throws ServiceException; /** * 更新用户角色接口 @@ -67,6 +69,7 @@ public interface UserService extends Service { * @param idUser 用户 id * @param idRole 角色 id * @return Map + * @throws ServiceException */ boolean updateUserRole(Long idUser, Long idRole) throws ServiceException; @@ -76,23 +79,26 @@ public interface UserService extends Service { * @param idUser 用户 id * @param status 状态 * @return Map + * @throws ServiceException */ boolean updateStatus(Long idUser, String status) throws ServiceException; /** * 获取用户信息 + * * @param idUser * @return */ - Map findUserInfo(Long idUser); + UserInfoDTO findUserInfo(Long idUser); /** * 更新用户信息 * * @param user * @return + * @throws ServiceException */ - UserInfoDTO updateUserInfo(UserInfoDTO user) throws Exception; + UserInfoDTO updateUserInfo(UserInfoDTO user) throws ServiceException; /** * 验证昵称是否重复 @@ -101,10 +107,11 @@ public interface UserService extends Service { * @param nickname * @return */ - boolean checkNickname(Long idUser, String nickname) throws ServiceException; + boolean checkNicknameByIdUser(Long idUser, String nickname); /** * 获取用户权限 + * * @param idUser * @return */ @@ -112,6 +119,7 @@ public interface UserService extends Service { /** * 查询作者信息 + * * @param idUser * @return */ @@ -127,6 +135,7 @@ public interface UserService extends Service { /** * 获取用户扩展信息 + * * @param account * @return */ @@ -137,8 +146,9 @@ public interface UserService extends Service { * * @param changeEmailDTO * @return + * @throws ServiceException */ - String updateEmail(ChangeEmailDTO changeEmailDTO) throws ServiceException; + boolean updateEmail(ChangeEmailDTO changeEmailDTO) throws ServiceException; /** * 更新密码 @@ -150,15 +160,25 @@ public interface UserService extends Service { /** * 查询用户列表 + * * @param searchDTO * @return */ List findUsers(UserSearchDTO searchDTO); /** - * 通过邮箱查询用户信息 + * 通过邮箱更新用户最后登录时间 + * * @param email * @return */ Integer updateLastOnlineTimeByEmail(String email); + + /** + * 查询用户扩展信息 + * + * @param idUser + * @return + */ + UserExtend findUserExtendInfo(Long idUser); } diff --git a/src/main/java/com/rymcu/forest/service/impl/ArticleThumbsUpServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/ArticleThumbsUpServiceImpl.java index 7bfd346..feb2ee1 100644 --- a/src/main/java/com/rymcu/forest/service/impl/ArticleThumbsUpServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/ArticleThumbsUpServiceImpl.java @@ -4,11 +4,9 @@ import com.rymcu.forest.core.exception.BusinessException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.entity.Article; import com.rymcu.forest.entity.ArticleThumbsUp; -import com.rymcu.forest.entity.User; import com.rymcu.forest.mapper.ArticleThumbsUpMapper; import com.rymcu.forest.service.ArticleService; import com.rymcu.forest.service.ArticleThumbsUpService; -import com.rymcu.forest.util.UserUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -29,34 +27,25 @@ public class ArticleThumbsUpServiceImpl extends AbstractService @Override @Transactional(rollbackFor = Exception.class) - public String thumbsUp(ArticleThumbsUp articleThumbsUp) throws Exception { - if (Objects.isNull(articleThumbsUp) || Objects.isNull(articleThumbsUp.getIdArticle())) { + public int thumbsUp(ArticleThumbsUp articleThumbsUp) { + int thumbsUpNumber = 1; + Article article = articleService.findById(String.valueOf(articleThumbsUp.getIdArticle())); + if (Objects.isNull(article)) { throw new BusinessException("数据异常,文章不存在!"); } else { - Integer thumbsUpNumber = 1; - Article article = articleService.findById(String.valueOf(articleThumbsUp.getIdArticle())); - if (Objects.isNull(article)) { - throw new BusinessException("数据异常,文章不存在!"); + ArticleThumbsUp thumbsUp = articleThumbsUpMapper.selectOne(articleThumbsUp); + if (Objects.isNull(thumbsUp)) { + // 点赞 + articleThumbsUp.setThumbsUpTime(new Date()); + articleThumbsUpMapper.insertSelective(articleThumbsUp); } else { - User user = UserUtils.getCurrentUserByToken(); - articleThumbsUp.setIdUser(user.getIdUser()); - ArticleThumbsUp thumbsUp = articleThumbsUpMapper.selectOne(articleThumbsUp); - if (Objects.isNull(thumbsUp)) { - articleThumbsUp.setThumbsUpTime(new Date()); - articleThumbsUpMapper.insertSelective(articleThumbsUp); - // 更新文章点赞数 - } else { - articleThumbsUpMapper.deleteByPrimaryKey(thumbsUp.getIdArticleThumbsUp()); - // 更新文章点赞数 - thumbsUpNumber = -1; - } - articleThumbsUpMapper.updateArticleThumbsUpNumber(articleThumbsUp.getIdArticle(), thumbsUpNumber); - if (thumbsUpNumber > 0) { - return "点赞成功"; - } else { - return "已取消点赞"; - } + // 取消点赞 + articleThumbsUpMapper.deleteByPrimaryKey(thumbsUp.getIdArticleThumbsUp()); + thumbsUpNumber = -1; } + // 更新文章点赞数 + articleThumbsUpMapper.updateArticleThumbsUpNumber(articleThumbsUp.getIdArticle(), thumbsUpNumber); + return thumbsUpNumber; } } } diff --git a/src/main/java/com/rymcu/forest/service/impl/PortfolioServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/PortfolioServiceImpl.java index c1b622c..7d417fb 100644 --- a/src/main/java/com/rymcu/forest/service/impl/PortfolioServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/PortfolioServiceImpl.java @@ -4,20 +4,18 @@ import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.rymcu.forest.core.exception.BusinessException; import com.rymcu.forest.core.exception.ServiceException; +import com.rymcu.forest.core.exception.UltraViresException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.dto.*; import com.rymcu.forest.entity.Portfolio; -import com.rymcu.forest.entity.User; import com.rymcu.forest.lucene.model.PortfolioLucene; import com.rymcu.forest.lucene.util.PortfolioIndexUtil; import com.rymcu.forest.mapper.PortfolioMapper; import com.rymcu.forest.service.ArticleService; import com.rymcu.forest.service.PortfolioService; import com.rymcu.forest.service.UserService; -import com.rymcu.forest.util.UserUtils; import com.rymcu.forest.util.XssUtils; import com.rymcu.forest.web.api.common.UploadController; -import com.rymcu.forest.web.api.exception.BaseApiException; import org.apache.commons.lang.StringUtils; import org.springframework.stereotype.Service; @@ -64,15 +62,12 @@ public class PortfolioServiceImpl extends AbstractService implements } @Override - public Portfolio postPortfolio(Portfolio portfolio) throws BaseApiException { - User user = UserUtils.getCurrentUserByToken(); - assert user != null; + public Portfolio postPortfolio(Portfolio portfolio) { if (StringUtils.isNotBlank(portfolio.getHeadImgType())) { String headImgUrl = UploadController.uploadBase64File(portfolio.getHeadImgUrl(), 0); portfolio.setHeadImgUrl(headImgUrl); } if (portfolio.getIdPortfolio() == null || portfolio.getIdPortfolio() == 0) { - portfolio.setPortfolioAuthorId(user.getIdUser()); portfolio.setCreatedTime(new Date()); portfolio.setUpdatedTime(portfolio.getCreatedTime()); portfolio.setPortfolioDescriptionHtml(XssUtils.filterHtmlCode(portfolio.getPortfolioDescription())); @@ -97,61 +92,47 @@ public class PortfolioServiceImpl extends AbstractService implements } @Override - public PageInfo findUnbindArticles(Integer page, Integer rows, String searchText, Long idPortfolio) throws Exception { - User user = UserUtils.getCurrentUserByToken(); + public PageInfo findUnbindArticles(Integer page, Integer rows, String searchText, Long idPortfolio, Long idUser) { Portfolio portfolio = portfolioMapper.selectByPrimaryKey(idPortfolio); if (portfolio == null) { - throw new ServiceException("该作品集不存在或已被删除!"); + throw new BusinessException("该作品集不存在或已被删除!"); } else { - if (!user.getIdUser().equals(portfolio.getPortfolioAuthorId())) { - throw new ServiceException("非法操作!"); + if (!idUser.equals(portfolio.getPortfolioAuthorId())) { + throw new UltraViresException("非法操作!"); } else { PageHelper.startPage(page, rows); - List articles = articleService.selectUnbindArticles(idPortfolio, searchText, user.getIdUser()); - PageInfo pageInfo = new PageInfo(articles); - return pageInfo; + List articles = articleService.selectUnbindArticles(idPortfolio, searchText, idUser); + return new PageInfo<>(articles); } } } @Override - public boolean bindArticle(PortfolioArticleDTO portfolioArticle) throws Exception { + public boolean bindArticle(PortfolioArticleDTO portfolioArticle) throws ServiceException { Integer count = portfolioMapper.selectCountPortfolioArticle(portfolioArticle.getIdArticle(), portfolioArticle.getIdPortfolio()); if (count.equals(0)) { Integer maxSortNo = portfolioMapper.selectMaxSortNo(portfolioArticle.getIdPortfolio()); - portfolioMapper.insertPortfolioArticle(portfolioArticle.getIdArticle(), portfolioArticle.getIdPortfolio(), maxSortNo); - return true; + Integer result = portfolioMapper.insertPortfolioArticle(portfolioArticle.getIdArticle(), portfolioArticle.getIdPortfolio(), maxSortNo); + if (result == 0) { + throw new ServiceException("更新失败!"); + } } else { - throw new ServiceException("该文章已经在作品集下!!"); + throw new BusinessException("该文章已经在作品集下!!"); } + return true; } @Override - public boolean updateArticleSortNo(PortfolioArticleDTO portfolioArticle) throws Exception { - if (portfolioArticle.getIdPortfolio() == null || portfolioArticle.getIdPortfolio().equals(0)) { - throw new ServiceException("作品集数据异常!"); - } - if (portfolioArticle.getIdArticle() == null || portfolioArticle.getIdArticle().equals(0)) { - throw new ServiceException("文章数据异常!"); - } - if (portfolioArticle.getSortNo() == null) { - throw new ServiceException("排序号不能为空!"); - } + public boolean updateArticleSortNo(PortfolioArticleDTO portfolioArticle) throws ServiceException { Integer result = portfolioMapper.updateArticleSortNo(portfolioArticle.getIdPortfolio(), portfolioArticle.getIdArticle(), portfolioArticle.getSortNo()); - if (result > 0) { + if (result == 0) { throw new ServiceException("更新失败!"); } return true; } @Override - public boolean unbindArticle(Long idPortfolio, Long idArticle) throws Exception { - if (idPortfolio == null || idPortfolio.equals(0)) { - throw new ServiceException("作品集数据异常"); - } - if (idArticle == null || idArticle.equals(0)) { - throw new ServiceException("文章数据异常"); - } + public boolean unbindArticle(Long idPortfolio, Long idArticle) throws ServiceException { Integer result = portfolioMapper.unbindArticle(idPortfolio, idArticle); if (result == 0) { throw new ServiceException("操作失败!"); @@ -160,7 +141,7 @@ public class PortfolioServiceImpl extends AbstractService implements } @Override - public boolean deletePortfolio(Long idPortfolio, Long idUser, Integer roleWeights) throws BaseApiException, IllegalAccessException { + public boolean deletePortfolio(Long idPortfolio, Long idUser, Integer roleWeights) { if (idPortfolio == null || idPortfolio == 0) { throw new IllegalArgumentException("作品集数据异常!"); } @@ -168,7 +149,7 @@ public class PortfolioServiceImpl extends AbstractService implements if (roleWeights > 2) { Portfolio portfolio = portfolioMapper.selectByPrimaryKey(idPortfolio); if (!idUser.equals(portfolio.getPortfolioAuthorId())) { - throw new IllegalAccessException("非法访问!"); + throw new UltraViresException("非法访问!"); } } diff --git a/src/main/java/com/rymcu/forest/service/impl/RoleServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/RoleServiceImpl.java index c1f8ffd..78860fb 100644 --- a/src/main/java/com/rymcu/forest/service/impl/RoleServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/RoleServiceImpl.java @@ -26,8 +26,7 @@ public class RoleServiceImpl extends AbstractService implements RoleServic @Override public List selectRoleByUser(User sysUser) { - List roles = roleMapper.selectRoleByIdUser(sysUser.getIdUser()); - return roles; + return roleMapper.selectRoleByIdUser(sysUser.getIdUser()); } @Override @@ -36,8 +35,8 @@ public class RoleServiceImpl extends AbstractService implements RoleServic } @Override - @Transactional - public boolean updateStatus(Long idRole, String status) throws Exception { + @Transactional(rollbackFor = Exception.class) + public boolean updateStatus(Long idRole, String status) throws ServiceException { Integer result = roleMapper.updateStatus(idRole, status); if (result == 0) { throw new ServiceException("更新失败"); @@ -46,7 +45,7 @@ public class RoleServiceImpl extends AbstractService implements RoleServic } @Override - public boolean saveRole(Role role) throws Exception { + public boolean saveRole(Role role) throws ServiceException { Integer result; if (role.getIdRole() == null) { role.setCreatedTime(new Date()); diff --git a/src/main/java/com/rymcu/forest/service/impl/SponsorServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/SponsorServiceImpl.java index 8418188..c9f2216 100644 --- a/src/main/java/com/rymcu/forest/service/impl/SponsorServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/SponsorServiceImpl.java @@ -39,25 +39,22 @@ public class SponsorServiceImpl extends AbstractService implements Spon @Override @Transactional(rollbackFor = Exception.class) public boolean sponsorship(Sponsor sponsor) throws Exception { - if (Objects.isNull(sponsor) || Objects.isNull(sponsor.getDataId()) || Objects.isNull(sponsor.getDataType())) { - throw new ServiceException("数据异常"); - } else { - TransactionEnum result = TransactionEnum.findTransactionEnum(sponsor.getDataType()); - BigDecimal money = BigDecimal.valueOf(result.getMoney()); - sponsor.setSponsorshipMoney(money); - User user = UserUtils.getCurrentUserByToken(); - sponsor.setSponsor(user.getIdUser()); - sponsor.setSponsorshipTime(new Date()); - sponsorMapper.insertSelective(sponsor); - // 赞赏金额划转 - if (result.isArticleSponsor()) { - ArticleDTO articleDTO = articleService.findArticleDTOById(sponsor.getDataId(), 1); - TransactionRecord transactionRecord = transactionRecordService.userTransfer(articleDTO.getArticleAuthorId(), user.getIdUser(), result); - if (Objects.isNull(transactionRecord.getIdTransactionRecord())) { - throw new TransactionException(TransactionCode.InsufficientBalance); - } - // 更新文章赞赏数 - sponsorMapper.updateArticleSponsorCount(articleDTO.getIdArticle()); + TransactionEnum transactionEnum = TransactionEnum.findTransactionEnum(sponsor.getDataType()); + BigDecimal money = BigDecimal.valueOf(transactionEnum.getMoney()); + sponsor.setSponsorshipMoney(money); + sponsor.setSponsorshipTime(new Date()); + sponsorMapper.insertSelective(sponsor); + // 赞赏金额划转 + if (transactionEnum.isArticleSponsor()) { + ArticleDTO articleDTO = articleService.findArticleDTOById(sponsor.getDataId(), 1); + TransactionRecord transactionRecord = transactionRecordService.userTransfer(articleDTO.getArticleAuthorId(), sponsor.getSponsor(), transactionEnum); + if (Objects.isNull(transactionRecord.getIdTransactionRecord())) { + throw new TransactionException(TransactionCode.InsufficientBalance); + } + // 更新文章赞赏数 + int result = sponsorMapper.updateArticleSponsorCount(articleDTO.getIdArticle()); + if (result == 0) { + throw new ServiceException("操作失败!"); } } return true; diff --git a/src/main/java/com/rymcu/forest/service/impl/TagServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/TagServiceImpl.java index 2382e6f..6c24ce7 100644 --- a/src/main/java/com/rymcu/forest/service/impl/TagServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/TagServiceImpl.java @@ -1,5 +1,6 @@ package com.rymcu.forest.service.impl; +import com.rymcu.forest.core.exception.BusinessException; import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.dto.ArticleTagDTO; @@ -120,17 +121,16 @@ public class TagServiceImpl extends AbstractService implements TagService { @Transactional(rollbackFor = Exception.class) public Tag saveTag(Tag tag) throws Exception { Integer result; - tag.setTagDescription(XssUtils.filterHtmlCode(tag.getTagDescription())); if (tag.getIdTag() == null) { if (StringUtils.isBlank(tag.getTagTitle())) { - throw new ServiceException("标签名不能为空!"); + throw new IllegalArgumentException("标签名不能为空!"); } else { Condition tagCondition = new Condition(Tag.class); tagCondition.createCriteria().andCondition("tag_title =", tag.getTagTitle()); List tags = tagMapper.selectByCondition(tagCondition); if (!tags.isEmpty()) { - throw new ServiceException("标签 '" + tag.getTagTitle() + "' 已存在!"); + throw new BusinessException("标签 '" + tag.getTagTitle() + "' 已存在!"); } } tag = new Tag(); diff --git a/src/main/java/com/rymcu/forest/service/impl/TopicServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/TopicServiceImpl.java index 4a3cb39..d8e0746 100644 --- a/src/main/java/com/rymcu/forest/service/impl/TopicServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/TopicServiceImpl.java @@ -2,6 +2,7 @@ package com.rymcu.forest.service.impl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.rymcu.forest.core.exception.BusinessException; import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.service.AbstractService; import com.rymcu.forest.dto.admin.TagDTO; @@ -33,8 +34,7 @@ public class TopicServiceImpl extends AbstractService implements TopicSer @Override public List findTopicNav() { - List topics = topicMapper.selectTopicNav(); - return topics; + return topicMapper.selectTopicNav(); } @Override @@ -46,18 +46,18 @@ public class TopicServiceImpl extends AbstractService implements TopicSer @Override @Transactional(rollbackFor = Exception.class) - public Topic saveTopic(Topic topic) throws Exception { + public Topic saveTopic(Topic topic) throws ServiceException { Integer result; topic.setTopicDescriptionHtml(XssUtils.filterHtmlCode(topic.getTopicDescriptionHtml())); if (topic.getIdTopic() == null) { if (StringUtils.isBlank(topic.getTopicTitle())) { - throw new ServiceException("标签名不能为空!"); + throw new IllegalArgumentException("标签名不能为空!"); } else { Condition topicCondition = new Condition(Topic.class); topicCondition.createCriteria().andCondition("topic_title =", topic.getTopicTitle()); List topics = topicMapper.selectByCondition(topicCondition); if (!topics.isEmpty()) { - throw new ServiceException("专题 '" + topic.getTopicTitle() + "' 已存在!"); + throw new BusinessException("专题 '" + topic.getTopicTitle() + "' 已存在!"); } } topic = new Topic(); @@ -103,7 +103,7 @@ public class TopicServiceImpl extends AbstractService implements TopicSer @Override @Transactional(rollbackFor = Exception.class) - public TopicTagDTO bindTopicTag(TopicTagDTO topicTag) throws Exception { + public TopicTagDTO bindTopicTag(TopicTagDTO topicTag) throws ServiceException { Integer result = topicMapper.insertTopicTag(topicTag.getIdTopic(), topicTag.getIdTag()); if (result == 0) { throw new ServiceException("操作失败!"); @@ -113,7 +113,7 @@ public class TopicServiceImpl extends AbstractService implements TopicSer @Override @Transactional(rollbackFor = Exception.class) - public TopicTagDTO unbindTopicTag(TopicTagDTO topicTag) throws Exception { + public TopicTagDTO unbindTopicTag(TopicTagDTO topicTag) throws ServiceException { Integer result = topicMapper.deleteTopicTag(topicTag.getIdTopic(), topicTag.getIdTag()); if (result == 0) { throw new ServiceException("操作失败!"); @@ -122,14 +122,11 @@ public class TopicServiceImpl extends AbstractService implements TopicSer } @Override - public PageInfo findTagsByTopicUri(String topicUri, Integer page, Integer rows) { + public List findTagsByTopicUri(String topicUri) { TopicDTO topic = topicMapper.selectTopicByTopicUri(topicUri); if (topic == null) { return null; } - PageHelper.startPage(page, rows); - List list = topicMapper.selectTopicTag(topic.getIdTopic()); - PageInfo pageInfo = new PageInfo(list); - return pageInfo; + return topicMapper.selectTopicTag(topic.getIdTopic()); } } diff --git a/src/main/java/com/rymcu/forest/service/impl/TransactionRecordServiceImpl.java b/src/main/java/com/rymcu/forest/service/impl/TransactionRecordServiceImpl.java index c1f3837..6c7dced 100644 --- a/src/main/java/com/rymcu/forest/service/impl/TransactionRecordServiceImpl.java +++ b/src/main/java/com/rymcu/forest/service/impl/TransactionRecordServiceImpl.java @@ -38,7 +38,7 @@ public class TransactionRecordServiceImpl extends AbstractService implements UserServic @Override @Transactional(rollbackFor = Exception.class) - public void register(String email, String password, String code) throws ServiceException { + public boolean register(String email, String password, String code) { String vCode = redisService.get(email); if (StringUtils.isNotBlank(vCode)) { if (vCode.equals(code)) { User user = userMapper.findByAccount(email); if (user != null) { - throw new ServiceException("该邮箱已被注册!"); + throw new AccountExistsException("该邮箱已被注册!"); } else { user = new User(); String nickname = email.split("@")[0]; @@ -88,11 +86,11 @@ public class UserServiceImpl extends AbstractService implements UserServic .signature(user.getSignature()) .build()); redisService.delete(email); - return; + return true; } } } - throw new ServiceException("验证码无效!"); + throw new CaptchaException(); } private String checkNickname(String nickname) { @@ -143,13 +141,16 @@ public class UserServiceImpl extends AbstractService implements UserServic } @Override - public String forgetPassword(String code, String password) throws ServiceException { + public boolean forgetPassword(String code, String password) throws ServiceException { String email = redisService.get(code); if (StringUtils.isBlank(email)) { throw new ServiceException("链接已失效"); } else { - userMapper.updatePasswordByEmail(email, Utils.entryptPassword(password)); - return "修改成功,正在跳转登录登陆界面!"; + int result = userMapper.updatePasswordByEmail(email, Utils.entryptPassword(password)); + if (result == 0) { + throw new ServiceException("密码修改失败!"); + } + return true; } } @@ -174,31 +175,21 @@ public class UserServiceImpl extends AbstractService implements UserServic } @Override - public Map findUserInfo(Long idUser) { - Map map = new HashMap(2); + public UserInfoDTO findUserInfo(Long idUser) { UserInfoDTO user = userMapper.selectUserInfo(idUser); if (user == null) { throw new ContentNotExistException("用户不存在!"); - } else { - UserExtend userExtend = userExtendMapper.selectByPrimaryKey(user.getIdUser()); - if (Objects.isNull(userExtend)) { - userExtend = new UserExtend(); - userExtend.setIdUser(user.getIdUser()); - userExtendMapper.insertSelective(userExtend); - } - map.put("user", user); - map.put("userExtend", userExtend); } - return map; + return user; } @Override @Transactional(rollbackFor = Exception.class) - public UserInfoDTO updateUserInfo(UserInfoDTO user) throws Exception { + public UserInfoDTO updateUserInfo(UserInfoDTO user) throws ServiceException { user.setNickname(formatNickname(user.getNickname())); Integer number = userMapper.checkNicknameByIdUser(user.getIdUser(), user.getNickname()); if (number > 0) { - throw new ServiceException("该昵称已使用!"); + throw new NicknameOccupyException("该昵称已使用!"); } if (StringUtils.isNotBlank(user.getAvatarType()) && AVATAR_SVG_TYPE.equals(user.getAvatarType())) { String avatarUrl = UploadController.uploadBase64File(user.getAvatarUrl(), 0); @@ -222,12 +213,10 @@ public class UserServiceImpl extends AbstractService implements UserServic return nickname.replaceAll("\\.", ""); } - @Override - public boolean checkNickname(Long idUser, String nickname) throws ServiceException { - Map map = new HashMap(2); + public boolean checkNicknameByIdUser(Long idUser, String nickname) { Integer number = userMapper.checkNicknameByIdUser(idUser, nickname); if (number > 0) { - throw new ServiceException("该昵称已使用!"); + return false; } return true; } @@ -244,7 +233,7 @@ public class UserServiceImpl extends AbstractService implements UserServic @Override public UserExtend updateUserExtend(UserExtend userExtend) throws ServiceException { - int result = userExtendMapper.updateByPrimaryKeySelective(userExtend); + int result = userExtendMapper.updateByPrimaryKey(userExtend); if (result == 0) { throw new ServiceException("操作失败!"); } @@ -257,14 +246,17 @@ public class UserServiceImpl extends AbstractService implements UserServic } @Override - public String updateEmail(ChangeEmailDTO changeEmailDTO) throws ServiceException { + public boolean updateEmail(ChangeEmailDTO changeEmailDTO) throws ServiceException { Long idUser = changeEmailDTO.getIdUser(); String email = changeEmailDTO.getEmail(); String code = changeEmailDTO.getCode(); String vCode = redisService.get(email); if (StringUtils.isNotBlank(vCode) && StringUtils.isNotBlank(code) && vCode.equals(code)) { - userMapper.updateEmail(idUser, email); - return email; + int result = userMapper.updateEmail(idUser, email); + if (result == 0) { + throw new ServiceException("修改邮箱失败!"); + } + return true; } throw new CaptchaException(); } @@ -297,4 +289,15 @@ public class UserServiceImpl extends AbstractService implements UserServic public Integer updateLastOnlineTimeByEmail(String email) { return userMapper.updateLastOnlineTimeByEmail(email); } + + @Override + public UserExtend findUserExtendInfo(Long idUser) { + UserExtend userExtend = userExtendMapper.selectByPrimaryKey(idUser); + if (Objects.isNull(userExtend)) { + userExtend = new UserExtend(); + userExtend.setIdUser(idUser); + userExtendMapper.insertSelective(userExtend); + } + return userExtend; + } } diff --git a/src/main/java/com/rymcu/forest/web/api/admin/AdminController.java b/src/main/java/com/rymcu/forest/web/api/admin/AdminController.java index dba0cea..e96c55d 100644 --- a/src/main/java/com/rymcu/forest/web/api/admin/AdminController.java +++ b/src/main/java/com/rymcu/forest/web/api/admin/AdminController.java @@ -6,6 +6,7 @@ import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.result.GlobalResult; import com.rymcu.forest.core.result.GlobalResultGenerator; import com.rymcu.forest.dto.*; +import com.rymcu.forest.dto.admin.TagDTO; import com.rymcu.forest.dto.admin.TopicTagDTO; import com.rymcu.forest.dto.admin.UserRoleDTO; import com.rymcu.forest.entity.*; @@ -19,7 +20,7 @@ import java.util.List; /** * @author ronger - * */ + */ @RestController @RequestMapping("/api/v1/admin") public class AdminController { @@ -42,7 +43,7 @@ public class AdminController { private ProductService productService; @GetMapping("/users") - public GlobalResult> users(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, UserSearchDTO searchDTO){ + public GlobalResult> users(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, UserSearchDTO searchDTO) { PageHelper.startPage(page, rows); List list = userService.findUsers(searchDTO); PageInfo pageInfo = new PageInfo<>(list); @@ -50,13 +51,13 @@ public class AdminController { } @GetMapping("/user/{idUser}/role") - public GlobalResult> userRole(@PathVariable Long idUser){ + public GlobalResult> userRole(@PathVariable Long idUser) { List roles = roleService.findByIdUser(idUser); return GlobalResultGenerator.genSuccessResult(roles); } @GetMapping("/roles") - public GlobalResult> roles(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows){ + public GlobalResult> roles(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows) { PageHelper.startPage(page, rows); List list = roleService.findAll(); PageInfo pageInfo = new PageInfo<>(list); @@ -76,25 +77,25 @@ public class AdminController { } @PatchMapping("/role/update-status") - public GlobalResult updateRoleStatus(@RequestBody Role role) throws Exception { + public GlobalResult updateRoleStatus(@RequestBody Role role) throws ServiceException { boolean flag = roleService.updateStatus(role.getIdRole(), role.getStatus()); return GlobalResultGenerator.genSuccessResult(flag); } @PostMapping("/role/post") - public GlobalResult addRole(@RequestBody Role role) throws Exception { + public GlobalResult addRole(@RequestBody Role role) throws ServiceException { boolean flag = roleService.saveRole(role); - return GlobalResultGenerator.genSuccessResult(role); + return GlobalResultGenerator.genSuccessResult(flag); } @PutMapping("/role/post") - public GlobalResult updateRole(@RequestBody Role role) throws Exception { + public GlobalResult updateRole(@RequestBody Role role) throws Exception { boolean flag = roleService.saveRole(role); - return GlobalResultGenerator.genSuccessResult(role); + return GlobalResultGenerator.genSuccessResult(flag); } @GetMapping("/topics") - public GlobalResult> topics(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows){ + public GlobalResult> topics(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows) { PageHelper.startPage(page, rows); List list = topicService.findAll(); PageInfo pageInfo = new PageInfo<>(list); @@ -102,31 +103,33 @@ public class AdminController { } @GetMapping("/topic/{topicUri}") - public GlobalResult topic(@PathVariable String topicUri){ + public GlobalResult topic(@PathVariable String topicUri) { if (StringUtils.isBlank(topicUri)) { - return GlobalResultGenerator.genErrorResult("数据异常!"); + throw new IllegalArgumentException("参数异常!"); } Topic topic = topicService.findTopicByTopicUri(topicUri); return GlobalResultGenerator.genSuccessResult(topic); } @GetMapping("/topic/{topicUri}/tags") - public GlobalResult topicTags(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows,@PathVariable String topicUri) { + public GlobalResult> topicTags(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, @PathVariable String topicUri) { if (StringUtils.isBlank(topicUri)) { - return GlobalResultGenerator.genErrorResult("数据异常!"); + throw new IllegalArgumentException("参数异常!"); } - PageInfo pageInfo = topicService.findTagsByTopicUri(topicUri, page, rows); + PageHelper.startPage(page, rows); + List list = topicService.findTagsByTopicUri(topicUri); + PageInfo pageInfo = new PageInfo<>(list); return GlobalResultGenerator.genSuccessResult(pageInfo); } @GetMapping("/topic/detail/{idTopic}") - public GlobalResult topicDetail(@PathVariable Integer idTopic){ + public GlobalResult topicDetail(@PathVariable Integer idTopic) { Topic topic = topicService.findById(idTopic.toString()); return GlobalResultGenerator.genSuccessResult(topic); } @GetMapping("/topic/unbind-topic-tags") - public GlobalResult> unbindTopicTags(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, HttpServletRequest request){ + public GlobalResult> unbindTopicTags(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, HttpServletRequest request) { Long idTopic = Long.valueOf(request.getParameter("idTopic")); String tagTitle = request.getParameter("tagTitle"); PageHelper.startPage(page, rows); @@ -160,7 +163,7 @@ public class AdminController { } @GetMapping("/tags") - public GlobalResult> tags(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows){ + public GlobalResult> tags(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows) { PageHelper.startPage(page, rows); List list = tagService.findAll(); PageInfo pageInfo = new PageInfo<>(list); @@ -174,7 +177,7 @@ public class AdminController { } @GetMapping("/tag/detail/{idTag}") - public GlobalResult tagDetail(@PathVariable Integer idTag){ + public GlobalResult tagDetail(@PathVariable Integer idTag) { Tag tag = tagService.findById(idTag.toString()); return GlobalResultGenerator.genSuccessResult(tag); } @@ -224,5 +227,4 @@ public class AdminController { } - } diff --git a/src/main/java/com/rymcu/forest/web/api/article/ArticleController.java b/src/main/java/com/rymcu/forest/web/api/article/ArticleController.java index a2e1170..64fa34c 100644 --- a/src/main/java/com/rymcu/forest/web/api/article/ArticleController.java +++ b/src/main/java/com/rymcu/forest/web/api/article/ArticleController.java @@ -2,6 +2,7 @@ package com.rymcu.forest.web.api.article; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.rymcu.forest.core.exception.BusinessException; import com.rymcu.forest.core.result.GlobalResult; import com.rymcu.forest.core.result.GlobalResultGenerator; import com.rymcu.forest.core.service.security.annotation.AuthorshipInterceptor; @@ -105,13 +106,22 @@ public class ArticleController { } @PostMapping("/thumbs-up") - public GlobalResult thumbsUp(@RequestBody ArticleThumbsUp articleThumbsUp) throws Exception { - String str = articleThumbsUpService.thumbsUp(articleThumbsUp); - return GlobalResultGenerator.genSuccessResult(str); + public GlobalResult thumbsUp(@RequestBody ArticleThumbsUp articleThumbsUp) throws Exception { + if (Objects.isNull(articleThumbsUp) || Objects.isNull(articleThumbsUp.getIdArticle())) { + throw new BusinessException("数据异常,文章不存在!"); + } + User user = UserUtils.getCurrentUserByToken(); + articleThumbsUp.setIdUser(user.getIdUser()); + return GlobalResultGenerator.genSuccessResult(articleThumbsUpService.thumbsUp(articleThumbsUp)); } @PostMapping("/sponsor") public GlobalResult sponsor(@RequestBody Sponsor sponsor) throws Exception { + if (Objects.isNull(sponsor) || Objects.isNull(sponsor.getDataId()) || Objects.isNull(sponsor.getDataType())) { + throw new IllegalArgumentException("数据异常"); + } + User user = UserUtils.getCurrentUserByToken(); + sponsor.setSponsor(user.getIdUser()); boolean flag = sponsorService.sponsorship(sponsor); return GlobalResultGenerator.genSuccessResult(flag); } diff --git a/src/main/java/com/rymcu/forest/web/api/bank/TransactionRecordController.java b/src/main/java/com/rymcu/forest/web/api/bank/TransactionRecordController.java index c3a230a..123162c 100644 --- a/src/main/java/com/rymcu/forest/web/api/bank/TransactionRecordController.java +++ b/src/main/java/com/rymcu/forest/web/api/bank/TransactionRecordController.java @@ -22,13 +22,13 @@ public class TransactionRecordController { private TransactionRecordService transactionRecordService; @PostMapping("/transfer") - public GlobalResult transfer(@RequestBody TransactionRecord transactionRecord) throws Exception { + public GlobalResult transfer(@RequestBody TransactionRecord transactionRecord) { transactionRecord = transactionRecordService.transfer(transactionRecord); return GlobalResultGenerator.genSuccessResult(transactionRecord); } @PostMapping("/newbie-rewards") - public GlobalResult newbieRewards(@RequestBody TransactionRecord transactionRecord) throws Exception { + public GlobalResult newbieRewards(@RequestBody TransactionRecord transactionRecord) { transactionRecord = transactionRecordService.newbieRewards(transactionRecord); return GlobalResultGenerator.genSuccessResult(transactionRecord); } diff --git a/src/main/java/com/rymcu/forest/web/api/common/CommonApiController.java b/src/main/java/com/rymcu/forest/web/api/common/CommonApiController.java index 1c2058f..9252362 100644 --- a/src/main/java/com/rymcu/forest/web/api/common/CommonApiController.java +++ b/src/main/java/com/rymcu/forest/web/api/common/CommonApiController.java @@ -2,6 +2,7 @@ package com.rymcu.forest.web.api.common; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.rymcu.forest.core.exception.AccountExistsException; import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.result.GlobalResult; import com.rymcu.forest.core.result.GlobalResultGenerator; @@ -10,6 +11,7 @@ import com.rymcu.forest.core.service.log.annotation.VisitLogger; import com.rymcu.forest.dto.*; import com.rymcu.forest.entity.User; import com.rymcu.forest.service.*; +import org.apache.shiro.authc.UnknownAccountException; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -42,7 +44,7 @@ public class CommonApiController { map.put("message", GlobalResultMessage.SEND_SUCCESS.getMessage()); User user = userService.findByAccount(email); if (user != null) { - map.put("message", "该邮箱已被注册!"); + throw new AccountExistsException("该邮箱已被注册!"); } else { Integer result = javaMailService.sendEmailCode(email); if (result == 0) { @@ -53,25 +55,23 @@ public class CommonApiController { } @GetMapping("/get-forget-password-email") - public GlobalResult> getForgetPasswordEmail(@RequestParam("email") String email) throws MessagingException { - Map map = new HashMap<>(1); - map.put("message", GlobalResultMessage.SEND_SUCCESS.getMessage()); + public GlobalResult getForgetPasswordEmail(@RequestParam("email") String email) throws MessagingException, ServiceException { User user = userService.findByAccount(email); if (user != null) { Integer result = javaMailService.sendForgetPasswordEmail(email); if (result == 0) { - map.put("message", GlobalResultMessage.SEND_FAIL.getMessage()); + throw new ServiceException(GlobalResultMessage.SEND_FAIL.getMessage()); } } else { - map.put("message", "该邮箱未注册!"); + throw new UnknownAccountException("该邮箱未注册!"); } - return GlobalResultGenerator.genSuccessResult(map); + return GlobalResultGenerator.genSuccessResult(GlobalResultMessage.SEND_SUCCESS.getMessage()); } @PostMapping("/register") - public GlobalResult register(@RequestBody UserRegisterInfoDTO registerInfo) throws ServiceException { - userService.register(registerInfo.getEmail(), registerInfo.getPassword(), registerInfo.getCode()); - return GlobalResultGenerator.genSuccessResult(); + public GlobalResult register(@RequestBody UserRegisterInfoDTO registerInfo) { + boolean flag = userService.register(registerInfo.getEmail(), registerInfo.getPassword(), registerInfo.getCode()); + return GlobalResultGenerator.genSuccessResult(flag); } @PostMapping("/login") @@ -90,7 +90,7 @@ public class CommonApiController { public GlobalResult> articles(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, ArticleSearchDTO searchDTO) { PageHelper.startPage(page, rows); List list = articleService.findArticles(searchDTO); - PageInfo pageInfo = new PageInfo(list); + PageInfo pageInfo = new PageInfo<>(list); return GlobalResultGenerator.genSuccessResult(pageInfo); } @@ -98,7 +98,7 @@ public class CommonApiController { public GlobalResult> announcements(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "5") Integer rows) { PageHelper.startPage(page, rows); List list = articleService.findAnnouncements(); - PageInfo pageInfo = new PageInfo(list); + PageInfo pageInfo = new PageInfo<>(list); return GlobalResultGenerator.genSuccessResult(pageInfo); } @@ -110,9 +110,9 @@ public class CommonApiController { } @PatchMapping("/forget-password") - public GlobalResult forgetPassword(@RequestBody ForgetPasswordDTO forgetPassword) throws ServiceException { - String str = userService.forgetPassword(forgetPassword.getCode(), forgetPassword.getPassword()); - return GlobalResultGenerator.genSuccessResult(str); + public GlobalResult forgetPassword(@RequestBody ForgetPasswordDTO forgetPassword) throws ServiceException { + boolean flag = userService.forgetPassword(forgetPassword.getCode(), forgetPassword.getPassword()); + return GlobalResultGenerator.genSuccessResult(flag); } @GetMapping("/portfolio/{id}") @@ -126,7 +126,7 @@ public class CommonApiController { public GlobalResult> articles(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, @PathVariable Long id) { PageHelper.startPage(page, rows); List list = articleService.findArticlesByIdPortfolio(id); - PageInfo pageInfo = new PageInfo(list); + PageInfo pageInfo = new PageInfo<>(list); return GlobalResultGenerator.genSuccessResult(pageInfo); } @@ -134,7 +134,7 @@ public class CommonApiController { public GlobalResult> portfolios(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "12") Integer rows) { PageHelper.startPage(page, rows); List list = portfolioService.findPortfolios(); - PageInfo pageInfo = new PageInfo(list); + PageInfo pageInfo = new PageInfo<>(list); return GlobalResultGenerator.genSuccessResult(pageInfo); } @@ -142,7 +142,7 @@ public class CommonApiController { public GlobalResult> products(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "12") Integer rows) { PageHelper.startPage(page, rows); List list = productService.findProducts(); - PageInfo pageInfo = new PageInfo(list); + PageInfo pageInfo = new PageInfo<>(list); return GlobalResultGenerator.genSuccessResult(pageInfo); } diff --git a/src/main/java/com/rymcu/forest/web/api/portfolio/PortfolioController.java b/src/main/java/com/rymcu/forest/web/api/portfolio/PortfolioController.java index 5f69fec..81a8e99 100644 --- a/src/main/java/com/rymcu/forest/web/api/portfolio/PortfolioController.java +++ b/src/main/java/com/rymcu/forest/web/api/portfolio/PortfolioController.java @@ -1,6 +1,7 @@ package com.rymcu.forest.web.api.portfolio; import com.github.pagehelper.PageInfo; +import com.rymcu.forest.core.exception.ServiceException; import com.rymcu.forest.core.result.GlobalResult; import com.rymcu.forest.core.result.GlobalResultGenerator; import com.rymcu.forest.core.service.security.annotation.AuthorshipInterceptor; @@ -32,62 +33,94 @@ public class PortfolioController { private UserService userService; @GetMapping("/detail/{idPortfolio}") - public GlobalResult detail(@PathVariable Long idPortfolio,@RequestParam(defaultValue = "0") Integer type) { - PortfolioDTO portfolio = portfolioService.findPortfolioDTOById(idPortfolio, type); - Map map = new HashMap<>(1); - map.put("portfolio", portfolio); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult detail(@PathVariable Long idPortfolio, @RequestParam(defaultValue = "0") Integer type) { + if (idPortfolio == null || idPortfolio == 0) { + throw new IllegalArgumentException("作品集主键参数异常!"); + } + return GlobalResultGenerator.genSuccessResult(portfolioService.findPortfolioDTOById(idPortfolio, type)); } @PostMapping("/post") - public GlobalResult add(@RequestBody Portfolio portfolio) throws BaseApiException { + public GlobalResult add(@RequestBody Portfolio portfolio) throws BaseApiException { + User user = UserUtils.getCurrentUserByToken(); + portfolio.setPortfolioAuthorId(user.getIdUser()); portfolio = portfolioService.postPortfolio(portfolio); return GlobalResultGenerator.genSuccessResult(portfolio); } @PutMapping("/post") @AuthorshipInterceptor(moduleName = Module.PORTFOLIO) - public GlobalResult update(@RequestBody Portfolio portfolio) throws BaseApiException { + public GlobalResult update(@RequestBody Portfolio portfolio) throws BaseApiException { + if (portfolio.getIdPortfolio() == null || portfolio.getIdPortfolio() == 0) { + throw new IllegalArgumentException("作品集主键参数异常!"); + } + User user = UserUtils.getCurrentUserByToken(); + portfolio.setPortfolioAuthorId(user.getIdUser()); portfolio = portfolioService.postPortfolio(portfolio); return GlobalResultGenerator.genSuccessResult(portfolio); } @GetMapping("/{idPortfolio}/unbind-articles") @AuthorshipInterceptor(moduleName = Module.PORTFOLIO) - public GlobalResult unbindArticles(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, @RequestParam(defaultValue = "") String searchText, @PathVariable Long idPortfolio) throws Exception { - PageInfo pageInfo = portfolioService.findUnbindArticles(page, rows, searchText, idPortfolio); + public GlobalResult unbindArticles(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, @RequestParam(defaultValue = "") String searchText, @PathVariable Long idPortfolio) throws BaseApiException { + if (idPortfolio == null || idPortfolio == 0) { + throw new IllegalArgumentException("作品集主键参数异常!"); + } + User user = UserUtils.getCurrentUserByToken(); + PageInfo pageInfo = portfolioService.findUnbindArticles(page, rows, searchText, idPortfolio, user.getIdUser()); return GlobalResultGenerator.genSuccessResult(pageInfo); } @PostMapping("/bind-article") @AuthorshipInterceptor(moduleName = Module.PORTFOLIO) - public GlobalResult bindArticle(@RequestBody PortfolioArticleDTO portfolioArticle) throws Exception { + public GlobalResult bindArticle(@RequestBody PortfolioArticleDTO portfolioArticle) throws ServiceException { + if (portfolioArticle.getIdPortfolio() == null || portfolioArticle.getIdPortfolio() == 0) { + throw new IllegalArgumentException("作品集主键参数异常!"); + } boolean flag = portfolioService.bindArticle(portfolioArticle); return GlobalResultGenerator.genSuccessResult(flag); } @PutMapping("/update-article-sort-no") @AuthorshipInterceptor(moduleName = Module.PORTFOLIO) - public GlobalResult updateArticleSortNo(@RequestBody PortfolioArticleDTO portfolioArticle) throws Exception { + public GlobalResult updateArticleSortNo(@RequestBody PortfolioArticleDTO portfolioArticle) throws ServiceException { + if (portfolioArticle.getIdPortfolio() == null || portfolioArticle.getIdPortfolio() == 0) { + throw new IllegalArgumentException("作品集主键参数异常!"); + } + if (portfolioArticle.getIdArticle() == null || portfolioArticle.getIdArticle() == 0) { + throw new IllegalArgumentException("文章主键参数异常!"); + } + if (portfolioArticle.getSortNo() == null) { + throw new IllegalArgumentException("排序号不能为空!"); + } boolean flag = portfolioService.updateArticleSortNo(portfolioArticle); return GlobalResultGenerator.genSuccessResult(flag); } @DeleteMapping("/unbind-article") @AuthorshipInterceptor(moduleName = Module.PORTFOLIO) - public GlobalResult unbindArticle(Long idArticle, Long idPortfolio) throws Exception { + public GlobalResult unbindArticle(Long idArticle, Long idPortfolio) throws ServiceException { + if (idPortfolio == null || idPortfolio == 0) { + throw new IllegalArgumentException("作品集主键参数异常"); + } + if (idArticle == null || idArticle == 0) { + throw new IllegalArgumentException("文章主键参数异常"); + } boolean flag = portfolioService.unbindArticle(idPortfolio, idArticle); return GlobalResultGenerator.genSuccessResult(flag); } @DeleteMapping("/delete") @AuthorshipInterceptor(moduleName = Module.PORTFOLIO) - public GlobalResult delete(Long idPortfolio) throws BaseApiException, IllegalAccessException { + public GlobalResult delete(Long idPortfolio) throws BaseApiException { + if (idPortfolio == null || idPortfolio == 0) { + throw new IllegalArgumentException("参数异常!"); + } User user = UserUtils.getCurrentUserByToken(); Long idUser = user.getIdUser(); Integer roleWeights = userService.findRoleWeightsByUser(idUser); - boolean map = portfolioService.deletePortfolio(idPortfolio, idUser, roleWeights); - return GlobalResultGenerator.genSuccessResult(map); + boolean flag = portfolioService.deletePortfolio(idPortfolio, idUser, roleWeights); + return GlobalResultGenerator.genSuccessResult(flag); } } diff --git a/src/main/java/com/rymcu/forest/web/api/user/UserInfoController.java b/src/main/java/com/rymcu/forest/web/api/user/UserInfoController.java index 0abfa84..46db78f 100644 --- a/src/main/java/com/rymcu/forest/web/api/user/UserInfoController.java +++ b/src/main/java/com/rymcu/forest/web/api/user/UserInfoController.java @@ -35,57 +35,59 @@ public class UserInfoController { @GetMapping("/detail/{idUser}") @SecurityInterceptor - public GlobalResult detail(@PathVariable Long idUser) { - Map map = userService.findUserInfo(idUser); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult detail(@PathVariable Long idUser) { + UserInfoDTO userInfo = userService.findUserInfo(idUser); + return GlobalResultGenerator.genSuccessResult(userInfo); + } + @GetMapping("/detail/{idUser}/extend-info") + @SecurityInterceptor + public GlobalResult extendInfo(@PathVariable Long idUser) { + UserExtend userExtend = userService.findUserExtendInfo(idUser); + return GlobalResultGenerator.genSuccessResult(userExtend); } @GetMapping("/check-nickname") @SecurityInterceptor - public GlobalResult checkNickname(@RequestParam Long idUser, @RequestParam String nickname) throws ServiceException { - boolean flag = userService.checkNickname(idUser, nickname); + public GlobalResult checkNickname(@RequestParam Long idUser, @RequestParam String nickname) { + boolean flag = userService.checkNicknameByIdUser(idUser, nickname); return GlobalResultGenerator.genSuccessResult(flag); } @PatchMapping("/update") @SecurityInterceptor - public GlobalResult updateUserInfo(@RequestBody UserInfoDTO user) throws Exception { - UserInfoDTO newUsers = userService.updateUserInfo(user); - return GlobalResultGenerator.genSuccessResult(newUsers); + public GlobalResult updateUserInfo(@RequestBody UserInfoDTO user) throws ServiceException { + user = userService.updateUserInfo(user); + return GlobalResultGenerator.genSuccessResult(user); } @PatchMapping("/update-extend") @SecurityInterceptor - public GlobalResult updateUserExtend(@RequestBody UserExtend userExtend) throws ServiceException { - UserExtend map = userService.updateUserExtend(userExtend); - return GlobalResultGenerator.genSuccessResult(map); + public GlobalResult updateUserExtend(@RequestBody UserExtend userExtend) throws ServiceException { + userExtend = userService.updateUserExtend(userExtend); + return GlobalResultGenerator.genSuccessResult(userExtend); } @PatchMapping("/update-email") @SecurityInterceptor - public GlobalResult updateEmail(@RequestBody ChangeEmailDTO changeEmailDTO) throws ServiceException { - String email = userService.updateEmail(changeEmailDTO); - return GlobalResultGenerator.genSuccessResult(email); + public GlobalResult updateEmail(@RequestBody ChangeEmailDTO changeEmailDTO) throws ServiceException { + boolean flag = userService.updateEmail(changeEmailDTO); + return GlobalResultGenerator.genSuccessResult(flag); } @PatchMapping("/update-password") @SecurityInterceptor - public GlobalResult updatePassword(@RequestBody UpdatePasswordDTO updatePasswordDTO) { + public GlobalResult updatePassword(@RequestBody UpdatePasswordDTO updatePasswordDTO) { boolean flag = userService.updatePassword(updatePasswordDTO); return GlobalResultGenerator.genSuccessResult(flag); } @GetMapping("/login-records") @SecurityInterceptor - public GlobalResult loginRecords(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, @RequestParam Integer idUser) { + public GlobalResult> loginRecords(@RequestParam(defaultValue = "0") Integer page, @RequestParam(defaultValue = "10") Integer rows, @RequestParam Integer idUser) { PageHelper.startPage(page, rows); List list = loginRecordService.findLoginRecordByIdUser(idUser); PageInfo pageInfo = new PageInfo<>(list); - Map map = new HashMap(2); - map.put("records", pageInfo.getList()); - Map pagination = Utils.getPagination(pageInfo); - map.put("pagination", pagination); - return GlobalResultGenerator.genSuccessResult(map); + return GlobalResultGenerator.genSuccessResult(pageInfo); } }