智慧保安后台管理-外网
Administrator
2021-11-12 54ef548d58771a5ceaf8e83543bf76d80d051fd7
src/main/java/org/springblade/modules/training/service/impl/TrainingRegistrationServiceImpl.java
@@ -4,6 +4,8 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.tool.api.R;
import org.springblade.modules.FTP.FtpUtil;
@@ -24,7 +26,9 @@
import org.springframework.transaction.annotation.Transactional;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -83,8 +87,33 @@
   @Transactional(rollbackFor = Exception.class)
   public void importTrainingRegistration(List<TrainingRegistrationExcel> data, Boolean isCovered,Long examId) {
      if (data.size()>0){
         List<String> list = new ArrayList<>();
         data.forEach(trainingRegistrationExcel -> {
            TrainingRegistration trainingRegistration = new TrainingRegistration();
//            User user = userService.getUserInfoByIdCardNo(trainingRegistrationExcel.getIdCardNo());
//            //通过培训公司查组织机构id
//            if (null!=trainingRegistrationExcel.getDeptName() && trainingRegistrationExcel.getDeptName()!=""){
//               trainingRegistration.setTrainingUnitId(userDeptService.selectIn(trainingRegistrationExcel.getDeptName()));
//            }
//            trainingRegistration.setIsExam(2);
//            trainingRegistration.setCancel(1);
//            trainingRegistration.setTrainingTime(new Date());
//            trainingRegistration.setAuditStatus(1);
//            try {
//               trainingRegistration.setTrainingTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2021-10-07 15:13:12"));
//            } catch (ParseException e) {
//               e.printStackTrace();
//            }
//            ExamPaper paper = examPaperService.getById(120);
//            //生成准考证号
//            trainingRegistration.setCandidateNo(getCandidateNo(paper));
//            trainingRegistration.setTrainExamId(paper.getId().toString());
//            if (null!=user) {
//               trainingRegistration.setUserId(user.getId().toString());
//               this.save(trainingRegistration);
//            }else {
//               list.add(trainingRegistrationExcel.getIdCardNo());
//            }
            //通过身份证号
            if (null!=trainingRegistrationExcel.getIdCardNo() && trainingRegistrationExcel.getIdCardNo()!=""){
               User user = userService.getUserInfoByIdCardNo(trainingRegistrationExcel.getIdCardNo());
@@ -107,7 +136,7 @@
                     //审核通过
                     if (examPaper.getAuditStatus()==1){
                        //生成准考证号
                        trainingRegistration.setCandidateNo(getCandidateNo(trainingRegistration));
                        trainingRegistration.setCandidateNo(getCandidateNo(examPaper));
                        trainingRegistration.setAuditStatus(1);
                     }
                     //考试审核不通过
@@ -142,7 +171,7 @@
                        //审核通过
                        if (examPaper.getAuditStatus()==1){
                           //生成准考证号
                           trainingRegistration.setCandidateNo(getCandidateNo(trainingRegistration));
                           trainingRegistration.setCandidateNo(getCandidateNo(examPaper));
                        }
                     }
                     //新增报名
@@ -157,17 +186,18 @@
               }
            }
         });
         String errorAccount = StringUtils.join(list, "\\\n");
         throw new ServiceException("未导入成功"+errorAccount);
      }
   }
   /**
    * 生成准考证号码
    * @param trainingRegistration 考试报名信息对象
    * @param examPaper 考试报名信息对象
    */
   private String getCandidateNo(TrainingRegistration trainingRegistration) {
   private String getCandidateNo(ExamPaper examPaper) {
      //获取考试信息
      ExamPaper examPaper = examPaperService.getById(trainingRegistration.getTrainExamId());
      if (null!=examPaper.getStartTime()){
         String format = new SimpleDateFormat("yyyy-MM-dd").format(examPaper.getStartTime());
         String year = format.substring(2,4);
@@ -206,8 +236,8 @@
            type = "m";
         }
         //获取考试名称前缀,去除数字,字母
         String examName
            = examPaper.getExamName().replaceAll("\\s*", "").replaceAll("[^(\\u4e00-\\u9fa5)]", "").substring(0,1);
//         String examName
//            = examPaper.getExamName().replaceAll("\\s*", "").replaceAll("[^(\\u4e00-\\u9fa5)]", "").substring(0,1);
         //前缀 = 年的最后两位  + 月份(两位) + 考试名称(中文拼音)首字母(去除数字,字母) + 考试类型 + 季度拼音首字母大写(春季就是 C)
//         String result = year