Newer
Older
casic-metering-eqpt-xichang / casic-metering-dao / src / main / resources / mapper / subcontract / SubcontractCertificateMapper.xml
zhangyingjie on 13 Sep 2023 5 KB 新增首页看板接口
<?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.subcontract.SubcontractCertificateMapper">

    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.casic.missiles.model.subcontract.SubcontractCertificate">
        <id column="id" property="id" />
        <result column="certificate_no" property="certificateNo" />
        <result column="certificate_name" property="certificateName" />
        <result column="subcontractor_id" property="subcontractorId" />
        <result column="subcontractor_no" property="subcontractorNo" />
        <result column="subcontractor_name" property="subcontractorName" />
        <result column="equipment_id" property="equipmentId" />
        <result column="equipment_no" property="equipmentNo" />
        <result column="equipment_name" property="equipmentName" />
        <result column="equipment_manufacture_no" property="equipmentManufactureNo" />
        <result column="equipment_model" property="equipmentModel" />
        <result column="check_date" property="checkDate" />
        <result column="certificate_valid" property="certificateValid" />
        <result column="meter_identify" property="meterIdentify" />
        <result column="original_record" property="origianlRecord" />
        <result column="certificate_report" property="certificateReport" />
        <result column="create_time" property="createTime" />
        <result column="update_time" property="updateTime" />
        <result column="create_user_id" property="createUserId" />
        <result column="create_user_name" property="createUserName" />
    </resultMap>

    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, certificate_no, certificate_name, subcontractor_id, subcontractor_no, subcontractor_name, equipment_id, equipment_no, equipment_name, equipment_manufacture_no, equipment_model, check_date, certificate_valid, meter_identify, origianl_record, certificate_report, create_time, update_time, create_user_id, create_user_name
    </sql>

    <sql id="commonSelect">
        SELECT
        c.id as id,
        c.certificate_no as certificateNo,
        c.certificate_name as certificateName,
        c.subcontractor_id as subcontractorId,
        s.subcontractor_no as subcontractorNo,
        s.company_name as subcontractorName,
        c.equipment_id as equipmentId,
        e.equipment_no as equipmentNo,
        e.equipment_name as equipmentName,
        e.manufacture_no as equipmentManufactureNo,
        e.model as equipmentModel,
        e.dept_id as equipmentDeptId,
        c.check_date as checkDate,
        c.certificate_valid as certificateValid,
        c.meter_identify as meterIdentify,
        c.original_record as originalRecord,
        c.certificate_report as certificateReport,
        c.create_time as createTime,
        c.update_time as updateTime,
        c.create_user_id as createUserId,
        c.create_user_name as createUserName,
        c.create_dept_id as createDeptId
        FROM
        eqpt_subcontract_certificate c
        LEFT JOIN eqpt_equipment_info e ON c.equipment_id = e.id
        LEFT JOIN eqpt_subcontractor s ON c.subcontractor_id = s.id
        <where>
            <if test="ew != null">
                ${ew.sqlSegment}
            </if>
        </where>
    </sql>

    <select id="listScopePage" resultType="com.casic.missiles.model.subcontract.SubcontractCertificate">
        <include refid="commonSelect"/>
    </select>

    <select id="listScope" resultType="com.casic.missiles.model.subcontract.SubcontractCertificate">
        <include refid="commonSelect"/>
    </select>

    <select id="listBySubcontractor" resultType="com.casic.missiles.model.subcontract.SubcontractCertificate">
        SELECT
            c.id as id,
            c.certificate_no as certificateNo,
            c.certificate_name as certificateName,
            c.subcontractor_id as subcontractorId,
            s.subcontractor_no as subcontractorNo,
            s.company_name as subcontractorName,
            c.equipment_id as equipmentId,
            c.check_date as checkDate,
            c.certificate_valid as certificateValid,
            c.meter_identify as meterIdentify,
            c.original_record as origianlRecord,
            c.certificate_report as certificateReport,
            c.create_time as createTime,
            c.update_time as updateTime,
            c.create_user_id as createUserId,
            c.create_user_name as createUserName,
            c.create_dept_id as createDeptId
        FROM
            eqpt_subcontract_certificate c
        LEFT JOIN eqpt_subcontractor s ON c.subcontractor_id = s.id
        <where>
            c.subcontractor_id = #{subcontractorId}
        </where>
    </select>

    <select id="listByEquipment" resultType="com.casic.missiles.dto.equipment.EquipmentCertificateDTO">
        SELECT
        c.id as id,
        c.certificate_no as certificateNo,
        c.certificate_name as certificateName,
        s.company_name as checkOrganization,
        c.equipment_id as equipmentId,
        c.check_date as checkDate,
        c.certificate_valid as certificateValid,
        c.meter_identify as meterIdentify,
        c.certificate_report as minioFileName,
        c.create_time as createTime,
        c.update_time as updateTime
        FROM
        eqpt_subcontract_certificate c
        LEFT JOIN eqpt_subcontractor s ON c.subcontractor_id = s.id
        <where>
            c.equipment_id = #{equipmentId}
        </where>
    </select>

</mapper>