<?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.doumee.dao.business.BrandMapper">
|
|
|
<select id="selectListByConditon" parameterType="com.doumee.dao.business.model.Brand" resultType="com.doumee.dao.business.model.Brand">
|
|
select aal.id, aal.NAME,aal.type,aal.sortnum
|
FROM (
|
SELECT id, NAME,type,sortnum
|
FROM `brand`
|
<where>
|
<if test="isdeleted!=null and isdeleted!=''">and isdeleted = #{isdeleted}
|
</if>
|
<choose>
|
<when test="type!=null and type =='0'.toString()">
|
and type=1
|
</when>
|
<otherwise>
|
<if test="categoryId!=null and categoryId!=''">
|
AND EXISTS(
|
SELECT g.id
|
FROM goods g
|
WHERE g.brand_id = brand.id
|
AND g.category_id = #{categoryId}
|
AND g.COMPANY_ID = #{companyId}
|
AND g.STATUS = 0
|
AND g.ISDELETED = 0
|
)
|
AND company_id = #{companyId}
|
</if>
|
</otherwise>
|
</choose>
|
</where>
|
UNION all
|
|
SELECT id,NAME,type,sortnum
|
FROM `brand`
|
<where>
|
<if test="isdeleted!=null and isdeleted!=''">
|
and isdeleted = #{isdeleted}
|
</if>
|
<choose>
|
<when test="type!=null and type =='0'.toString()">
|
and type=1
|
</when>
|
<otherwise>
|
<if test="categoryId!=null and categoryId!=''">
|
AND EXISTS(
|
SELECT g.id
|
FROM goods g
|
WHERE g.brand_id = brand.id
|
AND g.category_id = #{categoryId}
|
AND g.COMPANY_ID = #{companyId}
|
AND g.STATUS = 0
|
AND g.ISDELETED = 0
|
)
|
AND type = 1 AND company_id is NULL
|
</if>
|
</otherwise>
|
</choose>
|
</where>
|
) aal
|
ORDER BY
|
aal.type ASC,
|
aal.sortnum ASC
|
</select>
|
</mapper>
|