package com.fdkankan.manage.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fdkankan.manage.common.ResultCode;
import com.fdkankan.manage.exception.BusinessException;
import com.fdkankan.common.response.PageInfo;
import com.fdkankan.manage.entity.EmployNote;
import com.fdkankan.manage.mapper.IEmployNoteMapper;
import com.fdkankan.manage.service.IEmployNoteService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fdkankan.manage.vo.request.EmployNoteParam;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
/**
*
* 服务实现类
*
*
* @author
* @since 2022-06-30
*/
@Service
public class EmployNoteServiceImpl extends ServiceImpl implements IEmployNoteService {
@Override
public PageInfo pageList(EmployNoteParam param) {
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
if(StringUtils.isNotBlank(param.getWorkName())){
wrapper.eq(EmployNote::getWorkName,param.getWorkName());
}
wrapper.orderByDesc(EmployNote::getCreateTime);
return PageInfo.PageInfo(this.page(new Page<>(param.getPageNum(),param.getPageSize()),wrapper));
}
@Override
public void isPush(Integer isPush, Long id) {
pushOrTop(isPush,id,0);
}
@Override
public void isTop(Integer isTop, Long id) {
pushOrTop(isTop,id,1);
}
private void pushOrTop(Integer param, Long id,Integer type){
if(id == null|| param == null){
throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS);
}
LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>();
wrapper.eq(EmployNote::getId,id);
switch (type){
case 0 :wrapper.set(EmployNote::getIsPush,param); break;
case 1 :wrapper.set(EmployNote::getIsTop,param); break;
default:return;
}
this.update(wrapper);
}
}