package com.yuanchu.limslaboratory.service.impl;
|
|
import cn.hutool.core.date.DateUtil;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.yuanchu.limslaboratory.pojo.CnasAnnualPlan;
|
import com.yuanchu.limslaboratory.mapper.CnasAnnualPlanMapper;
|
import com.yuanchu.limslaboratory.pojo.vo.CnasAnnualPlanVo;
|
import com.yuanchu.limslaboratory.service.CnasAnnualPlanService;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import org.springframework.stereotype.Service;
|
import org.springframework.web.multipart.MultipartFile;
|
|
import javax.annotation.Resource;
|
import java.util.Date;
|
|
/**
|
* <p>
|
* 审核年度计划表 服务实现类
|
* </p>
|
*
|
* @author 江苏鵷雏网络科技有限公司
|
* @since 2023-08-10 11:50:11
|
*/
|
@Service
|
public class CnasAnnualPlanServiceImpl extends ServiceImpl<CnasAnnualPlanMapper, CnasAnnualPlan> implements CnasAnnualPlanService {
|
|
@Resource
|
private CnasAnnualPlanMapper cnasAnnualPlanMapper;
|
|
/**
|
* 查询审核计划
|
*
|
* @return
|
*/
|
@Override
|
public IPage<CnasAnnualPlanVo> selectAllList(Page<Object> objectPage, Date planTime) {
|
//判断是否有日期
|
Integer yearTime = null;
|
Integer monthTime = null;
|
if (planTime != null) {
|
yearTime = DateUtil.year(planTime);
|
monthTime = DateUtil.month(planTime) + 2;
|
}
|
IPage<CnasAnnualPlanVo> page = cnasAnnualPlanMapper.selectAllList(objectPage, yearTime, monthTime);
|
page.getRecords().forEach(cnasAnnualPlanVo -> {
|
//获取计划时间
|
Date time = cnasAnnualPlanVo.getPlanTime();
|
//添加年月
|
cnasAnnualPlanVo.setYear(DateUtil.year(time));
|
cnasAnnualPlanVo.setMonth(DateUtil.month(time) + 1);
|
//判断审核状态
|
//获取当前时间
|
Date nowDate = new Date();
|
//获取当前的年月
|
int year = DateUtil.year(nowDate);
|
int month = DateUtil.month(nowDate) + 1;
|
if (cnasAnnualPlanVo.getAuditTime() == null && month > cnasAnnualPlanVo.getMonth() || year > cnasAnnualPlanVo.getYear()) {
|
cnasAnnualPlanVo.setAuditState(2);
|
} else if (cnasAnnualPlanVo.getAuditTime() != null) {
|
cnasAnnualPlanVo.setAuditState(1);
|
} else {
|
cnasAnnualPlanVo.setAuditState(0);
|
}
|
});
|
return page;
|
}
|
|
/**
|
* 上传附件
|
*/
|
@Override
|
public void addAccessory(String name, Date auditTime, MultipartFile file) {
|
//todo: 上传附件未完成
|
}
|
|
/**
|
* 删除年度计划
|
*
|
* @return
|
*/
|
@Override
|
public Integer deleteCnasAnnualPlan(Integer planId) {
|
LambdaUpdateWrapper<CnasAnnualPlan> updateWrapper = new LambdaUpdateWrapper<>();
|
updateWrapper.eq(CnasAnnualPlan::getId, planId);
|
updateWrapper.set(CnasAnnualPlan::getState, 0);
|
return cnasAnnualPlanMapper.update(new CnasAnnualPlan(), updateWrapper);
|
}
|
}
|