From 678ccc6a4d74ec6ee9a4f7bc18b8ec77d70e98db Mon Sep 17 00:00:00 2001 From: wwx458872 <993568010@qq.com> Date: Wed, 22 Aug 2018 22:46:22 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E3=80=90=E5=93=81=E7=B1=BB=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E3=80=911=E3=80=81=E5=A2=9E=E5=8A=A0=E5=93=81?= =?UTF-8?q?=E7=B1=BB=202=E3=80=81=E6=9B=B4=E6=96=B0=E5=93=81=E7=B1=BB?= =?UTF-8?q?=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/mmall/common/CheckAuth.java | 18 ++++++ .../backend/CategoryManageController.java | 59 +++++++++++++++++++ src/main/java/com/mmall/pojo/Category.java | 5 ++ src/main/java/com/mmall/pojo/User.java | 2 + .../com/mmall/service/ICategoryService.java | 12 ++++ .../java/com/mmall/service/IUserService.java | 2 + .../service/impl/CategoryServiceImpl.java | 57 ++++++++++++++++++ .../mmall/service/impl/UserServiceImpl.java | 13 ++++ src/main/java/com/mmall/util/StringUtils.java | 12 ++++ 9 files changed, 180 insertions(+) create mode 100644 src/main/java/com/mmall/common/CheckAuth.java create mode 100644 src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java create mode 100644 src/main/java/com/mmall/service/ICategoryService.java create mode 100644 src/main/java/com/mmall/service/impl/CategoryServiceImpl.java diff --git a/src/main/java/com/mmall/common/CheckAuth.java b/src/main/java/com/mmall/common/CheckAuth.java new file mode 100644 index 0000000..b008ad7 --- /dev/null +++ b/src/main/java/com/mmall/common/CheckAuth.java @@ -0,0 +1,18 @@ +package com.mmall.common; + +import com.mmall.pojo.User; + +import javax.servlet.http.HttpSession; + +/** + * Created by Administrator on 2018/8/22 0022. + */ +public class CheckAuth { + public static ServerResponse isLogin(HttpSession session) { + User user = (User) session.getAttribute(Const.CURRENT_USER); + if (user == null) { + return ServerResponse.createByErrorCodeMessage(ResponseCode.NEED_LOGIN.getCode(), "用户未登录"); + } + return ServerResponse.createBySuccess(user); + } +} diff --git a/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java b/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java new file mode 100644 index 0000000..c1d46e5 --- /dev/null +++ b/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java @@ -0,0 +1,59 @@ +package com.mmall.controller.portal.backend; + +import com.mmall.common.CheckAuth; +import com.mmall.common.Const; +import com.mmall.common.ResponseCode; +import com.mmall.common.ServerResponse; +import com.mmall.pojo.User; +import com.mmall.service.ICategoryService; +import com.mmall.service.IUserService; +import org.apache.ibatis.annotations.Param; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; + +import javax.servlet.http.HttpSession; + +/** + * Created by Administrator on 2018/8/21 0021. + */ +@Controller +@RequestMapping("/manage/category") +public class CategoryManageController { + @Autowired + private IUserService iUserService; + + @Autowired + private ICategoryService iCategoryService; + + @RequestMapping(value = "add_category.do", method = RequestMethod.POST) + public ServerResponse addCategory(HttpSession session, String categoryName, @RequestParam(value = "parentId", defaultValue = "0") int parentId) { + ServerResponse loginFlag = CheckAuth.isLogin(session); + if(!loginFlag.isSuccess()){ + return loginFlag; + } + + //校验一下是否是管理员 + ServerResponse checkResult = iUserService.checkAdminRole((User)loginFlag.getData()); + if (checkResult.isSuccess()) { + return iCategoryService.addCategory(categoryName, parentId); + } + return ServerResponse.createByErrorMessage("无权限操作,需要管理员权限"); + } + + @RequestMapping(value = "set_category_name.do", method = RequestMethod.PUT) + public ServerResponse setCategoryNameById(HttpSession session, String categoryName, @RequestParam(value = "categoryId") int categoryId) { + ServerResponse loginFlag = CheckAuth.isLogin(session); + if(!loginFlag.isSuccess()){ + return loginFlag; + } + //校验一下是否是管理员 + ServerResponse checkResult = iUserService.checkAdminRole((User)loginFlag.getData()); + if (checkResult.isSuccess()) { + return iCategoryService.setCategoryNameById(categoryName, categoryId); + } + return ServerResponse.createByErrorMessage("无权限操作,需要管理员权限"); + } +} diff --git a/src/main/java/com/mmall/pojo/Category.java b/src/main/java/com/mmall/pojo/Category.java index 2b636da..5924d99 100644 --- a/src/main/java/com/mmall/pojo/Category.java +++ b/src/main/java/com/mmall/pojo/Category.java @@ -17,6 +17,11 @@ public class Category { private Date updateTime; + public Category(Integer id, String name) { + this.id = id; + this.name = name; + } + public Category(Integer id, Integer parentId, String name, Boolean status, Integer sortOrder, Date createTime, Date updateTime) { this.id = id; this.parentId = parentId; diff --git a/src/main/java/com/mmall/pojo/User.java b/src/main/java/com/mmall/pojo/User.java index df77265..dbfdf7b 100644 --- a/src/main/java/com/mmall/pojo/User.java +++ b/src/main/java/com/mmall/pojo/User.java @@ -36,6 +36,8 @@ public class User { this.updateTime = updateTime; } + + public User() { super(); } diff --git a/src/main/java/com/mmall/service/ICategoryService.java b/src/main/java/com/mmall/service/ICategoryService.java new file mode 100644 index 0000000..8064473 --- /dev/null +++ b/src/main/java/com/mmall/service/ICategoryService.java @@ -0,0 +1,12 @@ +package com.mmall.service; + +import com.mmall.common.ServerResponse; + +/** + * Created by Administrator on 2018/8/21 0021. + */ +public interface ICategoryService { + ServerResponse addCategory(String categoryname, Integer parentId); + + ServerResponse setCategoryNameById(String categoryName, Integer categoryId); +} diff --git a/src/main/java/com/mmall/service/IUserService.java b/src/main/java/com/mmall/service/IUserService.java index 8d7be56..41c0240 100644 --- a/src/main/java/com/mmall/service/IUserService.java +++ b/src/main/java/com/mmall/service/IUserService.java @@ -27,4 +27,6 @@ public interface IUserService { ServerResponse updateInformation(User user); ServerResponse getInformation(Integer userId); + + ServerResponse checkAdminRole(User user); } diff --git a/src/main/java/com/mmall/service/impl/CategoryServiceImpl.java b/src/main/java/com/mmall/service/impl/CategoryServiceImpl.java new file mode 100644 index 0000000..8cc06b4 --- /dev/null +++ b/src/main/java/com/mmall/service/impl/CategoryServiceImpl.java @@ -0,0 +1,57 @@ +package com.mmall.service.impl; + +import com.mmall.common.ServerResponse; +import com.mmall.dao.CategoryMapper; +import com.mmall.pojo.Category; +import com.mmall.service.ICategoryService; +import com.mmall.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * Created by Administrator on 2018/8/21 0021. + */ +@Service("iCategoryService") +public class CategoryServiceImpl implements ICategoryService { + private static Logger logger = LoggerFactory.getLogger(CategoryServiceImpl.class); + private static Integer ZERO = 0; + + + @Autowired + private CategoryMapper categoryMapper; + + @Override + public ServerResponse addCategory(String categoryname, Integer parentId) { + logger.info("function=addCategory add categoryname={}", categoryname); + if (StringUtils.isEmpty(categoryname)||StringUtils.checkId(parentId)) { + return ServerResponse.createByErrorMessage("添加品类参数错误"); + } + Category category = new Category(); + category.setName(categoryname); + category.setParentId(parentId); + //true为可用 false为不可用 + category.setStatus(true); + int rowResult = categoryMapper.insertSelective(category); + if (rowResult > ZERO) { + return ServerResponse.createBySuccessMessage("添加品类成功"); + } + return ServerResponse.createByErrorMessage("添加品类失败"); + } + + @Override + public ServerResponse setCategoryNameById(String categoryName, Integer categoryId) { + logger.info("function=setCategoryNameById categoryId={}", categoryId); + if (StringUtils.isEmpty(categoryName) || StringUtils.checkId(categoryId)) { + return ServerResponse.createByErrorMessage("添加品类参数错误"); + } + Category category = new Category(categoryId, categoryName); + + int resultCount = categoryMapper.updateByPrimaryKeySelective(category); + if (resultCount > ZERO) { + return ServerResponse.createBySuccessMessage("修改品类名称成功"); + } + return ServerResponse.createByErrorMessage("修改品类名称失败"); + } +} diff --git a/src/main/java/com/mmall/service/impl/UserServiceImpl.java b/src/main/java/com/mmall/service/impl/UserServiceImpl.java index 7ff2210..42188c0 100644 --- a/src/main/java/com/mmall/service/impl/UserServiceImpl.java +++ b/src/main/java/com/mmall/service/impl/UserServiceImpl.java @@ -186,4 +186,17 @@ public class UserServiceImpl implements IUserService { user.setPassword(org.apache.commons.lang3.StringUtils.EMPTY); return ServerResponse.createBySuccess(user); } + + /** + * 校验用户是否是管理员 + * @param user + * @return + */ + @Override + public ServerResponse checkAdminRole(User user) { + if (user != null && user.getRole() == Const.Role.ROLE_ADMIN) { + return ServerResponse.createBySuccess(); + } + return ServerResponse.createByError(); + } } diff --git a/src/main/java/com/mmall/util/StringUtils.java b/src/main/java/com/mmall/util/StringUtils.java index c3b5ed0..daf9607 100644 --- a/src/main/java/com/mmall/util/StringUtils.java +++ b/src/main/java/com/mmall/util/StringUtils.java @@ -17,4 +17,16 @@ public class StringUtils { } return false; } + + /** + * j校验id是否为空 + * @param str + * @return + */ + public static boolean checkId(Integer id) { + if (id == null) { + return true; + } + return false; + } } -- Gitee From ee5ba1bb65609bfedb06b377174ce9bfabc22d52 Mon Sep 17 00:00:00 2001 From: wwx458872 <993568010@qq.com> Date: Fri, 24 Aug 2018 18:01:41 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E3=80=90=E7=94=A8=E6=88=B7=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E3=80=91=E7=94=A8=E6=88=B7=E6=A8=A1=E5=9D=97=E5=BC=80?= =?UTF-8?q?=E5=8F=91=E5=AE=8C=E6=88=90=20=E9=AA=8C=E8=AF=81=E5=AE=8C?= =?UTF-8?q?=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 3 + .../backend/CategoryManageController.java | 30 +++++++++- .../java/com/mmall/dao/CategoryMapper.java | 5 ++ .../com/mmall/service/ICategoryService.java | 9 +++ .../service/impl/CategoryServiceImpl.java | 55 ++++++++++++++++++- src/main/resources/mappers/CategoryMapper.xml | 8 ++- src/main/webapp/WEB-INF/web.xml | 9 +++ 7 files changed, 115 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 243ae54..9f88606 100644 --- a/README.md +++ b/README.md @@ -12,3 +12,6 @@ spring初始化时候的动作 5、在监听的类中会有一个contextInitialized(ServletContextEvent event)初始化方法,在这个方法中可以通过event.getServletContext().getInitParameter("contextConfigLocation") 来得到context-param 设定的值。在这个类中还必须有一个contextDestroyed(ServletContextEvent event) 销毁方法.用于关闭应用前释放资源,比如说数据库连接的关闭。 得到这个context-param的值之后,你就可以做一些操作了.注意,这个时候你的WEB项目还没有完全启动完成.这个动作会比所有的Servlet都要早。 +2018/8/24 + 遇见一个奇怪的问题 controller里面如果接口没有配置respnseBody这个注解的话 那么下发的请求地址将于实际的不一致, + 造成访问404的问题出现 \ No newline at end of file diff --git a/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java b/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java index c1d46e5..c5312f5 100644 --- a/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java +++ b/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java @@ -4,6 +4,7 @@ import com.mmall.common.CheckAuth; import com.mmall.common.Const; import com.mmall.common.ResponseCode; import com.mmall.common.ServerResponse; +import com.mmall.pojo.Category; import com.mmall.pojo.User; import com.mmall.service.ICategoryService; import com.mmall.service.IUserService; @@ -13,14 +14,16 @@ import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; import javax.servlet.http.HttpSession; +import java.util.List; /** * Created by Administrator on 2018/8/21 0021. */ @Controller -@RequestMapping("/manage/category") +@RequestMapping("/manage/category/") public class CategoryManageController { @Autowired private IUserService iUserService; @@ -29,6 +32,7 @@ public class CategoryManageController { private ICategoryService iCategoryService; @RequestMapping(value = "add_category.do", method = RequestMethod.POST) + @ResponseBody public ServerResponse addCategory(HttpSession session, String categoryName, @RequestParam(value = "parentId", defaultValue = "0") int parentId) { ServerResponse loginFlag = CheckAuth.isLogin(session); if(!loginFlag.isSuccess()){ @@ -44,7 +48,8 @@ public class CategoryManageController { } @RequestMapping(value = "set_category_name.do", method = RequestMethod.PUT) - public ServerResponse setCategoryNameById(HttpSession session, String categoryName, @RequestParam(value = "categoryId") int categoryId) { + @ResponseBody + public ServerResponse setCategoryNameById(HttpSession session, String categoryName, @RequestParam(value = "categoryId",defaultValue = "0") int categoryId) { ServerResponse loginFlag = CheckAuth.isLogin(session); if(!loginFlag.isSuccess()){ return loginFlag; @@ -56,4 +61,25 @@ public class CategoryManageController { } return ServerResponse.createByErrorMessage("无权限操作,需要管理员权限"); } + + @RequestMapping(value = "get_category.do", method = RequestMethod.GET) + @ResponseBody + public ServerResponse> getCategoryByParentId(HttpSession session, @RequestParam(value = "categoryId" ,defaultValue = "0") int categoryId) { + ServerResponse loginFlag = CheckAuth.isLogin(session); + if(!loginFlag.isSuccess()){ + return loginFlag; + } + return iCategoryService.getCategoryByParentId(categoryId); + } + + @RequestMapping(value = "get_deep_category.do", method = RequestMethod.GET) + @ResponseBody + public ServerResponse getCategoryAndDeepChildrenCategory(HttpSession session, @RequestParam(value = "categoryId", defaultValue = "0") Integer categoryId) { + User user = (User) session.getAttribute(Const.CURRENT_USER); + if (user == null) { + return ServerResponse.createByErrorCodeMessage(ResponseCode.NEED_LOGIN.getCode(), "用户未登录,请登录"); + } + return iCategoryService.selectCategoryAndChildrenById(categoryId); + } + } diff --git a/src/main/java/com/mmall/dao/CategoryMapper.java b/src/main/java/com/mmall/dao/CategoryMapper.java index b69921a..e7380a3 100644 --- a/src/main/java/com/mmall/dao/CategoryMapper.java +++ b/src/main/java/com/mmall/dao/CategoryMapper.java @@ -1,6 +1,9 @@ package com.mmall.dao; import com.mmall.pojo.Category; +import org.apache.ibatis.annotations.Param; + +import java.util.List; public interface CategoryMapper { int deleteByPrimaryKey(Integer id); @@ -14,4 +17,6 @@ public interface CategoryMapper { int updateByPrimaryKeySelective(Category record); int updateByPrimaryKey(Category record); + + List getCategoryByParentId(@Param("parentId") int parentId); } \ No newline at end of file diff --git a/src/main/java/com/mmall/service/ICategoryService.java b/src/main/java/com/mmall/service/ICategoryService.java index 8064473..34e48ea 100644 --- a/src/main/java/com/mmall/service/ICategoryService.java +++ b/src/main/java/com/mmall/service/ICategoryService.java @@ -1,6 +1,9 @@ package com.mmall.service; import com.mmall.common.ServerResponse; +import com.mmall.pojo.Category; + +import java.util.List; /** * Created by Administrator on 2018/8/21 0021. @@ -9,4 +12,10 @@ public interface ICategoryService { ServerResponse addCategory(String categoryname, Integer parentId); ServerResponse setCategoryNameById(String categoryName, Integer categoryId); + + ServerResponse getCategoryByParentId(Integer categoryId); + + ServerResponse> selectCategoryAndChildrenById(Integer categoryId); + + } diff --git a/src/main/java/com/mmall/service/impl/CategoryServiceImpl.java b/src/main/java/com/mmall/service/impl/CategoryServiceImpl.java index 8cc06b4..7b4dff2 100644 --- a/src/main/java/com/mmall/service/impl/CategoryServiceImpl.java +++ b/src/main/java/com/mmall/service/impl/CategoryServiceImpl.java @@ -1,5 +1,7 @@ package com.mmall.service.impl; +import com.google.common.collect.Lists; +import com.google.common.collect.Sets; import com.mmall.common.ServerResponse; import com.mmall.dao.CategoryMapper; import com.mmall.pojo.Category; @@ -9,6 +11,11 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.Collection; +import java.util.List; +import java.util.Set; /** * Created by Administrator on 2018/8/21 0021. @@ -33,7 +40,7 @@ public class CategoryServiceImpl implements ICategoryService { category.setParentId(parentId); //true为可用 false为不可用 category.setStatus(true); - int rowResult = categoryMapper.insertSelective(category); + int rowResult = categoryMapper.insert(category); if (rowResult > ZERO) { return ServerResponse.createBySuccessMessage("添加品类成功"); } @@ -54,4 +61,50 @@ public class CategoryServiceImpl implements ICategoryService { } return ServerResponse.createByErrorMessage("修改品类名称失败"); } + + /** + * 获取该父类节点下的所有子节点的品类信息(不递归) + * @param categoryId(parentid) + * @return + */ + @Override + public ServerResponse> getCategoryByParentId(Integer categoryId) { + logger.info("function=getCategoryByParentId categoryId={}", categoryId); + if(StringUtils.checkId(categoryId)) + { + return ServerResponse.createByErrorMessage("添加品类参数错误"); + } + List categoryList = categoryMapper.getCategoryByParentId(categoryId); + if(CollectionUtils.isEmpty(categoryList)){ + logger.info("function=getCategoryById fing not category parentId={}", categoryId); + } + return ServerResponse.createBySuccess(categoryList); + } + + @Override + public ServerResponse> selectCategoryAndChildrenById(Integer categoryId) { + Set categorySet = Sets.newHashSet(); + findChildCategory(categorySet, categoryId); + List categoryIdList = Lists.newArrayList(); + if (categoryId != null) { + for (Category categoryItem : categorySet) { + categoryIdList.add(categoryItem); + } + } + return ServerResponse.createBySuccess(categoryIdList); + } + + //递归算法,算出子节点 + private Set findChildCategory(Set categorySet, Integer categoryId) { + Category category = categoryMapper.selectByPrimaryKey(categoryId); + if (category != null) { + categorySet.add(category); + } + //查找子节点,递归算法一定要有一个退出的条件 + List categoryList = categoryMapper.getCategoryByParentId(categoryId); + for (Category categoryItem : categoryList) { + findChildCategory(categorySet, categoryItem.getId()); + } + return categorySet; + } } diff --git a/src/main/resources/mappers/CategoryMapper.xml b/src/main/resources/mappers/CategoryMapper.xml index 7b2718e..4d8d3c4 100644 --- a/src/main/resources/mappers/CategoryMapper.xml +++ b/src/main/resources/mappers/CategoryMapper.xml @@ -100,7 +100,7 @@ create_time = #{createTime,jdbcType=TIMESTAMP}, - + update_time = now(), @@ -116,4 +116,10 @@ update_time = now() where id = #{id,jdbcType=INTEGER} + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml index 2ae4bf8..3b499ec 100644 --- a/src/main/webapp/WEB-INF/web.xml +++ b/src/main/webapp/WEB-INF/web.xml @@ -23,6 +23,15 @@ /* + + HttpMethodFilter + org.springframework.web.filter.HttpPutFormContentFilter + + + HttpMethodFilter + /* + + org.springframework.web.context.request.RequestContextListener -- Gitee From 8f4538190b10b7e167966a4ee0ef6b58c134ea5f Mon Sep 17 00:00:00 2001 From: wwx458872 <993568010@qq.com> Date: Fri, 24 Aug 2018 18:03:55 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E3=80=90=E7=94=A8=E6=88=B7=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E3=80=91=E6=94=AF=E6=8C=81=E6=8E=A5=E6=94=B6PUt?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E7=9A=84=E8=A7=A3=E5=86=B3=E6=96=B9=E6=A1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 13 +++++++++++-- src/main/webapp/WEB-INF/web.xml | 1 + 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9f88606..1173b25 100644 --- a/README.md +++ b/README.md @@ -13,5 +13,14 @@ spring初始化时候的动作 来得到context-param 设定的值。在这个类中还必须有一个contextDestroyed(ServletContextEvent event) 销毁方法.用于关闭应用前释放资源,比如说数据库连接的关闭。 得到这个context-param的值之后,你就可以做一些操作了.注意,这个时候你的WEB项目还没有完全启动完成.这个动作会比所有的Servlet都要早。 2018/8/24 - 遇见一个奇怪的问题 controller里面如果接口没有配置respnseBody这个注解的话 那么下发的请求地址将于实际的不一致, - 造成访问404的问题出现 \ No newline at end of file + 1、遇见一个奇怪的问题 controller里面如果接口没有配置respnseBody这个注解的话 那么下发的请求地址将于实际的不一致, + 造成访问404的问题出现 + 2、springMvc支持PUT参数的解决方案 + + HttpMethodFilter + org.springframework.web.filter.HttpPutFormContentFilter + + + HttpMethodFilter + /* + diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml index 3b499ec..715bf9d 100644 --- a/src/main/webapp/WEB-INF/web.xml +++ b/src/main/webapp/WEB-INF/web.xml @@ -23,6 +23,7 @@ /* + HttpMethodFilter org.springframework.web.filter.HttpPutFormContentFilter -- Gitee From 6c5711ca090f8e39caa6c4e39b33274083fb9d2b Mon Sep 17 00:00:00 2001 From: wwx458872 <993568010@qq.com> Date: Fri, 24 Aug 2018 23:40:33 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E3=80=90=E5=93=81=E7=B1=BB=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E3=80=91=E5=90=8E=E5=8F=B0=E5=93=81=E7=B1=BB=E5=80=9F?= =?UTF-8?q?=E5=8F=A3=E5=A2=9E=E5=8A=A0=20=E7=94=A8=E6=88=B7=E6=9D=83?= =?UTF-8?q?=E9=99=90=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../backend/CategoryManageController.java | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java b/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java index c5312f5..823cf26 100644 --- a/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java +++ b/src/main/java/com/mmall/controller/portal/backend/CategoryManageController.java @@ -1,14 +1,11 @@ package com.mmall.controller.portal.backend; import com.mmall.common.CheckAuth; -import com.mmall.common.Const; -import com.mmall.common.ResponseCode; import com.mmall.common.ServerResponse; import com.mmall.pojo.Category; import com.mmall.pojo.User; import com.mmall.service.ICategoryService; import com.mmall.service.IUserService; -import org.apache.ibatis.annotations.Param; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @@ -69,17 +66,25 @@ public class CategoryManageController { if(!loginFlag.isSuccess()){ return loginFlag; } - return iCategoryService.getCategoryByParentId(categoryId); + ServerResponse checkResult = iUserService.checkAdminRole((User)loginFlag.getData()); + if (checkResult.isSuccess()) { + return iCategoryService.getCategoryByParentId(categoryId); + } + return ServerResponse.createByErrorMessage("无权限操作,需要管理员权限"); } @RequestMapping(value = "get_deep_category.do", method = RequestMethod.GET) @ResponseBody public ServerResponse getCategoryAndDeepChildrenCategory(HttpSession session, @RequestParam(value = "categoryId", defaultValue = "0") Integer categoryId) { - User user = (User) session.getAttribute(Const.CURRENT_USER); - if (user == null) { - return ServerResponse.createByErrorCodeMessage(ResponseCode.NEED_LOGIN.getCode(), "用户未登录,请登录"); + ServerResponse loginFlag = CheckAuth.isLogin(session); + if(!loginFlag.isSuccess()){ + return loginFlag; } - return iCategoryService.selectCategoryAndChildrenById(categoryId); + ServerResponse checkResult = iUserService.checkAdminRole((User)loginFlag.getData()); + if (checkResult.isSuccess()) { + return iCategoryService.selectCategoryAndChildrenById(categoryId); + } + return ServerResponse.createByErrorMessage("无权限操作,需要管理员权限"); } } -- Gitee