fix(search): 修复多处搜索条件未生效的问题
- CRM 客户:补 customerType(客户分类)、creditLevel(信用等级)查询条件
- MES 销售退货:补 saleOrderId(销售订单)查询条件,权限过滤分支同步
- BI 图表配置:分页接口新增 name(图表名称)模糊查询
- BI 数据源配置:分页接口新增 name(名称)、type(类型)查询条件
- 用户分页:新增 keyword 参数,支持账号或昵称任一模糊匹配
Co-Authored-By: Claude <noreply@anthropic.com>
| | |
| | | @PreAuthorize("@ss.hasPermission('bi:chart-config:query')") |
| | | public CommonResult<PageResult<BiChartConfigDO>> getPage( |
| | | @RequestParam(value = "dashboardId", required = false) Long dashboardId, |
| | | @RequestParam(value = "name", required = false) String name, |
| | | @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, |
| | | @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) { |
| | | return success(chartConfigService.getPage(dashboardId, pageNo, pageSize)); |
| | | return success(chartConfigService.getPage(dashboardId, name, pageNo, pageSize)); |
| | | } |
| | | |
| | | @GetMapping("/get-import-template") |
| | |
| | | @Operation(summary = "分页查询数据源配置") |
| | | @PreAuthorize("@ss.hasPermission('bi:data-source-config:query')") |
| | | public CommonResult<PageResult<BiDataSourceConfigDO>> getPage( |
| | | @RequestParam(value = "name", required = false) String name, |
| | | @RequestParam(value = "type", required = false) String type, |
| | | @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, |
| | | @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) { |
| | | return success(dataSourceConfigService.getPage(pageNo, pageSize)); |
| | | return success(dataSourceConfigService.getPage(name, type, pageNo, pageSize)); |
| | | } |
| | | |
| | | @GetMapping("/get-import-template") |
| | |
| | | /** |
| | | * 分页查询图表配置 |
| | | */ |
| | | PageResult<BiChartConfigDO> getPage(Long dashboardId, Integer pageNo, Integer pageSize); |
| | | PageResult<BiChartConfigDO> getPage(Long dashboardId, String name, Integer pageNo, Integer pageSize); |
| | | |
| | | /** |
| | | * 批量导入图表配置 |
| | |
| | | } |
| | | |
| | | @Override |
| | | public PageResult<BiChartConfigDO> getPage(Long dashboardId, Integer pageNo, Integer pageSize) { |
| | | public PageResult<BiChartConfigDO> getPage(Long dashboardId, String name, Integer pageNo, Integer pageSize) { |
| | | IPage<BiChartConfigDO> page = mapper.selectPage(new Page<>(pageNo, pageSize), |
| | | new LambdaQueryWrapperX<BiChartConfigDO>() |
| | | .eqIfPresent(BiChartConfigDO::getDashboardId, dashboardId) |
| | | .likeIfPresent(BiChartConfigDO::getName, name) |
| | | .orderByAsc(BiChartConfigDO::getSort)); |
| | | return new PageResult<>(page.getRecords(), page.getTotal()); |
| | | } |
| | |
| | | /** |
| | | * 分页查询数据源配置 |
| | | */ |
| | | PageResult<BiDataSourceConfigDO> getPage(Integer pageNo, Integer pageSize); |
| | | PageResult<BiDataSourceConfigDO> getPage(String name, String type, Integer pageNo, Integer pageSize); |
| | | |
| | | /** |
| | | * 批量导入数据源配置 |
| | |
| | | } |
| | | |
| | | @Override |
| | | public PageResult<BiDataSourceConfigDO> getPage(Integer pageNo, Integer pageSize) { |
| | | public PageResult<BiDataSourceConfigDO> getPage(String name, String type, Integer pageNo, Integer pageSize) { |
| | | IPage<BiDataSourceConfigDO> page = mapper.selectPage(new Page<>(pageNo, pageSize), |
| | | new LambdaQueryWrapperX<BiDataSourceConfigDO>() |
| | | .likeIfPresent(BiDataSourceConfigDO::getName, name) |
| | | .eqIfPresent(BiDataSourceConfigDO::getType, type) |
| | | .orderByDesc(BiDataSourceConfigDO::getCreateTime)); |
| | | return new PageResult<>(page.getRecords(), page.getTotal()); |
| | | } |
| | |
| | | .eqIfPresent(CrmCustomerDO::getMobile, pageReqVO.getMobile()) |
| | | .eqIfPresent(CrmCustomerDO::getIndustryId, pageReqVO.getIndustryId()) |
| | | .eqIfPresent(CrmCustomerDO::getLevel, pageReqVO.getLevel()) |
| | | .eqIfPresent(CrmCustomerDO::getCustomerType, pageReqVO.getCustomerType()) |
| | | .eqIfPresent(CrmCustomerDO::getCreditLevel, pageReqVO.getCreditLevel()) |
| | | .eqIfPresent(CrmCustomerDO::getSource, pageReqVO.getSource()) |
| | | .eqIfPresent(CrmCustomerDO::getFollowUpStatus, pageReqVO.getFollowUpStatus()); |
| | | |
| | |
| | | .likeIfPresent(MesWmReturnSalesDO::getCode, reqVO.getCode()) |
| | | .likeIfPresent(MesWmReturnSalesDO::getName, reqVO.getName()) |
| | | .likeIfPresent(MesWmReturnSalesDO::getSalesOrderCode, reqVO.getSalesOrderCode()) |
| | | .eqIfPresent(MesWmReturnSalesDO::getSaleOrderId, reqVO.getSaleOrderId()) |
| | | .eqIfPresent(MesWmReturnSalesDO::getClientId, reqVO.getClientId()) |
| | | .eqIfPresent(MesWmReturnSalesDO::getStatus, reqVO.getStatus()) |
| | | .betweenIfPresent(MesWmReturnSalesDO::getReturnDate, reqVO.getReturnDate()) |
| | |
| | | .likeIfPresent(MesWmReturnSalesDO::getCode, reqVO.getCode()) |
| | | .likeIfPresent(MesWmReturnSalesDO::getName, reqVO.getName()) |
| | | .likeIfPresent(MesWmReturnSalesDO::getSalesOrderCode, reqVO.getSalesOrderCode()) |
| | | .eqIfPresent(MesWmReturnSalesDO::getSaleOrderId, reqVO.getSaleOrderId()) |
| | | .eqIfPresent(MesWmReturnSalesDO::getClientId, reqVO.getClientId()) |
| | | .eqIfPresent(MesWmReturnSalesDO::getStatus, reqVO.getStatus()) |
| | | .betweenIfPresent(MesWmReturnSalesDO::getReturnDate, reqVO.getReturnDate()) |
| | |
| | | @Schema(description = "用户昵称,模糊匹配", example = "管理员") |
| | | private String nickname; |
| | | |
| | | @Schema(description = "用户名称/昵称,模糊匹配(账号或昵称任一匹配)", example = "管理员") |
| | | private String keyword; |
| | | |
| | | @Schema(description = "手机号码,模糊匹配", example = "yudao") |
| | | private String mobile; |
| | | |
| | |
| | | package cn.iocoder.yudao.module.system.dal.mysql.user; |
| | | |
| | | import cn.hutool.core.util.StrUtil; |
| | | |
| | | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| | | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
| | | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; |
| | |
| | | .betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime()) |
| | | .inIfPresent(AdminUserDO::getDeptId, deptIds) |
| | | .inIfPresent(AdminUserDO::getId, userIds) |
| | | // keyword:账号或昵称任一匹配。注意放在链尾:and() 返回基础 Wrapper,会丢失 likeIfPresent 等扩展方法 |
| | | .and(StrUtil.isNotBlank(reqVO.getKeyword()), wrapper -> wrapper |
| | | .like(AdminUserDO::getUsername, reqVO.getKeyword()) |
| | | .or() |
| | | .like(AdminUserDO::getNickname, reqVO.getKeyword())) |
| | | .orderByDesc(AdminUserDO::getId)); |
| | | } |
| | | |