package com.mes.pp.service.impl; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.github.yulichang.base.MPJBaseServiceImpl; import com.mes.pp.entity.OptimizeProject; import com.mes.pp.entity.request.OptimizeRequest; import com.mes.pp.mapper.OptimizeProjectMapper; import com.mes.pp.service.OptimizeProjectService; import com.mes.uppattenusage.entity.UpPattenUsage; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import java.util.Collections; import java.util.List; /** *

* 服务实现类 *

* * @author zhoush * @since 2024-04-16 */ @Service @DS("pp") @Slf4j public class OptimizeProjectServiceImpl extends MPJBaseServiceImpl implements OptimizeProjectService { @Override public List listByState(OptimizeRequest optimizeRequest) { //将参数传入到查询类里,工程号做非空判断模糊查询 LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(OptimizeProject::getState,optimizeRequest.getState()) .like(StringUtils.isNotBlank(optimizeRequest.getProjectNo()),OptimizeProject::getProjectNo,optimizeRequest.getProjectNo()) //.groupBy(OptimizeProject::getProjectNo) ; //返回工程信息 return this.list(wrapper); } @Override public void changeTask(String engineeringId, int state) { UpdateWrapper wrapper = new UpdateWrapper<>(); wrapper.eq("project_no",engineeringId) .set("state",state); boolean updateSuccess = this.update(wrapper); log.info("工程表更新状态{}",updateSuccess); } @Override public boolean overTask(UpPattenUsage sequence, int state) { if(sequence.getState()==100){ UpdateWrapper wrapper=new UpdateWrapper<>(); wrapper.eq("project_no",sequence.getEngineeringId()) .set("state",state); boolean updateSuccess = this.update(wrapper); log.info("工程完成更新状态{}",updateSuccess); } return false; } @Override public List getDoingTask() { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.select("project_no,project_name") .eq("state",200); return this.list(wrapper); } }