Bläddra i källkod

数据看板调整

dzx 9 månader sedan
förälder
incheckning
c8603241e3

+ 13 - 6
src/main/java/com/xjrsoft/module/databoard/controller/DatadetailController.java

@@ -464,13 +464,17 @@ public class DatadetailController {
     @GetMapping(value = "/student-statistics")
     @ApiOperation(value="学生详情数据统计")
     @SaCheckPermission("datadetail:detail")
-    public RT<StudnetStatisticsDetailVo> studentStatistics(@Valid StatisticsDetailDto dto) throws ParseException {
+    public RT<StudnetStatisticsDetailVo> studentStatistics(@Valid StatisticsDetailDto dto){
         StudnetStatisticsDetailVo result = new StudnetStatisticsDetailVo();
 
         String sql = "SELECT IFNULL(t3.name,'未填写') AS item ,COUNT(*) AS a_count FROM xjr_user t1" +
             " INNER JOIN base_student t2 ON t1.id = t2.user_id" +
-            " LEFT JOIN xjr_dictionary_detail t3 ON t1.gender  = t3.code AND t3.item_id = 2023000000000000004" +
-            " WHERE t1.delete_mark = 0 GROUP BY t3.name";
+            " INNER JOIN base_student_school_roll t4 ON t1.id = t4.user_id" +
+            " LEFT JOIN xjr_dictionary_detail t3 ON t1.gender  = t3.code" +
+            " AND t3.item_id = 2023000000000000004 and t3.delete_mark = 0" +
+            " WHERE t1.delete_mark = 0" +
+            " and t4.archives_status = 'FB2901'" +
+            " GROUP BY t3.name";
         List<Map<String, Object>> list = SqlRunnerAdapter.db().selectList(sql);
         List<ItemCountVo> genderList = new ArrayList<>();
         for (Map<String, Object> objectMap : list) {
@@ -485,8 +489,11 @@ public class DatadetailController {
 
         sql = "SELECT IFNULL(t3.name,'未填写') AS item ,COUNT(*) AS a_count FROM xjr_user t1" +
             " INNER JOIN base_student_school_roll t2 ON t1.id = t2.user_id" +
-            " LEFT JOIN xjr_dictionary_detail t3 ON t2.student_type = t3.code AND t3.item_id = 2023000000000000028" +
-            " WHERE t1.delete_mark = 0 GROUP BY t3.name";
+            " LEFT JOIN xjr_dictionary_detail t3 ON t2.student_type = t3.code" +
+            " AND t3.item_id = 2023000000000000028 and t3.delete_mark = 0" +
+            " WHERE t1.delete_mark = 0" +
+            " and t2.archives_status = 'FB2901'" +
+            " GROUP BY t3.name";
         list = SqlRunnerAdapter.db().selectList(sql);
         List<ItemCountVo> studentTypeList = new ArrayList<>();
         for (Map<String, Object> objectMap : list) {
@@ -545,7 +552,7 @@ public class DatadetailController {
             " SELECT COUNT(*) FROM xjr_user t1" +
             " INNER JOIN base_student_school_roll t2 ON t1.id = t2.user_id" +
             " WHERE t1.delete_mark = 0 AND t2.grade_id = base_grade.id" +
-            " ) AS a_count FROM base_grade" +
+            " and t2.archives_status = 'FB2901') AS a_count FROM base_grade" +
             " WHERE delete_mark = 0 AND status = 1 ORDER BY name DESC LIMIT 3";
         list = SqlRunnerAdapter.db().selectList(sql);
         Collections.reverse(list);