From f6eeb01e5a77965facfb0ae9a517b09681b3f69f Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Mon, 13 Jun 2022 14:45:29 +0800
Subject: [PATCH] 实操成绩修改申请,成绩修改申请修改,保安员证编号由内网处理
---
src/main/java/org/springblade/modules/quartz/task/Task.java | 210 +++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 198 insertions(+), 12 deletions(-)
diff --git a/src/main/java/org/springblade/modules/quartz/task/Task.java b/src/main/java/org/springblade/modules/quartz/task/Task.java
index e2d9194..8a84ee1 100644
--- a/src/main/java/org/springblade/modules/quartz/task/Task.java
+++ b/src/main/java/org/springblade/modules/quartz/task/Task.java
@@ -9,6 +9,10 @@
import org.apache.commons.net.ftp.FTPReply;
import org.springblade.common.utils.DesensitizedUtil;
import org.springblade.modules.FTP.*;
+import org.springblade.modules.exam.entity.ExamAnswerRecord;
+import org.springblade.modules.exam.entity.ExamScore;
+import org.springblade.modules.exam.service.ExamAnswerRecordService;
+import org.springblade.modules.exam.service.ExamScoreService;
import org.springblade.modules.log.entity.HandlerLog;
import org.springblade.modules.log.service.HandlerLogService;
import org.springblade.modules.system.entity.User;
@@ -56,6 +60,13 @@
@Autowired
private MyAsyncService myAsyncService;
+
+
+ @Autowired
+ private ExamAnswerRecordService examAnswerRecordService;
+
+ @Autowired
+ private ExamScoreService examScoreService;
public void testTask(){
System.out.println("测试定时任务执行-----------------");
@@ -121,7 +132,6 @@
FTPFile[] files = ftp.listFiles();
if (files.length==0){
- ftp.logout();
return false;
}
else {
@@ -167,13 +177,18 @@
}
}
//关闭流
- ftp.completePendingCommand();
- ftp.logout();
+// ftp.completePendingCommand();
+// ftp.logout();
}
} catch (Exception e) {
System.out.println("ftp连接失败");
e.printStackTrace();
} finally {
+ try {
+ ftp.logout();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
if (ftp.isConnected()) {
try {
ftp.disconnect();
@@ -225,7 +240,7 @@
//文件个数大于10个时开始处理
// if (files.length==0 || files.length<10){
if (files.length==0){
- ftp.logout();
+// ftp.logout();
return false;
}
else {
@@ -270,13 +285,18 @@
}
}
//关闭流
- ftp.completePendingCommand();
- ftp.logout();
+// ftp.completePendingCommand();
+// ftp.logout();
}
} catch (Exception e) {
System.out.println("ftp连接失败");
e.printStackTrace();
} finally {
+ try {
+ ftp.logout();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
if (ftp.isConnected()) {
try {
ftp.disconnect();
@@ -327,7 +347,7 @@
FTPFile[] files = ftp.listFiles();
//文件个数大于10个时开始处理
if (files.length==0){
- ftp.logout();
+
return false;
}
else {
@@ -369,13 +389,18 @@
}
}
//关闭流
- ftp.completePendingCommand();
- ftp.logout();
+// ftp.completePendingCommand();
+// ftp.logout();
}
} catch (Exception e) {
System.out.println("ftp连接失败");
e.printStackTrace();
} finally {
+ try {
+ ftp.logout();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
if (ftp.isConnected()) {
try {
ftp.disconnect();
@@ -524,7 +549,7 @@
FTPFile[] files = ftp.listFiles();
//文件个数大于10个时开始处理
if (files.length==0){
- ftp.logout();
+// ftp.logout();
return false;
}
else {
@@ -562,13 +587,18 @@
}
}
//关闭流
- ftp.completePendingCommand();
- ftp.logout();
+// ftp.completePendingCommand();
+// ftp.logout();
}
} catch (Exception e) {
System.out.println("ftp连接失败");
e.printStackTrace();
} finally {
+ try {
+ ftp.logout();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
if (ftp.isConnected()) {
try {
ftp.disconnect();
@@ -579,6 +609,121 @@
}
return false;
}
+
+// /**
+// * 读取内外推送的实操成绩导入情况信息
+// * @return
+// */
+// public boolean readExamScoreFile() {
+// FTPClient ftp = new FTPClient();
+// try {
+// //设置传输超时时间为60秒
+// ftp.setDataTimeout(10000);
+// //连接超时为60秒
+// ftp.setConnectTimeout(10000);
+// //连接
+// ftp.connect(ftpHost, ftpPort);
+// System.out.println("读取内外推送的实操成绩导入情况信息!"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
+// // 登陆
+// ftp.login(ftpUserNameIn, ftpPasswordIn);
+// // 检验登陆操作的返回码是否正确
+// if (!FTPReply.isPositiveCompletion(ftp.getReplyCode())) {
+// ftp.disconnect();
+// return false;
+// }
+//
+//// ftp.enterLocalActiveMode();
+//
+// // 设置文件类型为二进制,与ASCII有区别
+// ftp.setFileType(FTP.BINARY_FILE_TYPE);
+//
+// // 设置编码格式
+// ftp.setControlEncoding("GBK");
+//
+// // 检验文件是否存在
+//// ftp.changeWorkingDirectory(ftpPath);
+//
+// // Use passive mode as default
+// ftp.enterLocalPassiveMode();
+//
+// FTPFile[] files = ftp.listFiles();
+// //文件个数大于10个时开始处理
+// if (files.length==0){
+//// ftp.logout();
+// return false;
+// }
+// else {
+// for (int i = files.length-1; i >=0 ; i--) {
+// String fileName = files[i].getName();
+// String substring = fileName.substring(0, 2);
+// System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())+":读取到文件 = " + fileName);
+// if (substring.contains("ne")) {
+// //把文件下载到本地
+// long l = System.currentTimeMillis();
+// FtpUtil.downloadFtpFile(ftpHost, ftpUserNameIn, ftpPasswordIn, ftpPort, ftpPath, localPath, fileName);
+// long x = System.currentTimeMillis();
+// System.out.println("下载文件耗时 = " + (x-l)+" 毫秒");
+// //数据转换
+// String json = OutJson.TestJson(fileName);
+// //取出map
+// Map<String,Object> map = JSON.parseObject(json, Map.class);
+// //取出 key/uuid,取出结果
+// String uuid = null;
+// Result result = new Result();
+// for (Map.Entry entry : map.entrySet()) {
+// Object value = entry.getValue();
+// //转换
+// result = JSON.parseObject(value.toString(), Result.class);
+// }
+// if (null!=result) {
+// examScoreHandler(result);
+// }
+// //删除本地文件
+// MysqlCenlint.deletess(fileName);
+// //删除 ftp 文件
+// FtpUtil.deleteFile(ftpHost, ftpPort, ftpUserNameIn, ftpPasswordIn, ftpPath, fileName);
+// System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())+":成功删除ftp文件 = " + fileName);
+// }
+// }
+// //关闭流
+//// ftp.completePendingCommand();
+//// ftp.logout();
+// }
+// } catch (Exception e) {
+// System.out.println("ftp连接失败");
+// e.printStackTrace();
+// } finally {
+// try {
+// ftp.logout();
+// } catch (IOException e) {
+// e.printStackTrace();
+// }
+// if (ftp.isConnected()) {
+// try {
+// ftp.disconnect();
+// } catch (IOException e) {
+// e.printStackTrace();
+// }
+// }
+// }
+// return false;
+// }
+
+// /**
+// * 实操成绩导入修改
+// * @param result
+// */
+// private void examScoreHandler(Result result) {
+// //导入的人员不存在
+// HandlerLog handlerLog = new HandlerLog();
+// handlerLog.setCreateTime(new Date());
+// handlerLog.setDeptId(deptId);
+// handlerLog.setOperatorTime(new Date());
+// handlerLog.setType(4);
+// handlerLog.setRemark(result.getMsg());
+// //插入记录
+// handlerLogService.save(handlerLog);
+// }
/**
* 报名信息处理
@@ -847,5 +992,46 @@
}
}
+ /**
+ * 考试成绩同步
+ * @return
+ */
+ public void examScoreSync() {
+ System.out.println("考试成绩同步"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
+ //查询当天的考试成绩
+ List<ExamScore> examScoreList = examScoreService.getExamScoreList();
+ if (examScoreList.size()>0) {
+ //遍历计算成绩
+ for (ExamScore examScore : examScoreList) {
+ ExamAnswerRecord record = new ExamAnswerRecord();
+ record.setScoreId(examScore.getId());
+ List<ExamAnswerRecord> list = examAnswerRecordService.list(new QueryWrapper<>(record));
+ if (list.size()>0){
+ int num = 0;
+ for (ExamAnswerRecord examAnswerRecord : list) {
+ num = num + examAnswerRecord.getAnswerScore();
+ examScore.setExamEndTime(examAnswerRecord.getAnswerTime());
+ }
+ examScore.setTheoryGrade(num);
+ examScore.setAllGrade(Math.round(num/2));
+ //设置状态
+ if (num >= 60) {
+ examScore.setQualified(2);
+ } else {
+ examScore.setQualified(1);
+ }
+ 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() + "'";
+ myAsyncService.FTP(s1);
+ }
+ }
+ }
+ }
+
}
--
Gitblit v1.9.3