From 96286178ee1c257c130cb2ad964a781f36c4eee5 Mon Sep 17 00:00:00 2001 From: yn147 <2270338776@qq.com> Date: 星期三, 10 五月 2023 16:23:27 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/main/java/com/qxueyou/scc/admin/schoolRoll/impl/SchoolRollServiceImpl.java | 139 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 137 insertions(+), 2 deletions(-) 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 2c4c408..2d0694f 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,24 +1,39 @@ 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; +import com.qxueyou.scc.base.model.Result; import com.qxueyou.scc.base.service.impl.CommonAppService; 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; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.OutputStream; +import java.time.LocalDateTime; +import java.util.ArrayList; import java.util.List; @Service public class SchoolRollServiceImpl extends CommonAppService implements ISchoolRollService { - @Autowired - CommonAppService commonAppService; + @Override public List<StuStudent> findSchoolRollList(Integer limit, Integer pageNum, String keyword, String status) { + StringBuffer hql=new StringBuffer("from StuStudent where name like ? and status=? and deleteFlag is false"); List<Object> args = CollectionUtils.newList(keyword + "%", status); @@ -38,4 +53,124 @@ return findCount(hql.toString(),args); } + + @Override + 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); + + StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class); + + if(stuStudent!=null && classId!=null){ + StringBuffer ClaHql=new StringBuffer("from ClsClass where classId=? and deleteFlag is false"); + + List<Object> claArgs = CollectionUtils.newList(classId); + + ClsClass cLaClass = findUnique(ClaHql.toString(), claArgs, ClsClass.class); + + cLaClass.setStudentCount(cLaClass.getStudentCount()+1); + + stuStudent.setClassId(classId); + + save(stuStudent); + }else { + return new Result(false,"鐝骇涓嶅瓨鍦ㄦ垨瀛︾敓涓嶅瓨鍦�"); + } + } + + return new Result(true,"鍒嗙彮鎴愬姛"); + + } + + @Override + public void deriveStudentMessage() { + StringBuffer hql=new StringBuffer("from StuStudent where status=? and deleteFlag is false"); + + List<Object> args = CollectionUtils.newList("active"); + + List<StuStudent> stuStudents = find(hql.toString(), args, StuStudent.class); + + ExcelExportUtils<StuStudent> ex = new ExcelExportUtils<StuStudent>(); + String[] headers = { "濮撳悕", "鎬у埆" ,"鎵嬫満鍙�" ,"韬唤璇�"}; + List<StuStudent> dataset = new ArrayList<StuStudent>(); + for (StuStudent stuStudent: + stuStudents) { + StuStudent u = new StuStudent(); + u.setName(stuStudent.getName()); + u.setSex(stuStudent.getSex()); + u.setMobilePhone(stuStudent.getMobilePhone()); + u.setStudentNo(stuStudent.getStudentNo()); + dataset.add(u); + } + + ExcelExportParam<StuStudent> obj = new ExcelExportParam<StuStudent>(); + obj.setColData(dataset); + obj.setHeaders(headers); + + try { + OutputStream out = new FileOutputStream("D://Student.xls"); + obj.setOut(out); + ex.exportExcel(obj); + out.close(); + System.out.println("excel瀵煎嚭鎴愬姛锛�"); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + + try { + OutputStream out = new FileOutputStream("D://Student.xls"); + List<String> lst = new ArrayList<String>(); + lst.add("className"); + lst.add("userName"); + obj.setLstColumn(lst); + obj.setOut(out); + ex.exportExcelByColomn(obj); + out.close(); + System.out.println("excel鎸囧畾鍒楀鍑烘垚鍔燂紒"); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + @Override + public Result loopStudentIds(String[] studentIds) { + for (String studentId: + studentIds) { + auditStudent(studentId); + } + return new Result(true); + } + + private Result auditStudent(String studentId) { + StuStudent student = read(StuStudent.class, studentId); + TraceUtils.setUpdateTrace(student); + String currentTime = LocalDateTimeUtil.format(LocalDateTime.now(), "yyMMddHHmmssSSS"); + + String examCardNo = currentTime.concat(RandomUtil.randomNumbers(1)); + + student.setStudentNumber(examCardNo); + student.setStatus(StuStudent.STATUS_ACTIVE); + save(student); + + return new Result(true); + } + + @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; + } + } -- Gitblit v1.8.0