package com.lunhan.xxx.repository.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.lunhan.xxx.common.PagerResult; import com.lunhan.xxx.common.enums.EYesOrNo; import com.lunhan.xxx.common.util.ListUtil; import com.lunhan.xxx.common.util.NumericUtil; import com.lunhan.xxx.entity.dto.OrderByDTO; import com.lunhan.xxx.entity.dto.SearchBasicDTO; import com.lunhan.xxx.entity.enums.EOrderBy; import com.lunhan.xxx.entity.search.SearchQuartzTaskError; import com.lunhan.xxx.repository.BasicMapperImpl; import com.lunhan.xxx.repository.mapper.QuartzTaskErrorMapper; import com.lunhan.xxx.repository.po.QuartzTaskErrorPO; import org.springframework.stereotype.Repository; /** * 定时任务错误信息表 * @author lin.liu * @description 定时任务错误信息表 */ @Repository public class QuartzTaskErrorMapperImpl extends BasicMapperImpl { public QuartzTaskErrorMapperImpl(QuartzTaskErrorMapper mapper) { super(mapper); } /** * 分页查询 * * @param request 请求参数 */ @Override public PagerResult search(SearchBasicDTO request) { // 查询条件类型还原 SearchQuartzTaskError search = (SearchQuartzTaskError)request; LambdaQueryWrapper queryWrapper = this.query(); // 状态非逻辑删除 queryWrapper.eq(QuartzTaskErrorPO::getIsDelete, EYesOrNo.NO.getValue()); // 状态 //queryWrapper.eq(NumericUtil.tryParseInt(search.getStatus()).compareTo(0) > 0, QuartzTaskErrorPO::getState, search.getStatus()); // 状态列表 //queryWrapper.in(ListUtil.isNotNullOrEmpty(search.getListStatus()), QuartzTaskErrorPO::getState, search.getListStatus()); // 数据创建时间-起始 queryWrapper.ge(NumericUtil.tryParseLong(search.getCreateTimeStart()).compareTo(0L) > 0, QuartzTaskErrorPO::getCreateTime, search.getCreateTimeStart()); // 数据创建时间-截止 queryWrapper.le(NumericUtil.tryParseLong(search.getCreateTimeEnd()).compareTo(0L) > 0, QuartzTaskErrorPO::getCreateTime, search.getCreateTimeEnd()); // 关键字 //if (StringUtil.isNotNullOrEmpty(search.getKeywords())) { // queryWrapper.and(q -> // q.like(QuartzTaskErrorPO::getRealName, search.getKeywords()) // .or().like(QuartzTaskErrorPO::getContactPhone, search.getKeywords()) // ); //} // 排序处理 if (ListUtil.isNotNullOrEmpty(search.getOrderBy())) { for (OrderByDTO item : search.getOrderBy()) { EOrderBy orderBy = EOrderBy.getByValue(item.getOrderBy()); // 顺序排序 if (item.getIsAsc()) { switch (orderBy) { // 主键 case ID: queryWrapper.orderByAsc(QuartzTaskErrorPO::getId); break; // 数据创建时间 case CREATE_TIME: queryWrapper.orderByAsc(QuartzTaskErrorPO::getCreateTime); break; // 最后更新时间 case UPDATE_TIME: queryWrapper.orderByAsc(QuartzTaskErrorPO::getUpdateTime); break; } } else { // 倒叙排序 switch (orderBy) { // 主键 case ID: queryWrapper.orderByAsc(QuartzTaskErrorPO::getId); break; // 数据创建时间 case CREATE_TIME: queryWrapper.orderByAsc(QuartzTaskErrorPO::getCreateTime); break; // 最后更新时间 case UPDATE_TIME: queryWrapper.orderByAsc(QuartzTaskErrorPO::getUpdateTime); break; } } } } else { queryWrapper.orderByDesc(QuartzTaskErrorPO::getId); } Page pageResult = DB.selectPage(new Page<>(search.getPage(), search.getLimit()), queryWrapper); return new PagerResult<>(pageResult.getSize(), pageResult.getCurrent(), pageResult.getTotal(), pageResult.getRecords()); } public QuartzTaskErrorPO get4RecordId(String recordId) { LambdaQueryWrapper queryWrapper = this.query(); // 执行记录编号 queryWrapper.eq(QuartzTaskErrorPO::getTaskExecuteRecordId, recordId); return DB.selectOne(queryWrapper); } public int clear4DateTime(long time) { LambdaQueryWrapper query = this.query(); query.lt(QuartzTaskErrorPO::getCreateTime, time); return DB.delete(query); } }