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