智慧保安后台管理-外网-验收版本
zengh
2021-12-04 2fdf30b77e0614f4785c7893a01958e8c8db8545
src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java
@@ -6,6 +6,7 @@
import lombok.AllArgsConstructor;
import org.springblade.common.utils.arg;
import org.springblade.core.mp.support.Condition;
import org.springblade.modules.FTP.FtpUtil;
import org.springblade.modules.apply.entity.Apply;
import org.springblade.modules.apply.service.ApplyService;
import org.springblade.modules.exam.entity.ExamExaminationSubject;
@@ -31,7 +32,9 @@
import org.springframework.transaction.annotation.Transactional;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -74,6 +77,16 @@
         }
      }
      return page.setRecords(baseMapper.selectExamScorePage(page, examScore));
   }
   /**
    * 自定义分页数据
    * @param page 分页条件
    * @return
    */
   @Override
   public IPage<ExamScoreVO> scorePage(IPage<ExamScoreVO> page,String deptid,String jurisdiction,String realName) {
      return page.setRecords(baseMapper.scorePage(page,deptid,jurisdiction,realName));
   }
   /**
@@ -155,6 +168,14 @@
            //修改为已考试
            apply1.setIsExam(2);
            applyService.updateById(apply1);
            //数据同步
            String s =
               "update sys_apply set is_exam = " + apply1.getIsExam() + " " +"where id = " + "'" + apply1.getId() + "';" +
                  "update blade_user set is_apply = " + user.getIsApply() + " " +"where id = " + "'" + user.getId() + "'";
            FtpUtil.sqlFileUpload(s);
         }
         //模拟考试
         if(paper.getExamType()==2){
@@ -170,6 +191,12 @@
            //修改为已考试
            trainingRegistration1.setIsExam(2);
            trainingRegistrationService.updateById(trainingRegistration1);
            //数据同步
            String s =
               "update sys_training_registration set is_exam = " + trainingRegistration1.getIsExam() + " " +"where id = " + "'" + trainingRegistration1.getId() + "';" +
                  "update blade_user set is_apply = " + user.getIsApply() + " " +"where id = " + "'" + user.getId() + "'";
            FtpUtil.sqlFileUpload(s);
         }
         //设置考试ID
@@ -181,7 +208,7 @@
            examScore.setAllGrade(Math.round(theoryGrade / 2));
         }
         if (age>50) {
            examScore.setAllGrade(Integer.parseInt(String.valueOf(Math.round(theoryGrade*0.3))));
            examScore.setAllGrade(Integer.parseInt(String.valueOf(Math.round(theoryGrade*0.5))));
         }
         //设置状态
         if (theoryGrade>=60){
@@ -191,7 +218,15 @@
         }
         //修改成绩数据
         int i = baseMapper.updateById(examScore);
         //修改考试状态
         String s1 =
            "update exam_score set exam_id = " + examScore.getExamId() +
               ",theory_grade = " + "'" + examScore.getTheoryGrade() + "'" +
               ",all_grade = " + "'" + examScore.getAllGrade() + "'" +
               ",exam_end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:dd").format(examScore.getExamEndTime()) + "'" +
               ",qualified = " + "'" + examScore.getQualified() + "'" +
               " " +"where id = " + "'" + examScore.getId() + "'";
         FtpUtil.sqlFileUpload(s1);
         if (i>0){
            //返回结果
@@ -226,7 +261,6 @@
                     //正式考试通过生成保安证编号
                     if (examPaper.getExamType()==1) {
                        //去生成保安证编号
                        String pre = SecurityPaperUtil.getSecurityPaper();
                        //查询当前年份已有的保安证编号
                        int count = userService.getSecurityPaperCount(pre);
@@ -236,18 +270,28 @@
                        } else {
                           //格式化
                           DecimalFormat decimalFormat = new DecimalFormat("00000");
                           result = pre + (decimalFormat.format(count++));
                           count++;
                           result = pre + (decimalFormat.format(count));
                        }
                        user.setSecuritynumber(result);
                        //发证日期
                        user.setPaperTime(new Date());
                        //修改为持证保安
                        user.setHold("1");
                        //分配保安角色
                        Role role = new Role();
                        role.setRoleAlias("保安");
                        Role oneRole = roleService.getOne(Condition.getQueryWrapper(role));
                        user.setRoleId(oneRole.getId().toString());
//                        Role role = new Role();
//                        role.setRoleAlias("保安");
//                        Role oneRole = roleService.getOne(Condition.getQueryWrapper(role));
//                        user.setRoleId(oneRole.getId().toString());
                        //更新保安数据
                        userService.updateById(user);
                        String s1 =
                           "update blade_user set hold = " + "'" +  user.getHold() + "'" +
                              ",securitynumber = " + "'" + user.getSecuritynumber() + "'" +
                              ",paper_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(user.getPaperTime()) + "'" +
                              " " +"where id = " + "'" + user.getId() + "'";
                        FtpUtil.sqlFileUpload(s1);
                     }
                  } else {
                     //不合格
@@ -258,9 +302,17 @@
                     examScore.setAllGrade(Math.round((examScore.getTheoryGrade()+examScoreExcel.getLearnGrade())/2));
                  }
                  if (user.getAge()>50) {
                     examScore.setAllGrade(Integer.parseInt(String.valueOf(Math.round(examScore.getTheoryGrade()*0.3)))
                        + Integer.parseInt(String.valueOf(Math.round(examScoreExcel.getLearnGrade()*0.7))));
                     examScore.setAllGrade(Integer.parseInt(String.valueOf(Math.round(examScore.getTheoryGrade()*0.5)))
                        + Integer.parseInt(String.valueOf(Math.round(examScoreExcel.getLearnGrade()*0.5))));
                  }
                  //内网同步
                  String s1 =
                     "update exam_score set learn_grade = " + "'" + examScore.getLearnGrade() + "'" +
                        ",all_grade = " + "'" + examScore.getAllGrade() + "'" +
                        ",qualified = " + "'" + examScore.getQualified() + "'" +
                        " " +"where id = " + "'" + examScore.getId() + "'";
                  FtpUtil.sqlFileUpload(s1);
                  //更新成绩数据
                  baseMapper.updateById(examScore);
               }
@@ -270,7 +322,36 @@
   }
   @Override
   public List<Map<String, Object>> scoreStatistics() {
      return baseMapper.scoreStatistics();
   public List<Map<String, Object>> scoreStatistics(String deptid,String jurisdiction) {
      return baseMapper.scoreStatistics(deptid,jurisdiction);
   }
   @Override
   public List<Map<String, Object>> scoreStatisticssc(String deptid,String jurisdiction) {
      return baseMapper.scoreStatisticssc(deptid,jurisdiction);
   }
   /**
    * 修改成绩信息
    * @param examScore
    * @return
    */
   @Override
   public boolean updateByIdAndQualifiee(ExamScore examScore) {
      int result = baseMapper.updateByIdAndQualifiee(examScore);
      if (result>0){
         return true;
      }
      return false;
   }
   /**
    * 考试合格人数对比
    * @param deptid
    * @param jurisdiction
    * @return
    */
   @Override
   public List<Object> scoreStat(String deptid, String jurisdiction) {
      return baseMapper.scoreStat(deptid,jurisdiction);
   }
}