feat: 提交课表冲突检查相关功能模块
This commit is contained in:
@@ -0,0 +1,223 @@
|
||||
<?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="com.roomroot.jwgl.mapper.XYJXQJBMapper">
|
||||
|
||||
<resultMap id="BaseResultMap" type="com.roomroot.jwgl.entity.XYJXQJB">
|
||||
<id column="编号" property="bh"/>
|
||||
<result column="名称" property="mc"/>
|
||||
<result column="起始时间" property="qssj"/>
|
||||
<result column="结束时间" property="jssj"/>
|
||||
<result column="状态" property="zt"/>
|
||||
<result column="原因" property="yy"/>
|
||||
<result column="请假类型" property="qjlx"/>
|
||||
<result column="备注" property="bz"/>
|
||||
<result column="学员队编号" property="xydbh"/>
|
||||
<result column="课堂数" property="kts"/>
|
||||
<result column="学员人数" property="xyrs"/>
|
||||
<result column="创建时间" property="cjsj"/>
|
||||
<result column="上报时间" property="sbsj"/>
|
||||
<result column="目的地" property="mdd"/>
|
||||
<result column="佐证文件1编号" property="zzwj1bh"/>
|
||||
<result column="佐证文件2编号" property="zzwj2bh"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectByXydbh" resultMap="BaseResultMap">
|
||||
SELECT * FROM "学员教学请假表"
|
||||
WHERE "学员队编号" = #{xydbh}
|
||||
AND "状态" != '4'
|
||||
<if test="nd != null">
|
||||
AND EXTRACT(YEAR FROM "起始时间") = #{nd}
|
||||
</if>
|
||||
ORDER BY "起始时间" DESC
|
||||
</select>
|
||||
|
||||
<resultMap id="AbsenceResultMap" type="com.roomroot.jwgl.vo.elective.StudentAbsenceVO">
|
||||
<result column="请假编号" property="qjbh"/>
|
||||
<result column="名称" property="mc"/>
|
||||
<result column="起始时间" property="qssj"/>
|
||||
<result column="结束时间" property="jssj"/>
|
||||
<result column="原因" property="yy"/>
|
||||
<result column="学员编号" property="xybh"/>
|
||||
<result column="姓名" property="xm"/>
|
||||
<result column="学号" property="xh"/>
|
||||
<result column="课堂数" property="kts"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectAbsenceByXydbh" resultMap="AbsenceResultMap">
|
||||
SELECT
|
||||
q."编号" AS 请假编号, q."名称", q."起始时间", q."结束时间", q."原因",
|
||||
q."课堂数",
|
||||
qj."学员编号" AS 学员编号, xy."姓名", xy."学号"
|
||||
FROM "学员教学请假表" q
|
||||
JOIN "请假学员表" qj ON qj."请假编号" = q."编号"
|
||||
LEFT JOIN "学员信息表" xy ON xy."编号" = qj."学员编号"
|
||||
WHERE q."学员队编号" = #{xydbh}
|
||||
AND q."状态" != '4'
|
||||
<if test="nd != null">
|
||||
AND EXTRACT(YEAR FROM q."起始时间") = #{nd}
|
||||
</if>
|
||||
ORDER BY q."起始时间" DESC
|
||||
</select>
|
||||
|
||||
<resultMap id="StudentLeaveApplyMap" type="com.roomroot.jwgl.vo.courserunning.StudentLeaveApplyVO">
|
||||
<result column="请假编号" property="qjbh"/>
|
||||
<result column="学员编号" property="xybh"/>
|
||||
<result column="学员姓名" property="xyxm"/>
|
||||
<result column="学员队编号" property="xydbh"/>
|
||||
<result column="学员队名称" property="xydmc"/>
|
||||
<result column="原因" property="yy"/>
|
||||
<result column="请假类型" property="qjlx"/>
|
||||
<result column="起始时间" property="qssj"/>
|
||||
<result column="结束时间" property="jssj"/>
|
||||
<result column="审批状态" property="spzt"/>
|
||||
<result column="审批状态名称" property="spztmc"/>
|
||||
<result column="创建时间" property="cjsj"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectPageList" resultMap="StudentLeaveApplyMap">
|
||||
SELECT
|
||||
q."编号" AS 请假编号,
|
||||
qjxy."学员编号",
|
||||
xy."姓名" AS 学员姓名,
|
||||
q."学员队编号",
|
||||
xyd."学员队名称",
|
||||
q."原因",
|
||||
q."请假类型",
|
||||
q."起始时间",
|
||||
q."结束时间",
|
||||
q."创建时间",
|
||||
sp."审批状态",
|
||||
CASE
|
||||
WHEN q."状态" = '4' THEN '已撤回'
|
||||
WHEN sp."审批状态" = '0' THEN '待审批'
|
||||
WHEN sp."审批状态" = '1' THEN '已同意'
|
||||
WHEN sp."审批状态" = '2' THEN '已拒绝'
|
||||
WHEN sp."审批状态" = '3' THEN '已发回'
|
||||
ELSE '待审批'
|
||||
END AS 审批状态名称
|
||||
FROM "学员教学请假表" q
|
||||
LEFT JOIN "请假学员表" qjxy ON qjxy."请假编号" = q."编号"
|
||||
LEFT JOIN "学员信息表" xy ON xy."编号" = qjxy."学员编号"
|
||||
LEFT JOIN "学员队表" xyd ON xyd."学员队编号" = q."学员队编号"
|
||||
LEFT JOIN (
|
||||
SELECT "请假编号", "审批状态"
|
||||
FROM "学员请假审批表" sp1
|
||||
WHERE sp1."审批时间" = (
|
||||
SELECT MAX(sp2."审批时间")
|
||||
FROM "学员请假审批表" sp2
|
||||
WHERE sp2."请假编号" = sp1."请假编号"
|
||||
)
|
||||
) sp ON sp."请假编号" = q."编号"
|
||||
<where>
|
||||
<if test="qjbh != null and qjbh != ''">
|
||||
AND q."编号" = #{qjbh}
|
||||
</if>
|
||||
<if test="xybh != null and xybh != ''">
|
||||
AND qjxy."学员编号" = #{xybh}
|
||||
</if>
|
||||
<if test="xyxm != null and xyxm != ''">
|
||||
AND xy."姓名" LIKE '%' || #{xyxm} || '%'
|
||||
</if>
|
||||
<if test="xydbh != null and xydbh != ''">
|
||||
AND q."学员队编号" = #{xydbh}
|
||||
</if>
|
||||
<if test="qjlx != null and qjlx != ''">
|
||||
AND q."请假类型" = #{qjlx}
|
||||
</if>
|
||||
<if test="spzt != null">
|
||||
AND sp."审批状态" = CAST(#{spzt} AS VARCHAR(50))
|
||||
</if>
|
||||
<if test="nd != null">
|
||||
AND EXTRACT(YEAR FROM q."起始时间") = #{nd}
|
||||
</if>
|
||||
<if test="cjsjStart != null and cjsjStart != ''">
|
||||
AND TO_CHAR(q."创建时间", 'YYYY-MM-DD HH24:MI:SS') >= #{cjsjStart}
|
||||
</if>
|
||||
<if test="cjsjEnd != null and cjsjEnd != ''">
|
||||
AND TO_CHAR(q."创建时间", 'YYYY-MM-DD HH24:MI:SS') <= #{cjsjEnd}
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY q."创建时间" DESC
|
||||
</select>
|
||||
|
||||
<resultMap id="LeaveLessonMap" type="com.roomroot.jwgl.vo.courserunning.LeaveLessonVO">
|
||||
<result column="课次编号" property="sskcbbh"/>
|
||||
<result column="课程名称" property="kcmc"/>
|
||||
<result column="上课日期" property="rq"/>
|
||||
<result column="节次" property="jc"/>
|
||||
</resultMap>
|
||||
|
||||
<resultMap id="StudentLeaveDetailMap" type="com.roomroot.jwgl.vo.courserunning.StudentLeaveDetailVO">
|
||||
<result column="请假编号" property="qjbh"/>
|
||||
<result column="学员编号" property="xybh"/>
|
||||
<result column="学员姓名" property="xyxm"/>
|
||||
<result column="学员队编号" property="xydbh"/>
|
||||
<result column="学员队名称" property="xydmc"/>
|
||||
<result column="原因" property="yy"/>
|
||||
<result column="请假类型" property="qjlx"/>
|
||||
<result column="起始时间" property="qssj"/>
|
||||
<result column="结束时间" property="jssj"/>
|
||||
<result column="目的地" property="mdd"/>
|
||||
<result column="备注" property="bz"/>
|
||||
<result column="审批状态" property="spzt"/>
|
||||
<result column="审批状态名称" property="spztmc"/>
|
||||
<result column="审批人编号" property="sprbh"/>
|
||||
<result column="审批人姓名" property="sprxm"/>
|
||||
<result column="审批时间" property="spsj"/>
|
||||
<result column="审批意见" property="spyj"/>
|
||||
<result column="创建时间" property="cjsj"/>
|
||||
<collection property="lessonList" resultMap="LeaveLessonMap"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectDetailById" resultMap="StudentLeaveDetailMap">
|
||||
SELECT
|
||||
q."编号" AS 请假编号,
|
||||
qjxy."学员编号",
|
||||
xy."姓名" AS 学员姓名,
|
||||
q."学员队编号",
|
||||
xyd."学员队名称",
|
||||
q."原因",
|
||||
q."请假类型",
|
||||
q."起始时间",
|
||||
q."结束时间",
|
||||
q."目的地",
|
||||
q."备注",
|
||||
q."创建时间",
|
||||
sp."审批状态",
|
||||
CASE
|
||||
WHEN q."状态" = '4' THEN '已撤回'
|
||||
WHEN sp."审批状态" = '0' THEN '待审批'
|
||||
WHEN sp."审批状态" = '1' THEN '已同意'
|
||||
WHEN sp."审批状态" = '2' THEN '已拒绝'
|
||||
WHEN sp."审批状态" = '3' THEN '已发回'
|
||||
ELSE '待审批'
|
||||
END AS 审批状态名称,
|
||||
sp."审批人编号",
|
||||
j."教员姓名" AS 审批人姓名,
|
||||
sp."审批时间",
|
||||
sp."发回意见" AS 审批意见,
|
||||
sskcb."编号" AS 课次编号,
|
||||
kb."课名称" AS 课程名称,
|
||||
sskcb."日期" AS 上课日期,
|
||||
sskcb."节次"
|
||||
FROM "学员教学请假表" q
|
||||
LEFT JOIN "请假学员表" qjxy ON qjxy."请假编号" = q."编号"
|
||||
LEFT JOIN "学员信息表" xy ON xy."编号" = qjxy."学员编号"
|
||||
LEFT JOIN "学员队表" xyd ON xyd."学员队编号" = q."学员队编号"
|
||||
LEFT JOIN (
|
||||
SELECT "请假编号", "审批状态", "审批人编号", "审批时间", "发回意见"
|
||||
FROM "学员请假审批表" sp1
|
||||
WHERE sp1."审批时间" = (
|
||||
SELECT MAX(sp2."审批时间")
|
||||
FROM "学员请假审批表" sp2
|
||||
WHERE sp2."请假编号" = sp1."请假编号"
|
||||
)
|
||||
) sp ON sp."请假编号" = q."编号"
|
||||
LEFT JOIN "教员表" j ON j."教员编号" = sp."审批人编号"
|
||||
LEFT JOIN "请假课堂表" qjkt ON qjkt."请假编号" = q."编号"
|
||||
LEFT JOIN "实施_课程表" sskcb ON sskcb."编号" = qjkt."实施_课堂编号"
|
||||
LEFT JOIN "实施_课程" sskc ON sskcb."实施_课程编号" = sskc."编号"
|
||||
LEFT JOIN "课表" kb ON sskc."科目编号" = kb."课编号"
|
||||
WHERE q."编号" = #{qjbh}
|
||||
</select>
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user