package cn.com.qmth.scancentral.service.impl; import cn.com.qmth.scancentral.dao.PackageTaskDao; import cn.com.qmth.scancentral.entity.PackageTaskEntity; import cn.com.qmth.scancentral.enums.TaskStatus; import cn.com.qmth.scancentral.service.PackageTaskService; 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 org.springframework.stereotype.Service; @Service public class PackageTaskServiceImpl extends ServiceImpl implements PackageTaskService { @Override public int getCountByExamAndStatus(Long examId, TaskStatus... status) { QueryWrapper wrapper = new QueryWrapper<>(); LambdaQueryWrapper lw = wrapper.lambda(); lw.and(param -> { for (TaskStatus taskStatus : status) { param.or().eq(PackageTaskEntity::getStatus, taskStatus); } }); lw.eq(PackageTaskEntity::getExamId, examId); return this.count(wrapper); } @Override public int getCountByExam(Long examId) { QueryWrapper wrapper = new QueryWrapper<>(); LambdaQueryWrapper lw = wrapper.lambda(); lw.eq(PackageTaskEntity::getExamId, examId); return this.count(wrapper); } }