Sunshine
2024-11-04 7f1a0e49c1fe0c3f9f8a2493f30451d90b62ab64
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
<?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.nova.sankuai.infra.mapper.ChannelSupermarketMapper">
 
    <insert id="batchSave">
        insert into channel_supermarket (channel_id, supermarket_id,enable_flag,is_time_limit,is_featured)
        values
        <foreach collection="addList" item="item" index="index" separator=",">
            (
            #{item.channelId},
            #{item.supermarketId},
            ifnull(#{item.enableFlag},0),
            ifnull(#{item.isTimeLimit},0),
            ifnull(#{item.isFeatured},0)
            )
        </foreach>
    </insert>
 
    <select id="pageSupermarketList" resultType="com.nova.sankuai.domain.vo.LoanSupermarketVo">
        select ls.id as id,
        ls.name as name,
        ls.scope_start as scopeStart,
        ls.scope_end as scopeEnd,
        ls.monthly_interest_rate as monthlyInterestRate,
        ls.date_start as dateStart,
        ls.date_end as dateEnd,
        ls.hot_flag as hotFlag,
        ls.image_url as imageUrl,
        ls.link_url as linkUrl,
        ls.creation_date as creationDate,
        ls.serial_number as serialNumber,
        ls.description as description,
        ls.member_vip_flag as memberVipFlag,
        cs.enable_flag as enableFlag,
        cs.is_time_limit as isTimeLimit,
        cs.is_featured as isFeatured
        from loan_supermarket ls
        inner join channel_supermarket cs
        on ls.id = cs.supermarket_id
        where ls.delete_flag = 0 and cs.channel_id = #{channelId}
        order by ls.serial_number desc,ls.creation_date desc
    </select>
 
    <select id="getSupermarketList" resultType="com.nova.sankuai.domain.vo.LoanSupermarketVo">
        select ls.id as id,
        ls.name as name,
        ls.scope_start as scopeStart,
        ls.scope_end as scopeEnd,
        ls.monthly_interest_rate as monthlyInterestRate,
        ls.date_start as dateStart,
        ls.date_end as dateEnd,
        ls.hot_flag as hotFlag,
        ls.image_url as imageUrl,
        ls.link_url as linkUrl,
        ls.creation_date as creationDate,
        ls.serial_number as serialNumber,
        ls.description as description,
        ls.member_vip_flag as memberVipFlag,
        cs.enable_flag as enableFlag,
        cs.is_time_limit as isTimeLimit,
        cs.is_featured as isFeatured
        from loan_supermarket ls
        inner join channel_supermarket cs
        on ls.id = cs.supermarket_id
        where ls.delete_flag = 0 and cs.enable_flag = 1 and ls.is_top_view = 0 and ls.ordinary_switch = 0
        and ls.is_open_vip_mode = 0 and ls.my_money_switch = 0 and cs.channel_id = #{channelId}
        order by ls.serial_number desc,ls.creation_date desc
    </select>
 
    <insert id="batchCopy">
        insert into channel_supermarket (channel_id, supermarket_id, enable_flag,is_time_limit,is_featured)
        values
        <foreach collection="copyList" item="item" index="index" separator=",">
            (
            #{item.channelId},
            #{item.supermarketId},
            #{item.enableFlag},
            #{item.isTimeLimit},
            #{item.isFeatured}
            )
        </foreach>
    </insert>
 
    <update id="batchUpdateByMarket">
        update channel_supermarket
        set enable_flag = #{supermarket.enableFlag},
        is_featured = #{supermarket.isFeatured},
        is_time_limit = #{supermarket.isTimeLimit}
        where supermarket_id = #{supermarket.id}
    </update>
 
</mapper>