package com.mes.edgglasstask.service.impl; import cn.smallbun.screw.core.util.CollectionUtils; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mes.common.utils.RedisUtil; import com.mes.edgglasstask.entity.EdgGlassTaskInfo; import com.mes.edgglasstask.entity.request.EdgGlassInfoRequest; import com.mes.edgglasstask.mapper.EdgGlassTaskInfoMapper; import com.mes.edgglasstask.service.EdgGlassTaskInfoService; import com.mes.tools.DateUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** *

* 服务实现类 *

* * @author wu * @since 2024-05-11 */ @Service public class EdgGlassTaskInfoServiceImpl extends ServiceImpl implements EdgGlassTaskInfoService { @Autowired RedisUtil redisUtil; @Override public List selectEdgInfo() { EdgGlassInfoRequest request = redisUtil.getCacheObject("edgGlassRequest"); if (null == request) { request = new EdgGlassInfoRequest(); } if (null == request.getBeginDate()) { request.setBeginDate(DateUtil.getBeginDate()); request.setEndDate(DateUtil.getEndDate()); } LambdaQueryWrapper edgGlassWrapper = new LambdaQueryWrapper() .in(CollectionUtils.isNotEmpty(request.getCellList()), EdgGlassTaskInfo::getLine, request.getCellList()) .in(CollectionUtils.isNotEmpty(request.getStateList()), EdgGlassTaskInfo::getStatus, request.getStateList()) .between(null != request.getBeginDate(), EdgGlassTaskInfo::getTime, request.getBeginDate(), request.getEndDate()) .orderByDesc(EdgGlassTaskInfo::getTime); return this.list(edgGlassWrapper); } @Override public String setEdgGlassInfoRequest(EdgGlassInfoRequest request) { if (request == null) { redisUtil.deleteObject("edgGlassRequest"); } else { redisUtil.setCacheObject("edgGlassRequest", request); } return "success"; } /** * 查询判断磨边线是否有玻璃运行 * * @param * @return */ @Override public List selectTaskCacheIsRun() { QueryWrapper wrapper = new QueryWrapper() .select("line") .eq("status", 1) .groupBy("line"); return this.list(wrapper); } }