package doumeemes.service.business.impl; import doumeemes.core.model.PageData; import doumeemes.core.model.PageWrap; import doumeemes.core.utils.Utils; import doumeemes.dao.business.NoticesMapper; import doumeemes.dao.business.model.Notices; import doumeemes.service.business.NoticesService; 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/06/17 15:10 */ @Service public class NoticesServiceImpl implements NoticesService { @Autowired private NoticesMapper noticesMapper; @Override public Integer create(Notices notices) { noticesMapper.insert(notices); return noticesMapper.insert(notices); } @Override public void deleteById(String id) { noticesMapper.deleteById(id); } @Override public void delete(Notices notices) { UpdateWrapper deleteWrapper = new UpdateWrapper<>(notices); noticesMapper.delete(deleteWrapper); } @Override public void deleteByIdInBatch(List ids) { if (CollectionUtils.isEmpty(ids)) { return; } noticesMapper.deleteBatchIds(ids); } @Override public void updateById(Notices notices) { noticesMapper.updateById(notices); } @Override public void updateByIdInBatch(List noticess) { if (CollectionUtils.isEmpty(noticess)) { return; } for (Notices notices: noticess) { this.updateById(notices); } } @Override public Notices findById(String id) { return noticesMapper.selectById(id); } @Override public Notices findOne(Notices notices) { QueryWrapper wrapper = new QueryWrapper<>(notices); return noticesMapper.selectOne(wrapper); } @Override public List findList(Notices notices) { QueryWrapper wrapper = new QueryWrapper<>(notices); return noticesMapper.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(Notices::getId, pageWrap.getModel().getId()); } if (pageWrap.getModel().getDeleted() != null) { queryWrapper.lambda().eq(Notices::getDeleted, pageWrap.getModel().getDeleted()); } if (pageWrap.getModel().getCreateUser() != null) { queryWrapper.lambda().eq(Notices::getCreateUser, pageWrap.getModel().getCreateUser()); } if (pageWrap.getModel().getCreateTime() != null) { queryWrapper.lambda().ge(Notices::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime())); queryWrapper.lambda().le(Notices::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime())); } if (pageWrap.getModel().getUpdateUser() != null) { queryWrapper.lambda().eq(Notices::getUpdateUser, pageWrap.getModel().getUpdateUser()); } if (pageWrap.getModel().getUpdateTime() != null) { queryWrapper.lambda().ge(Notices::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime())); queryWrapper.lambda().le(Notices::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime())); } if (pageWrap.getModel().getRemark() != null) { queryWrapper.lambda().eq(Notices::getRemark, pageWrap.getModel().getRemark()); } if (pageWrap.getModel().getRootId() != null) { queryWrapper.lambda().eq(Notices::getRootId, pageWrap.getModel().getRootId()); } if (pageWrap.getModel().getDepartmentId() != null) { queryWrapper.lambda().eq(Notices::getDepartmentId, pageWrap.getModel().getDepartmentId()); } if (pageWrap.getModel().getType() != null) { queryWrapper.lambda().eq(Notices::getType, pageWrap.getModel().getType()); } if (pageWrap.getModel().getObjId() != null) { queryWrapper.lambda().eq(Notices::getObjId, pageWrap.getModel().getObjId()); } if (pageWrap.getModel().getStatus() != null) { queryWrapper.lambda().eq(Notices::getStatus, pageWrap.getModel().getStatus()); } if (pageWrap.getModel().getDealDate() != null) { queryWrapper.lambda().ge(Notices::getDealDate, Utils.Date.getStart(pageWrap.getModel().getDealDate())); queryWrapper.lambda().le(Notices::getDealDate, Utils.Date.getEnd(pageWrap.getModel().getDealDate())); } if (pageWrap.getModel().getDealInfo() != null) { queryWrapper.lambda().eq(Notices::getDealInfo, pageWrap.getModel().getDealInfo()); } if (pageWrap.getModel().getUrl() != null) { queryWrapper.lambda().eq(Notices::getUrl, pageWrap.getModel().getUrl()); } if (pageWrap.getModel().getDdStatus() != null) { queryWrapper.lambda().eq(Notices::getDdStatus, pageWrap.getModel().getDdStatus()); } if (pageWrap.getModel().getDdParam() != null) { queryWrapper.lambda().eq(Notices::getDdParam, pageWrap.getModel().getDdParam()); } if (pageWrap.getModel().getUserId() != null) { queryWrapper.lambda().eq(Notices::getUserId, pageWrap.getModel().getUserId()); } if (pageWrap.getModel().getCompanyUserId() != null) { queryWrapper.lambda().eq(Notices::getCompanyUserId, pageWrap.getModel().getCompanyUserId()); } if (pageWrap.getModel().getTitle() != null) { queryWrapper.lambda().eq(Notices::getTitle, pageWrap.getModel().getTitle()); } if (pageWrap.getModel().getContent() != null) { queryWrapper.lambda().eq(Notices::getContent, pageWrap.getModel().getContent()); } for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { queryWrapper.orderByDesc(sortData.getProperty()); } else { queryWrapper.orderByAsc(sortData.getProperty()); } } return PageData.from(noticesMapper.selectPage(page, queryWrapper)); } @Override public long count(Notices notices) { QueryWrapper wrapper = new QueryWrapper<>(notices); return noticesMapper.selectCount(wrapper); } }