“djh”
3 天以前 45c3b7aacf3d20e1915e597152ad30a3b40377a2
multi-system/src/main/java/com/gkhy/exam/system/service/impl/ExExamRecordServiceImpl.java
@@ -8,11 +8,17 @@
import com.gkhy.exam.common.utils.PageUtils;
import com.gkhy.exam.common.utils.SecurityUtils;
import com.gkhy.exam.system.domain.ExExamRecord;
import com.gkhy.exam.system.domain.ExStudent;
import com.gkhy.exam.system.domain.RecordFile;
import com.gkhy.exam.system.mapper.ExExamRecordMapper;
import com.gkhy.exam.system.mapper.ExStudentMapper;
import com.gkhy.exam.system.service.ExExamRecordService;
import org.ehcache.core.util.CollectionUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.List;
/**
@@ -27,6 +33,10 @@
public class ExExamRecordServiceImpl extends ServiceImpl<ExExamRecordMapper, ExExamRecord> implements ExExamRecordService {
    @Autowired
    private ExStudentMapper studentMapper;
    @Override
    public CommonPage selectExamRecordList(ExExamRecord examRecord) {
        SysUser user= SecurityUtils.getLoginUser().getUser();
@@ -35,20 +45,45 @@
        }
        PageUtils.startPage();
        List<ExExamRecord> recordList=baseMapper.selectExamRecordList(examRecord);
        for (ExExamRecord exExamRecord : recordList) {
            List<RecordFile> recordFiles = baseMapper.selectFiles(exExamRecord.getId());
            exExamRecord.setFiles(recordFiles);
            List<ExStudent> exStudents = new ArrayList<>();
            String[] split = exExamRecord.getStudentId().split(",");
            for (String studentId : split) {
                ExStudent exStudent = studentMapper.selectStudentById(Long.valueOf(studentId));
                exStudents.add(exStudent);
            }
            exExamRecord.setStudents(exStudents);
        }
        return CommonPage.restPage(recordList);
    }
    @Override
    public ExExamRecord selectExamRecordById(Long recordId) {
        return baseMapper.selectExamRecordById(recordId);
        ExExamRecord exExamRecord = baseMapper.selectExamRecordById(recordId);
        List<RecordFile> recordFiles = baseMapper.selectFiles(exExamRecord.getId());
        exExamRecord.setFiles(recordFiles);
        List<ExStudent> exStudents = new ArrayList<>();
        String[] split = exExamRecord.getStudentId().split(",");
        for (String studentId : split) {
            ExStudent exStudent = studentMapper.selectStudentById(Long.valueOf(studentId));
            exStudents.add(exStudent);
        }
        exExamRecord.setStudents(exStudents);
        return exExamRecord;
    }
    @Override
    public int insertExamRecord(ExExamRecord examRecord) {
        checkUserAllowed(examRecord);
        examRecord.setCompanyId(SecurityUtils.getLoginUser().getUser().getCompanyId());
//        examRecord.setCompanyId(SecurityUtils.getLoginUser().getUser().getCompanyId());
        examRecord.setCreateBy(SecurityUtils.getUsername());
        int row=baseMapper.insert(examRecord);
        List<RecordFile> files = examRecord.getFiles();
        if (!files.isEmpty()){
            baseMapper.insertFile(files,examRecord.getId());
        }
        if(row<1){
            throw new ApiException("新增登记记录失败");
        }
@@ -60,6 +95,11 @@
        checkUserAllowed(examRecord);
        examRecord.setUpdateBy(SecurityUtils.getUsername());
        int row=baseMapper.updateById(examRecord);
        List<RecordFile> files = examRecord.getFiles();
        baseMapper.deletedFile(examRecord.getId());
        if (!files.isEmpty()){
            baseMapper.insertFile(files, examRecord.getId());
        }
        if(row<1){
            throw new ApiException("更新登记记录失败");
        }
@@ -69,13 +109,14 @@
    @Override
    public int deleteExamRecordById(Long recordId) {
        checkUserAllowed(baseMapper.selectById(recordId));
        baseMapper.deletedFile(recordId);
        return baseMapper.deleteById(recordId);
    }
    public void checkUserAllowed(ExExamRecord examRecord) {
        SysUser currentUser= SecurityUtils.getLoginUser().getUser();
        if(currentUser.getUserType().equals(UserTypeEnum.SYSTEM_USER.getCode())){
            throw new ApiException("管理员没有权限操作");
            return;
        }
        if(currentUser.getUserType().equals(UserTypeEnum.STUDENT.getCode())){
            throw new ApiException("没有权限操作");