ShopServiceImpl.java 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. package com.cdf.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  4. import com.cdf.common.PageInfo;
  5. import com.cdf.entity.*;
  6. import com.cdf.mapper.IShopMapper;
  7. import com.cdf.request.ShopRequest;
  8. import com.cdf.response.ShopVo;
  9. import com.cdf.service.*;
  10. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  11. import com.cdf.util.JwtUtil;
  12. import org.apache.commons.lang3.StringUtils;
  13. import org.springframework.beans.BeanUtils;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.stereotype.Service;
  16. import java.util.ArrayList;
  17. import java.util.List;
  18. import java.util.Set;
  19. import java.util.stream.Collectors;
  20. /**
  21. * <p>
  22. * 服务实现类
  23. * </p>
  24. *
  25. * @author
  26. * @since 2022-05-10
  27. */
  28. @Service
  29. public class ShopServiceImpl extends ServiceImpl<IShopMapper, Shop> implements IShopService {
  30. @Autowired
  31. IDeptService deptService;
  32. @Autowired
  33. IShopCategoryService categoryService;
  34. @Autowired
  35. IUserService userService;
  36. @Autowired
  37. IFdkkUserService fdkkUserService;
  38. @Override
  39. public PageInfo pageList(ShopRequest param) {
  40. LambdaQueryWrapper<Shop> wrapper = new LambdaQueryWrapper<>();
  41. if(StringUtils.isNotBlank(param.getShopName())){
  42. wrapper.like(Shop::getShopName,param.getShopName());
  43. }
  44. if(param.getCategoryId() !=null){
  45. wrapper.eq(Shop::getCategoryId,param.getCategoryId());
  46. }
  47. Integer id = JwtUtil.getId(param.getToken());
  48. User user = userService.getById(id);
  49. if(user.getRoleId() == 1 || user.getRoleId() == 2){
  50. FdkkUser fdkkUser = fdkkUserService.getById(user.getFdkkUserId());
  51. param.setDeptId(fdkkUser.getDeptId());
  52. }else {
  53. param.setDeptId(user.getDeptId());
  54. }
  55. List<Integer> deptIds = deptService.getDeptIdsSonList(param.getDeptId());
  56. wrapper.in(Shop::getDeptId,deptIds);
  57. wrapper.orderByAsc(Shop::getSort);
  58. wrapper.orderByAsc(Shop::getShopName);
  59. Page<Shop> page = this.page(new Page<>(param.getPageNum(), param.getPageSize()), wrapper);
  60. Page<ShopVo> pageVo = new Page<>(param.getPageNum(),param.getPageSize());
  61. List<ShopVo> listVo = new ArrayList<>();
  62. for (Shop shop : page.getRecords()) {
  63. ShopVo shopVo = new ShopVo();
  64. BeanUtils.copyProperties(shop,shopVo);
  65. Dept dept = deptService.getById(shop.getDeptId());
  66. if(dept !=null){
  67. shopVo.setDeptName(dept.getDeptName());
  68. }
  69. ShopCategory category = categoryService.getById(shop.getCategoryId());
  70. if(category !=null){
  71. shopVo.setCategoryName(category.getCategoryName());
  72. }
  73. listVo.add(shopVo);
  74. }
  75. pageVo.setRecords(listVo);
  76. pageVo.setTotal(page.getTotal());
  77. return PageInfo.PageInfo(pageVo);
  78. }
  79. @Override
  80. public List<Shop> getByCategory(Integer categoryId) {
  81. LambdaQueryWrapper<Shop> wrapper = new LambdaQueryWrapper<>();
  82. wrapper.eq(Shop::getCategoryId,categoryId);
  83. return this.list(wrapper);
  84. }
  85. }