From a749fea2f34c773ea8ba57fff878167a0f8b654e Mon Sep 17 00:00:00 2001 From: xyc <3422692813@qq.com> Date: Wed, 4 Jun 2025 14:23:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/base/vo/DlDriveSchoolStaffVO.java | 9 ++ .../base/DlDriveSchoolStudentMapper.xml | 136 ++++++++++-------- 2 files changed, 84 insertions(+), 61 deletions(-) diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolStaffVO.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolStaffVO.java index 825b0c9d..e5af0125 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolStaffVO.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolStaffVO.java @@ -4,6 +4,7 @@ import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.util.Date; +import java.util.List; @Schema(description = "驾校人员-手机APP查询专用接口") @Data @@ -55,4 +56,12 @@ public class DlDriveSchoolStaffVO { private String endTime; /**是否合格*/ private String examStatus; + /**查询时间范围*/ + private List rangeTime; + /**地址*/ + private String address; + /**年龄*/ + private List age; + /**拿证天数*/ + private Integer passDays; } diff --git a/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml b/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml index 21abcd4d..3167e398 100644 --- a/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml +++ b/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml @@ -49,68 +49,82 @@ ORDER BY dss.create_time DESC - + SELECT + main.id AS id, + main.NAME AS NAME, + main.type AS type, + main.avatar AS avatar, + main.phone AS phone, + main.user_id AS userId, + dsco.course_type, + dsp.`subject` + FROM + drive_school_student main + LEFT JOIN drive_school_course_order dsco ON main.user_id = dsco.user_id + AND dsco.deleted = 0 + AND dsco.payment_status IN ( '2', '3', '4', '5' ) + AND dsco.if_end = 0 - LEFT JOIN drive_school_process dsp ON main.user_id = dsp.user_id - AND dsco.course_id = dsp.course_id - AND dsp.`status` = '1' - WHERE - main.deleted = 0 AND dsco.is_sign = 1 - - AND dsp.coach_id = #{entity.coachId} - - - AND main.source_user_id = #{entity.sourceCoachId} - - - AND main.name LIKE CONCAT('%',#{entity.name},'%') - - - AND dsco.course_type = #{entity.courseType} - - - AND dsp.subject = #{entity.subject} - - - AND dsco.create_time >= #{entity.startTime} - - - AND dsco.create_time <= #{entity.endTime} - - - AND main.source = #{entity.source} - - - AND dsp.exam_status = #{entity.examStatus} - - GROUP BY - main.id - - - ORDER BY - dsco.create_time ASC - - - ORDER BY - dsco.create_time DESC - - - + LEFT JOIN drive_school_process dsp ON main.user_id = dsp.user_id + AND dsco.course_id = dsp.course_id + AND dsp.`status` = '1' + WHERE + main.deleted = 0 AND dsco.is_sign = 1 + + AND dsp.coach_id = #{entity.coachId} + + + AND main.source_user_id = #{entity.sourceCoachId} + + + AND main.name LIKE CONCAT('%',#{entity.name},'%') + + + AND dsco.course_type = #{entity.courseType} + + + AND dsp.subject = #{entity.subject} + + + AND dsco.create_time >= #{entity.startTime} + + + AND dsco.create_time <= #{entity.endTime} + + + AND main.source = #{entity.source} + + + AND dsp.exam_status = #{entity.examStatus} + + + AND dsco.create_time BETWEEN #{entity.rangeTime[0]} AND #{entity.rangeTime[1]} + + + AND main.address LIKE CONCAT('%',#{entity.address},'%') + + + AND main.id_card IS NOT NULL + AND TIMESTAMPDIFF(YEAR, STR_TO_DATE(SUBSTRING(main.id_card, 7, 8), '%Y%m%d'), CURDATE()) BETWEEN #{entity.age[0]} AND #{entity.age[1]} + + + AND dsco.pass_time IS NOT NULL + AND TIMESTAMPDIFF(DAY, dsco.create_time, dsco.pass_time) = #{entity.passDays} + + GROUP BY + main.id + + + ORDER BY + dsco.create_time ASC + + + ORDER BY + dsco.create_time DESC + + +