package com.gkhy.exam.system.service.impl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.gkhy.exam.common.api.CommonPage;
|
import com.gkhy.exam.common.api.CommonResult;
|
import com.gkhy.exam.common.utils.PageUtils;
|
import com.gkhy.exam.common.utils.SecurityUtils;
|
import com.gkhy.exam.system.domain.ContinuousImprove;
|
import com.gkhy.exam.system.domain.ContinuousImprovePlan;
|
import com.gkhy.exam.system.mapper.ContinuousImproveMapper;
|
import com.gkhy.exam.system.mapper.ContinuousImprovePlanMapper;
|
import com.gkhy.exam.system.service.ContinuousImproveService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import java.time.LocalDateTime;
|
import java.util.List;
|
|
@Service
|
public class ContinuousImproveServiceImpl extends ServiceImpl<ContinuousImproveMapper, ContinuousImprove> implements ContinuousImproveService {
|
|
@Autowired
|
private ContinuousImproveMapper continuousImproveMapper;
|
|
@Autowired
|
private ContinuousImprovePlanMapper continuousImprovePlanMapper;
|
|
@Override
|
public CommonPage selectContinuousImproveList(ContinuousImprove continuousImprove) {
|
if (!SecurityUtils.adminUser()){
|
if (continuousImprove.getCompanyId()==null){
|
throw new RuntimeException("非管理员操作,查询条件不可为空");
|
}
|
}
|
List<ContinuousImprove> continuousImproves = continuousImproveMapper.selectImproveList(continuousImprove);
|
for (ContinuousImprove improve : continuousImproves) {
|
List<ContinuousImprovePlan> continuousImprovePlans = continuousImprovePlanMapper.selectByImproveId(improve.getId());
|
improve.setPlans(continuousImprovePlans);
|
}
|
return CommonPage.restPage(continuousImproves);
|
}
|
|
@Override
|
@Transactional
|
public CommonResult insertContinuousImprove(ContinuousImprove continuousImprove) {
|
List<ContinuousImprove> continuousImproves = continuousImproveMapper.selectByCompanyId(continuousImprove);
|
if (!continuousImproves.isEmpty()){
|
return CommonResult.failed("当前企业已有相关数据");
|
}
|
List<ContinuousImprovePlan> plans = continuousImprove.getPlans();
|
continuousImprove.setCreateTime(LocalDateTime.now());
|
continuousImprove.setCreateBy(SecurityUtils.getUsername());
|
int insert = continuousImproveMapper.insert(continuousImprove);
|
if (insert>0){
|
for (ContinuousImprovePlan plan : plans) {
|
plan.setImproveId(continuousImprove.getId());
|
}
|
int i = continuousImprovePlanMapper.insertPlans(plans);
|
return CommonResult.success();
|
}
|
return CommonResult.failed();
|
}
|
|
@Override
|
@Transactional
|
public CommonResult updateContinuousImprove(ContinuousImprove continuousImprove) {
|
|
List<ContinuousImprove> continuousImproves = continuousImproveMapper.selectByCompanyId(continuousImprove);
|
if (!continuousImproves.isEmpty()){
|
return CommonResult.failed("当前企业已有相关数据");
|
}
|
continuousImprove.setUpdateBy(SecurityUtils.getUsername());
|
continuousImprove.setUpdateTime(LocalDateTime.now());
|
int update = continuousImproveMapper.updateById(continuousImprove);
|
if (update>0){
|
List<ContinuousImprovePlan> plans = continuousImprove.getPlans();
|
for (ContinuousImprovePlan plan : plans) {
|
plan.setImproveId(continuousImprove.getId());
|
}
|
continuousImprovePlanMapper.deleteByImproveId(continuousImprove.getId());
|
continuousImprovePlanMapper.insertPlans(plans);
|
return CommonResult.success();
|
}
|
return CommonResult.failed();
|
}
|
|
@Override
|
public CommonResult deletedContinuousImprove(Integer improveId) {
|
ContinuousImprove continuousImprove = new ContinuousImprove();
|
continuousImprove.setId(improveId);
|
continuousImprove.setUpdateTime(LocalDateTime.now());
|
continuousImprove.setUpdateBy(SecurityUtils.getUsername());
|
continuousImprove.setDelFlag(2);
|
int update = continuousImproveMapper.updateById(continuousImprove);
|
if (update>0){
|
return CommonResult.success();
|
}
|
return CommonResult.failed();
|
}
|
|
@Override
|
public CommonResult listContinuousImproveById(Integer improveId) {
|
ContinuousImprove continuousImprove = continuousImproveMapper.selectListById(improveId);
|
List<ContinuousImprovePlan> continuousImprovePlans = continuousImprovePlanMapper.selectByImproveId(improveId);
|
continuousImprove.setPlans(continuousImprovePlans);
|
return CommonResult.success(continuousImprove);
|
}
|
}
|