puzhibing
2023-06-30 f58cca364b731eac2d60a440ffaa804be3cd43fd
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
<?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.stylefeng.guns.modular.system.dao.TCarBrandMapper">
 
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.TCarBrand">
        <id column="id" property="id" />
        <result column="name" property="name" />
        <result column="imgUrl" property="imgUrl" />
        <result column="remark" property="remark" />
        <result column="createTime" property="createTime" />
        <result column="state" property="state" />
    </resultMap>
 
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, name, imgUrl, remark, insertTime, state
    </sql>
 
    <!--根据条件查询车辆品牌列表-->
    <select id="getCarBrandList" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
        SELECT * FROM (SELECT IFNULL(cm.num,0) as modelNum,IFNULL(cc.num,0) as carNum,cb.* FROM t_car_brand as cb
        LEFT JOIN (SELECT COUNT(id) as num,brandId FROM t_car_model WHERE state = 1 GROUP BY brandId) as cm on cm.brandId = cb.id
        LEFT JOIN (SELECT COUNT(id) as num,carBrandId FROM t_car WHERE state = 1 GROUP BY carBrandId) as cc on cc.carBrandId = cb.id) as o
        <where>
            o.state = 1
            <if test="beginTime != null and beginTime != '' and endTime != null and endTime != ''">
                AND (o.insertTime between CONCAT(#{beginTime},' 00:00:00') and CONCAT(#{endTime},' 23:59:59'))
            </if>
            <if test="name != null and name != ''">
                and o.name  LIKE CONCAT('%',#{name},'%')
            </if>
        </where>
        order by o.id desc
    </select>
 
</mapper>