Commit 79600774ecc8f3111361e92c420140f7ffa18dea
1 parent
6c536caa
crm-客户:分页查询 mapper 还是得拆成两个,怎么查逻辑交给 service 去做处理
Showing
4 changed files
with
45 additions
and
41 deletions
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/convert/permission/CrmPermissionConvert.java
| @@ -23,7 +23,7 @@ import static cn.iocoder.yudao.framework.common.util.collection.MapUtils.findAnd | @@ -23,7 +23,7 @@ import static cn.iocoder.yudao.framework.common.util.collection.MapUtils.findAnd | ||
| 23 | /** | 23 | /** |
| 24 | * Crm 数据权限 Convert | 24 | * Crm 数据权限 Convert |
| 25 | * | 25 | * |
| 26 | - * @author Wanwan | 26 | + * @author HUIHUI |
| 27 | */ | 27 | */ |
| 28 | @Mapper | 28 | @Mapper |
| 29 | public interface CrmPermissionConvert { | 29 | public interface CrmPermissionConvert { |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/customer/CrmCustomerMapper.java
| @@ -25,47 +25,25 @@ import java.util.List; | @@ -25,47 +25,25 @@ import java.util.List; | ||
| 25 | @Mapper | 25 | @Mapper |
| 26 | public interface CrmCustomerMapper extends BaseMapperX<CrmCustomerDO> { | 26 | public interface CrmCustomerMapper extends BaseMapperX<CrmCustomerDO> { |
| 27 | 27 | ||
| 28 | - static void appendQueryParams(MPJLambdaWrapperX<CrmCustomerDO> mpjLambdaWrapperX, CrmCustomerPageReqVO pageReqVO, Long userId) { | ||
| 29 | - if (pageReqVO.getPool()) { // 情况一:公海 | ||
| 30 | - mpjLambdaWrapperX.isNull(CrmCustomerDO::getOwnerUserId); | ||
| 31 | - } else { // 情况二:不是公海 | ||
| 32 | - mpjLambdaWrapperX.isNotNull(CrmCustomerDO::getOwnerUserId); | ||
| 33 | - } | ||
| 34 | - // TODO 场景数据过滤 | ||
| 35 | - if (CrmSceneEnum.isOwner(pageReqVO.getSceneType())) { // 场景一:我负责的数据 | ||
| 36 | - mpjLambdaWrapperX.eq(CrmCustomerDO::getOwnerUserId, userId); | ||
| 37 | - } | ||
| 38 | - } | ||
| 39 | - | ||
| 40 | - static void appendQueryParams(LambdaQueryWrapperX<CrmCustomerDO> lambdaQueryWrapperX, CrmCustomerPageReqVO pageReqVO, Long userId) { | ||
| 41 | - if (pageReqVO.getPool()) { // 情况一:公海 | ||
| 42 | - lambdaQueryWrapperX.isNull(CrmCustomerDO::getOwnerUserId); | ||
| 43 | - } else { // 情况二:不是公海 | ||
| 44 | - lambdaQueryWrapperX.isNotNull(CrmCustomerDO::getOwnerUserId); | ||
| 45 | - } | ||
| 46 | - // TODO 场景数据过滤 | ||
| 47 | - if (CrmSceneEnum.isOwner(pageReqVO.getSceneType())) { // 场景一:我负责的数据 | ||
| 48 | - lambdaQueryWrapperX.eq(CrmCustomerDO::getOwnerUserId, userId); | ||
| 49 | - } | ||
| 50 | - } | ||
| 51 | - | ||
| 52 | default int updateOwnerUserIdById(Long id, Long ownerUserId) { | 28 | default int updateOwnerUserIdById(Long id, Long ownerUserId) { |
| 53 | return update(new LambdaUpdateWrapper<CrmCustomerDO>() | 29 | return update(new LambdaUpdateWrapper<CrmCustomerDO>() |
| 54 | .eq(CrmCustomerDO::getId, id) | 30 | .eq(CrmCustomerDO::getId, id) |
| 55 | .set(CrmCustomerDO::getOwnerUserId, ownerUserId)); | 31 | .set(CrmCustomerDO::getOwnerUserId, ownerUserId)); |
| 56 | } | 32 | } |
| 57 | 33 | ||
| 58 | - default PageResult<CrmCustomerDO> selectPage(CrmCustomerPageReqVO pageReqVO, Long userId, Boolean admin) { | ||
| 59 | - if (admin) { // 情况一:管理员查看 | ||
| 60 | - LambdaQueryWrapperX<CrmCustomerDO> queryWrapperX = new LambdaQueryWrapperX<>(); | ||
| 61 | - appendQueryParams(queryWrapperX, pageReqVO, userId); | ||
| 62 | - return selectPage(pageReqVO, queryWrapperX | ||
| 63 | - .likeIfPresent(CrmCustomerDO::getName, pageReqVO.getName()) | ||
| 64 | - .eqIfPresent(CrmCustomerDO::getMobile, pageReqVO.getMobile()) | ||
| 65 | - .eqIfPresent(CrmCustomerDO::getIndustryId, pageReqVO.getIndustryId()) | ||
| 66 | - .eqIfPresent(CrmCustomerDO::getLevel, pageReqVO.getLevel()) | ||
| 67 | - .eqIfPresent(CrmCustomerDO::getSource, pageReqVO.getSource())); | ||
| 68 | - } | 34 | + default PageResult<CrmCustomerDO> selectPageWithAdmin(CrmCustomerPageReqVO pageReqVO, Long userId) { |
| 35 | + // 情况一:管理员查看 | ||
| 36 | + LambdaQueryWrapperX<CrmCustomerDO> queryWrapperX = new LambdaQueryWrapperX<>(); | ||
| 37 | + appendQueryParams(queryWrapperX, pageReqVO, userId); | ||
| 38 | + return selectPage(pageReqVO, queryWrapperX | ||
| 39 | + .likeIfPresent(CrmCustomerDO::getName, pageReqVO.getName()) | ||
| 40 | + .eqIfPresent(CrmCustomerDO::getMobile, pageReqVO.getMobile()) | ||
| 41 | + .eqIfPresent(CrmCustomerDO::getIndustryId, pageReqVO.getIndustryId()) | ||
| 42 | + .eqIfPresent(CrmCustomerDO::getLevel, pageReqVO.getLevel()) | ||
| 43 | + .eqIfPresent(CrmCustomerDO::getSource, pageReqVO.getSource())); | ||
| 44 | + } | ||
| 45 | + | ||
| 46 | + default PageResult<CrmCustomerDO> selectPage(CrmCustomerPageReqVO pageReqVO, Long userId) { | ||
| 69 | // 情况二:获取当前用户能看的分页数据 | 47 | // 情况二:获取当前用户能看的分页数据 |
| 70 | IPage<CrmCustomerDO> mpPage = MyBatisUtils.buildPage(pageReqVO); | 48 | IPage<CrmCustomerDO> mpPage = MyBatisUtils.buildPage(pageReqVO); |
| 71 | MPJLambdaWrapperX<CrmCustomerDO> mpjLambdaWrapperX = new MPJLambdaWrapperX<>(); | 49 | MPJLambdaWrapperX<CrmCustomerDO> mpjLambdaWrapperX = new MPJLambdaWrapperX<>(); |
| @@ -91,4 +69,28 @@ public interface CrmCustomerMapper extends BaseMapperX<CrmCustomerDO> { | @@ -91,4 +69,28 @@ public interface CrmCustomerMapper extends BaseMapperX<CrmCustomerDO> { | ||
| 91 | return new PageResult<>(mpPage.getRecords(), mpPage.getTotal()); | 69 | return new PageResult<>(mpPage.getRecords(), mpPage.getTotal()); |
| 92 | } | 70 | } |
| 93 | 71 | ||
| 72 | + static void appendQueryParams(MPJLambdaWrapperX<CrmCustomerDO> mpjLambdaWrapperX, CrmCustomerPageReqVO pageReqVO, Long userId) { | ||
| 73 | + if (pageReqVO.getPool()) { // 情况一:公海 | ||
| 74 | + mpjLambdaWrapperX.isNull(CrmCustomerDO::getOwnerUserId); | ||
| 75 | + } else { // 情况二:不是公海 | ||
| 76 | + mpjLambdaWrapperX.isNotNull(CrmCustomerDO::getOwnerUserId); | ||
| 77 | + } | ||
| 78 | + // TODO 场景数据过滤 | ||
| 79 | + if (CrmSceneEnum.isOwner(pageReqVO.getSceneType())) { // 场景一:我负责的数据 | ||
| 80 | + mpjLambdaWrapperX.eq(CrmCustomerDO::getOwnerUserId, userId); | ||
| 81 | + } | ||
| 82 | + } | ||
| 83 | + | ||
| 84 | + static void appendQueryParams(LambdaQueryWrapperX<CrmCustomerDO> lambdaQueryWrapperX, CrmCustomerPageReqVO pageReqVO, Long userId) { | ||
| 85 | + if (pageReqVO.getPool()) { // 情况一:公海 | ||
| 86 | + lambdaQueryWrapperX.isNull(CrmCustomerDO::getOwnerUserId); | ||
| 87 | + } else { // 情况二:不是公海 | ||
| 88 | + lambdaQueryWrapperX.isNotNull(CrmCustomerDO::getOwnerUserId); | ||
| 89 | + } | ||
| 90 | + // TODO 场景数据过滤 | ||
| 91 | + if (CrmSceneEnum.isOwner(pageReqVO.getSceneType())) { // 场景一:我负责的数据 | ||
| 92 | + lambdaQueryWrapperX.eq(CrmCustomerDO::getOwnerUserId, userId); | ||
| 93 | + } | ||
| 94 | + } | ||
| 95 | + | ||
| 94 | } | 96 | } |
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/customer/CrmCustomerServiceImpl.java
| @@ -100,9 +100,12 @@ public class CrmCustomerServiceImpl implements CrmCustomerService { | @@ -100,9 +100,12 @@ public class CrmCustomerServiceImpl implements CrmCustomerService { | ||
| 100 | 100 | ||
| 101 | @Override | 101 | @Override |
| 102 | public PageResult<CrmCustomerDO> getCustomerPage(CrmCustomerPageReqVO pageReqVO, Long userId) { | 102 | public PageResult<CrmCustomerDO> getCustomerPage(CrmCustomerPageReqVO pageReqVO, Long userId) { |
| 103 | - // 1.1. TODO 如果是超级管理员 | ||
| 104 | boolean admin = false; | 103 | boolean admin = false; |
| 105 | - return customerMapper.selectPage(pageReqVO, userId, admin); | 104 | + if (admin) { // 1.1. 情况一: TODO 如果是管理员 |
| 105 | + customerMapper.selectPageWithAdmin(pageReqVO, userId); | ||
| 106 | + } | ||
| 107 | + // 1.2. 情况二:获取当前用户能看的分页数据 | ||
| 108 | + return customerMapper.selectPage(pageReqVO, userId); | ||
| 106 | } | 109 | } |
| 107 | 110 | ||
| 108 | /** | 111 | /** |
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/controller/admin/banner/vo/BannerPageReqVO.java
| @@ -19,11 +19,10 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ | @@ -19,11 +19,10 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ | ||
| 19 | @ToString(callSuper = true) | 19 | @ToString(callSuper = true) |
| 20 | public class BannerPageReqVO extends PageParam { | 20 | public class BannerPageReqVO extends PageParam { |
| 21 | 21 | ||
| 22 | - // TODO @puhui999:example | ||
| 23 | - @Schema(description = "标题") | 22 | + @Schema(description = "标题", example = "这是一个标题") |
| 24 | private String title; | 23 | private String title; |
| 25 | 24 | ||
| 26 | - @Schema(description = "状态") | 25 | + @Schema(description = "状态", example = "1") |
| 27 | @InEnum(CommonStatusEnum.class) | 26 | @InEnum(CommonStatusEnum.class) |
| 28 | private Integer status; | 27 | private Integer status; |
| 29 | 28 |