CustomerRankPolicyDiscountMapper.xml
6.06 KB
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
<?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.runsa.crmapp.customer.mapper.CustomerRankPolicyDiscountMapper">
<resultMap id="BaseResultMap" type="cn.runsa.crmapp.customer.entity.CustomerRankPolicyDiscount">
<id column="PLCY_ID" jdbcType="BIGINT" property="plcyId" />
<result column="ACT_ID" jdbcType="BIGINT" property="actId" />
<result column="brName" jdbcType="VARCHAR" property="brName" />
<result column="RAK_ID" jdbcType="VARCHAR" property="rakId" />
<result column="MAX_DISCOUNT" jdbcType="DOUBLE" property="maxDiscount" />
<result column="REC_TIME" jdbcType="TIMESTAMP" property="recTime" />
<result column="REC_USER" jdbcType="BIGINT" property="recUser" />
<collection property="discountItemList" column="discountItemList" ofType="cn.runsa.crmapp.common.entity.DiscountItem" >
<result column="S_DISCOUNT" property="sDiscount" />
<result column="E_DISCOUNT" property="eDiscount" />
<result column="values" property="values" />
<result column="PLCY_ID" property="plcyId" />
</collection>
<collection property="list" column="list" ofType="cn.runsa.crmapp.common.entity.PolicyGoodsGroup" >
<result column="GRP_ID" property="grpId" />
</collection>
</resultMap>
<!-- <sql id="Base_Column_List">
`PLCY_ID`, `ACT_ID`, `RAK_ID`, `MAX_DISCOUNT`, `REC_TIME`, `REC_USER`
</sql> -->
<sql id="Base_Column_List">
pd.PLCY_ID, pd.ACT_ID, pd.RAK_ID, pd.MAX_DISCOUNT, pd.REC_TIME,pd.REC_USER
</sql>
<!-- <select id="selectByPrimaryKey" parameterType="cn.runsa.crmapp.customer.entity.CustomerRankPolicyDiscount" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from crm_rank_policy_discount
where 1=1
</select> -->
<select id="selectByPrimaryKey" parameterType="cn.runsa.crmapp.customer.entity.CustomerRankPolicyDiscount" resultMap="BaseResultMap">
SELECT
GROUP_CONCAT(mb.brName) AS brName,
cd.PLCY_ID,
cd.MAX_DISCOUNT,
ci.`values`,
ci.S_DISCOUNT,
ci.E_DISCOUNT
FROM
crm_rank_policy_discount cd
LEFT JOIN crm_policy_goods_group cg ON cd.PLCY_ID = cg.PLCY_ID
LEFT JOIN crm_policy_discount_item ci ON ci.PLCY_ID = cd.PLCY_ID
LEFT JOIN mtBrand mb ON cg.GRP_ID = mb.brId
WHERE
cd.ACT_ID=#{actId,jdbcType=BIGINT} and cd.RAK_ID=#{rakId,jdbcType=VARCHAR}
GROUP BY
cd.PLCY_ID,
cd.MAX_DISCOUNT,
ci.`values`,
ci.S_DISCOUNT,
ci.E_DISCOUNT;
</select>
<!-- 查询已有的策略id -->
<select id="selectByActIDAndRakId" parameterType="cn.runsa.crmapp.customer.entity.CustomerRankPolicyDiscount" resultMap="BaseResultMap">
select PLCY_ID FROM crm_rank_policy_discount WHERE ACT_ID = #{actId,jdbcType=BIGINT} AND RAK_ID = #{rakId,jdbcType=VARCHAR}
</select>
<delete id="deleteByPrimaryKey" parameterType="cn.runsa.crmapp.customer.entity.CustomerRankPolicyDiscount">
delete from crm_rank_policy_discount where PLCY_ID = #{plcyId,jdbcType=BIGINT}
</delete>
<insert id="insert" useGeneratedKeys="true" keyProperty="plcyId" parameterType="cn.runsa.crmapp.customer.entity.CustomerRankPolicyDiscount">
insert into crm_rank_policy_discount (ACT_ID, RAK_ID, MAX_DISCOUNT,
REC_TIME, REC_USER)
values (#{actId,jdbcType=BIGINT}, #{rakId,jdbcType=VARCHAR},0.0,
#{recTime,jdbcType=TIMESTAMP}, #{recUser,jdbcType=BIGINT})
</insert>
<insert id="insertSelective" parameterType="cn.runsa.crmapp.customer.entity.CustomerRankPolicyDiscount">
<selectKey keyProperty="plcyId" order="AFTER" resultType="java.lang.Long">
SELECT LAST_INSERT_ID()
</selectKey>
insert into crm_rank_policy_discount
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="actId != null">
ACT_ID,
</if>
<if test="rakId != null">
RAK_ID,
</if>
<if test="maxDiscount != null">
MAX_DISCOUNT,
</if>
<if test="recTime != null">
REC_TIME,
</if>
<if test="recUser != null">
REC_USER,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="actId != null">
#{actId,jdbcType=BIGINT},
</if>
<if test="rakId != null">
#{rakId,jdbcType=VARCHAR},
</if>
<if test="maxDiscount != null">
#{maxDiscount,jdbcType=DOUBLE},
</if>
<if test="recTime != null">
#{recTime,jdbcType=TIMESTAMP},
</if>
<if test="recUser != null">
#{recUser,jdbcType=BIGINT},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="cn.runsa.crmapp.customer.entity.CustomerRankPolicyDiscount">
update crm_rank_policy_discount
<set>
<if test="actId != null">
ACT_ID = #{actId,jdbcType=BIGINT},
</if>
<if test="rakId != null">
RAK_ID = #{rakId,jdbcType=VARCHAR},
</if>
<if test="maxDiscount != null">
MAX_DISCOUNT = #{maxDiscount,jdbcType=DOUBLE},
</if>
<if test="recTime != null">
REC_TIME = #{recTime,jdbcType=TIMESTAMP},
</if>
<if test="recUser != null">
REC_USER = #{recUser,jdbcType=BIGINT},
</if>
</set>
where PLCY_ID = #{plcyId,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="cn.runsa.crmapp.customer.entity.CustomerRankPolicyDiscount">
update crm_rank_policy_discount
set ACT_ID = #{actId,jdbcType=BIGINT},
RAK_ID = #{rakId,jdbcType=VARCHAR},
MAX_DISCOUNT = #{maxDiscount,jdbcType=DOUBLE},
REC_TIME = #{recTime,jdbcType=TIMESTAMP},
REC_USER = #{recUser,jdbcType=BIGINT}
where PLCY_ID = #{plcyId,jdbcType=BIGINT}
</update>
<select id="queryBrIds" resultType="java.lang.String" parameterType="cn.runsa.crmapp.customer.entity.CustomerRankPolicyDiscount">
<![CDATA[SELECT GROUP_CONCAT(DISTINCT T2.GRP_ID) GRP_ID FROM CRM_RANK_POLICY_DISCOUNT T1 LEFT JOIN CRM_POLICY_GOODS_GROUP T2 ON T1.PLCY_ID = T2.PLCY_ID WHERE T1.ACT_ID=#{actId,jdbcType=BIGINT} AND T1.RAK_ID=#{rakId,jdbcType=VARCHAR} AND T1.PLCY_ID <>#{plcyId,jdbcType=BIGINT}]]>
</select>
</mapper>