郑永安
2023-06-19 7a6abd05683528032687c75e80e0bd2030a3e46c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<?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.gkhy.safePlatform.account.repository.schedule.GroupStrategyTimeTableInfoRepository" >
 
    <resultMap id="GroupStrategyTimeTableInfoDO" type="com.gkhy.safePlatform.account.entity.schedule.GroupStrategyTimeTableInfoDO">
        <result column="id" property="id"/>
        <result column="group_id" property="groupId"/>
        <result column="start_time" property="startTime"/>
        <result column="end_time" property="endTime"/>
        <result column="type" property="type"/>
        <result column="status" property="status"/>
        <result column="group_strategy_id" property="groupStrategyId"/>
    </resultMap>
 
    <insert id="insertBatch"
            parameterType="com.gkhy.safePlatform.account.entity.schedule.GroupStrategyTimeTableInfo">
        insert
        into schedule_group_strategy_time_table
        <trim prefix="(" suffix=") values" suffixOverrides=",">
            group_id,
            group_strategy_id,
            specific_date,
            start_time,
            end_time,
            type,
            status,
        </trim>
        <foreach collection="list" item="item" separator=",">
          <trim prefix="(" suffix=")" suffixOverrides=",">
              #{item.groupId},
              #{item.groupStrategyId},
              #{item.specificDate},
              #{item.startTime},
              #{item.endTime},
              #{item.type},
              #{item.status},
          </trim>
        </foreach>
 
    </insert>
    <delete id="deleteByGroupStrategyId">
        delete
        from schedule_group_strategy_time_table
        where group_strategy_id = #{groupStrategyId}
        and specific_date &gt;= #{firstScheduleDate}
 
    </delete>
    <select id="listGroupTimeTableInfos"
            parameterType="com.gkhy.safePlatform.account.model.query.db.GroupScheduleDBQuery"
            resultMap="GroupStrategyTimeTableInfoDO">
        select
        timeTable.id,
        timeTable.group_id,
        timeTable.specific_date,
        timeTable.start_time,
        timeTable.end_time,
        timeTable.type,
        timeTable.status,
        timeTable.group_strategy_id
        from schedule_group_strategy_time_table as timeTable
        <where>
             status = 1
            <if test="query.groupId != null and query.groupId != ''">
                and timeTable.group_id = #{query.groupId}
            </if>
            <if test="query.startTime != null ">
                and timeTable.start_time  &gt; #{query.startTime}
            </if>
            <if test="query.endTime != null ">
                and timeTable.start_time  &lt; #{query.endTime}
            </if>
            <if test="query.type != null and query.type != ''">
                and timeTable.type  = #{query.type}
            </if>
        </where>
        order by timeTable.specific_date asc
 
    </select>
    <select id="getGroupTimeTableInfosByGroupId" resultMap="GroupStrategyTimeTableInfoDO">
        select
        timeTable.id,
        timeTable.group_id,
        timeTable.specific_date,
        timeTable.start_time,
        timeTable.end_time,
        timeTable.type,
        timeTable.status,
        timeTable.group_strategy_id
        from schedule_group_strategy_time_table as timeTable
        <where>
            status = 1
            <if test="groupId != null">
                and  timeTable.group_id = #{groupId}
            </if>
            <if test="localDate != null">
                and  timeTable.specific_date &gt;= #{localDate}
            </if>
        </where>
    </select>
 
</mapper>