瀏覽代碼

添加代码

夏文涛 2 年之前
父節點
當前提交
3efefa460d
共有 39 個文件被更改,包括 2670 次插入557 次删除
  1. 290 382
      .idea/workspace.xml
  2. 1 1
      src/main/java/com/template/AutoCode.java
  3. 4 0
      src/main/java/com/template/api/SmartClassControllerAPI.java
  4. 4 0
      src/main/java/com/template/api/SmartGradeControllerAPI.java
  5. 92 0
      src/main/java/com/template/api/SmartScoreControllerAPI.java
  6. 7 0
      src/main/java/com/template/api/SmartUserControllerAPI.java
  7. 5 0
      src/main/java/com/template/common/utils/TimeExchange.java
  8. 24 0
      src/main/java/com/template/controller/SmartClassController.java
  9. 24 3
      src/main/java/com/template/controller/SmartGradeController.java
  10. 562 0
      src/main/java/com/template/controller/SmartScoreController.java
  11. 5 0
      src/main/java/com/template/controller/SmartUserController.java
  12. 26 0
      src/main/java/com/template/mapper/SmartScoreMapper.java
  13. 3 0
      src/main/java/com/template/mapper/SmartUserMapper.java
  14. 55 0
      src/main/java/com/template/model/enumModel/eExamType.java
  15. 126 0
      src/main/java/com/template/model/enumModel/eSubjectStatu.java
  16. 86 0
      src/main/java/com/template/model/pojo/SmartScore.java
  17. 28 0
      src/main/java/com/template/model/request/deleteSmartScoreRequest.java
  18. 63 0
      src/main/java/com/template/model/request/insertScoreRequest.java
  19. 70 0
      src/main/java/com/template/model/request/updateScoreRequest.java
  20. 37 0
      src/main/java/com/template/model/vo/GradeVo.java
  21. 57 0
      src/main/java/com/template/model/vo/ScorePageVo.java
  22. 57 0
      src/main/java/com/template/model/vo/ScoreVo.java
  23. 22 0
      src/main/java/com/template/model/vo/SemesterVo.java
  24. 3 1
      src/main/java/com/template/services/SmartClassService.java
  25. 3 0
      src/main/java/com/template/services/SmartGradeService.java
  26. 35 0
      src/main/java/com/template/services/SmartScoreService.java
  27. 5 0
      src/main/java/com/template/services/SmartUserService.java
  28. 12 0
      src/main/java/com/template/services/impl/SmartClassServiceImpl.java
  29. 11 0
      src/main/java/com/template/services/impl/SmartGradeServiceImpl.java
  30. 85 0
      src/main/java/com/template/services/impl/SmartScoreServiceImpl.java
  31. 2 2
      src/main/java/com/template/services/impl/SmartUploadServiceImpl.java
  32. 26 5
      src/main/java/com/template/services/impl/SmartUserServiceImpl.java
  33. 16 0
      src/main/resources/mapper/template/SmartUserMapper.xml
  34. 568 0
      src/main/resources/sql/smart_middle.sql
  35. 二進制
      src/main/resources/sql/智慧校园系统表.xlsx
  36. 54 0
      target/classes/mapper/template/SmartUserMapper.xml
  37. 183 163
      target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  38. 19 0
      target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
  39. 二進制
      target/mybatis_plus-0.0.1-SNAPSHOT.jar.original

文件差異過大導致無法顯示
+ 290 - 382
.idea/workspace.xml


+ 1 - 1
src/main/java/com/template/AutoCode.java

@@ -56,7 +56,7 @@ public class AutoCode {
         mpg.setPackageInfo(pc);
         //4、策略配置
         StrategyConfig strategy = new StrategyConfig();
-        strategy.setInclude("smart_class","smart_grade","smart_attendance"); // 设置要映射的表名
+        strategy.setInclude("smart_score"); // 设置要映射的表名"smart_class","smart_grade","smart_attendance"
         strategy.setNaming(NamingStrategy.underline_to_camel);//下划线转驼峰
         strategy.setColumnNaming(NamingStrategy.underline_to_camel);//下划线转驼峰
         strategy.setEntityLombokModel(true); // 自动lombok;

+ 4 - 0
src/main/java/com/template/api/SmartClassControllerAPI.java

@@ -32,4 +32,8 @@ public interface SmartClassControllerAPI {
     @GetMapping(value = "/deleteSmartClassById")
     @ApiOperation(value = "根据ID删除指定班级", notes = "根据ID删除指定班级", httpMethod = "GET")
     CommonResult deleteSmartClassById(@RequestParam int id);
+
+    @GetMapping(value = "/querySmartClasss")
+    @ApiOperation(value = "班级集合列表数据", notes = "班级集合列表数据", httpMethod = "GET")
+    CommonResult querySmartClasss();
 }

+ 4 - 0
src/main/java/com/template/api/SmartGradeControllerAPI.java

@@ -32,4 +32,8 @@ public interface SmartGradeControllerAPI {
     @GetMapping(value = "/deleteSmartGradeById")
     @ApiOperation(value = "根据ID删除指定年级", notes = "根据ID删除指定年级", httpMethod = "GET")
     CommonResult deleteSmartGradeById(@RequestParam int id);
+
+    @GetMapping(value = "/querySmartGrades")
+    @ApiOperation(value = "年级集合列表数据", notes = "年级集合列表数据", httpMethod = "GET")
+    CommonResult querySmartGrades();
 }

+ 92 - 0
src/main/java/com/template/api/SmartScoreControllerAPI.java

@@ -0,0 +1,92 @@
+package com.template.api;
+
+import com.template.model.request.deleteSmartScoreRequest;
+import com.template.model.request.insertScoreRequest;
+import com.template.model.request.updateScoreRequest;
+import com.template.model.result.CommonResult;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.validation.BindingResult;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+
+
+@RequestMapping("/api/smartScore")
+@Api(tags = {"SmartScoreController"}, value = "成绩")
+public interface SmartScoreControllerAPI {
+
+    @GetMapping(value = "/querySmartSemesters")
+    @ApiOperation(value = "获取学期列表数据", notes = "获取学期列表数据", httpMethod = "GET")
+    CommonResult querySmartSemesters();
+
+    @GetMapping(value = "/queryUserGrade")
+    @ApiOperation(value = "根据学生ID获取年级和班级数据", notes = "根据学生ID获取年级和班级数据", httpMethod = "GET")
+    CommonResult queryUserGrade(@RequestParam int userId);
+
+    @GetMapping(value = "/querySubjects")
+    @ApiOperation(value = "获取科目集合数据", notes = "获取科目集合数据", httpMethod = "GET")
+    CommonResult querySubjects();
+
+    @GetMapping(value = "/queryExamTypes")
+    @ApiOperation(value = "获取考试类型集合数据", notes = "获取考试类型集合数据", httpMethod = "GET")
+    CommonResult queryExamTypes();
+
+    @GetMapping(value = "/querySmartSecordPage")
+    @ApiOperation(value = "获取学生分页数据", notes = "获取学生分页数据", httpMethod = "GET")
+    CommonResult querySmartSecordPage(@RequestParam int currentPage, @RequestParam int pageCount, String name);
+
+    @GetMapping(value = "/querySmartScorePage")
+    @ApiOperation(value = "获取成绩分页数据", notes = "获取成绩分页数据", httpMethod = "GET")
+    CommonResult querySmartScorePage(@RequestParam int currentPage, @RequestParam int pageCount, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore);
+
+    @PostMapping(value = "/insertSmartScore")
+    @ApiOperation(value = "添加成绩基本信息", notes = "添加成绩基本信息数据", httpMethod = "POST")
+    CommonResult insertSmartScore(@Validated @RequestBody insertScoreRequest isr, BindingResult bindingResult);
+
+    @PostMapping(value = "/updateSmartScoreById")
+    @ApiOperation(value = "编辑成绩基本信息数据", notes = "编辑成绩基本信息数据", httpMethod = "POST")
+    CommonResult updateSmartScoreById(@Validated @RequestBody updateScoreRequest usr, BindingResult bindingResult);
+
+    @GetMapping(value = "/querySmartScore")
+    @ApiOperation(value = "获取成绩基本信息数据", notes = "获取成绩基本信息数据", httpMethod = "GET")
+    CommonResult querySmartScore();
+
+    @GetMapping(value = "/queryPageSmartScore")
+    @ApiOperation(value = "成绩基本信息分页数据", notes = "成绩基本信息分页数据", httpMethod = "GET")
+    CommonResult queryPageSmartScores(@RequestParam int currentPage, @RequestParam int pageCount, String name);
+
+    @GetMapping(value = "/deleteSmartScoreById")
+    @ApiOperation(value = "根据ID删除指定成绩基本信息", notes = "根据ID删除指定成绩基本信息", httpMethod = "GET")
+    CommonResult deleteSmartScoreById(@RequestParam int id);
+
+    @PostMapping(value = "/deleteSmartScoreByIds")
+    @ApiOperation(value = "根据ID删除对应成绩基本信息", notes = "根据ID集合删除对应成绩基本信息", httpMethod = "POST")
+    CommonResult deleteSmartScoresByIds(@Validated @RequestBody deleteSmartScoreRequest dssr, BindingResult bindingResult);
+
+    /**
+     * 导出成绩数据
+     */
+    @GetMapping(value = "smartUserExport")
+    @ApiOperation(value = "导出成绩数据", notes = "导出成绩数据", httpMethod = "GET")
+    void smartUserExport(HttpServletResponse response, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore);
+
+    /**
+     * 导入成绩
+     * 导入的时候如果存在重复的数据就提示
+     */
+    @PostMapping(value = "/importSmartScoreExcel")
+    @ApiOperation(value = "导入成绩数据", notes = "导入成绩数据", httpMethod = "POST")
+    CommonResult importSmartScoreExcel(@RequestParam("file") MultipartFile file) throws IOException;
+
+    /**
+     * 导出成绩模板
+     * @return
+     */
+    @GetMapping(value = "/downloadScoreExcel")
+    @ApiOperation(value = "导出成绩Excel模板", notes = "导出成绩Excel模板", httpMethod = "GET")
+    CommonResult downloadScoreExcel();
+}

+ 7 - 0
src/main/java/com/template/api/SmartUserControllerAPI.java

@@ -86,4 +86,11 @@ public interface SmartUserControllerAPI {
     @ApiOperation(value = "根据当前用户ID获取受访学生数据", notes = "根据当前用户ID获取受访学生数据", httpMethod = "GET")
     CommonResult queryAffiliateUserById(@RequestParam int id);
 
+    /**
+     * 导出人员模板
+     * @return
+     */
+    @GetMapping(value = "/downloadUserExcel")
+    @ApiOperation(value = "导出人员Excel模板", notes = "导出人员Excel模板", httpMethod = "GET")
+    CommonResult downloadUserExcel();
 }

+ 5 - 0
src/main/java/com/template/common/utils/TimeExchange.java

@@ -239,6 +239,11 @@ public class TimeExchange {
         return sp.format(new Date());
     }
 
+    public static String getNowMonth() {
+        SimpleDateFormat sp = new SimpleDateFormat("MM");
+        return sp.format(new Date());
+    }
+
     // 获取当前时间
     public static String getOnlyTime() {
         SimpleDateFormat sp = new SimpleDateFormat("HH:mm:ss");

+ 24 - 0
src/main/java/com/template/controller/SmartClassController.java

@@ -3,11 +3,19 @@ package com.template.controller;
 
 import com.template.api.SmartClassControllerAPI;
 import com.template.model.pojo.SmartClass;
+import com.template.model.pojo.SmartGrade;
 import com.template.model.result.CommonResult;
+import com.template.model.vo.SemesterVo;
+import com.template.services.SmartClassService;
+import com.template.services.SmartGradeService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.BindingResult;
 
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * <p>
  * 楼栋表 前端控制器
@@ -19,6 +27,9 @@ import org.springframework.web.bind.annotation.RestController;
 @RestController
 public class SmartClassController implements SmartClassControllerAPI {
 
+    @Autowired
+    private SmartClassService smartClassService;
+
     @Override
     public CommonResult insertSmartClass(SmartClass smartApply, BindingResult bindingResult) {
         return null;
@@ -38,5 +49,18 @@ public class SmartClassController implements SmartClassControllerAPI {
     public CommonResult deleteSmartClassById(int id) {
         return null;
     }
+
+    @Override
+    public CommonResult querySmartClasss() {
+        List<SmartClass> datas = smartClassService.getSmartClasss();
+        List<SemesterVo> result = new ArrayList<>();
+        for (SmartClass data : datas) {
+            SemesterVo model = new SemesterVo();
+            model.setId(data.getId());
+            model.setName(data.getName());
+            result.add(model);
+        }
+        return CommonResult.ok(result);
+    }
 }
 

+ 24 - 3
src/main/java/com/template/controller/SmartGradeController.java

@@ -1,18 +1,23 @@
 package com.template.controller;
 
 
-import com.template.api.SmartAttendanceControllerAPI;
 import com.template.api.SmartGradeControllerAPI;
 import com.template.model.pojo.SmartGrade;
 import com.template.model.result.CommonResult;
+import com.template.model.vo.SemesterVo;
+import com.template.services.SmartGradeService;
+import com.template.services.SmartIdentityService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.BindingResult;
-import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * <p>
- * 楼栋表 前端控制器
+ * 年级表 前端控制器
  * </p>
  *
  * @author ceshi
@@ -21,6 +26,9 @@ import org.springframework.web.bind.annotation.RestController;
 @RestController
 public class SmartGradeController implements SmartGradeControllerAPI {
 
+    @Autowired
+    private SmartGradeService smartGradeService;
+
     @Override
     public CommonResult insertSmartGrade(SmartGrade smartApply, BindingResult bindingResult) {
         return null;
@@ -40,5 +48,18 @@ public class SmartGradeController implements SmartGradeControllerAPI {
     public CommonResult deleteSmartGradeById(int id) {
         return null;
     }
+
+    @Override
+    public CommonResult querySmartGrades() {
+        List<SmartGrade> datas = smartGradeService.getSmartGrades();
+        List<SemesterVo> result = new ArrayList<>();
+        for (SmartGrade data : datas) {
+            SemesterVo model = new SemesterVo();
+            model.setId(data.getId());
+            model.setName(data.getName());
+            result.add(model);
+        }
+        return CommonResult.ok(result);
+    }
 }
 

+ 562 - 0
src/main/java/com/template/controller/SmartScoreController.java

@@ -0,0 +1,562 @@
+package com.template.controller;
+
+
+import com.template.api.SmartScoreControllerAPI;
+import com.template.common.utils.ExcelUtils;
+import com.template.common.utils.paramUtils;
+import com.template.model.enumModel.*;
+import com.template.model.pojo.SmartScore;
+import com.template.model.pojo.SmartUser;
+import com.template.model.request.deleteSmartScoreRequest;
+import com.template.model.request.insertScoreRequest;
+import com.template.model.request.updateScoreRequest;
+import com.template.model.result.CommonResult;
+import com.template.model.result.PageUtils;
+import com.template.model.vo.*;
+import com.template.services.SmartScoreService;
+import com.template.services.SmartUserService;
+import org.apache.poi.hssf.usermodel.HSSFRow;
+import org.apache.poi.hssf.usermodel.HSSFSheet;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.DataFormatter;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFRow;
+import org.apache.poi.xssf.usermodel.XSSFSheet;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+/**
+ * <p>
+ * 楼栋表 前端控制器
+ * </p>
+ *
+ * @author ceshi
+ * @since 2024-01-02
+ */
+@RestController
+public class SmartScoreController implements SmartScoreControllerAPI {
+
+    @Autowired
+    private SmartScoreService smartScoreService;
+
+    @Autowired
+    private SmartUserService smartUserService;
+
+    @Override
+    public CommonResult querySmartSemesters() {
+        //判断当前时间的月份
+        // 2月-6月底是春季学期
+        // 9月-次年1月底是秋季学期
+        List<SmartScore> scores = smartScoreService.list(null);
+        List<String> semesters = scores.stream().map(SmartScore::getSemester).distinct().collect(Collectors.toList());
+
+        return CommonResult.ok(semesters);
+    }
+
+    @Override
+    public CommonResult queryUserGrade(int userId) {
+        //判断学生是否有效
+        SmartUser user = smartUserService.getSmartById(userId);
+        if (user == null) {
+            return CommonResult.fail("学生信息无效,无法获取年级、班级和学号");
+        }
+
+        if (eIdentityStatu.Student.getValue() != user.getIdentityId().intValue()) {
+            return CommonResult.fail("选择的用户身份非学生,无法获取年级、班级和学号");
+        }
+
+        GradeVo result = new GradeVo();
+        result.setGrade(user.getGrade());
+        result.setSchoolClass(user.getSchoolClass());
+        result.setCardNo(user.getCardNo());
+
+        return CommonResult.ok(result);
+    }
+
+    @Override
+    public CommonResult querySubjects() {
+        List<SemesterVo> semesters = new ArrayList<>();
+        for (int i = 1; i <= 12; i++) {
+            SemesterVo semester = new SemesterVo();
+            semester.setId(i);
+            semester.setName(eSubjectStatu.stringOf(i));
+            semesters.add(semester);
+        }
+
+        return CommonResult.ok(semesters);
+    }
+
+    @Override
+    public CommonResult queryExamTypes() {
+        List<SemesterVo> semesters = new ArrayList<>();
+        for (int i = 1; i <= 2; i++) {
+            SemesterVo semester = new SemesterVo();
+            semester.setId(i);
+            semester.setName(eExamType.stringOf(i));
+            semesters.add(semester);
+        }
+
+        return CommonResult.ok(semesters);
+    }
+
+    @Override
+    public CommonResult querySmartSecordPage(int currentPage, int pageCount, String name) {
+        PageUtils<GradeVo> result = smartUserService.querySmartSecordPage(currentPage, pageCount, name);
+        return CommonResult.ok(result);
+    }
+
+    /**
+     * 明天补查询条件
+     *
+     * @param currentPage
+     * @param pageCount
+     * @return
+     */
+    /**
+     * 按学期、年级、班级、学科、考试类型 和 成绩进行查询
+     * 获取成绩分页数据
+     *
+     * @param currentPage 当前页数
+     * @param pageCount   一页数据条数
+     * @param name        学号或名称
+     * @param semester    学期 需要转换为int
+     * @param grade       年级
+     * @param schoolClass 班级
+     * @param subject     科目 需要转换为int
+     * @param examType    考试类型 需要转换为int
+     * @param MinScore    最低成绩
+     * @param MaxScore    最高成绩
+     * @return
+     */
+    @Override
+    public CommonResult querySmartScorePage(int currentPage, int pageCount, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore) {
+
+        Integer subjectInt = subject == null ? null : eSubjectStatu.integerOf(subject);
+        Integer examTypeInt = examType == null ? null : eExamType.integerOf(examType);
+
+        PageUtils<ScorePageVo> pageData = smartScoreService.querySmartScorePage(currentPage, pageCount, name, semester, grade, schoolClass, subjectInt, examTypeInt, MinScore, MaxScore);
+
+        PageUtils<ScoreVo> result = null;
+
+        if (pageData != null) {
+            List<ScoreVo> datas = new ArrayList<>();
+            for (ScorePageVo spv : pageData.getList()) {
+                ScoreVo data = new ScoreVo();
+                data.setId(spv.getId());
+                data.setSemester(spv.getSemester());
+                data.setGrade(spv.getGrade());
+                data.setSchoolClass(spv.getSchoolClass());
+                data.setSubject(eSubjectStatu.stringOf(spv.getSubjectId()));
+                data.setExamType(eExamType.stringOf(spv.getExamType()));
+                data.setName(spv.getName());
+                data.setCardNo(spv.getCardNo());
+                data.setScore(spv.getScore());
+                datas.add(data);
+            }
+
+            result = new PageUtils<ScoreVo>(datas, pageData.getTotalCount(), pageData.getPageSize(), pageData.getCurrPage());
+        }
+
+        return CommonResult.ok(result);
+    }
+
+    @Override
+    public CommonResult insertSmartScore(insertScoreRequest isr, BindingResult bindingResult) {
+        if (bindingResult.hasErrors()) {
+            String st = paramUtils.getParamError(bindingResult);
+            return CommonResult.fail(st);
+        }
+
+        //判断学生是否有效
+        SmartUser user = smartUserService.getSmartById(isr.getUserId());
+        if (user == null) {
+            return CommonResult.fail("学生信息无效,无法添加学生成绩");
+        }
+
+        if (eIdentityStatu.Student.getValue() != user.getIdentityId().intValue()) {
+            return CommonResult.fail("选择的用户身份非学生,无法添加成绩");
+        }
+
+        SmartScore ss = new SmartScore();
+        ss.setSemester(isr.getSemester());
+        ss.setGrade(isr.getGrade());
+        ss.setSchoolClass(isr.getSchoolClass());
+        ss.setCardNo(isr.getCardNo());
+        ss.setUserId(isr.getUserId());
+        ss.setName(user.getName());
+        ss.setSubjectId(isr.getSubjectId());
+        ss.setExamType(isr.getExamType());
+        ss.setScore(isr.getScore());
+
+        int result = smartScoreService.insertSmartScore(ss);
+
+        return result > 0 ? CommonResult.ok("添加成功") : CommonResult.fail("添加失败");
+    }
+
+    @Override
+    public CommonResult updateSmartScoreById(updateScoreRequest usr, BindingResult bindingResult) {
+        if (bindingResult.hasErrors()) {
+            String st = paramUtils.getParamError(bindingResult);
+            return CommonResult.fail(st);
+        }
+
+        SmartScore score = smartScoreService.getSmartById(usr.getId());
+        if (score == null) {
+            return CommonResult.fail("成绩数据无效,无法编辑");
+        }
+
+        //判断学生是否有效
+        SmartUser user = smartUserService.getSmartById(usr.getUserId());
+        if (user == null) {
+            return CommonResult.fail("学生信息无效,无法编辑学生成绩");
+        }
+
+        if (eIdentityStatu.Student.getValue() != user.getIdentityId().intValue()) {
+            return CommonResult.fail("选择的用户身份非学生,无法编辑成绩");
+        }
+
+        score.setSemester(usr.getSemester());
+        score.setGrade(usr.getGrade());
+        score.setSchoolClass(usr.getSchoolClass());
+        score.setCardNo(usr.getCardNo());
+        score.setUserId(usr.getUserId());
+        score.setName(user.getName());
+        score.setSubjectId(usr.getSubjectId());
+        score.setExamType(usr.getExamType());
+        score.setScore(usr.getScore());
+
+        int result = smartScoreService.updateSmartScore(score);
+
+        return result > 0 ? CommonResult.ok("编辑成功") : CommonResult.fail("编辑失败");
+    }
+
+    @Override
+    public CommonResult querySmartScore() {
+        return null;
+    }
+
+    @Override
+    public CommonResult queryPageSmartScores(int currentPage, int pageCount, String name) {
+        return null;
+    }
+
+    @Override
+    public CommonResult deleteSmartScoreById(int id) {
+        return null;
+    }
+
+    @Override
+    public CommonResult deleteSmartScoresByIds(deleteSmartScoreRequest dssr, BindingResult bindingResult) {
+        int result = smartScoreService.deleteSmartScoreByIds(dssr.getIds());
+
+        return result > 0 ? CommonResult.ok("删除成功") : CommonResult.fail("删除失败");
+    }
+
+    @Override
+    public void smartUserExport(HttpServletResponse response, String name, String semester, String grade, String schoolClass, String subject, String examType, Double MinScore, Double MaxScore) {
+
+        Integer subjectInt = subject == null ? null : eSubjectStatu.integerOf(subject);
+        Integer examTypeInt = examType == null ? null : eExamType.integerOf(examType);
+
+        //获取成绩
+        List<ScorePageVo> scores = smartScoreService.querySmartScores(name, semester, grade, schoolClass, subjectInt, examTypeInt, MinScore, MaxScore);
+
+        //导出
+        Workbook workbook = new XSSFWorkbook();
+        Sheet sheet = workbook.createSheet("成绩管理");
+        Row headerRow = sheet.createRow(0);
+        headerRow.createCell(0).setCellValue("序号");
+        headerRow.createCell(1).setCellValue("学期");
+        headerRow.createCell(2).setCellValue("年级");
+        headerRow.createCell(3).setCellValue("班级");
+        headerRow.createCell(4).setCellValue("学科");
+        headerRow.createCell(5).setCellValue("考试类型");
+        headerRow.createCell(6).setCellValue("姓名");
+        headerRow.createCell(7).setCellValue("学号");
+        headerRow.createCell(8).setCellValue("成绩");
+
+        for (int i = 0; i < scores.size(); i++) {
+            ScorePageVo score = scores.get(i);
+
+            Row dataRow = sheet.createRow(i + 1);
+            dataRow.createCell(0).setCellValue(i + 1);
+            dataRow.createCell(1).setCellValue(score.getSemester());
+            dataRow.createCell(2).setCellValue(score.getGrade());
+            dataRow.createCell(3).setCellValue(score.getSchoolClass());
+            dataRow.createCell(4).setCellValue(eSubjectStatu.stringOf(score.getSubjectId()));
+            dataRow.createCell(5).setCellValue(eExamType.stringOf(score.getExamType()));
+            dataRow.createCell(6).setCellValue(score.getName());
+            dataRow.createCell(7).setCellValue(score.getCardNo());
+            dataRow.createCell(8).setCellValue(score.getScore());
+        }
+
+        // 将工作簿写入文件
+        ExcelUtils.excelDownload(workbook, "成绩信息.xlsx", response);
+    }
+
+    @Override
+    public CommonResult importSmartScoreExcel(MultipartFile file) throws IOException {
+        if(file.isEmpty() || file.getSize() == 0){
+            return CommonResult.fail("导入文件不能为空");
+        }
+
+        String ContentType = file.getContentType();
+        InputStream inputStream = file.getInputStream();
+        List<SmartScore> result = new ArrayList<>();
+
+        //xls格式文件
+        if(ContentType.equals(eFileType.Xls.getValue())){
+            CommonResult<List<SmartScore>> resultData = readXls(inputStream);
+            if(!resultData.isSuccess()){
+                return resultData;
+            }
+            result = resultData.getData();
+        }else if(ContentType.equals(eFileType.Xlsx.getValue())){
+            CommonResult<List<SmartScore>> resultData = readXlsx(inputStream);
+            if(!resultData.isSuccess()){
+                return resultData;
+            }
+            result = resultData.getData();
+        }else{
+            return CommonResult.fail("耗材数据导入只支持Xls、Xlsx");
+        }
+
+        boolean resultBool = smartScoreService.saveBatch(result);
+
+        return resultBool ? CommonResult.ok("导入成功") : CommonResult.fail("导入失败");
+    }
+
+    @Override
+    public CommonResult downloadScoreExcel() {
+        return CommonResult.ok("200","操作成功","https://wanzai-1306339220.cos.ap-shanghai.myqcloud.com/excelModel/成绩信息表.xlsx");
+    }
+
+    /**
+     * 导入Xls文件方法
+     * @param inputStream 文件流
+     * @return
+     * @throws IOException
+     */
+    private CommonResult<List<SmartScore>> readXls(InputStream inputStream) throws IOException {
+        HSSFWorkbook sheets = new HSSFWorkbook(inputStream);
+        List<SmartScore> result = new ArrayList<>();
+        List<String> scoreNames = new ArrayList<>();
+        //读取第一张sheet
+        HSSFSheet sheetAt = sheets.getSheetAt(0);
+
+        //获取成绩数据
+        List<SmartScore> scores = smartScoreService.list(null);
+        //获取学生数据
+        List<SmartUser> users = smartUserService.queryStudentDatas();
+
+        DataFormatter dataFormatter = new DataFormatter();
+
+        try{
+            //sheetAt.getLastRowNum():从0开始统计数量 所以得+1
+            for (int rowNum = 1;rowNum < sheetAt.getLastRowNum() + 1;rowNum++){
+
+                HSSFRow row = sheetAt.getRow(rowNum);
+
+                //判断每一列单元格是否符合规则
+                if(rowNum == 1){
+                    String semester = dataFormatter.formatCellValue(row.getCell(0));//学期
+                    if (!semester.equals("学期")) {
+                        return CommonResult.fail("导入数据第一列为学期");
+                    }
+                    String grade = dataFormatter.formatCellValue(row.getCell(1));//年级
+                    if (!grade.equals("年级")) {
+                        return CommonResult.fail("导入数据第二列为年级");
+                    }
+                    String schoolClass = dataFormatter.formatCellValue(row.getCell(2));//班级
+                    if (!schoolClass.equals("班级")) {
+                        return CommonResult.fail("导入数据第三列为班级");
+                    }
+                    String subject = dataFormatter.formatCellValue(row.getCell(3));//学科
+                    if (!subject.equals("学科")) {
+                        return CommonResult.fail("导入数据第四列为学科");
+                    }
+                    String examType = dataFormatter.formatCellValue(row.getCell(4));//考试类型
+                    if (!examType.equals("考试类型")) {
+                        return CommonResult.fail("导入数据第四列为考试类型");
+                    }
+                    String name = dataFormatter.formatCellValue(row.getCell(5));//姓名
+                    if (!name.equals("姓名")) {
+                        return CommonResult.fail("导入数据第四列为姓名");
+                    }
+                    String cardNo = dataFormatter.formatCellValue(row.getCell(6));//学号
+                    if (!cardNo.equals("学号")) {
+                        return CommonResult.fail("导入数据第四列为学号");
+                    }
+                    String score = dataFormatter.formatCellValue(row.getCell(7));//成绩
+                    if (!score.equals("成绩")) {
+                        return CommonResult.fail("导入数据第四列为成绩");
+                    }
+                }else{
+                    SmartScore data = new SmartScore();
+                    String semester = dataFormatter.formatCellValue(row.getCell(0));//学期
+                    String grade = dataFormatter.formatCellValue(row.getCell(1));//年级
+                    String schoolClass = dataFormatter.formatCellValue(row.getCell(2));//班级
+                    String subject = dataFormatter.formatCellValue(row.getCell(3));//学科
+                    String examType = dataFormatter.formatCellValue(row.getCell(4));//考试类型
+                    String name = dataFormatter.formatCellValue(row.getCell(5));//姓名
+                    String cardNo = dataFormatter.formatCellValue(row.getCell(6));//学号
+                    String score = dataFormatter.formatCellValue(row.getCell(7));//成绩
+
+                    //数据重复性判断 学期 + 学号 + 科目
+                    String existData = semester + cardNo + subject;
+                    scoreNames.add(existData);
+                    if(scoreNames.stream().distinct().count() != scoreNames.size()){
+                        return CommonResult.fail("导入的Excel中的"+existData+"存在重复数据");
+                    }
+
+                    //重复数据提示
+                    long exist = scores.stream().filter(e -> e.getSemester().equals(semester) && e.getCardNo().equals(cardNo) && e.getSubjectId().equals(eSubjectStatu.integerOf(subject))).count();
+                    if (exist > 0) {
+                        return CommonResult.fail(existData + "成绩数据在系统中已存在,请勿重复导入");
+                    }
+
+                    data.setSemester(semester);
+                    data.setGrade(grade);
+                    data.setSchoolClass(schoolClass);
+                    data.setCardNo(cardNo);
+                    data.setName(name);
+                    Optional<SmartUser> user = users.stream().filter(e -> e.getCardNo().equals(cardNo)).findFirst();
+                    if(user != null && user.isPresent()){
+                        data.setUserId(user.get().getId());
+                    }
+                    data.setSubjectId(eSubjectStatu.integerOf(subject));
+                    data.setExamType(eExamType.integerOf(examType));
+                    data.setScore(Double.valueOf(score));
+
+                    result.add(data);
+                }
+            }
+        }catch (Exception e){
+            return CommonResult.fail("请按模板格式导入数据");
+        }
+
+        return CommonResult.ok(result);
+    }
+
+    /**
+     * 导入Xlsx文件方法
+     * @param inputStream 文件流
+     * @return
+     * @throws IOException
+     */
+    private CommonResult<List<SmartScore>> readXlsx(InputStream inputStream) throws IOException {
+        XSSFWorkbook sheets = new XSSFWorkbook(inputStream);
+        List<SmartScore> result = new ArrayList<>();
+        List<String> scoreNames = new ArrayList<>();
+        //读取第一张sheet
+        XSSFSheet sheetAt = sheets.getSheetAt(0);
+
+        //获取成绩数据
+        List<SmartScore> scores = smartScoreService.list(null);
+        //获取学生数据
+        List<SmartUser> users = smartUserService.queryStudentDatas();
+
+        DataFormatter dataFormatter = new DataFormatter();
+
+        try{
+            //sheetAt.getLastRowNum():从0开始统计数量 所以得+1
+            for (int rowNum = 1;rowNum < sheetAt.getLastRowNum() + 1;rowNum++){
+
+                XSSFRow row = sheetAt.getRow(rowNum);
+
+                //判断每一列单元格是否符合规则
+                if(rowNum == 1){
+                    String semester = dataFormatter.formatCellValue(row.getCell(0));//学期
+                    if (!semester.equals("学期")) {
+                        return CommonResult.fail("导入数据第一列为学期");
+                    }
+                    String grade = dataFormatter.formatCellValue(row.getCell(1));//年级
+                    if (!grade.equals("年级")) {
+                        return CommonResult.fail("导入数据第二列为年级");
+                    }
+                    String schoolClass = dataFormatter.formatCellValue(row.getCell(2));//班级
+                    if (!schoolClass.equals("班级")) {
+                        return CommonResult.fail("导入数据第三列为班级");
+                    }
+                    String subject = dataFormatter.formatCellValue(row.getCell(3));//学科
+                    if (!subject.equals("学科")) {
+                        return CommonResult.fail("导入数据第四列为学科");
+                    }
+                    String examType = dataFormatter.formatCellValue(row.getCell(4));//考试类型
+                    if (!examType.equals("考试类型")) {
+                        return CommonResult.fail("导入数据第四列为考试类型");
+                    }
+                    String name = dataFormatter.formatCellValue(row.getCell(5));//姓名
+                    if (!name.equals("姓名")) {
+                        return CommonResult.fail("导入数据第四列为姓名");
+                    }
+                    String cardNo = dataFormatter.formatCellValue(row.getCell(6));//学号
+                    if (!cardNo.equals("学号")) {
+                        return CommonResult.fail("导入数据第四列为学号");
+                    }
+                    String score = dataFormatter.formatCellValue(row.getCell(7));//成绩
+                    if (!score.equals("成绩")) {
+                        return CommonResult.fail("导入数据第四列为成绩");
+                    }
+                }else{
+                    SmartScore data = new SmartScore();
+                    String semester = dataFormatter.formatCellValue(row.getCell(0));//学期
+                    String grade = dataFormatter.formatCellValue(row.getCell(1));//年级
+                    String schoolClass = dataFormatter.formatCellValue(row.getCell(2));//班级
+                    String subject = dataFormatter.formatCellValue(row.getCell(3));//学科
+                    String examType = dataFormatter.formatCellValue(row.getCell(4));//考试类型
+                    String name = dataFormatter.formatCellValue(row.getCell(5));//姓名
+                    String cardNo = dataFormatter.formatCellValue(row.getCell(6));//学号
+                    String score = dataFormatter.formatCellValue(row.getCell(7));//成绩
+
+                    //数据重复性判断 学期 + 学号 + 科目
+                    String existData = semester + cardNo + subject;
+                    scoreNames.add(existData);
+                    if(scoreNames.stream().distinct().count() != scoreNames.size()){
+                        return CommonResult.fail("导入的Excel中的"+existData+"存在重复数据");
+                    }
+
+                    //重复数据提示
+                    long exist = scores.stream().filter(e -> e.getSemester().equals(semester) && e.getCardNo().equals(cardNo) && e.getSubjectId().equals(eSubjectStatu.integerOf(subject))).count();
+                    if (exist > 0) {
+                        return CommonResult.fail(existData + "成绩数据在系统中已存在,请勿重复导入");
+                    }
+
+                    data.setSemester(semester);
+                    data.setGrade(grade);
+                    data.setSchoolClass(schoolClass);
+                    data.setCardNo(cardNo);
+                    data.setName(name);
+                    Optional<SmartUser> user = users.stream().filter(e -> e.getCardNo().equals(cardNo)).findFirst();
+                    if(user != null && user.isPresent()){
+                        data.setUserId(user.get().getId());
+                    }
+                    data.setSubjectId(eSubjectStatu.integerOf(subject));
+                    data.setExamType(eExamType.integerOf(examType));
+                    data.setScore(Double.valueOf(score));
+
+                    result.add(data);
+                }
+            }
+        }catch (Exception e){
+            return CommonResult.fail("请按模板格式导入数据");
+        }
+
+        return CommonResult.ok(result);
+    }
+}
+

+ 5 - 0
src/main/java/com/template/controller/SmartUserController.java

@@ -973,5 +973,10 @@ public class SmartUserController implements SmartUserControllerAPI {
         List<AffiliateUserVo> result = smartUserService.queryAffiliateUserById(id);
         return CommonResult.ok(result);
     }
+
+    @Override
+    public CommonResult downloadUserExcel() {
+        return CommonResult.ok("200","操作成功","https://wanzai-1306339220.cos.ap-shanghai.myqcloud.com/excelModel/人员信息表.xlsx");
+    }
 }
 

+ 26 - 0
src/main/java/com/template/mapper/SmartScoreMapper.java

@@ -0,0 +1,26 @@
+package com.template.mapper;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.template.model.pojo.SmartScore;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.template.model.vo.ScorePageVo;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 楼栋表 Mapper 接口
+ * </p>
+ *
+ * @author ceshi
+ * @since 2024-01-02
+ */
+@Repository
+public interface SmartScoreMapper extends BaseMapper<SmartScore> {
+    IPage<ScorePageVo> querySmartScorePage(IPage<ScorePageVo> page, @Param("name") String name,@Param("semester") String semester, @Param("grade") String grade,@Param("schoolClass") String schoolClass,@Param("subject") Integer subject,@Param("examType") Integer examType,@Param("MinScore") Double MinScore,@Param("MaxScore") Double MaxScore);
+
+    List<ScorePageVo> querySmartScores(@Param("name") String name,@Param("semester") String semester, @Param("grade") String grade,@Param("schoolClass") String schoolClass,@Param("subject") Integer subject,@Param("examType") Integer examType,@Param("MinScore") Double MinScore,@Param("MaxScore") Double MaxScore);
+
+}

+ 3 - 0
src/main/java/com/template/mapper/SmartUserMapper.java

@@ -4,6 +4,7 @@ import com.template.model.pojo.SmartUser;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.template.model.vo.AffiliateUserVo;
+import com.template.model.vo.GradeVo;
 import com.template.model.vo.UserVo;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
@@ -25,4 +26,6 @@ public interface SmartUserMapper extends BaseMapper<SmartUser> {
     IPage<UserVo> querySmartUserPages(IPage<UserVo> page,@Param("departmentIds") List<Integer> departmentIds, @Param("name") String name);
 
     List<SmartUser> querySmartUsers(@Param("departmentIds") List<Integer> departmentIds, @Param("name") String name);
+
+    IPage<GradeVo> querySmartSecordPage(IPage<GradeVo> page, @Param("name") String name);
 }

+ 55 - 0
src/main/java/com/template/model/enumModel/eExamType.java

@@ -0,0 +1,55 @@
+package com.template.model.enumModel;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/7/6 星期四 16:34
+ * @Description: com.template.model.enumModel
+ * @Version: 1.0
+ * 账号状态
+ */
+public enum eExamType {
+    Interim(1),//期中
+    Terminal(2);//期末
+
+    private int value;
+
+    eExamType(int value){
+        this.value = value;
+    }
+
+    public int getValue() {
+        return value;
+    }
+    public static eExamType valueOf(int value) {
+        switch (value) {
+            case 1:
+                return eExamType.Interim;
+            case 2:
+                return eExamType.Terminal;
+            default:
+                return null;
+        }
+    }
+
+    public static Integer integerOf(String value) {
+        switch (value) {
+            case "期中":
+                return 1;
+            case "期末":
+                return 2;
+            default:
+                return null;
+        }
+    }
+
+    public static String stringOf(Integer value) {
+        switch (value) {
+            case 1:
+                return "期中";
+            case 2:
+                return "期末";
+            default:
+                return null;
+        }
+    }
+}

+ 126 - 0
src/main/java/com/template/model/enumModel/eSubjectStatu.java

@@ -0,0 +1,126 @@
+package com.template.model.enumModel;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/7/26 星期三 14:55
+ * @Description: 学科枚举
+ * 七年级学科:语文 数学 英语         道德与法治  历史 生物 地理  美术 体育 音乐
+ * 八年级学科:语文 数学 英语 物理     道德与法治  历史 生物 地理  美术 体育 音乐
+ * 九年级学科:语文 数学 英语 物理 化学 道德与法治  历史 生物 地理  美术 体育 音乐
+ * @Version: 1.0
+ */
+public enum eSubjectStatu {
+    Chinese(1),//语文
+    Math(2),//数学
+    English(3),//英语
+    Physics(4),//物理
+    Chemistry(5),//化学
+    RuleOfLaw(6),//道德与法治
+    History(7),//历史
+    Organism(8),//生物
+    Geography(9),//地理
+    Arts(10),//美术
+    Sport(11),//体育
+    Music(12);//音乐
+
+
+    private int value;
+
+    eSubjectStatu(int value){
+        this.value = value;
+    }
+
+    public int getValue() {
+        return value;
+    }
+    public static eSubjectStatu valueOf(int value) {
+        switch (value) {
+            case 1:
+                return eSubjectStatu.Chinese;
+            case 2:
+                return eSubjectStatu.Math;
+            case 3:
+                return eSubjectStatu.English;
+            case 4:
+                return eSubjectStatu.Physics;
+            case 5:
+                return eSubjectStatu.Chemistry;
+            case 6:
+                return eSubjectStatu.RuleOfLaw;
+            case 7:
+                return eSubjectStatu.History;
+            case 8:
+                return eSubjectStatu.Organism;
+            case 9:
+                return eSubjectStatu.Geography;
+            case 10:
+                return eSubjectStatu.Arts;
+            case 11:
+                return eSubjectStatu.Sport;
+            case 12:
+                return eSubjectStatu.Music;
+            default:
+                return null;
+        }
+    }
+    public static String stringOf(Integer value) {
+        switch (value) {
+            case 1:
+                return "语文";
+            case 2:
+                return "数学";
+            case 3:
+                return "英语";
+            case 4:
+                return "物理";
+            case 5:
+                return "化学";
+            case 6:
+                return "道德与法治";
+            case 7:
+                return "历史";
+            case 8:
+                return "生物";
+            case 9:
+                return "地理";
+            case 10:
+                return "美术";
+            case 11:
+                return "体育";
+            case 12:
+                return "音乐";
+            default:
+                return null;
+        }
+    }
+    public static Integer integerOf(String value) {
+        switch (value) {
+            case "语文":
+                return 1;
+            case "数学":
+                return 2;
+            case "英语":
+                return 3;
+            case "物理":
+                return 4;
+            case "化学":
+                return 5;
+            case "道德与法治":
+                return 6;
+            case "历史":
+                return 7;
+            case "生物":
+                return 8;
+            case "地理":
+                return 9;
+            case "美术":
+                return 10;
+            case "体育":
+                return 11;
+            case "音乐":
+                return 12;
+            default:
+                return null;
+        }
+    }
+}

+ 86 - 0
src/main/java/com/template/model/pojo/SmartScore.java

@@ -0,0 +1,86 @@
+package com.template.model.pojo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.Version;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 楼栋表
+ * </p>
+ *
+ * @author ceshi
+ * @since 2024-01-02
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="SmartScore对象", description="成绩表")
+public class SmartScore implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "主键ID")
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    @ApiModelProperty(value = "学期")
+    private String semester;
+
+    @ApiModelProperty(value = "年级")
+    private String grade;
+
+    @ApiModelProperty(value = "班级")
+    private String schoolClass;
+
+    @ApiModelProperty(value = "卡号")
+    private String cardNo;
+
+    @ApiModelProperty(value = "名称")
+    private String name;
+
+    @ApiModelProperty(value = "学生")
+    private Integer userId;
+
+    @ApiModelProperty(value = "学科")
+    private Integer subjectId;
+
+    @ApiModelProperty(value = "考试类型")
+    private Integer examType;
+
+    @ApiModelProperty(value = "成绩")
+    private Double score;
+
+    @ApiModelProperty(value = "创建时间")
+    @TableField(fill = FieldFill.INSERT)
+    private Date createTime;
+
+    @ApiModelProperty(value = "更新时间")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Date updateTime;
+
+    @ApiModelProperty(value = "创建人员")
+    @TableField(fill = FieldFill.INSERT)
+    private String createUser;
+
+    @ApiModelProperty(value = "更新人员")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private String updateUser;
+
+    @ApiModelProperty(value = "逻辑删除 未删除:0;删除:1")
+    @TableField(fill = FieldFill.INSERT)
+    @TableLogic
+    private Integer deleted;
+
+
+}

+ 28 - 0
src/main/java/com/template/model/request/deleteSmartScoreRequest.java

@@ -0,0 +1,28 @@
+package com.template.model.request;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author ceshi
+ * @since 2023-12-04
+ */
+@Data
+public class deleteSmartScoreRequest {
+
+    /**
+     * id集合
+     */
+    @NotEmpty(message = "id集合不能为空")
+    private List<Integer> ids;
+
+}

+ 63 - 0
src/main/java/com/template/model/request/insertScoreRequest.java

@@ -0,0 +1,63 @@
+package com.template.model.request;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/7/7 星期五 14:27
+ * @Description: com.repair.model.request
+ * @Version: 1.0
+ */
+@Data
+public class insertScoreRequest {
+    /**
+     * 学期
+     */
+    @NotNull(message = "学期不能为空")
+    private String semester;
+
+    /**
+     * 年级
+     */
+    @NotBlank(message = "年级不能为空")
+    private String grade;
+
+    /**
+     * 班级
+     */
+    @NotBlank(message = "班级不能为空")
+    private String schoolClass;
+
+    /**
+     * 学号
+     */
+    @NotBlank(message = "学号不能为空")
+    private String cardNo;
+
+    /**
+     * 学生ID
+     */
+    @NotNull(message = "学生不能为空")
+    private Integer userId;
+
+    /**
+     * 学科
+     */
+    @NotNull(message = "学科不能为空")
+    private Integer subjectId;
+
+    /**
+     * 考试类型
+     */
+    @NotNull(message = "考试类型不能为空")
+    private Integer examType;
+
+    /**
+     * 成绩
+     */
+    @NotNull(message = "成绩不能为空")
+    private Double score;
+}

+ 70 - 0
src/main/java/com/template/model/request/updateScoreRequest.java

@@ -0,0 +1,70 @@
+package com.template.model.request;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/7/7 星期五 14:27
+ * @Description: com.repair.model.request
+ * @Version: 1.0
+ */
+@Data
+public class updateScoreRequest {
+
+    /**
+     * 数据ID
+     */
+    @NotNull(message = "数据ID不能为空")
+    private Integer id;
+
+    /**
+     * 学期
+     */
+    @NotNull(message = "学期不能为空")
+    private String semester;
+
+    /**
+     * 年级
+     */
+    @NotBlank(message = "年级不能为空")
+    private String grade;
+
+    /**
+     * 班级
+     */
+    @NotBlank(message = "班级不能为空")
+    private String schoolClass;
+
+    /**
+     * 学号
+     */
+    @NotBlank(message = "学号不能为空")
+    private String cardNo;
+
+    /**
+     * 学生ID
+     */
+    @NotNull(message = "学生不能为空")
+    private Integer userId;
+
+    /**
+     * 学科
+     */
+    @NotNull(message = "学科不能为空")
+    private Integer subjectId;
+
+    /**
+     * 考试类型
+     */
+    @NotNull(message = "考试类型不能为空")
+    private Integer examType;
+
+    /**
+     * 成绩
+     */
+    @NotNull(message = "成绩不能为空")
+    private Double score;
+}

+ 37 - 0
src/main/java/com/template/model/vo/GradeVo.java

@@ -0,0 +1,37 @@
+package com.template.model.vo;
+
+import lombok.Data;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/12/4 星期一 15:57
+ * @Description: com.template.model.vo
+ * @Version: 1.0
+ */
+@Data
+public class GradeVo {
+    /**
+     * 数据ID
+     */
+    private Integer id;
+
+    /**
+     * 用户名称
+     */
+    private String name;
+
+    /**
+     * 年级
+     */
+    private String grade;
+
+    /**
+     * 班级
+     */
+    private String schoolClass;
+
+    /**
+     * 学号
+     */
+    private String cardNo;
+}

+ 57 - 0
src/main/java/com/template/model/vo/ScorePageVo.java

@@ -0,0 +1,57 @@
+package com.template.model.vo;
+
+import lombok.Data;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/12/4 星期一 15:57
+ * @Description: com.template.model.vo
+ * @Version: 1.0
+ */
+@Data
+public class ScorePageVo {
+    /**
+     * 数据ID
+     */
+    private Integer id;
+
+    /**
+     * 学期
+     */
+    private String semester;
+
+    /**
+     * 年级
+     */
+    private String grade;
+
+    /**
+     * 班级
+     */
+    private String schoolClass;
+
+    /**
+     * 学科
+     */
+    private Integer subjectId;
+
+    /**
+     * 考试类型
+     */
+    private Integer examType;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 学号
+     */
+    private String cardNo;
+
+    /**
+     * 成绩
+     */
+    private Double score;
+}

+ 57 - 0
src/main/java/com/template/model/vo/ScoreVo.java

@@ -0,0 +1,57 @@
+package com.template.model.vo;
+
+import lombok.Data;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/12/4 星期一 15:57
+ * @Description: com.template.model.vo
+ * @Version: 1.0
+ */
+@Data
+public class ScoreVo {
+    /**
+     * 数据ID
+     */
+    private Integer id;
+
+    /**
+     * 学期
+     */
+    private String semester;
+
+    /**
+     * 年级
+     */
+    private String grade;
+
+    /**
+     * 班级
+     */
+    private String schoolClass;
+
+    /**
+     * 学科
+     */
+    private String subject;
+
+    /**
+     * 考试类型
+     */
+    private String examType;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 学号
+     */
+    private String cardNo;
+
+    /**
+     * 成绩
+     */
+    private Double score;
+}

+ 22 - 0
src/main/java/com/template/model/vo/SemesterVo.java

@@ -0,0 +1,22 @@
+package com.template.model.vo;
+
+import lombok.Data;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/12/4 星期一 15:57
+ * @Description: com.template.model.vo
+ * @Version: 1.0
+ */
+@Data
+public class SemesterVo {
+    /**
+     * 数据ID
+     */
+    private Integer id;
+
+    /**
+     * 名称
+     */
+    private String name;
+}

+ 3 - 1
src/main/java/com/template/services/SmartClassService.java

@@ -3,6 +3,8 @@ package com.template.services;
 import com.template.model.pojo.SmartClass;
 import com.baomidou.mybatisplus.extension.service.IService;
 
+import java.util.List;
+
 /**
  * <p>
  * 楼栋表 服务类
@@ -12,5 +14,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * @since 2023-12-25
  */
 public interface SmartClassService extends IService<SmartClass> {
-
+    List<SmartClass> getSmartClasss();
 }

+ 3 - 0
src/main/java/com/template/services/SmartGradeService.java

@@ -3,6 +3,8 @@ package com.template.services;
 import com.template.model.pojo.SmartGrade;
 import com.baomidou.mybatisplus.extension.service.IService;
 
+import java.util.List;
+
 /**
  * <p>
  * 楼栋表 服务类
@@ -13,4 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface SmartGradeService extends IService<SmartGrade> {
 
+    List<SmartGrade> getSmartGrades();
 }

+ 35 - 0
src/main/java/com/template/services/SmartScoreService.java

@@ -0,0 +1,35 @@
+package com.template.services;
+
+import com.template.model.pojo.SmartScore;
+import com.template.model.pojo.SmartScore;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.template.model.result.PageUtils;
+import com.template.model.vo.ScorePageVo;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 楼栋表 服务类
+ * </p>
+ *
+ * @author ceshi
+ * @since 2024-01-02
+ */
+public interface SmartScoreService extends IService<SmartScore> {
+    int insertSmartScore(SmartScore rns);
+
+    int updateSmartScore(SmartScore rns);
+
+    PageUtils<SmartScore> queryPageSmartScores(int currentPage, int pageCount, String name);
+
+    int deleteSmartScoreById(int id);
+
+    SmartScore getSmartById(int id);
+
+    int deleteSmartScoreByIds(List<Integer> ids);
+
+    PageUtils<ScorePageVo> querySmartScorePage(int currentPage, int pageCount, String name, String semester, String grade, String schoolClass, Integer subject, Integer examType, Double MinScore, Double MaxScore);
+
+    List<ScorePageVo> querySmartScores(String name, String semester, String grade, String schoolClass, Integer subject, Integer examType, Double MinScore, Double MaxScore);
+}

+ 5 - 0
src/main/java/com/template/services/SmartUserService.java

@@ -5,6 +5,7 @@ import com.template.model.pojo.SmartUser;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.template.model.result.PageUtils;
 import com.template.model.vo.AffiliateUserVo;
+import com.template.model.vo.GradeVo;
 import com.template.model.vo.UserVo;
 import org.apache.ibatis.annotations.Param;
 
@@ -37,5 +38,9 @@ public interface SmartUserService extends IService<SmartUser> {
 
     PageUtils<UserVo> querySmartUserPages(int currentPage, int pageCount, List<Integer> departmentIds, String name);
 
+    PageUtils<GradeVo> querySmartSecordPage(int currentPage, int pageCount, String name);
+
     List<SmartUser> querySmartUsers(List<Integer> departmentIds, String name);
+
+    List<SmartUser> queryStudentDatas();
 }

+ 12 - 0
src/main/java/com/template/services/impl/SmartClassServiceImpl.java

@@ -1,11 +1,16 @@
 package com.template.services.impl;
 
+import com.template.mapper.SmartClassMapper;
 import com.template.model.pojo.SmartClass;
 import com.template.mapper.SmartClassMapper;
+import com.template.model.pojo.SmartClass;
 import com.template.services.SmartClassService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * <p>
  * 楼栋表 服务实现类
@@ -16,5 +21,12 @@ import org.springframework.stereotype.Service;
  */
 @Service
 public class SmartClassServiceImpl extends ServiceImpl<SmartClassMapper, SmartClass> implements SmartClassService {
+    @Autowired
+    private SmartClassMapper smartClassMapper;
 
+    @Override
+    public List<SmartClass> getSmartClasss() {
+        List<SmartClass> result = smartClassMapper.selectList(null);
+        return result;
+    }
 }

+ 11 - 0
src/main/java/com/template/services/impl/SmartGradeServiceImpl.java

@@ -4,8 +4,11 @@ import com.template.model.pojo.SmartGrade;
 import com.template.mapper.SmartGradeMapper;
 import com.template.services.SmartGradeService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * <p>
  * 楼栋表 服务实现类
@@ -17,4 +20,12 @@ import org.springframework.stereotype.Service;
 @Service
 public class SmartGradeServiceImpl extends ServiceImpl<SmartGradeMapper, SmartGrade> implements SmartGradeService {
 
+    @Autowired
+    private SmartGradeMapper smartGradeMapper;
+
+    @Override
+    public List<SmartGrade> getSmartGrades() {
+        List<SmartGrade> result = smartGradeMapper.selectList(null);
+        return result;
+    }
 }

+ 85 - 0
src/main/java/com/template/services/impl/SmartScoreServiceImpl.java

@@ -0,0 +1,85 @@
+package com.template.services.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.template.mapper.SmartScoreMapper;
+import com.template.model.pojo.SmartScore;
+import com.template.model.pojo.SmartScore;
+import com.template.mapper.SmartScoreMapper;
+import com.template.model.result.PageUtils;
+import com.template.model.vo.ScorePageVo;
+import com.template.services.SmartScoreService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 楼栋表 服务实现类
+ * </p>
+ *
+ * @author ceshi
+ * @since 2024-01-02
+ */
+@Service
+public class SmartScoreServiceImpl extends ServiceImpl<SmartScoreMapper, SmartScore> implements SmartScoreService {
+    @Autowired
+    private SmartScoreMapper smartScoreMapper;
+
+    @Override
+    public int insertSmartScore(SmartScore sa) {
+        int result = smartScoreMapper.insert(sa);
+        return result;
+    }
+
+    @Override
+    public int updateSmartScore(SmartScore sa) {
+        int result = smartScoreMapper.updateById(sa);
+        return result;
+    }
+
+    @Override
+    public PageUtils<SmartScore> queryPageSmartScores(int currentPage, int pageCount, String name) {
+        Page<SmartScore> page = new Page<>(currentPage, pageCount);
+        QueryWrapper<SmartScore> queryWrapper = new QueryWrapper<>();
+        //queryWrapper.like(StringUtils.hasText(name), "name", name);
+        IPage<SmartScore> result = smartScoreMapper.selectPage(page, queryWrapper);
+        return new PageUtils<>(result);
+    }
+
+    @Override
+    public int deleteSmartScoreById(int id) {
+        int result = smartScoreMapper.deleteById(id);
+        return result;
+    }
+
+    @Override
+    public SmartScore getSmartById(int id) {
+        SmartScore result = smartScoreMapper.selectById(id);
+        return result;
+    }
+
+    @Override
+    public int deleteSmartScoreByIds(List<Integer> ids) {
+        int result = smartScoreMapper.deleteBatchIds(ids);
+        return result;
+    }
+
+
+    @Override
+    public PageUtils<ScorePageVo> querySmartScorePage(int currentPage, int pageCount, String name, String semester, String grade, String schoolClass, Integer subject, Integer examType, Double MinScore, Double MaxScore) {
+        Page<ScorePageVo> page = new Page<>(currentPage, pageCount);
+        IPage<ScorePageVo> result = smartScoreMapper.querySmartScorePage(page, name, semester, grade, schoolClass, subject, examType, MinScore, MaxScore);
+        return new PageUtils<>(result);
+    }
+
+    @Override
+    public List<ScorePageVo> querySmartScores(String name, String semester, String grade, String schoolClass, Integer subject, Integer examType, Double MinScore, Double MaxScore) {
+        List<ScorePageVo> result = smartScoreMapper.querySmartScores(name, semester, grade, schoolClass, subject, examType, MinScore, MaxScore);
+        return result;
+    }
+
+}

+ 2 - 2
src/main/java/com/template/services/impl/SmartUploadServiceImpl.java

@@ -73,7 +73,7 @@ public class SmartUploadServiceImpl implements SmartUploadService {
                 inputStream = file.getInputStream();
                 System.out.println("运行时间4:"+ TimeExchange.DateToString(new Date()));
                 // 设置文件路径
-                String filePath = getFilePath(originalFileName, "headImage");
+                String filePath = getFilePath(originalFileName, "excelModel");
                 System.out.println("运行时间5:"+ TimeExchange.DateToString(new Date()));
                 // 上传文件
                 String bucketName = cosConfig.getBucketName();
@@ -109,7 +109,7 @@ public class SmartUploadServiceImpl implements SmartUploadService {
     public void deleteByFileName(String fileName) {
         cosConfig.cosClient();
         // 文件桶内路径
-        String filePath = getDelFilePath(fileName, "headImage/");
+        String filePath = getDelFilePath(fileName, "excelModel/");
         cosClient.deleteObject(cosConfig.getBucketName(), filePath);
     }
 

+ 26 - 5
src/main/java/com/template/services/impl/SmartUserServiceImpl.java

@@ -4,12 +4,15 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.template.mapper.SmartUserMapper;
+import com.template.model.enumModel.eIdentityStatu;
 import com.template.model.pojo.SmartUser;
 import com.template.model.result.PageUtils;
 import com.template.model.vo.AffiliateUserVo;
+import com.template.model.vo.GradeVo;
 import com.template.model.vo.UserVo;
 import com.template.services.SmartUserService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
@@ -59,6 +62,14 @@ public class SmartUserServiceImpl extends ServiceImpl<SmartUserMapper, SmartUser
         return new PageUtils(result);
     }
 
+    @Override
+    public PageUtils<GradeVo> querySmartSecordPage(int currentPage, int pageCount, String name) {
+        Page<GradeVo> page = new Page<>();
+        page.setCurrent(currentPage);
+        page.setSize(pageCount);
+        IPage<GradeVo> result = smartUserMapper.querySmartSecordPage(page, name);
+        return new PageUtils(result);
+    }
 
     @Override
     public List<SmartUser> querySmartUsers(List<Integer> departmentIds, String name) {
@@ -70,10 +81,10 @@ public class SmartUserServiceImpl extends ServiceImpl<SmartUserMapper, SmartUser
     @Override
     public List<SmartUser> getSmartUserByIds(List<Integer> ids) {
         QueryWrapper<SmartUser> queryWrapper = new QueryWrapper();
-        queryWrapper.in("id",ids);
-        queryWrapper.eq("is_cancel",0);
+        queryWrapper.in("id", ids);
+        queryWrapper.eq("is_cancel", 0);
         List<SmartUser> result = smartUserMapper.selectList(queryWrapper);
-        return  result;
+        return result;
     }
 
     @Override
@@ -91,8 +102,8 @@ public class SmartUserServiceImpl extends ServiceImpl<SmartUserMapper, SmartUser
     @Override
     public SmartUser getSmartById(int id) {
         QueryWrapper<SmartUser> queryWrapper = new QueryWrapper();
-        queryWrapper.eq("is_cancel",0);
-        queryWrapper.eq("id",id);
+        queryWrapper.eq("is_cancel", 0);
+        queryWrapper.eq("id", id);
         SmartUser result = smartUserMapper.selectById(queryWrapper);
         return result;
     }
@@ -102,4 +113,14 @@ public class SmartUserServiceImpl extends ServiceImpl<SmartUserMapper, SmartUser
         List<AffiliateUserVo> result = smartUserMapper.queryAffiliateUserById(id);
         return result;
     }
+
+    @Override
+    public List<SmartUser> queryStudentDatas(){
+        QueryWrapper<SmartUser> queryWrapper = new QueryWrapper();
+        queryWrapper.eq("is_cancel", 0);
+        queryWrapper.eq("identity_id", eIdentityStatu.Student.getValue());
+        List<SmartUser> result = smartUserMapper.selectList(queryWrapper);
+        return result;
+    }
+
 }

+ 16 - 0
src/main/resources/mapper/template/SmartUserMapper.xml

@@ -77,4 +77,20 @@
         </if>
     </select>
 
+
+    <resultMap type="com.template.model.vo.GradeVo" id="smartSecordUserPageMap">
+        <result property="id" column="id"/>
+        <result property="name" column="name"/>
+        <result property="grade" column="grade"/>
+        <result property="schoolClass" column="school_class"/>
+        <result property="cardNo" column="card_no"/>
+    </resultMap>
+    <select id="querySmartSecordPage" resultType="com.template.model.vo.GradeVo" resultMap="smartSecordUserPageMap">
+        select id,name,grade,school_class,card_no from smart_user
+        where deleted = 0 and identity_id = 2
+        <if test="name != null and name != ''">
+            and name like '%' #{name} '%'
+        </if>
+    </select>
+
 </mapper>

+ 568 - 0
src/main/resources/sql/smart_middle.sql

@@ -0,0 +1,568 @@
+/*
+ Navicat Premium Data Transfer
+
+ Source Server         : 万载三中数据库217
+ Source Server Type    : MySQL
+ Source Server Version : 80022
+ Source Host           : 111.231.169.217:3306
+ Source Schema         : smart_middle
+
+ Target Server Type    : MySQL
+ Target Server Version : 80022
+ File Encoding         : 65001
+
+ Date: 04/01/2024 09:25:27
+*/
+
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
+
+-- ----------------------------
+-- Table structure for day_meter_detail
+-- ----------------------------
+DROP TABLE IF EXISTS `day_meter_detail`;
+CREATE TABLE `day_meter_detail`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT,
+  `name` varchar(80) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
+  `type` int(0) NULL DEFAULT NULL,
+  `date` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
+  `num` double(10, 0) NOT NULL DEFAULT 0 COMMENT '和上一次记录比较消耗的量',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 89 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for month_meter_detail
+-- ----------------------------
+DROP TABLE IF EXISTS `month_meter_detail`;
+CREATE TABLE `month_meter_detail`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT,
+  `name` varchar(80) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
+  `type` int(0) NULL DEFAULT NULL,
+  `date` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
+  `num` double(10, 0) NOT NULL DEFAULT 0 COMMENT '和上一次记录比较消耗的量',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 49 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_apply
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_apply`;
+CREATE TABLE `smart_apply`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '应用名称',
+  `logo` varchar(800) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'logo图标',
+  `category` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '类别',
+  `url_link` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '应用链接',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '应用管理' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_attendance
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_attendance`;
+CREATE TABLE `smart_attendance`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `user_id` int(0) NOT NULL COMMENT '用户ID',
+  `class_id` int(0) NOT NULL COMMENT '班级ID',
+  `attend_time` datetime(0) NOT NULL COMMENT '签到时间',
+  `status` int(0) NOT NULL COMMENT '考勤状态\r\n准时:0\r\n迟到:1\r\n缺卡:3\r\n请假:6\r\n超时打卡:7',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '楼栋表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_author_group
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_author_group`;
+CREATE TABLE `smart_author_group`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `parent_id` int(0) NOT NULL COMMENT '父级ID 为0表示是超级管理员',
+  `name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '权限名称',
+  `user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '管理员ID 多个用户用逗号隔开',
+  `apply_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '应用权限ID 多个应用用逗号隔开',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1887769493 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '权限组' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_authority
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_authority`;
+CREATE TABLE `smart_authority`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `user_id` int(0) NOT NULL COMMENT '用户ID',
+  `group_id` int(0) NOT NULL COMMENT '权限组ID',
+  `department_view` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '查看部门权限ID\r\n 多个部门用逗号隔开',
+  `department_manage` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '管理部门权限ID 多个部门用逗号隔开',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 104 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '权限管理' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_build
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_build`;
+CREATE TABLE `smart_build`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '楼栋名称',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '楼栋表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_build_meter
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_build_meter`;
+CREATE TABLE `smart_build_meter`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `build_id` int(0) NOT NULL COMMENT '楼栋ID',
+  `meter_id` int(0) NOT NULL COMMENT '水/电表ID',
+  `meter_type` int(0) NOT NULL COMMENT '水电表类型 水表:0  电表:1',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '楼栋水电表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_class
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_class`;
+CREATE TABLE `smart_class`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `grade_id` int(0) NOT NULL COMMENT '年级ID',
+  `class_uid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '班级uid',
+  `name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '班级名称',
+  `class_no` int(0) NOT NULL COMMENT '班级序号',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '楼栋表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_data_class
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_data_class`;
+CREATE TABLE `smart_data_class`  (
+  `ds_cls_id` int unsigned NOT NULL COMMENT '主键id',
+  `ds_cls_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据源类别名称',
+  `ds_cls_driver` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据源驱动',
+  `ds_cls_create_time` timestamp(0) NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+  `ds_cls_update_time` timestamp(0) NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
+  PRIMARY KEY (`ds_cls_id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 28 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '数据源类别' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_data_source
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_data_source`;
+CREATE TABLE `smart_data_source`  (
+  `ds_id` int unsigned NOT NULL COMMENT '主键id',
+  `ds_cls_id` int unsigned NOT NULL COMMENT '数据源类型id',
+  `ds_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据源名称',
+  `ds_url` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据源连接地址',
+  `ds_user` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据源账号',
+  `ds_password` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据源密码',
+  `ds_status` tinyint(1) NULL DEFAULT 0 COMMENT '数据源状态:0异常,1正常',
+  `ds_descrition` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据源描述',
+  `ds_source` int(0) NULL DEFAULT 0 COMMENT '来源数据库使用次数',
+  `ds_target` int(0) NULL DEFAULT 0 COMMENT '目的数据库使用次数',
+  `ds_create_time` timestamp(0) NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+  `ds_update_time` timestamp(0) NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
+  PRIMARY KEY (`ds_id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 28 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '数据源配置' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_data_source_log
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_data_source_log`;
+CREATE TABLE `smart_data_source_log`  (
+  `log_id` int unsigned NOT NULL COMMENT '主键id',
+  `log_action_name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作名称',
+  `log_action_host` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作主机ip',
+  `log_action_people` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作人',
+  `log_action_module` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作模块',
+  `log_action_business` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '业务名称',
+  `log_action_remote` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作人ip',
+  `log_action_class` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作类型:select login update delete create等',
+  `log_action_status` tinyint(1) NULL DEFAULT NULL COMMENT '操作状态:1成功,0失败',
+  `log_action_create_time` timestamp(0) NULL DEFAULT CURRENT_TIMESTAMP COMMENT '操作日志创建时间',
+  PRIMARY KEY (`log_id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 237 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '数据源操作日志' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_data_task
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_data_task`;
+CREATE TABLE `smart_data_task`  (
+  `tk_id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键id',
+  `tk_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '任务名称(唯一)',
+  `tk_dt_id` int(0) NULL DEFAULT NULL COMMENT '部门id',
+  `tk_ds_id_source` int unsigned NULL COMMENT '来源数据源id',
+  `tk_sync_policy` tinyint(1) NULL DEFAULT NULL COMMENT '同步策略:0插入更新,1更新标记,2清空插入',
+  `tk_exchange_type` tinyint(1) NULL DEFAULT NULL COMMENT '交换方式:0自定义SQL语句,1数据视图,2数据表',
+  `tk_sql` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据来源SQL语句',
+  `tk_ds_id_destination` int unsigned NULL COMMENT '目标数据源id',
+  `tk_dest_table` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '目标数据表',
+  `tk_exchange_server` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '交换服务器',
+  `tk_exchange_server_id` int(0) NULL DEFAULT NULL COMMENT '指定服务器id',
+  `tk_opt_cfg_auto_manual` tinyint(1) NULL DEFAULT 0 COMMENT '运行参数配置:0自动,1手动',
+  `tk_opt_cfg_rs_num` int(0) NULL DEFAULT 10 COMMENT '运行参数配置:记录数',
+  `tk_opt_cfg_threads_num` int(0) NULL DEFAULT 1 COMMENT '运行参数配置:线程数',
+  `tk_rs_incorrect_data` tinyint(1) NULL DEFAULT NULL COMMENT '是否记录错误数据:0是,1否',
+  `tk_ds_source_charset` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT 'UTF8' COMMENT '来源数据源字符集:UTF8 或 GBK',
+  `tk_ds_destination_charset` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT 'UTF8' COMMENT '目的数据源字符集:UTF8 或 GBK',
+  `tk_col_relationship` json NULL COMMENT '字段对应关系',
+  `tk_cron` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '任务定时表达式',
+  `tk_manual_or_auto` tinyint(1) NULL DEFAULT NULL COMMENT '手动或者定时执行:0定时执行,1手动执行',
+  `tk_exe_type` tinyint(1) NULL DEFAULT NULL COMMENT '执行方式:0间隔执行,1定点执行,2每天,3每周,4每月',
+  `tk_repet_time` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '重复时间',
+  `tk_activation` tinyint(1) NULL DEFAULT 0 COMMENT '是否激活()',
+  `tk_deleted` tinyint(1) NULL DEFAULT 0 COMMENT '删除标记:0未删除,1删除',
+  `tk_next_exe_time` timestamp(0) NULL DEFAULT NULL COMMENT '下次执行时间',
+  `tk_create_time` timestamp(0) NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+  `tk_update_time` timestamp(0) NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
+  PRIMARY KEY (`tk_id`) USING BTREE,
+  UNIQUE INDEX `idx_tk_name`(`tk_name`) USING BTREE COMMENT '任务名唯一'
+) ENGINE = InnoDB AUTO_INCREMENT = 52 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '数据源数据交换任务' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_department
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_department`;
+CREATE TABLE `smart_department`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `parent_id` int(0) NOT NULL COMMENT '父级ID\r\n 为0表示一级',
+  `name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT ' 部门名称',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '部门表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_evaluate_tdetail
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_evaluate_tdetail`;
+CREATE TABLE `smart_evaluate_tdetail`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `card_no` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '编号(学号)',
+  `score_item` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '评分项',
+  `parent_id` int(0) NOT NULL COMMENT '父级ID 为0表示是主项',
+  `score_num` double(10, 0) NOT NULL COMMENT '评分值',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '评分表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_evaluate_teacher
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_evaluate_teacher`;
+CREATE TABLE `smart_evaluate_teacher`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `card_no` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '编号(学号)',
+  `name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '姓名',
+  `term` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '学期',
+  `subject` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '学科',
+  `class_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '班级',
+  `evaluate_detail` json NULL COMMENT '评分详情',
+  `total_score` double(10, 0) NULL DEFAULT NULL COMMENT '总分',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_freeze_record
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_freeze_record`;
+CREATE TABLE `smart_freeze_record`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `user_id` int(0) NOT NULL COMMENT '用户ID',
+  `type` int(0) NOT NULL COMMENT '冻结方式\r\n 永久冻结:0\r\n 指定时间:1',
+  `deadline` datetime(0) NOT NULL COMMENT '截止时间',
+  `reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '冻结原因',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '冻结记录' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_grade
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_grade`;
+CREATE TABLE `smart_grade`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '年级名称',
+  `grade_no` int(0) NOT NULL COMMENT '年级序号',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '楼栋表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_identity
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_identity`;
+CREATE TABLE `smart_identity`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '身份名称',
+  `apply_id` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '应用管理 多个应用用逗号隔开',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '身份表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_meter
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_meter`;
+CREATE TABLE `smart_meter`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '水电表名称',
+  `meter_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '水电表号',
+  `meter_type` int(0) NOT NULL COMMENT '水电表类型 水表:0  电表:1',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '水电表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_meter_detail
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_meter_detail`;
+CREATE TABLE `smart_meter_detail`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `meter_id` int(0) NOT NULL COMMENT '水电表ID',
+  `meter_type` int(0) NOT NULL COMMENT '水电表类型  水表:0  电表:1',
+  `meter_power` double(10, 0) NOT NULL COMMENT '和上一次记录比较消耗的量',
+  `meter_power_record` double(10, 0) NOT NULL COMMENT '水电表能耗表当前记录数',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '水电表能耗明细表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_school
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_school`;
+CREATE TABLE `smart_school`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `school_code` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '学校编号',
+  `name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '学校名称',
+  `school_badge` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '校徽',
+  `logo_image` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '管理平台logo',
+  `official_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '公众号名称',
+  `appid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'APPID',
+  `original_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '原始ID',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '学校基本信息' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_score
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_score`;
+CREATE TABLE `smart_score`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `semester` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '学期',
+  `grade` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '年级',
+  `school_class` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '班级',
+  `card_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '卡号',
+  `name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '名称',
+  `user_id` int(0) NOT NULL COMMENT '学生',
+  `subject_id` int(0) NOT NULL COMMENT '学科',
+  `exam_type` int(0) NOT NULL COMMENT '考试类型',
+  `score` double NOT NULL COMMENT '成绩',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '楼栋表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_score_manage
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_score_manage`;
+CREATE TABLE `smart_score_manage`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `score_item` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '评分项',
+  `parent_id` int(0) NOT NULL COMMENT '父级ID 为0表示是主项',
+  `score_num` double(10, 0) NOT NULL COMMENT '评分值',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '平分项管理' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_screenshot
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_screenshot`;
+CREATE TABLE `smart_screenshot`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `screenshot_num` int(0) NOT NULL COMMENT '近一年截屏次数',
+  `triggers` int(0) NOT NULL COMMENT '触发惩罚 \r\n身份码提醒:0 \r\n冻结1小时:1\r\n冻结2小时:2\r\n冻结4小时:3\r\n冻结8小时:4\r\n冻结1天:5',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '截屏风控' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_screenshot_record
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_screenshot_record`;
+CREATE TABLE `smart_screenshot_record`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `user_id` int(0) NOT NULL COMMENT '用户ID',
+  `is_freeze` int(0) NOT NULL COMMENT '是否冻结 未冻结:0; 冻结:1',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '截屏记录' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_user
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_user`;
+CREATE TABLE `smart_user`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `card_no` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '编号(学号)',
+  `name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '姓名',
+  `identity_id` int(0) NOT NULL COMMENT '身份ID',
+  `id_card` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '身份证号',
+  `sex_id` int(0) NOT NULL COMMENT '性别  女:0   男:1',
+  `department_id` int(0) NULL DEFAULT NULL COMMENT '部门ID',
+  `head_image` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '人脸照片',
+  `grade` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '年级',
+  `college` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '学院',
+  `speciality` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '专业',
+  `school_class` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '班级',
+  `campus` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '校区',
+  `dormitory_number` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '宿舍号',
+  `phone` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手机号',
+  `affiliate` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '关联人 被关联用户的身份证号 多个用户用逗号隔开',
+  `title` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '职称',
+  `address` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '家庭住址',
+  `nation` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '民族',
+  `of_student` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '生源地',
+  `graduate` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '毕业学校',
+  `duties` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '职务',
+  `is_cancel` int(0) NOT NULL COMMENT '是否注销  未注销:0  注销:1',
+  `open_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '微信openId',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_visitor
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_visitor`;
+CREATE TABLE `smart_visitor`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `user_id` int(0) NOT NULL COMMENT '用户ID',
+  `user_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '访客姓名',
+  `user_phone` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '访客手机号',
+  `user_number` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '访客证件号',
+  `peer_num` int(0) NOT NULL COMMENT '同行人数',
+  `car_num` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '车牌号(家长不让填车牌号)',
+  `visit_reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '访问事由',
+  `statu` int(0) NOT NULL COMMENT '状态 待审核:1  已拒绝:2  已推送:3',
+  `visitor_time` datetime(0) NOT NULL COMMENT '来访时间',
+  `visitor_deadline` datetime(0) NOT NULL COMMENT '来访截止时间\r\n家长预约间隔:来访时间+4小时\r\n访客预约:',
+  `respondent` int(0) NULL DEFAULT NULL COMMENT '受访者ID',
+  `responcode` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '受访者编号',
+  `department_id` int(0) NULL DEFAULT NULL COMMENT '部门ID 选择第一个受访者自动把部门ID带过来',
+  `respondent_phone` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '受访者电话 学生没有 外部访问者有',
+  `respondent_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '受访者姓名',
+  `visitor_type` int(0) NOT NULL COMMENT '访客类型 家长:1 其他:2',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '访客预约' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for smart_warning
+-- ----------------------------
+DROP TABLE IF EXISTS `smart_warning`;
+CREATE TABLE `smart_warning`  (
+  `id` int(0) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `user_id` int(0) NOT NULL COMMENT '用户ID',
+  `type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '类型',
+  `location` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '地点',
+  `image` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '图片',
+  `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '备注',
+  `statu` int(0) NOT NULL COMMENT '状态 未处理:0 已处理:1 已推送:2',
+  `create_time` datetime(0) NOT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NOT NULL COMMENT '更新时间',
+  `create_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建人员',
+  `update_user` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '更新人员',
+  `deleted` int(0) NOT NULL COMMENT '逻辑删除 未删除:0;删除:1',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '预警信息' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- View structure for my_view
+-- ----------------------------
+DROP VIEW IF EXISTS `my_view`;
+CREATE ALGORITHM = UNDEFINED DEFINER = `root`@`%` SQL SECURITY DEFINER VIEW `my_view` AS select `smart_data_source`.`ds_cls_id` AS `ds_cls_id`,`smart_data_source`.`ds_name` AS `ds_name` from `smart_data_source` where (`smart_data_source`.`ds_status` = '1');
+
+SET FOREIGN_KEY_CHECKS = 1;

二進制
src/main/resources/sql/智慧校园系统表.xlsx


+ 54 - 0
target/classes/mapper/template/SmartUserMapper.xml

@@ -39,4 +39,58 @@
     </select>
 
 
+    <resultMap type="com.template.model.pojo.SmartUser" id="smartUsersMap">
+        <result property="cardNo" column="card_no"/>
+        <result property="name" column="name"/>
+        <result property="identityId" column="identity_id"/>
+        <result property="idCard" column="id_card"/>
+        <result property="sexId" column="sex_id"/>
+        <result property="departmentId" column="department_id"/>
+        <result property="headImage" column="head_image"/>
+        <result property="grade" column="grade"/>
+        <result property="college" column="college"/>
+        <result property="speciality" column="speciality"/>
+        <result property="schoolClass" column="school_class"/>
+        <result property="campus" column="campus"/>
+        <result property="dormitoryNumber" column="dormitory_number"/>
+        <result property="phone" column="phone"/>
+        <result property="affiliate" column="affiliate"/>
+        <result property="title" column="title"/>
+        <result property="address" column="address"/>
+        <result property="nation" column="nation"/>
+        <result property="ofStudent" column="of_student"/>
+        <result property="graduate" column="graduate"/>
+        <result property="duties" column="duties"/>
+    </resultMap>
+    <select id="querySmartUsers" resultType="com.template.model.pojo.SmartUser" resultMap="smartUsersMap">
+        select card_no,name,identity_id,id_card,sex_id,department_id,head_image,grade,college,speciality,school_class,campus,dormitory_number,
+        phone,affiliate,title,address,nation,of_student,graduate,duties from smart_user
+        where deleted = 0 and is_cancel = 0
+        <if test="departmentIds != null and departmentIds.size() > 0">
+            and department_id in
+            <foreach collection="departmentIds" item="departmentId" index="index" open="(" close=")" separator=",">
+                ${departmentId}
+            </foreach>
+        </if>
+        <if test="name != null and name != ''">
+            and name like '%' #{name} '%'
+        </if>
+    </select>
+
+
+    <resultMap type="com.template.model.vo.GradeVo" id="smartSecordUserPageMap">
+        <result property="id" column="id"/>
+        <result property="name" column="name"/>
+        <result property="grade" column="grade"/>
+        <result property="schoolClass" column="school_class"/>
+        <result property="cardNo" column="card_no"/>
+    </resultMap>
+    <select id="querySmartSecordPage" resultType="com.template.model.vo.GradeVo" resultMap="smartSecordUserPageMap">
+        select id,name,grade,school_class,card_no from smart_user
+        where deleted = 0 and identity_id = 2
+        <if test="name != null and name != ''">
+            and name like '%' #{name} '%'
+        </if>
+    </select>
+
 </mapper>

+ 183 - 163
target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst

@@ -1,95 +1,42 @@
 com\template\api\SmartDataSourceLogControllerAPI.class
-com\template\controller\SmartAttendanceController.class
-com\template\mapper\SmartAttendanceMapper.class
-com\template\api\SmartFreezeRecordControllerAPI.class
-com\template\controller\SmartDepartmentController.class
-com\template\services\SmartDataSourceService.class
 com\template\common\utils\DateUtils.class
-com\template\controller\SmartDataSourceLogController.class
 com\template\controller\SystemMenuController.class
 com\template\model\pojo\HomeSchoolServiceSendNoteToKidParam$Query$QueryBuilder.class
 com\template\services\impl\SmartDepartmentServiceImpl.class
 com\template\model\pojo\AttendanceServiceListAttendClassRecordsParam$RequestBody$RequestBodyBuilder.class
-com\template\controller\RepairAdminController.class
-com\template\model\pojo\AttendanceRuleListSchoolAttendRuleResult$Data.class
-com\template\model\vo\SystemMenuVo.class
-com\template\mapper\RepairAdminMapper.class
-com\template\model\request\insertFreezeRecordRequest.class
-com\template\services\SmartDataClassService.class
 com\template\model\request\manualFreezingRequest.class
-com\template\controller\SmartMeterController.class
 com\template\model\pojo\AttendanceRuleListSchoolAttendRuleResult$ResponseBody.class
-com\template\services\SmartAuthorityService.class
-com\template\model\pojo\AttendanceRuleListSchoolAttendRuleResult.class
 com\template\controller\SmartDataClassController.class
-com\template\mapper\SmartFreezeRecordMapper.class
 com\template\common\utils\TreeRecordsUtil.class
 com\template\common\exception\MyCustomException.class
-com\template\controller\LoginController.class
 com\template\services\impl\SystemUserServiceImpl.class
-com\template\model\request\insertSmartUserRequest.class
 com\template\services\SmartFreezeRecordService.class
 com\template\mapper\SmartWarningMapper.class
 com\template\model\result\PageUtils.class
-com\template\mapper\SmartSchoolMapper.class
 com\template\model\pojo\SmartUser.class
-com\template\config\smsConfig.class
 com\template\common\utils\TimeExchange$1.class
 com\template\api\SmartDepartmentControllerAPI.class
 com\template\services\SmartScreenshotRecordService.class
 com\template\model\vo\ApplyVo.class
-com\template\api\SmartDataTaskControllerAPI.class
-com\template\model\result\CommonResult.class
 com\template\config\ScheduleConfig.class
-com\template\model\pojo\SmartAuthorGroup.class
-com\template\api\SmartVisitorControllerAPI.class
-com\template\controller\SmartAuthorityController.class
-com\template\services\impl\SmartUploadServiceImpl.class
 com\template\MybatisPlusApplication.class
-com\template\common\utils\HttpClientUtils.class
-com\template\controller\WechatScanLoginController.class
-com\template\services\impl\SmartAuthorityServiceImpl.class
-com\template\common\result\Code.class
-com\template\api\SmartIdentityControllerAPI.class
-com\template\common\utils\Base64Util.class
-com\template\controller\SmsCodeController.class
-com\template\api\SmartMeterDetailControllerAPI.class
-com\template\model\pojo\OrgClassOpenSeewoUcOpenV1ClassFullRequest.class
-com\template\model\pojo\HomeSchoolServiceSendNoteToKidParam$Query.class
-com\template\api\SmartClassControllerAPI.class
 com\template\model\pojo\RepairAdmin.class
 com\template\controller\SmartGradeController.class
-com\template\common\utils\HttpClientUtils$LazyHolder.class
-com\template\model\vo\LoginVO.class
 com\template\mapper\SmartGradeMapper.class
-com\template\model\weixin\WechatUserUnionID.class
 com\template\model\tongji\EnergyTj.class
-com\template\api\SmartUserControllerAPI.class
-com\template\config\ParkConfig.class
 com\template\api\LoginControllerAPI.class
 com\template\common\utils\PropertiesUtil.class
-com\template\mapper\SmartDataSourceLogMapper.class
 com\template\handle\NonStaticResourceHttpRequestHandler.class
-com\template\model\request\queryAccountPageRequest.class
-com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam$RequestBody$RequestBodyBuilder.class
 com\template\model\pojo\SmartDepartment.class
 com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam$AttendanceRuleListSchoolAttendRuleParamBuilder.class
-com\template\model\request\insertIdentityRequest.class
 com\template\aop\LoginCheckAspect.class
-com\template\model\pojo\SystemUser.class
-com\template\mapper\SystemUserMapper.class
-com\template\services\RepairAdminService.class
 com\template\model\vo\ScreenshotRecordPageVo.class
 com\template\common\utils\SendSms.class
-com\template\model\vo\AffiliateUserVo.class
-com\template\services\impl\SmartApplyServiceImpl.class
 com\template\controller\SmartFreezeRecordController.class
 com\template\model\pojo\SmartGrade.class
 com\template\services\impl\SmartScreenshotServiceImpl.class
 com\template\annotation\PassToken.class
 com\template\model\pojo\AttendanceServiceListAttendClassRecordsResult$ResponseBody.class
-com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam$Query.class
-com\template\services\SmartGradeService.class
 com\template\common\exception\EmsExceptionHandler.class
 com\template\mapper\SmartUserMapper.class
 com\template\api\SmartAuthorGroupControllerAPI.class
@@ -98,45 +45,24 @@ com\template\model\pojo\OrgClassOpenSeewoUcOpenV1ClassFullParam$JSONRequestBody.
 com\template\model\enumModel\eVisitorType.class
 com\template\model\enumModel\eApproveStatu.class
 com\template\common\utils\HttpClientUtils$1.class
-com\template\services\impl\SmartUserServiceImpl.class
 com\template\mapper\SmsCodeMapper.class
-com\template\api\ExcelControllerAPI.class
-com\template\controller\SmartWarningController.class
-com\template\model\pojo\AttendanceServiceListAttendClassRecordsParam$Query$QueryBuilder.class
+com\template\model\vo\ScorePageVo.class
 com\template\services\impl\SmartVisitorServiceImpl.class
-com\template\api\SmartDataSourceControllerAPI.class
 com\template\model\pojo\OrgClassOpenSeewoUcOpenV1ClassFullResult.class
 com\template\model\vo\DepartmentTreeVo$DepartmentTreeVoBuilder.class
-com\template\model\pojo\SmartFreezeRecord.class
 com\template\common\utils\RandomTrackAlgorithm.class
 com\template\controller\SmartVisitorController.class
-com\template\handler\MyMetaObjectHandler.class
 com\template\mapper\SmartBuildMapper.class
-com\template\api\SmartWarningControllerAPI.class
 com\template\common\utils\CommonUtil.class
 com\template\api\SystemMenuControllerAPI.class
-com\template\controller\SmartClassController.class
 com\template\model\request\updateScreenshotRequest.class
-com\template\controller\SmartUserController.class
-com\template\mapper\SmartScreenshotMapper.class
 com\template\model\enumModel\ePunish.class
 com\template\controller\SmartSchoolController.class
-com\template\model\pojo\SmartMeterDetail.class
-com\template\model\request\insertDepartmentRequest.class
-com\template\controller\SmartApplyController.class
-com\template\mapper\SmartDepartmentMapper.class
-com\template\services\SmartDataTaskService.class
 com\template\services\impl\SmartClassServiceImpl.class
-com\template\common\constanst\Constanst.class
 com\template\mapper\SmartVisitorMapper.class
 com\template\model\pojo\SmartAttendance.class
-com\template\model\pojo\SmartVisitor.class
 com\template\model\vo\SmartEnumVo.class
-com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam$Query$QueryBuilder.class
-com\template\services\impl\WechatScanLoginServiceImpl.class
-com\template\model\request\loginRequest.class
 com\template\controller\Task.class
-com\template\model\pojo\SmsCode.class
 com\template\api\SmartAuthorityControllerAPI.class
 com\template\services\SmartScreenshotService.class
 com\template\model\request\changePasswordRequest.class
@@ -144,191 +70,113 @@ com\template\model\tongji\All.class
 com\template\mapper\WechatScanLoginMapper.class
 com\template\services\impl\SystemMenuServiceImpl.class
 com\template\services\SmartBuildService.class
-com\template\mapper\SmartScreenshotRecordMapper.class
 com\template\common\utils\DataBliu.class
-com\template\controller\UploadController.class
-com\template\api\SmartDataClassControllerAPI.class
-com\template\services\SmartClassService.class
-com\template\services\SmartWarningService.class
-com\template\mapper\SmartBuildMeterMapper.class
 com\template\model\vo\SmartFreezeRecordPageVo.class
 com\template\common\utils\QuartzJobUtils.class
 com\template\model\request\parentsAppointmentRequest.class
-com\template\common\utils\EncryptionUtil.class
 com\template\model\pojo\SmartBuild.class
 com\template\services\impl\SmartMeterServiceImpl.class
-com\template\services\impl\SmartAuthorGroupServiceImpl.class
 com\template\common\utils\smsUtil.class
-com\template\config\SeewoConfig.class
-com\template\model\pojo\AttendanceServiceListAttendClassRecordsParam$RequestBody.class
-com\template\services\impl\SmartDataClassServiceImpl.class
-com\template\model\pojo\SmartScreenshotRecord.class
 com\template\services\impl\SmartGradeServiceImpl.class
 com\template\controller\SmartBuildMeterController.class
-com\template\mapper\SmartAuthorGroupMapper.class
 com\template\mapper\SmartAuthorityMapper.class
-com\template\services\impl\RepairAdminServiceImpl.class
 com\template\common\utils\paramUtils.class
 com\template\services\SmartIdentityService.class
 com\template\api\SmartBuildMeterControllerAPI.class
 com\template\annotation\UserLoginCheck.class
 com\template\model\pojo\SystemMenu.class
 com\template\controller\SmartIdentityController.class
-com\template\services\SmsCodeService.class
-com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam.class
-com\template\services\SmartAttendanceService.class
 META-INF\spring-configuration-metadata.json
-com\template\model\pojo\SmartDataTask.class
-com\template\common\utils\JWTUtil.class
-com\template\model\enumModel\eLogOff.class
 com\template\model\request\updateIdentityRequest.class
 com\template\model\pojo\AttendanceServiceListAttendClassRecordsResult$RecordsItem.class
 com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam$RequestBody.class
-com\template\services\impl\SmartWarningServiceImpl.class
-com\template\common\exception\EmsException.class
-com\template\controller\ExcelController.class
-com\template\controller\ScheduleController.class
 com\template\services\impl\SmartMeterDetailServiceImpl.class
-com\template\model\pojo\AttendanceRuleListSchoolAttendRuleRequest.class
 com\template\core\JwtlnterceptorConfig.class
 com\template\model\request\insertScreenshotRequest.class
 com\template\services\impl\SmartSchoolServiceImpl.class
 com\template\model\request\updateSmartUserRequest.class
-com\template\services\SmartDataSourceLogService.class
 com\template\mapper\SmartClassMapper.class
 com\template\model\pojo\SmartClass.class
 com\template\common\utils\ValidateCode.class
 com\template\api\SmartScreenshotRecordControllerAPI.class
-com\template\api\SmsCodeControllerAPI.class
-com\template\controller\SmartBuildController.class
 com\template\model\pojo\SmartDataSourceLog.class
+com\template\common\utils\ExcelUtils.class
 com\template\model\pojo\AttendanceServiceListAttendClassRecordsResult.class
-com\template\model\weixin\userAuthor.class
-com\template\model\tongji\DayMeterDetail.class
 com\template\model\vo\DepartmentVo.class
+com\template\model\request\insertScoreRequest.class
 com\template\services\SmartAuthorGroupService.class
 com\template\model\request\updateDepartmentRequest.class
-com\template\model\weixin\HttpParame.class
 com\template\services\SmartSchoolService.class
-com\template\model\pojo\UnitTimeHelpModel.class
-com\template\api\UploadControllerAPI.class
-com\template\controller\SmartMeterDetailController.class
 com\template\core\CORSConfiguration$1.class
 com\template\services\impl\SmartAttendanceServiceImpl.class
-com\template\model\vo\UserVo.class
-com\template\model\pojo\AttendanceServiceListAttendClassRecordsResult$Data.class
 com\template\annotation\ControllerIsShow.class
-com\template\model\vo\ClassSettingDateVo.class
 com\template\model\request\UpdateSmartSchoolRequest.class
 com\template\model\tongji\MonthMeterDetail.class
 com\template\model\pojo\HomeSchoolServiceSendNoteToKidParam.class
 com\template\model\enumModel\eFreezeRecord.class
 com\template\model\pojo\HomeSchoolServiceSendNoteToKidResult.class
-com\template\model\pojo\HomeSchoolServiceSendNoteToKidParam$HomeSchoolServiceSendNoteToKidParamBuilder.class
 com\template\model\pojo\SmartAuthority.class
 com\template\services\SmartMeterDetailService.class
-com\template\config\CosConfig.class
+com\template\services\SmartScoreService.class
 com\template\model\enumModel\eIsSuper.class
-com\template\model\pojo\SmartApply.class
 com\template\mapper\SmartDataSourceMapper.class
-com\template\model\enumModel\eSexStatu.class
 com\template\model\pojo\AttendanceServiceListAttendClassRecordsParam$AttendanceServiceListAttendClassRecordsParamBuilder.class
-com\template\services\SmartDepartmentService.class
 com\template\model\pojo\AttendanceRuleListSchoolAttendRuleResult$Result.class
 com\template\model\weixin\AuthorListGroup.class
-com\template\api\SmartSchoolControllerAPI.class
 com\template\model\weixin\AccessToken.class
+com\template\controller\WechatScanLoginController$1.class
 com\template\api\WechatScanLoginControllerAPI.class
 com\template\model\pojo\AttendanceServiceListAttendClassRecordsParam.class
 com\template\model\weixin\AuthorAndGroup2.class
 com\template\mapper\SmartIdentityMapper.class
 com\template\model\pojo\SystemRole.class
-com\template\model\vo\VisitorPageVo.class
 com\template\model\request\freezeRepairAdminRequest.class
 com\template\common\utils\TimeExchange.class
-com\template\model\pojo\SmartMeter.class
 com\template\api\SmartMeterControllerAPI.class
 com\template\model\pojo\HomeSchoolServiceSendNoteToKidRequest.class
-com\template\services\impl\SmartDataSourceServiceImpl.class
-com\template\core\JwtAuthenticationInterceptor.class
-com\template\mapper\SmartMeterMapper.class
 com\template\mapper\SmartApplyMapper.class
+com\template\model\pojo\SmartDsColumnCor.class
 com\template\services\SmartUploadService.class
-com\template\model\tongji\Tj.class
-com\template\controller\SmartScreenshotController.class
-com\template\model\vo\SystemMenuTreeVo.class
-com\template\model\enumModel\eIdentityStatu.class
-com\template\controller\SmartDataTaskController.class
 com\template\model\enumModel\eExamineStatu.class
-com\template\model\weixin\AuthorAndGroup.class
-com\template\controller\LogInfoController.class
+com\template\model\pojo\SmartScore.class
 com\template\common\utils\TimeExchange2.class
-com\template\services\impl\SmartDataTaskServiceImpl.class
-com\template\api\SmartAttendanceControllerAPI.class
-com\template\model\vo\SystemMenuTreeVo$SystemMenuTreeVoBuilder.class
 com\template\common\utils\RequestUtils.class
 com\template\model\pojo\HomeSchoolServiceSendNoteToKidResult$ResponseBody.class
 com\template\controller\SmartDataSourceController.class
-com\template\model\result\BaseResult.class
+com\template\model\vo\ScoreVo.class
 com\template\api\SmartScreenshotControllerAPI.class
-com\template\services\SmartBuildMeterService.class
-com\template\model\weixin\Result.class
-com\template\core\CORSConfiguration.class
-com\template\api\LogInfoControllerAPI.class
-com\template\services\SmartMeterService.class
 com\template\model\vo\SystemMenuVo$SystemMenuVoBuilder.class
+com\template\controller\SmartScoreController.class
 com\template\services\impl\SmsCodeServiceImpl.class
-com\template\services\SmartApplyService.class
-com\template\controller\SmartScreenshotRecordController.class
-com\template\common\utils\HttpUtils.class
 com\template\model\pojo\SmartWarning.class
 com\template\services\impl\SmartBuildServiceImpl.class
 com\template\services\SmartUserService.class
-com\template\model\tongji\DAll.class
 com\template\model\vo\VisitorCountVo.class
-com\template\common\utils\AesUtils.class
 com\template\services\impl\SmartBuildMeterServiceImpl.class
-com\template\common\result\ResponseStatusEnum.class
 com\template\model\weixin\AuthorListGroup$AuthorListGroupBuilder.class
 com\template\mapper\SmartDataTaskMapper.class
-com\template\model\pojo\AttendanceServiceListAttendClassRecordsParam$Query.class
 com\template\AutoCode.class
-com\template\model\pojo\SmartBuildMeter.class
 com\template\model\tongji\MeterMonthData.class
-com\template\common\utils\AesUtil.class
-com\template\api\SmartGradeControllerAPI.class
 com\template\model\pojo\SmartScreenshot.class
 com\template\model\pojo\SmartIdentity.class
-com\template\common\utils\UUIDUtil.class
-com\template\mapper\SystemMenuMapper.class
-com\template\model\enumModel\eFileType.class
 com\template\services\WechatScanLoginService.class
-com\template\model\request\updateRepairAdminRequest.class
 com\template\model\request\otherAppointmentRequest.class
 com\template\services\impl\SmartIdentityServiceImpl.class
 com\template\services\SystemMenuService.class
 com\template\model\pojo\OrgClassOpenSeewoUcOpenV1ClassFullParam$JSONRequestBody$JSONRequestBodyBuilder.class
-com\template\api\SmartBuildControllerAPI.class
 com\template\model\enumModel\eWeekStatu.class
+com\template\model\vo\SemesterVo.class
 com\template\api\SmartApplyControllerAPI.class
 com\template\model\pojo\AttendanceServiceListAttendClassRecordsRequest.class
-com\template\api\RepairAdminControllerAPI.class
 com\template\model\enumModel\eStatu.class
 com\template\services\SmartVisitorService.class
 com\template\model\pojo\HomeSchoolServiceSendNoteToKidParam$RequestBody$RequestBodyBuilder.class
-com\template\mapper\SmartMeterDetailMapper.class
-com\template\model\vo\DepartmentTreeVo.class
 com\template\mapper\SmartDataClassMapper.class
-com\template\model\pojo\SmartDataClass.class
 com\template\model\pojo\SmartSchool.class
-com\template\services\impl\SmartDataSourceLogServiceImpl.class
-com\template\core\SwaggerConfiguration.class
 com\template\common\utils\FileUtils.class
-com\template\services\SystemUserService.class
+com\template\model\request\deleteSmartScoreRequest.class
 com\template\config\MyBatisPlusConfig.class
-com\template\common\utils\RSAUtils.class
 com\template\model\pojo\OrgClassOpenSeewoUcOpenV1ClassFullParam$OrgClassOpenSeewoUcOpenV1ClassFullParamBuilder.class
-com\template\services\impl\SmartFreezeRecordServiceImpl.class
 com\template\model\request\changeDepartmentRequest.class
 com\template\model\pojo\HomeSchoolServiceSendNoteToKidParam$RequestBody.class
 com\template\model\pojo\SmartDataSource.class
@@ -336,3 +184,175 @@ com\template\config\MySecurity.class
 com\template\model\pojo\OrgClassOpenSeewoUcOpenV1ClassFullResult$JSONResponseBody.class
 com\template\controller\SmartAuthorGroupController.class
 com\template\services\impl\SmartScreenshotRecordServiceImpl.class
+com\template\controller\SmartAttendanceController.class
+com\template\mapper\SmartAttendanceMapper.class
+com\template\api\SmartFreezeRecordControllerAPI.class
+com\template\controller\SmartDepartmentController.class
+com\template\services\SmartDataSourceService.class
+com\template\controller\SmartDataSourceLogController.class
+com\template\controller\RepairAdminController.class
+com\template\model\vo\GradeVo.class
+com\template\model\pojo\AttendanceRuleListSchoolAttendRuleResult$Data.class
+com\template\model\vo\SystemMenuVo.class
+com\template\mapper\RepairAdminMapper.class
+com\template\model\request\insertFreezeRecordRequest.class
+com\template\services\SmartDataClassService.class
+com\template\common\utils\DBUtil.class
+com\template\controller\SmartMeterController.class
+com\template\services\SmartAuthorityService.class
+com\template\model\pojo\AttendanceRuleListSchoolAttendRuleResult.class
+com\template\mapper\SmartFreezeRecordMapper.class
+com\template\controller\LoginController.class
+com\template\model\request\insertSmartUserRequest.class
+com\template\mapper\SmartSchoolMapper.class
+com\template\model\pojo\SmartDataSourceJobParams.class
+com\template\config\smsConfig.class
+com\template\api\SmartDataTaskControllerAPI.class
+com\template\model\result\CommonResult.class
+com\template\model\pojo\SmartAuthorGroup.class
+com\template\api\SmartVisitorControllerAPI.class
+com\template\controller\SmartAuthorityController.class
+com\template\services\impl\SmartUploadServiceImpl.class
+com\template\common\utils\HttpClientUtils.class
+com\template\controller\WechatScanLoginController.class
+com\template\services\impl\SmartAuthorityServiceImpl.class
+com\template\common\result\Code.class
+com\template\api\SmartIdentityControllerAPI.class
+com\template\common\utils\Base64Util.class
+com\template\model\request\updateScoreRequest.class
+com\template\controller\SmsCodeController.class
+com\template\api\SmartMeterDetailControllerAPI.class
+com\template\model\pojo\OrgClassOpenSeewoUcOpenV1ClassFullRequest.class
+com\template\model\pojo\HomeSchoolServiceSendNoteToKidParam$Query.class
+com\template\api\SmartClassControllerAPI.class
+com\template\common\utils\HttpClientUtils$LazyHolder.class
+com\template\model\vo\LoginVO.class
+com\template\model\weixin\WechatUserUnionID.class
+com\template\api\SmartUserControllerAPI.class
+com\template\config\ParkConfig.class
+com\template\mapper\SmartDataSourceLogMapper.class
+com\template\api\SmartScoreControllerAPI.class
+com\template\model\request\queryAccountPageRequest.class
+com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam$RequestBody$RequestBodyBuilder.class
+com\template\model\request\insertIdentityRequest.class
+com\template\model\pojo\SystemUser.class
+com\template\mapper\SystemUserMapper.class
+com\template\services\RepairAdminService.class
+com\template\model\vo\AffiliateUserVo.class
+com\template\services\impl\SmartApplyServiceImpl.class
+com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam$Query.class
+com\template\services\SmartGradeService.class
+com\template\model\enumModel\eSubjectStatu.class
+com\template\services\impl\SmartUserServiceImpl.class
+com\template\api\ExcelControllerAPI.class
+com\template\controller\SmartWarningController.class
+com\template\model\pojo\AttendanceServiceListAttendClassRecordsParam$Query$QueryBuilder.class
+com\template\api\SmartDataSourceControllerAPI.class
+com\template\model\pojo\SmartFreezeRecord.class
+com\template\handler\MyMetaObjectHandler.class
+com\template\api\SmartWarningControllerAPI.class
+com\template\controller\SmartClassController.class
+com\template\controller\SmartUserController.class
+com\template\mapper\SmartScreenshotMapper.class
+com\template\model\pojo\SmartMeterDetail.class
+com\template\mapper\SmartScoreMapper.class
+com\template\model\request\insertDepartmentRequest.class
+com\template\controller\SmartApplyController.class
+com\template\mapper\SmartDepartmentMapper.class
+com\template\services\SmartDataTaskService.class
+com\template\common\constanst\Constanst.class
+com\template\model\pojo\SmartVisitor.class
+com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam$Query$QueryBuilder.class
+com\template\services\impl\WechatScanLoginServiceImpl.class
+com\template\services\impl\SmartScoreServiceImpl.class
+com\template\model\request\loginRequest.class
+com\template\model\enumModel\eExamType.class
+com\template\model\pojo\SmsCode.class
+com\template\mapper\SmartScreenshotRecordMapper.class
+com\template\controller\UploadController.class
+com\template\api\SmartDataClassControllerAPI.class
+com\template\services\SmartClassService.class
+com\template\services\SmartWarningService.class
+com\template\mapper\SmartBuildMeterMapper.class
+com\template\common\utils\EncryptionUtil.class
+com\template\services\impl\SmartAuthorGroupServiceImpl.class
+com\template\config\SeewoConfig.class
+com\template\model\pojo\AttendanceServiceListAttendClassRecordsParam$RequestBody.class
+com\template\services\impl\SmartDataClassServiceImpl.class
+com\template\model\pojo\SmartScreenshotRecord.class
+com\template\mapper\SmartAuthorGroupMapper.class
+com\template\services\impl\RepairAdminServiceImpl.class
+com\template\services\SmsCodeService.class
+com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam.class
+com\template\services\SmartAttendanceService.class
+com\template\model\pojo\SmartDataTask.class
+com\template\common\utils\JWTUtil.class
+com\template\model\enumModel\eLogOff.class
+com\template\services\impl\SmartWarningServiceImpl.class
+com\template\common\exception\EmsException.class
+com\template\controller\ExcelController.class
+com\template\controller\ScheduleController.class
+com\template\model\pojo\AttendanceRuleListSchoolAttendRuleRequest.class
+com\template\services\SmartDataSourceLogService.class
+com\template\api\SmsCodeControllerAPI.class
+com\template\controller\SmartBuildController.class
+com\template\model\weixin\userAuthor.class
+com\template\model\tongji\DayMeterDetail.class
+com\template\model\weixin\HttpParame.class
+com\template\model\pojo\UnitTimeHelpModel.class
+com\template\api\UploadControllerAPI.class
+com\template\controller\SmartMeterDetailController.class
+com\template\model\vo\UserVo.class
+com\template\model\pojo\AttendanceServiceListAttendClassRecordsResult$Data.class
+com\template\model\vo\ClassSettingDateVo.class
+com\template\model\pojo\HomeSchoolServiceSendNoteToKidParam$HomeSchoolServiceSendNoteToKidParamBuilder.class
+com\template\config\CosConfig.class
+com\template\model\pojo\SmartApply.class
+com\template\model\enumModel\eSexStatu.class
+com\template\services\SmartDepartmentService.class
+com\template\api\SmartSchoolControllerAPI.class
+com\template\model\vo\VisitorPageVo.class
+com\template\model\pojo\SmartMeter.class
+com\template\services\impl\SmartDataSourceServiceImpl.class
+com\template\core\JwtAuthenticationInterceptor.class
+com\template\mapper\SmartMeterMapper.class
+com\template\model\tongji\Tj.class
+com\template\controller\SmartScreenshotController.class
+com\template\model\vo\SystemMenuTreeVo.class
+com\template\model\enumModel\eIdentityStatu.class
+com\template\controller\SmartDataTaskController.class
+com\template\model\weixin\AuthorAndGroup.class
+com\template\controller\LogInfoController.class
+com\template\services\impl\SmartDataTaskServiceImpl.class
+com\template\api\SmartAttendanceControllerAPI.class
+com\template\model\vo\SystemMenuTreeVo$SystemMenuTreeVoBuilder.class
+com\template\model\result\BaseResult.class
+com\template\services\SmartBuildMeterService.class
+com\template\model\weixin\Result.class
+com\template\core\CORSConfiguration.class
+com\template\api\LogInfoControllerAPI.class
+com\template\services\SmartMeterService.class
+com\template\services\SmartApplyService.class
+com\template\controller\SmartScreenshotRecordController.class
+com\template\common\utils\HttpUtils.class
+com\template\model\tongji\DAll.class
+com\template\common\utils\AesUtils.class
+com\template\common\result\ResponseStatusEnum.class
+com\template\model\pojo\AttendanceServiceListAttendClassRecordsParam$Query.class
+com\template\model\pojo\SmartBuildMeter.class
+com\template\common\utils\AesUtil.class
+com\template\api\SmartGradeControllerAPI.class
+com\template\common\utils\UUIDUtil.class
+com\template\mapper\SystemMenuMapper.class
+com\template\model\enumModel\eFileType.class
+com\template\model\request\updateRepairAdminRequest.class
+com\template\api\SmartBuildControllerAPI.class
+com\template\api\RepairAdminControllerAPI.class
+com\template\mapper\SmartMeterDetailMapper.class
+com\template\model\vo\DepartmentTreeVo.class
+com\template\model\pojo\SmartDataClass.class
+com\template\services\impl\SmartDataSourceLogServiceImpl.class
+com\template\core\SwaggerConfiguration.class
+com\template\services\SystemUserService.class
+com\template\common\utils\RSAUtils.class
+com\template\services\impl\SmartFreezeRecordServiceImpl.class

+ 19 - 0
target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

@@ -9,6 +9,7 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\exception\MyCustomException.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\ExcelController.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\AttendanceRuleListSchoolAttendRuleParam.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\vo\GradeVo.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\AttendanceServiceListAttendClassRecordsRequest.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartAuthority.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\enumModel\eVisitorType.java
@@ -31,12 +32,16 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartDataTaskControllerAPI.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\services\impl\SmartAuthorGroupServiceImpl.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\Base64Util.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\vo\ScoreVo.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\enumModel\eSubjectStatu.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\vo\SmartEnumVo.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartSchool.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\MybatisPlusApplication.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\vo\VisitorCountVo.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\request\deleteSmartScoreRequest.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\services\SmartGradeService.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartMeterControllerAPI.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\services\impl\SmartScoreServiceImpl.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartAttendanceControllerAPI.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\mapper\SmartBuildMeterMapper.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\HttpClientUtils.java
@@ -55,6 +60,7 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\constanst\Constanst.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartDataSourceControllerAPI.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\services\SmartMeterService.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\request\updateScoreRequest.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\mapper\SmartDataSourceMapper.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartClass.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\SmartScreenshotController.java
@@ -69,6 +75,7 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartDataTask.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\mapper\RepairAdminMapper.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartIdentityControllerAPI.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\vo\ScorePageVo.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\ValidateCode.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\AesUtils.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\paramUtils.java
@@ -90,6 +97,7 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\PropertiesUtil.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\mapper\SmartWarningMapper.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\weixin\AuthorAndGroup2.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\services\SmartScoreService.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\SmartApplyController.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\config\ParkConfig.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\SmartBuildController.java
@@ -108,6 +116,7 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\SmartDataSourceLogController.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\OrgClassOpenSeewoUcOpenV1ClassFullResult.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartApplyControllerAPI.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\DBUtil.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\enumModel\eIsSuper.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\enumModel\eFileType.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartDepartment.java
@@ -117,6 +126,7 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\JWTUtil.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\RepairAdminController.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\vo\SystemMenuTreeVo.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\request\insertScoreRequest.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\AttendanceRuleListSchoolAttendRuleRequest.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\RSAUtils.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\config\ScheduleConfig.java
@@ -165,6 +175,7 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\AttendanceServiceListAttendClassRecordsParam.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartAuthorGroup.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartDataClassControllerAPI.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartScore.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\result\BaseResult.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\SmartBuildMeterController.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\request\changePasswordRequest.java
@@ -172,6 +183,7 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartMeterDetailControllerAPI.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\services\impl\SmartAuthorityServiceImpl.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\mapper\SmartApplyMapper.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartDataSourceJobParams.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\FileUtils.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\weixin\HttpParame.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\AttendanceRuleListSchoolAttendRuleResult.java
@@ -215,6 +227,8 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\request\updateDepartmentRequest.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\vo\SystemMenuVo.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartGradeControllerAPI.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartDsColumnCor.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\ExcelUtils.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\SmartSchoolController.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartIdentity.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\vo\LoginVO.java
@@ -246,6 +260,7 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\request\manualFreezingRequest.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\mapper\SmartDataClassMapper.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartSchoolControllerAPI.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\vo\SemesterVo.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\annotation\ControllerIsShow.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\mapper\SmartScreenshotMapper.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\core\SwaggerConfiguration.java
@@ -262,11 +277,14 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\QuartzJobUtils.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\enumModel\eExamineStatu.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\weixin\Result.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\SmartScoreController.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\services\impl\SystemUserServiceImpl.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\SmartFreezeRecordController.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\mapper\SmartScoreMapper.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartUserControllerAPI.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\DateUtils.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartVisitor.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\api\SmartScoreControllerAPI.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\mapper\SmartAuthorGroupMapper.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\utils\SendSms.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\enumModel\eSexStatu.java
@@ -297,6 +315,7 @@ D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\templa
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\SmartGradeController.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\common\result\ResponseStatusEnum.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartFreezeRecord.java
+D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\enumModel\eExamType.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\controller\SmartDepartmentController.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\pojo\SmartWarning.java
 D:\Bingo\Desktop\工作内容\万载三中\backend_code\src\main\java\com\template\model\request\updateRepairAdminRequest.java

二進制
target/mybatis_plus-0.0.1-SNAPSHOT.jar.original