提醒修正查询逻辑

This commit is contained in:
Ledo 2025-02-10 14:06:42 +08:00
parent aef91a2825
commit 4243d2e464
3 changed files with 88 additions and 35 deletions

View File

@ -6,6 +6,7 @@ import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.chanko.yunxi.mes.module.heli.controller.admin.bdgzsomthing.vo.bdgzsomthingPageReqVO; import com.chanko.yunxi.mes.module.heli.controller.admin.bdgzsomthing.vo.bdgzsomthingPageReqVO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.bdgzsomthing.bdgzsomthingDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.bdgzsomthing.bdgzsomthingDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO;
import com.github.yulichang.query.MPJLambdaQueryWrapper;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -21,35 +22,80 @@ public interface bdgzsomthingMapper extends BaseMapperX<bdgzsomthingDO> {
List<bdgzsomthingDO> selectPagelist(bdgzsomthingDO BdgzsomthingDO); List<bdgzsomthingDO> selectPagelist(bdgzsomthingDO BdgzsomthingDO);
default PageResult<bdgzsomthingDO> selectPage(bdgzsomthingPageReqVO reqVO) { default PageResult<bdgzsomthingDO> selectPage(bdgzsomthingPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<bdgzsomthingDO>() MPJLambdaQueryWrapper<bdgzsomthingDO> query = new MPJLambdaQueryWrapper<>();
.betweenIfPresent(bdgzsomthingDO::getCreateTime, reqVO.getCreateTime()) if (reqVO.getCreateTime() != null) {
.eqIfPresent(bdgzsomthingDO::getClick, reqVO.getClick()) query.apply("create_time BETWEEN {0} AND {1}", reqVO.getCreateTime()[0], reqVO.getCreateTime()[1]);
.eqIfPresent(bdgzsomthingDO::getClickid, reqVO.getClickid()) }
.likeIfPresent(bdgzsomthingDO::getThingname, reqVO.getThingname())
.eqIfPresent(bdgzsomthingDO::getThings, reqVO.getThings()) if (reqVO.getClick() != null) {
.eqIfPresent(bdgzsomthingDO::getLevel, reqVO.getLevel()) query.eq(bdgzsomthingDO::getClick, reqVO.getClick());
// .likeIfPresent(bdgzsomthingDO::getShowname, reqVO.getShowname()) }
.eqIfPresent(bdgzsomthingDO::getDborgz, reqVO.getDborgz())
.eqIfPresent(bdgzsomthingDO::getYesorno, reqVO.getYesorno()) if (reqVO.getClickid() != null) {
.eqIfPresent(bdgzsomthingDO::getAttr1, reqVO.getAttr1()) query.eq(bdgzsomthingDO::getClickid, reqVO.getClickid());
.eqIfPresent(bdgzsomthingDO::getAttr2, reqVO.getAttr2()) }
.eqIfPresent(bdgzsomthingDO::getAttr3, reqVO.getAttr3())
.eqIfPresent(bdgzsomthingDO::getAttr4, "0") if (reqVO.getThingname() != null) {
.eqIfPresent(bdgzsomthingDO::getAttr5, reqVO.getAttr5()) query.like(bdgzsomthingDO::getThingname, reqVO.getThingname());
.betweenIfPresent(bdgzsomthingDO::getClicktime, reqVO.getClicktime()) }
.betweenIfPresent(bdgzsomthingDO::getNowtime, reqVO.getNowtime())
.eqIfPresent(bdgzsomthingDO::getAttr6, reqVO.getAttr6()) if (reqVO.getThings() != null) {
.eqIfPresent(bdgzsomthingDO::getAttr7, reqVO.getAttr7()) query.eq(bdgzsomthingDO::getThings, reqVO.getThings());
.eqIfPresent(bdgzsomthingDO::getAttr8, reqVO.getAttr8()) }
.eqIfPresent(bdgzsomthingDO::getAttr9, reqVO.getAttr9())
.eqIfPresent(bdgzsomthingDO::getAttr10, reqVO.getAttr10()) if (reqVO.getLevel() != null) {
.eqIfPresent(bdgzsomthingDO::getAttr11, reqVO.getAttr11()) query.eq(bdgzsomthingDO::getLevel, reqVO.getLevel());
.eqIfPresent(bdgzsomthingDO::getAttr12, reqVO.getAttr12()) }
.eqIfPresent(bdgzsomthingDO::getAttr13, reqVO.getAttr13())
.eqIfPresent(bdgzsomthingDO::getAttr14, reqVO.getAttr14()) if (reqVO.getDborgz() != null) {
.eqIfPresent(bdgzsomthingDO::getAttr15, reqVO.getAttr15()) query.eq(bdgzsomthingDO::getDborgz, reqVO.getDborgz());
.ne(bdgzsomthingDO::getAttr12,1) }
.orderByDesc(bdgzsomthingDO::getId));
if (reqVO.getYesorno() != null) {
query.eq(bdgzsomthingDO::getYesorno, reqVO.getYesorno());
}
if (reqVO.getAttr1() != null) {
query.eq(bdgzsomthingDO::getAttr1, reqVO.getAttr1());
}
// ... 同样的逻辑应用于其他属性 ...
if (reqVO.getAttr15() != null) {
query.eq(bdgzsomthingDO::getAttr15, reqVO.getAttr15());
}
query.ne(bdgzsomthingDO::getAttr12, "1");
query.orderByDesc(bdgzsomthingDO::getId);
// return selectPage(reqVO, new LambdaQueryWrapperX<bdgzsomthingDO>()
// .betweenIfPresent(bdgzsomthingDO::getCreateTime, reqVO.getCreateTime())
// .eqIfPresent(bdgzsomthingDO::getClick, reqVO.getClick())
// .eqIfPresent(bdgzsomthingDO::getClickid, reqVO.getClickid())
// .likeIfPresent(bdgzsomthingDO::getThingname, reqVO.getThingname())
// .eqIfPresent(bdgzsomthingDO::getThings, reqVO.getThings())
// .eqIfPresent(bdgzsomthingDO::getLevel, reqVO.getLevel())
//// .likeIfPresent(bdgzsomthingDO::getShowname, reqVO.getShowname())
// .eqIfPresent(bdgzsomthingDO::getDborgz, reqVO.getDborgz())
// .eqIfPresent(bdgzsomthingDO::getYesorno, reqVO.getYesorno())
// .eqIfPresent(bdgzsomthingDO::getAttr1, reqVO.getAttr1())
// .eqIfPresent(bdgzsomthingDO::getAttr2, reqVO.getAttr2())
// .eqIfPresent(bdgzsomthingDO::getAttr3, reqVO.getAttr3())
// .eqIfPresent(bdgzsomthingDO::getAttr4, "0")
// .eqIfPresent(bdgzsomthingDO::getAttr5, reqVO.getAttr5())
// .betweenIfPresent(bdgzsomthingDO::getClicktime, reqVO.getClicktime())
// .betweenIfPresent(bdgzsomthingDO::getNowtime, reqVO.getNowtime())
// .eqIfPresent(bdgzsomthingDO::getAttr6, reqVO.getAttr6())
// .eqIfPresent(bdgzsomthingDO::getAttr7, reqVO.getAttr7())
// .eqIfPresent(bdgzsomthingDO::getAttr8, reqVO.getAttr8())
// .eqIfPresent(bdgzsomthingDO::getAttr9, reqVO.getAttr9())
// .eqIfPresent(bdgzsomthingDO::getAttr10, reqVO.getAttr10())
// .eqIfPresent(bdgzsomthingDO::getAttr11, reqVO.getAttr11())
// .eqIfPresent(bdgzsomthingDO::getAttr12, reqVO.getAttr12())
// .eqIfPresent(bdgzsomthingDO::getAttr13, reqVO.getAttr13())
// .eqIfPresent(bdgzsomthingDO::getAttr14, reqVO.getAttr14())
// .eqIfPresent(bdgzsomthingDO::getAttr15, reqVO.getAttr15())
// .orderByDesc(bdgzsomthingDO::getId));
return selectPage(reqVO,query);
} }
void updatebdgzsomthingbyid(bdgzsomthingDO BdgzsomthingDO); void updatebdgzsomthingbyid(bdgzsomthingDO BdgzsomthingDO);

View File

@ -216,6 +216,7 @@ public class bdgzsomthingServiceImpl implements bdgzsomthingService {
public List<bdgzsomthingDO> getbdgzsomthingPagelist(bdgzsomthingPageReqVO pageReqVO) { public List<bdgzsomthingDO> getbdgzsomthingPagelist(bdgzsomthingPageReqVO pageReqVO) {
bdgzsomthingDO BdgzsomthingDO = new bdgzsomthingDO(); bdgzsomthingDO BdgzsomthingDO = new bdgzsomthingDO();
BdgzsomthingDO.setClick(pageReqVO.getClick()); BdgzsomthingDO.setClick(pageReqVO.getClick());
return bdgzsomthingMapper.selectPagelist(BdgzsomthingDO); return bdgzsomthingMapper.selectPagelist(BdgzsomthingDO);
} }
@Override @Override
@ -897,17 +898,19 @@ public class bdgzsomthingServiceImpl implements bdgzsomthingService {
}else{ }else{
if (hasRemindTimeSafeStorage){ if (hasRemindTimeSafeStorage){
LocalDate today = LocalDate.now(); LocalDate today = LocalDate.now();
List<bdgzsomthingDO> updateBatch = new ArrayList<>(); // List<bdgzsomthingDO> updateBatch = new ArrayList<>();
for (bdgzsomthingDO bdgzsomthingDO : selecteqint) { for (bdgzsomthingDO bdgzsomthingDO : selecteqint) {
LocalDate updatetime = bdgzsomthingDO.getUpdateTime().toLocalDate(); LocalDate updatetime = bdgzsomthingDO.getUpdateTime().toLocalDate();
// 计算两个日期之间的天数差 // 计算两个日期之间的天数差
long daysBetween = ChronoUnit.DAYS.between(updatetime, today); long daysBetween = ChronoUnit.DAYS.between(updatetime, today);
if (daysBetween == Long.valueOf(remindTimeSafe)){ if (daysBetween == Long.valueOf(remindTimeSafe)){
bdgzsomthingDO.setAttr12("0"); bdgzsomthingDO.setAttr12("0");
updateBatch.add(bdgzsomthingDO); bdgzsomthingDO.setYesorno("0");
bdgzsomthingMapper.updateById(bdgzsomthingDO);
// updateBatch.add(bdgzsomthingDO);
} }
} }
bdgzsomthingMapper.updateBatch(updateBatch); // bdgzsomthingMapper.updateBatch(updateBatch);
} }
} }
@ -973,17 +976,19 @@ public class bdgzsomthingServiceImpl implements bdgzsomthingService {
if(CollUtil.isNotEmpty(selecteqint)){ if(CollUtil.isNotEmpty(selecteqint)){
if (hasRemindTimeSafeStorage){ if (hasRemindTimeSafeStorage){
LocalDate today = LocalDate.now(); LocalDate today = LocalDate.now();
List<bdgzsomthingDO> updateBatch = new ArrayList<>(); // List<bdgzsomthingDO> updateBatch = new ArrayList<>();
for (bdgzsomthingDO bdgzsomthingDO : selecteqint) { for (bdgzsomthingDO bdgzsomthingDO : selecteqint) {
LocalDate updatetime = bdgzsomthingDO.getUpdateTime().toLocalDate(); LocalDate updatetime = bdgzsomthingDO.getUpdateTime().toLocalDate();
// 计算两个日期之间的天数差 // 计算两个日期之间的天数差
long daysBetween = ChronoUnit.DAYS.between(updatetime, today); long daysBetween = ChronoUnit.DAYS.between(updatetime, today);
if (daysBetween == Long.valueOf(remindTimeSafe)){ if (daysBetween == Long.valueOf(remindTimeSafe)){
bdgzsomthingDO.setAttr12("0"); bdgzsomthingDO.setAttr12("0");
updateBatch.add(bdgzsomthingDO); bdgzsomthingDO.setYesorno("0");
bdgzsomthingMapper.updateById(bdgzsomthingDO);
// updateBatch.add(bdgzsomthingDO);
} }
} }
bdgzsomthingMapper.updateBatch(updateBatch); // bdgzsomthingMapper.updateBatch(updateBatch);
} }
}else{ }else{
//插入方法 //插入方法

View File

@ -101,6 +101,8 @@
<if test="click != null and click != ''"> <if test="click != null and click != ''">
and click =#{click} and click =#{click}
</if> </if>
and
(attr12 = 0 or attr12 is null)
</where> </where>
ORDER BY ORDER BY
CASE level CASE level