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.exception.ApiException;
|
import com.gkhy.exam.common.utils.PageUtils;
|
import com.gkhy.exam.common.utils.SecurityUtils;
|
import com.gkhy.exam.system.domain.RiskContent;
|
import com.gkhy.exam.system.domain.RiskContentMess;
|
import com.gkhy.exam.system.domain.RiskManage;
|
import com.gkhy.exam.system.mapper.RiskContentMapper;
|
import com.gkhy.exam.system.mapper.RiskManageMapper;
|
import com.gkhy.exam.system.service.RiskManageService;
|
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.ArrayList;
|
import java.util.List;
|
|
@Service
|
public class RiskManageServiceImpl extends ServiceImpl<RiskManageMapper, RiskManage> implements RiskManageService {
|
|
@Autowired
|
private RiskManageMapper riskManageMapper;
|
|
@Autowired
|
private RiskContentMapper riskContentMapper;
|
|
|
@Override
|
public CommonPage selectRiskManageList(RiskManage riskManage) {
|
if (!SecurityUtils.adminUser()){
|
if (riskManage.getCompanyId()==null){
|
throw new ApiException("非管理员操作,企业id不可为空");
|
}
|
}
|
PageUtils.startPage();
|
List<RiskManage> riskManages = riskManageMapper.selectRiskManageList(riskManage);
|
for (RiskManage manage : riskManages) {
|
List<RiskContent> riskContents = riskContentMapper.selectRiskContent(manage.getId());
|
for (RiskContent riskContent : riskContents) {
|
List<RiskContentMess> riskContentMesses = riskContentMapper.selectContentMess(riskContent.getId());
|
riskContent.setContentMesses(riskContentMesses);
|
}
|
manage.setRiskContents(riskContents);
|
}
|
return CommonPage.restPage(riskManages);
|
}
|
|
@Override
|
public CommonResult selectRiskManageListAll(RiskManage riskManage) {
|
List<RiskManage> riskManages = riskManageMapper.selectRiskManageList(riskManage);
|
for (RiskManage manage : riskManages) {
|
List<RiskContent> riskContents = riskContentMapper.selectRiskContent(manage.getId());
|
for (RiskContent riskContent : riskContents) {
|
List<RiskContentMess> riskContentMesses = riskContentMapper.selectContentMess(riskContent.getId());
|
riskContent.setContentMesses(riskContentMesses);
|
}
|
manage.setRiskContents(riskContents);
|
}
|
return CommonResult.success(riskManages);
|
}
|
|
@Override
|
@Transactional
|
public CommonResult insertRiskManage(RiskManage riskManage) {
|
List<RiskManage> riskManages = riskManageMapper.selectManageList(riskManage);
|
if (riskManages.size()>0){
|
throw new ApiException("当前企业已有数据,请删除后重试");
|
}
|
riskManage.setCreateBy(SecurityUtils.getUsername());
|
riskManage.setCreateTime(LocalDateTime.now());
|
riskManageMapper.insert(riskManage);
|
List<RiskContent> riskContents = riskManage.getRiskContents();
|
List<RiskContentMess> riskContentMesses = new ArrayList<>();
|
for (RiskContent riskContent : riskContents) {
|
riskContent.setRiskManageId(riskManage.getId());
|
riskContentMapper.insert(riskContent);
|
List<RiskContentMess> contentMesses = riskContent.getContentMesses();
|
for (RiskContentMess contentMess : contentMesses) {
|
contentMess.setRiskContentId(riskContent.getId());
|
}
|
riskContentMesses.addAll(contentMesses);
|
}
|
riskContentMapper.insertRiskContentMess(riskContentMesses);
|
return CommonResult.success();
|
}
|
|
@Override
|
public CommonResult updateRiskManage(RiskManage riskManage) {
|
riskManage.setUpdateBy(SecurityUtils.getUsername());
|
riskManage.setUpdateTime(LocalDateTime.now());
|
riskManageMapper.updateById(riskManage);
|
riskContentMapper.deletedByManageId(riskManage.getId());
|
List<RiskContent> riskContents = riskManage.getRiskContents();
|
List<RiskContentMess> riskContentMesses = new ArrayList<>();
|
for (RiskContent riskContent : riskContents) {
|
riskContent.setId(null);
|
riskContentMapper.insert(riskContent);
|
List<RiskContentMess> contentMesses = riskContent.getContentMesses();
|
for (RiskContentMess contentMess : contentMesses) {
|
contentMess.setRiskContentId(riskContent.getId());
|
}
|
riskContentMesses.addAll(contentMesses);
|
}
|
riskContentMapper.insertRiskContentMess(riskContentMesses);
|
return CommonResult.success();
|
}
|
|
@Override
|
public CommonResult deletedRiskManage(Integer riskManageId) {
|
RiskManage riskManage = new RiskManage();
|
riskManage.setUpdateTime(LocalDateTime.now());
|
riskManage.setUpdateBy(SecurityUtils.getUsername());
|
riskManage.setDelFlag(2);
|
riskManage.setId(riskManageId);
|
riskManageMapper.updateById(riskManage);
|
return CommonResult.success();
|
}
|
}
|