package doumeemes.service.business.impl; import doumeemes.core.model.PageData; import doumeemes.core.model.PageWrap; import doumeemes.core.utils.Utils; import doumeemes.dao.business.PlanHistoryMapper; import doumeemes.dao.business.model.PlanHistory; import doumeemes.service.business.PlanHistoryService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.List; /** * 工单类-计划执行历史记录表Service实现 * @author 江蹄蹄 * @date 2022/04/20 09:34 */ @Service public class PlanHistoryServiceImpl implements PlanHistoryService { @Autowired private PlanHistoryMapper planHistoryMapper; @Override public Integer create(PlanHistory planHistory) { planHistoryMapper.insert(planHistory); return planHistory.getId(); } @Override public void deleteById(Integer id) { planHistoryMapper.deleteById(id); } @Override public void delete(PlanHistory planHistory) { UpdateWrapper deleteWrapper = new UpdateWrapper<>(planHistory); planHistoryMapper.delete(deleteWrapper); } @Override public void deleteByIdInBatch(List ids) { if (CollectionUtils.isEmpty(ids)) { return; } planHistoryMapper.deleteBatchIds(ids); } @Override public void updateById(PlanHistory planHistory) { planHistoryMapper.updateById(planHistory); } @Override public void updateByIdInBatch(List planHistorys) { if (CollectionUtils.isEmpty(planHistorys)) { return; } for (PlanHistory planHistory: planHistorys) { this.updateById(planHistory); } } @Override public PlanHistory findById(Integer id) { return planHistoryMapper.selectById(id); } @Override public PlanHistory findOne(PlanHistory planHistory) { QueryWrapper wrapper = new QueryWrapper<>(planHistory); return planHistoryMapper.selectOne(wrapper); } @Override public List findList(PlanHistory planHistory) { QueryWrapper wrapper = new QueryWrapper<>(planHistory); return planHistoryMapper.selectList(wrapper); } @Override public PageData findPage(PageWrap pageWrap) { IPage page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); QueryWrapper queryWrapper = new QueryWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); if (pageWrap.getModel().getId() != null) { queryWrapper.lambda().eq(PlanHistory::getId, pageWrap.getModel().getId()); } if (pageWrap.getModel().getDeleted() != null) { queryWrapper.lambda().eq(PlanHistory::getDeleted, pageWrap.getModel().getDeleted()); } if (pageWrap.getModel().getCreateUser() != null) { queryWrapper.lambda().eq(PlanHistory::getCreateUser, pageWrap.getModel().getCreateUser()); } if (pageWrap.getModel().getCreateTime() != null) { queryWrapper.lambda().ge(PlanHistory::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime())); queryWrapper.lambda().le(PlanHistory::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime())); } if (pageWrap.getModel().getUpdateUser() != null) { queryWrapper.lambda().eq(PlanHistory::getUpdateUser, pageWrap.getModel().getUpdateUser()); } if (pageWrap.getModel().getUpdateTime() != null) { queryWrapper.lambda().ge(PlanHistory::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime())); queryWrapper.lambda().le(PlanHistory::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime())); } if (pageWrap.getModel().getRemark() != null) { queryWrapper.lambda().eq(PlanHistory::getRemark, pageWrap.getModel().getRemark()); } if (pageWrap.getModel().getRootDepartId() != null) { queryWrapper.lambda().eq(PlanHistory::getRootDepartId, pageWrap.getModel().getRootDepartId()); } if (pageWrap.getModel().getDepartId() != null) { queryWrapper.lambda().eq(PlanHistory::getDepartId, pageWrap.getModel().getDepartId()); } if (pageWrap.getModel().getPlanId() != null) { queryWrapper.lambda().eq(PlanHistory::getPlanId, pageWrap.getModel().getPlanId()); } if (pageWrap.getModel().getUserId() != null) { queryWrapper.lambda().eq(PlanHistory::getUserId, pageWrap.getModel().getUserId()); } if (pageWrap.getModel().getTitle() != null) { queryWrapper.lambda().eq(PlanHistory::getTitle, pageWrap.getModel().getTitle()); } if (pageWrap.getModel().getInfo() != null) { queryWrapper.lambda().eq(PlanHistory::getInfo, pageWrap.getModel().getInfo()); } if (pageWrap.getModel().getType() != null) { queryWrapper.lambda().eq(PlanHistory::getType, pageWrap.getModel().getType()); } for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { queryWrapper.orderByDesc(sortData.getProperty()); } else { queryWrapper.orderByAsc(sortData.getProperty()); } } return PageData.from(planHistoryMapper.selectPage(page, queryWrapper)); } @Override public long count(PlanHistory planHistory) { QueryWrapper wrapper = new QueryWrapper<>(planHistory); return planHistoryMapper.selectCount(wrapper); } }