From 06d6372b451b964738cbfe2adb37e1da85d856ed Mon Sep 17 00:00:00 2001 From: 胡仁荣 <897853850@qq.com> Date: 星期四, 24 十一月 2022 16:05:03 +0800 Subject: [PATCH] 新增 --- src/main/java/com/qxueyou/scc/admin/schoolRoll/ISchoolRollService.java | 8 ++ src/main/java/com/qxueyou/scc/teach/student/service/impl/StudentService.java | 8 ++ src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseVerService.java | 1 src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseInfoService.java | 2 src/main/java/com/qxueyou/scc/admin/schoolRoll/impl/SchoolRollServiceImpl.java | 62 +++++++++++++++----- src/main/java/com/qxueyou/scc/controller/SchoolRollController.java | 31 +++++++-- src/main/java/com/qxueyou/scc/teach/student/model/StuStudent.java | 18 ++++- src/main/java/com/qxueyou/scc/exam/service/IExamService.java | 1 8 files changed, 100 insertions(+), 31 deletions(-) diff --git a/src/main/java/com/qxueyou/scc/admin/schoolRoll/ISchoolRollService.java b/src/main/java/com/qxueyou/scc/admin/schoolRoll/ISchoolRollService.java index 2c4ab25..63f4f27 100644 --- a/src/main/java/com/qxueyou/scc/admin/schoolRoll/ISchoolRollService.java +++ b/src/main/java/com/qxueyou/scc/admin/schoolRoll/ISchoolRollService.java @@ -1,5 +1,7 @@ package com.qxueyou.scc.admin.schoolRoll; +import com.qxueyou.scc.admin.classes.model.ClsClass; +import com.qxueyou.scc.base.model.Result; import com.qxueyou.scc.teach.student.model.StuStudent; import io.swagger.models.auth.In; @@ -10,9 +12,11 @@ int findSchoolRollListCount(String keyword,String status); - String updateSchool(String StudentId,String ClassId); + Result updateSchool(String [] studentIds,String classId); void deriveStudentMessage(); - Boolean auditStudent(String Student); + Result loopStudentIds(String[] studentIds); + + List<ClsClass> findClass(); } diff --git a/src/main/java/com/qxueyou/scc/admin/schoolRoll/impl/SchoolRollServiceImpl.java b/src/main/java/com/qxueyou/scc/admin/schoolRoll/impl/SchoolRollServiceImpl.java index 50c9114..2b978e2 100644 --- a/src/main/java/com/qxueyou/scc/admin/schoolRoll/impl/SchoolRollServiceImpl.java +++ b/src/main/java/com/qxueyou/scc/admin/schoolRoll/impl/SchoolRollServiceImpl.java @@ -1,5 +1,8 @@ package com.qxueyou.scc.admin.schoolRoll.impl; +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.util.RandomUtil; +import com.qxueyou.scc.admin.classes.model.ClsClass; import com.qxueyou.scc.admin.schoolRoll.ISchoolRollService; import com.qxueyou.scc.base.model.ExcelExportParam; import com.qxueyou.scc.base.model.Pager; @@ -8,8 +11,10 @@ import com.qxueyou.scc.base.util.ClientUtils; import com.qxueyou.scc.base.util.CollectionUtils; import com.qxueyou.scc.base.util.ExcelExportUtils; +import com.qxueyou.scc.base.util.TraceUtils; import com.qxueyou.scc.teach.student.model.StuStudent; import com.qxueyou.scc.user.model.UserRegistration; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -17,6 +22,7 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; +import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; @@ -49,20 +55,25 @@ } @Override - public String updateSchool(String StudentId, String ClassId) { - StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false"); + public Result updateSchool(String [] studentIds, String classId) { + for (String studentId: + studentIds) { + StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false"); - List<Object> args = CollectionUtils.newList(StudentId); + List<Object> args = CollectionUtils.newList(studentId); - StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class); + StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class); - if(stuStudent!=null && ClassId!=null){ - stuStudent.setClassId(ClassId); - save(stuStudent); - return "true"; + if(stuStudent!=null && classId!=null){ + stuStudent.setClassId(classId); + save(stuStudent); + }else { + return new Result(false,"班级不存在或学生不存在"); + } } - return "false"; + return new Result(true); + } @Override @@ -120,18 +131,37 @@ } @Override - public Boolean auditStudent(String Student) { - StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false"); + public Result loopStudentIds(String[] studentIds) { + for (String studentId: + studentIds) { + auditStudent(studentId); + } + return new Result(true); + } - List<Object> arg = CollectionUtils.newList(Student); + private Result auditStudent(String studentId) { + StuStudent student = read(StuStudent.class, studentId); + TraceUtils.setUpdateTrace(student); + String currentTime = LocalDateTimeUtil.format(LocalDateTime.now(), "yyMMddHHmmssSSS"); - StuStudent stuStudent = findUnique(hql.toString(), arg, StuStudent.class); + String examCardNo = currentTime.concat(RandomUtil.randomNumbers(1)); - stuStudent.setStatus(StuStudent.STATUS_ACTIVE); + student.setStudentNumber(examCardNo); + student.setStatus(StuStudent.STATUS_ACTIVE); + save(student); - Result save = save(stuStudent); + return new Result(true); + } - return save.isSuccess(); + @Override + public List<ClsClass> findClass() { + StringBuffer hql=new StringBuffer("from ClsClass where deleteFlag is false"); + + List<Object> arg = CollectionUtils.newList(); + + List<ClsClass> clsClasses = find(hql.toString(), arg, ClsClass.class); + + return clsClasses; } } diff --git a/src/main/java/com/qxueyou/scc/controller/SchoolRollController.java b/src/main/java/com/qxueyou/scc/controller/SchoolRollController.java index 3b3ffad..b204a3e 100644 --- a/src/main/java/com/qxueyou/scc/controller/SchoolRollController.java +++ b/src/main/java/com/qxueyou/scc/controller/SchoolRollController.java @@ -1,5 +1,6 @@ package com.qxueyou.scc.controller; +import com.qxueyou.scc.admin.classes.model.ClsClass; import com.qxueyou.scc.admin.schoolRoll.ISchoolRollService; import com.qxueyou.scc.base.model.Pager; import com.qxueyou.scc.base.model.Result; @@ -45,8 +46,8 @@ return new Result(true,"success", CollectionUtils.newObjectMap("schoolRollList", QBeanUtils.listBean2ListMap(schoolRollList, - CollectionUtils.newStringMap("name", "studentName", "studentNo", "studentNo","sex","sex", "status", - "status", "createTime", "createTime")), + CollectionUtils.newStringMap("name", "studentName","studentId","studentId", "studentNo", "studentNo","sex","sex", "status", + "status", "createTime", "createTime","mobilePhone","mobilePhone","studentNumber","studentNumber")), "schoolrollCount", count)); } @@ -56,9 +57,9 @@ * @return */ @ApiOperation(value = "给学员分配班级", notes = "") - @PutMapping(value = "/updateSchoolClass") - public String updateSchoolClass(String StudentId,String ClassId) { - return iSchoolRollService.updateSchool(StudentId, ClassId); + @GetMapping(value = "/updateSchoolClass") + public Result updateSchoolClass(String [] studentIds,String classId) { + return iSchoolRollService.updateSchool(studentIds, classId); } /** @@ -67,9 +68,9 @@ * @return */ @ApiOperation(value = "审核学员并生成学号", notes = "") - @PutMapping(value = "/auditStudent") - public Boolean auditStudent(String StudentId) { - return iSchoolRollService.auditStudent(StudentId); + @GetMapping(value = "/auditStudent") + public Result auditStudent(String studentIds) { + return iSchoolRollService.loopStudentIds(studentIds.split(",")); } /** @@ -83,4 +84,18 @@ iSchoolRollService.deriveStudentMessage(); } + /** + * 查询班级 + * + * @return + */ + @ApiOperation(value = "查询班级", notes = "") + @GetMapping(value = "/findClass") + public Result findClass() { + List<ClsClass> aClass = iSchoolRollService.findClass(); + return new Result(true,"success",CollectionUtils.newObjectMap("schoolRollList", QBeanUtils.listBean2ListMap(aClass, + CollectionUtils.newStringMap("name","classname","classId","classId")) + )); + } + } diff --git a/src/main/java/com/qxueyou/scc/exam/service/IExamService.java b/src/main/java/com/qxueyou/scc/exam/service/IExamService.java index 0b0c8fc..2e75322 100644 --- a/src/main/java/com/qxueyou/scc/exam/service/IExamService.java +++ b/src/main/java/com/qxueyou/scc/exam/service/IExamService.java @@ -68,6 +68,7 @@ * @return */ Result doStartExam(String examBatchId, String classId,String studentUserId); + Result doStartReExam(String examId,String studentUserId); /** diff --git a/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseInfoService.java b/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseInfoService.java index 0a0a36e..99b8d9e 100644 --- a/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseInfoService.java +++ b/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseInfoService.java @@ -753,12 +753,14 @@ } else { OrgText orgText = orgTextService.getOrgText(exerciseCompleteInfoId, OrgText.TABLE_WRITING_EXERCISE); orgText.setContent(content); + orgText.setCreator(ClientUtils.getUserName()); this.save(orgText); } if (submitType > 0) { exerciseCompleteInfo.setSubmitTime(new Date()); exerciseCompleteInfo.setCompleteStatus(ExerciseCompleteInfo.STATUS_COMMIT); + exerciseCompleteInfo.setCreator(ClientUtils.getUserName()); } this.save(exerciseCompleteInfo); diff --git a/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseVerService.java b/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseVerService.java index 37bb6d3..9d0d70f 100644 --- a/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseVerService.java +++ b/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseVerService.java @@ -2978,7 +2978,6 @@ log.setStatus(status); log.setUrl(url); - this.save(log); return log.getExerciseDataLogId(); diff --git a/src/main/java/com/qxueyou/scc/teach/student/model/StuStudent.java b/src/main/java/com/qxueyou/scc/teach/student/model/StuStudent.java index de56938..221fcb6 100644 --- a/src/main/java/com/qxueyou/scc/teach/student/model/StuStudent.java +++ b/src/main/java/com/qxueyou/scc/teach/student/model/StuStudent.java @@ -53,24 +53,26 @@ private String mobilePhone; private BigDecimal studyDuration; private BigDecimal score; + private String studentNumber; private String attendanceStatus; public StuStudent() { } public StuStudent(String studentId, Date createTime, Date updateTime, String creator, String createId, - boolean deleteFlag) { + boolean deleteFlag,String studentNumber) { this.studentId = studentId; this.createTime = createTime; this.updateTime = updateTime; this.creator = creator; this.createId = createId; this.deleteFlag = deleteFlag; + this.studentNumber=studentNumber; } public StuStudent(String studentId, Date createTime, Date updateTime, String creator, String createId, String updator, String updateId, boolean deleteFlag, String userId, String name, String classId, - String tenantId, String status, String attendanceStatus) { + String tenantId, String status, String attendanceStatus,String studentNumber) { this.studentId = studentId; this.createTime = createTime; this.updateTime = updateTime; @@ -85,6 +87,7 @@ this.tenantId = tenantId; this.status = status; this.attendanceStatus = attendanceStatus; + this.studentNumber=studentNumber; } @Id @@ -274,7 +277,14 @@ public void setSubjectId(String subjectId) { this.subjectId = subjectId; } - - + + @Column(name = "STUDENTSUMBER", length=30) + public String getStudentNumber() { + return studentNumber; + } + + public void setStudentNumber(String studentNumber) { + this.studentNumber = studentNumber; + } } diff --git a/src/main/java/com/qxueyou/scc/teach/student/service/impl/StudentService.java b/src/main/java/com/qxueyou/scc/teach/student/service/impl/StudentService.java index 5222a92..b1b5b0f 100644 --- a/src/main/java/com/qxueyou/scc/teach/student/service/impl/StudentService.java +++ b/src/main/java/com/qxueyou/scc/teach/student/service/impl/StudentService.java @@ -1,11 +1,14 @@ package com.qxueyou.scc.teach.student.service.impl; +import java.time.LocalDateTime; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.util.RandomUtil; import com.qxueyou.scc.admin.classes.model.ClsClass; import com.qxueyou.scc.exam.model.ExamResultV; import org.apache.commons.lang3.StringUtils; @@ -238,6 +241,11 @@ } TraceUtils.setUpdateTrace(student); + String currentTime = LocalDateTimeUtil.format(LocalDateTime.now(), "yyMMddHHmmssSSS"); + + String examCardNo = currentTime.concat(RandomUtil.randomNumbers(1)); + + student.setStudentNumber(examCardNo); student.setStatus(status); save(student); -- Gitblit v1.8.0