84 lines
3.7 KiB
XML
84 lines
3.7 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||
<mapper namespace="cn.iocoder.yudao.module.course.mapper.SchoolCourseOrderMapper">
|
||
|
||
<!--
|
||
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
|
||
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
|
||
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
|
||
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
||
-->
|
||
|
||
<select id="queryPage" resultType="cn.iocoder.yudao.module.course.vo.SchoolCourseOrderVO">
|
||
SELECT
|
||
main.*,
|
||
CASE
|
||
WHEN EXISTS (SELECT 1
|
||
FROM drive_school_course_order dsc
|
||
WHERE dsc.old_order_id = main.id and dsc.deleted = 0 and main.deleted = 0)
|
||
THEN TRUE
|
||
ELSE FALSE
|
||
END AS isCreated
|
||
FROM
|
||
drive_school_course_order main
|
||
<where>
|
||
main.deleted = 0
|
||
<if test="entity.orderNo!= null and entity.orderNo != ''"> and main.order_no = #{entity.orderNo}</if>
|
||
<if test="entity.userName != null and entity.userName != ''"> and main.user_name like concat('%', #{entity.userName}, '%')</if>
|
||
<if test="entity.userId != null and entity.userId != ''"> and main.user_id = #{entity.userId}</if>
|
||
<if test="entity.paymentStatus != null and entity.paymentStatus != ''"> and main.payment_status = #{entity.paymentStatus}</if>
|
||
<if test="entity.ifEnd != null and entity.ifEnd != ''"> and main.if_end = #{entity.ifEnd}</if>
|
||
</where>
|
||
order by main.create_time desc
|
||
</select>
|
||
|
||
<select id="queryPageNew" resultType="cn.iocoder.yudao.module.course.vo.SchoolCourseOrderVO">
|
||
SELECT
|
||
main.*,
|
||
ds.photo,
|
||
ds.type,
|
||
CASE
|
||
WHEN EXISTS (SELECT 1
|
||
FROM drive_school_course_order dsc
|
||
WHERE dsc.old_order_id = main.id and dsc.deleted = 0 and main.deleted = 0)
|
||
THEN TRUE
|
||
ELSE FALSE
|
||
END AS isCreated
|
||
FROM
|
||
drive_school_course_order main
|
||
LEFT JOIN drive_school_course ds on main.course_id = ds.id and ds.deleted = 0
|
||
<where>
|
||
main.deleted = 0
|
||
<if test="entity.orderNo!= null and entity.orderNo != ''"> and main.order_no = #{entity.orderNo}</if>
|
||
<if test="entity.userName != null and entity.userName != ''"> and main.user_name like concat('%', #{entity.userName}, '%')</if>
|
||
<if test="entity.userId != null and entity.userId != ''"> and main.user_id = #{entity.userId}</if>
|
||
<if test="entity.paymentStatus != null and entity.paymentStatus != ''"> and main.payment_status = #{entity.paymentStatus}</if>
|
||
<if test="entity.ifEnd != null and entity.ifEnd != ''"> and main.if_end = #{entity.ifEnd}</if>
|
||
</where>
|
||
order by main.create_time desc
|
||
</select>
|
||
<select id="selectByCoachUserId" resultType="java.lang.Double">
|
||
SELECT
|
||
SUM(dsco.reserve_money+dsco.rest_money )
|
||
FROM
|
||
drive_school_course_order dsco
|
||
<if test="coachId != null and coachId != ''">
|
||
LEFT JOIN drive_school_student dss ON dsco.user_id = dss.user_id
|
||
AND dss.deleted = 0
|
||
</if>
|
||
WHERE
|
||
dsco.deleted = 0
|
||
AND dsco.payment_status IN ( '2', '3', '4', '5' )
|
||
<if test="coachId != null and coachId != ''">
|
||
AND dss.source_user_id = #{coachId}
|
||
</if>
|
||
<if test="startTime!=null and startTime!=''">
|
||
AND dsco.create_time >= #{startTime}
|
||
</if>
|
||
<if test="endTime!=null and endTime!=''">
|
||
AND dsco.create_time <= #{endTime}
|
||
</if>
|
||
</select>
|
||
|
||
</mapper>
|