Newer
Older
casic-metering-biz-xichang / casic-metering-dao / src / main / resources / mapper / equipment / BizEquipmentStatusMapper.xml
<?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.casic.missiles.mapper.equipment.BizEquipmentStatusMapper">

    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.casic.missiles.model.equipment.BizEquipmentStatus">
        <id column="id" property="id" />
        <result column="approval_no" property="approvalNo" />
        <result column="approval_name" property="approvalName" />
        <result column="approval_type" property="approvalType" />
        <result column="equipment_id" property="equipmentId" />
        <result column="perform_status" property="performStatus" />
        <result column="approval_reason" property="approvalReason" />
        <result column="approval_address" property="approvalAddress" />
        <result column="approval_time" property="approvalTime" />
        <result column="equipment_status" property="equipmentStatus" />
        <result column="approval_status" property="approvalStatus" />
        <result column="process_id" property="processId" />
        <result column="create_user_id" property="createUserId" />
        <result column="create_user_name" property="createUserName" />
        <result column="create_time" property="createTime" />
        <result column="update_time" property="updateTime" />
    </resultMap>

    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, approval_no, approval_name, approval_type, equipment_id, perform_status, approval_reason, approval_address, approval_time, equipment_status, approval_status, process_id, create_user_id, create_user_name, create_time, update_time
    </sql>

    <select id="selectBatchForApprovalList" resultType="com.casic.missiles.dto.equipment.EquipmentStatusApprovalListResponse">
        SELECT bbes.*, bei.equipment_no, bei.equipment_name, bei.model, bei.dept_id, bei.dept_name, bei.product_country,
        bei.manufacturer, bei.manufacture_no, bei.produce_date, bei.trace_company, bei.trace_date, bei.measure_valid_date,
        bei.meter_identify
        FROM biz_equipment_status bbes
        JOIN biz_equipment_info bei ON bbes.equipment_id = bei.id
        WHERE 1=1
        <if test="request != null and request.approvalStatus != null and request.approvalStatus !=''">
            and bbes.approval_status = #{request.approvalStatus}
        </if>
        <if test="request != null and request.createUserId != null and request.createUserId !=''">
            and bbes.create_user_id = #{request.createUserId}
        </if>
        <if test="request != null and request.approvalType != null and request.approvalType !=''">
            and bbes.approval_type = #{request.approvalType}
        </if>
        <if test="request != null and request.approvalNo != null and request.approvalNo !=''">
            and bbes.approval_no like concat('%',#{request.approvalNo},'%')
        </if>
        <if test="request != null and request.equipmentNo != null and request.equipmentNo !=''">
            and bei.equipment_no like concat('%',#{request.equipmentNo},'%')
        </if>
        <if test="request != null and request.equipmentName != null and request.equipmentName !=''">
            and bei.equipment_name like concat('%',#{request.equipmentName},'%')
        </if>
        <if test="businessKeys != null">
            and bbes.id in
            <foreach collection="businessKeys" item="id" index="index" open="(" close=")" separator=",">
                #{id}
            </foreach>
        </if>
        ORDER BY bbes.create_time DESC
    </select>

    <select id="selectMaxNo" resultType="java.lang.Long">
        SELECT IFNULL(max(RIGHT(approval_no, 12)), 0) from biz_equipment_status
    </select>
</mapper>