| | |
| | | package com.gkhy.exam.system.service.impl; |
| | | |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
| | | 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.system.domain.ExpectContent; |
| | | import com.gkhy.exam.system.domain.ExpectContentMess; |
| | | import com.gkhy.exam.system.domain.ExpectDiscren; |
| | | import com.gkhy.exam.system.domain.ExpectEvaluate; |
| | | import com.gkhy.exam.system.mapper.ExpectContentMapper; |
| | | import com.gkhy.exam.system.mapper.ExpectDiscrenMapper; |
| | | import com.gkhy.exam.system.mapper.ExpectEvaluateMapper; |
| | | import com.gkhy.exam.system.service.ExpectDiscrenService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | |
| | | @Autowired |
| | | private ExpectContentMapper expectContentMapper; |
| | | |
| | | @Autowired |
| | | private ExpectEvaluateMapper expectEvaluateMapper; |
| | | |
| | | |
| | | @Override |
| | |
| | | } |
| | | return CommonResult.success(expectDiscrens); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public CommonResult copyExpectDiscren(Long companyId,String sourceYear, String targetYear) { |
| | | if (companyId==null){ |
| | | companyId = SecurityUtils.getCompanyId(); |
| | | } |
| | | LambdaQueryWrapper<ExpectDiscren> queryWrapper = new LambdaQueryWrapper<>(); |
| | | queryWrapper.eq(ExpectDiscren::getCompanyId, companyId) |
| | | .eq(ExpectDiscren::getDelFlag, 1).eq(ExpectDiscren::getYear, targetYear); |
| | | List<ExpectDiscren> expectDiscrensTarget = expectDiscrenMapper.selectList(queryWrapper); |
| | | if (ObjectUtil.isNotEmpty(expectDiscrensTarget)){ |
| | | for (ExpectDiscren expectDiscren : expectDiscrensTarget) { |
| | | deletedExpectDiscren(expectDiscren.getId()); |
| | | LambdaQueryWrapper<ExpectContent> queryWrapperContent = new LambdaQueryWrapper<>(); |
| | | queryWrapperContent.eq(ExpectContent::getExpectDiscrenId, expectDiscren.getId()); |
| | | List<ExpectContent> expectContents = expectContentMapper.selectList(queryWrapperContent); |
| | | expectContentMapper.deletedByDiscrenId(expectDiscren.getId()); |
| | | if (ObjectUtil.isNotEmpty(expectContents)){ |
| | | expectContentMapper.deletedByConentId(expectDiscren.getId()); |
| | | } |
| | | |
| | | LambdaUpdateWrapper<ExpectEvaluate> updateWrapper = new LambdaUpdateWrapper<>(); |
| | | updateWrapper.set(ExpectEvaluate::getDelFlag, 2).set(ExpectEvaluate::getUpdateBy, SecurityUtils.getUsername()) |
| | | .eq(ExpectEvaluate::getUpdateTime, LocalDateTime.now()).eq(ExpectEvaluate::getExpectDiscrenId, expectDiscren.getId()); |
| | | expectEvaluateMapper.update(new ExpectEvaluate(), updateWrapper); |
| | | } |
| | | } |
| | | |
| | | LambdaQueryWrapper<ExpectDiscren> queryWrapperSource = new LambdaQueryWrapper<>(); |
| | | queryWrapperSource.eq(ExpectDiscren::getCompanyId, companyId) |
| | | .eq(ExpectDiscren::getDelFlag, 1).eq(ExpectDiscren::getYear, sourceYear); |
| | | List<ExpectDiscren> expectDiscrens = expectDiscrenMapper.selectList(queryWrapperSource); |
| | | if (ObjectUtil.isEmpty(expectDiscrens)){ |
| | | return CommonResult.success("无相关数据"); |
| | | } |
| | | for (ExpectDiscren expectDiscren : expectDiscrens) { |
| | | Integer oldId = expectDiscren.getId(); |
| | | expectDiscren.setId(null); |
| | | expectDiscren.setYear(targetYear); |
| | | expectDiscren.setCreateBy(SecurityUtils.getUsername()); |
| | | expectDiscren.setCreateTime(LocalDateTime.now()); |
| | | expectDiscren.setUpdateBy(SecurityUtils.getUsername()); |
| | | expectDiscren.setUpdateTime(LocalDateTime.now()); |
| | | expectDiscren.setFictionTime(LocalDateTime.now()); |
| | | expectDiscrenMapper.insert(expectDiscren); |
| | | List<ExpectContent> expectContents = expectContentMapper.selectByDiscrenId(oldId); |
| | | if (ObjectUtil.isNotEmpty(expectContents)){ |
| | | for (ExpectContent expectContent : expectContents) { |
| | | List<ExpectContentMess> expectContentMesses = expectContentMapper.selectByContentId(expectContent.getId()); |
| | | expectContent.setId(null); |
| | | expectContent.setExpectDiscrenId(expectDiscren.getId()); |
| | | expectContentMapper.insert(expectContent); |
| | | |
| | | if (ObjectUtil.isNotEmpty(expectContentMesses)){ |
| | | for (ExpectContentMess expectContentMess : expectContentMesses) { |
| | | expectContentMess.setId(null); |
| | | expectContentMess.setExpectContentId(expectContent.getId()); |
| | | } |
| | | expectContentMapper.insertContentMess(expectContentMesses); |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | LambdaQueryWrapper<ExpectEvaluate> queryWrapper1 = new LambdaQueryWrapper<>(); |
| | | queryWrapper1.eq(ExpectEvaluate::getExpectDiscrenId, oldId).eq(ExpectEvaluate::getDelFlag, 1); |
| | | List<ExpectEvaluate> expectEvaluates = expectEvaluateMapper.selectList(queryWrapper1); |
| | | if (ObjectUtil.isNotEmpty(expectEvaluates)){ |
| | | for (ExpectEvaluate expectEvaluate : expectEvaluates) { |
| | | expectEvaluate.setId(null); |
| | | expectEvaluate.setExpectDiscrenId(expectDiscren.getId()); |
| | | expectEvaluate.setCreateBy(SecurityUtils.getUsername()); |
| | | expectEvaluate.setCreateTime(LocalDateTime.now()); |
| | | expectEvaluate.setUpdateBy(SecurityUtils.getUsername()); |
| | | expectEvaluate.setUpdateTime(LocalDateTime.now()); |
| | | expectEvaluate.setEvaluateTime(LocalDateTime.now()); |
| | | expectEvaluateMapper.insert(expectEvaluate); |
| | | } |
| | | } |
| | | |
| | | } |
| | | return CommonResult.success(); |
| | | } |
| | | } |