diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/device/DeviceMapper.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/device/DeviceMapper.java index fb3ba58bb4..0df266153a 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/device/DeviceMapper.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/device/DeviceMapper.java @@ -22,20 +22,29 @@ import org.apache.ibatis.annotations.Select; public interface DeviceMapper extends BaseMapperX { default PageResult selectPage(DevicePageReqVO reqVO) { - return selectPage(reqVO, new LambdaQueryWrapperX() - .likeIfPresent(DeviceDO::getDevicename, reqVO.getDevicename()) - .eqIfPresent(DeviceDO::getDevicecode, reqVO.getDevicecode()) - .eqIfPresent(DeviceDO::getDevicetype, reqVO.getDevicetype()) - .eqIfPresent(DeviceDO::getLocation, reqVO.getLocation()) - .eqIfPresent(DeviceDO::getDevicestatus, reqVO.getDevicestatus()) - .eqIfPresent(DeviceDO::getOrgid, reqVO.getOrgid()) - .likeIfPresent(DeviceDO::getOrgname, reqVO.getOrgname()) - .eqIfPresent(DeviceDO::getDescription, reqVO.getDescription()) - .betweenIfPresent(DeviceDO::getCreatetime, reqVO.getCreatetime()) - .betweenIfPresent(DeviceDO::getUpdatetime, reqVO.getUpdatetime()) - .eqIfPresent(DeviceDO::getCreateby, reqVO.getCreateby()) - .eqIfPresent(DeviceDO::getUpdateby, reqVO.getUpdateby()) - .orderByDesc(DeviceDO::getId)); + LambdaQueryWrapperX wrapper = new LambdaQueryWrapperX<>(); + + wrapper.likeIfPresent(DeviceDO::getDevicename, reqVO.getDevicename()); + wrapper.eqIfPresent(DeviceDO::getDevicecode, reqVO.getDevicecode()); + wrapper.eqIfPresent(DeviceDO::getDevicetype, reqVO.getDevicetype()); + wrapper.eqIfPresent(DeviceDO::getLocation, reqVO.getLocation()); + wrapper.eqIfPresent(DeviceDO::getDevicestatus, reqVO.getDevicestatus()); + + // 手动处理 orgid:只有非 null 且不等于 0 时才添加 + Integer orgid = reqVO.getOrgid(); + if (orgid != null && orgid != 0) { + wrapper.eq(DeviceDO::getOrgid, orgid); + } + + wrapper.likeIfPresent(DeviceDO::getOrgname, reqVO.getOrgname()); + wrapper.eqIfPresent(DeviceDO::getDescription, reqVO.getDescription()); + wrapper.betweenIfPresent(DeviceDO::getCreatetime, reqVO.getCreatetime()); + wrapper.betweenIfPresent(DeviceDO::getUpdatetime, reqVO.getUpdatetime()); + wrapper.eqIfPresent(DeviceDO::getCreateby, reqVO.getCreateby()); + wrapper.eqIfPresent(DeviceDO::getUpdateby, reqVO.getUpdateby()); + wrapper.orderByDesc(DeviceDO::getId); + + return selectPage(reqVO, wrapper); } default PageResult selectNotBindPage(DevicePageReqVO reqVO) { diff --git a/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/person/PersonMapper.xml b/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/person/PersonMapper.xml index 8795c30850..2386d64e6b 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/person/PersonMapper.xml +++ b/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/person/PersonMapper.xml @@ -35,15 +35,16 @@ DATE(vipstarttime) AS vip_date, COUNT(*) AS count FROM tb_user - WHERE isvip = 1 + isvip = 1 AND orgid = #{orgid} + AND vipstarttime >= DATE_SUB(CURDATE(), INTERVAL 6 DAY) + AND vipstarttime < DATE_ADD(CURDATE(), INTERVAL 1 DAY) - AND vipstarttime >= DATE_SUB(CURDATE(), INTERVAL 6 DAY) - AND vipstarttime < DATE_ADD(CURDATE(), INTERVAL 1 DAY) + GROUP BY DATE(vipstarttime) ) SELECT