xiaofei 10 mesi fa
parent
commit
a2e4b97774

+ 6 - 6
paper-library-business/src/main/java/com/qmth/paper/library/business/service/impl/PaperScanStatServiceImpl.java

@@ -51,12 +51,12 @@ public class PaperScanStatServiceImpl extends ServiceImpl<PaperLibraryMapper, Pa
         Long userId = getUserId(scanner);
 
         IPage<ScanStatResult> scanStatPage = baseMapper.listScanStat(new Page<>(pageNumber, pageSize), schoolId, scanDateStr, userId);
-        for (ScanStatResult scanStatResult : scanStatPage.getRecords()) {
-            //设置扫描学生数
-            int studentCount = paperLibraryService.countScanStudentByScannerAndDate(scanStatResult.getCreateId(), scanStatResult.getScanDateStr());
-            scanStatResult.setStudentCount(studentCount);
-            scanStatResult.setScanDate(getLongDate(scanStatResult.getScanDateStr()));
-        }
+//        for (ScanStatResult scanStatResult : scanStatPage.getRecords()) {
+//            //设置扫描学生数
+////            int studentCount = paperLibraryService.countScanStudentByScannerAndDate(scanStatResult.getCreateId(), scanStatResult.getScanDateStr());
+////            scanStatResult.setStudentCount(studentCount);
+//            scanStatResult.setScanDate(getLongDate(scanStatResult.getScanDateStr()));
+//        }
         return scanStatPage;
     }
 

+ 12 - 15
paper-library-business/src/main/resources/mapper/PaperLibraryMapper.xml

@@ -69,25 +69,22 @@
 
     <select id="listScanStat" resultType="com.qmth.paper.library.business.bean.result.ScanStatResult">
         SELECT
-            concat( u.login_name, '(', u.real_name, ')' ) scanner,
+            concat( su.login_name, '(', su.real_name, ')' ) scanner,
             p.create_id createId,
             p.create_date scanDateStr,
-            count( 1 ) pictureCount
+            count( 1 ) pictureCount,
+            COUNT( DISTINCT p.student_id ) studentCount
         FROM
-            paper_library p,
-            sys_user u
-        WHERE
-            p.school_id = #{schoolId}
-            AND p.create_id = u.id
-            <if test="userId != null">
-                and u.id=#{userId}
-            </if>
-            <if test="scanDate != null and scanDate != ''">
-                and p.create_date=#{scanDate}
-            </if>
+             paper_library p left join sys_user su on p.create_id = su.id
+                where p.school_id = #{schoolId}
+                <if test="userId != null">
+                    and p.create_id=#{userId}
+                </if>
+                <if test="scanDate != null and scanDate != ''">
+                    and p.create_date=#{scanDate}
+                </if>
         GROUP BY
-            u.login_name,
-            p.create_id,
+           p.create_id,
             p.create_date
         ORDER BY
             p.create_date

+ 1 - 1
paper-library-common/src/main/java/com/qmth/paper/library/common/base/BaseEntity.java

@@ -30,7 +30,7 @@ public class BaseEntity implements Serializable {
     @ApiModelProperty(value = "创建人")
     private Long createId;
 
-    @TableField(value = "create_time", fill = FieldFill.INSERT)//新增执行
+//    @TableField(value = "create_time", fill = FieldFill.INSERT)//新增执行
     @ApiModelProperty(value = "创建时间")
     private Long createTime;
 

+ 3 - 1
paper-library/install/mysql/init/paper_library_db.sql

@@ -254,7 +254,9 @@ CREATE TABLE IF NOT EXISTS `paper_library` (
   PRIMARY KEY (`id`) USING BTREE,
   KEY `idx_1` (`paper_scan_task_id`,`student_id`),
   KEY `idx_2` (`student_id`),
-  KEY `idx_3` (`school_id`,`create_id` , `create_date`)
+  KEY `idx_3` (`school_id`,`create_id` , `create_date`),
+  KEY `idx_4` (`create_id` ),
+  KEY `idx_5` (`create_date`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='其它文件库';
 
 -- ----------------------------

+ 3 - 1
paper-library/install/mysql/upgrade/1.0.5.sql

@@ -118,4 +118,6 @@ ALTER TABLE `paper_library` ADD COLUMN `create_date` varchar(10) NULL COMMENT '
 ALTER TABLE `paper_library` DROP INDEX `idx_3`, ADD INDEX `idx_3`(`school_id`,`create_id` , `create_date`) USING BTREE;
 
 UPDATE paper_library p,paper_scan_task t SET p.school_id=t.school_id WHERE p.paper_scan_task_id=t.id;
-UPDATE paper_library SET create_date=date_format( FROM_UNIXTIME( create_time / 1000 ), '%Y-%m-%d');
+UPDATE paper_library SET create_date=date_format( FROM_UNIXTIME( create_time / 1000 ), '%Y-%m-%d');
+
+ALTER TABLE `paper_library` ADD INDEX `idx_4` (`create_id` ASC) ,ADD INDEX `idx_5` (`create_date` ASC) ;