EquipmentUseMapper.xml 2.5 KB
Newer Older
qinhu's avatar
1  
qinhu committed
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
<?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.wise.sc.cement.business.mapper.EquipmentUseMapper">

    <sql id="where">
        <where>
            <if test="params.brand != null and params.brand != ''">
                and e.brand = #{params.brand}
            </if>
            <if test="params.supplierId != null">
                and e.supplier_id = #{params.supplierId}
            </if>
            <if test="params.name != null and params.name != ''">
                and e.name like concat('%', #{params.name}, '%')
            </if>
            <if test="params.code != null and params.code != ''">
                and e.code = #{params.code}
            </if>
        </where>
    </sql>

    <select id="getPage" resultType="cn.wise.sc.cement.business.model.vo.EquipmentUseVo">
        SELECT eu.*,
        e.name as equipmentName, e.code as code, e.brand as brand, e.model as model
        FROM equipment_use eu
        left join equipment e on e.id = eu.equipment_id
        <include refid="where"/>
        ORDER BY eu.create_time ASC
    </select>

    <select id="exportList" resultType="java.util.HashMap">
        SELECT
        (@i:=@i+1) as 序号,
        e.name as 设备名称,
        e.code as 设备编号,
        e.model as '规格/型号',
        IF(ISNULL(eu.use_date),'',eu.use_date) as 使用日期,
        IF(ISNULL(eu.user_name),'',eu.user_name) as 使用人,
        IF(ISNULL(eu.project_name),'',eu.project_name) as 参与项目,
        IF(ISNULL(eu.project_code),'',eu.project_code) as 项目编号,
        IF(ISNULL(eu.test_item),'',eu.test_item) as 检测项
        FROM equipment_use eu
        left join equipment e on e.id = eu.equipment_id
        ,(select @i:=0)eu
        <include refid="where"/>
        ORDER BY eu.create_time ASC
    </select>


    <select id="getEquipmentNamesByProjectId" resultType="java.lang.String">
        SELECT CONCAT(e.`name`,' (',e.`code`,')') FROM equipment_use eu
        RIGHT JOIN
        (SELECT `name`,id,`code` FROM equipment) e
        ON eu.equipment_id = e.id AND eu.project_id = #{param}
        WHERE eu.id IS NOT NULL
    </select>

    <select id="getEquipmentNamesByEquipmentIds" resultType="java.lang.String">
        SELECT CONCAT(`name`,' (',`code`,')') FROM equipment
        where id in
        <foreach collection="params" open="(" close=")" item="id" separator=",">
            #{id}
        </foreach>
    </select>


</mapper>