Newer
Older
casic-metering-biz-xichang / casic-metering-dao / src / main / resources / mapper / business / BizBusinessDeviceMeasureApprovalMapper.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.business.BizBusinessDeviceMeasureApprovalMapper">

    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.casic.missiles.model.business.BizBusinessDeviceMeasureApproval">
        <id column="id" property="id" />
        <result column="certificate_no" property="certificateNo" />
        <result column="certificate_name" property="certificateName" />
        <result column="lab_code" property="labCode" />
        <result column="group_code" property="groupCode" />
        <result column="order_id" property="orderId" />
        <result column="sample_id" property="sampleId" />
        <result column="data_id" property="dataId" />
        <result column="original_record_file" property="originalRecordFile" />
        <result column="certificate_file" property="certificateFile" />
        <result column="create_user_id" property="createUserId" />
        <result column="create_user_name" property="createUserName" />
        <result column="approval_status" property="approvalStatus" />
        <result column="process_id" property="processId" />
        <result column="create_time" property="createTime" />
        <result column="update_time" property="updateTime" />
    </resultMap>

    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, certificate_no, certificate_name, lab_code, group_code, order_id, sample_id, data_id, original_record_file, certificate_file,
        create_user_id, create_user_name, approval_status, process_id, create_time, update_time
    </sql>

    <select id="selectBatchForApprovalList" resultMap="BaseResultMap">
        SELECT bbdma.*, eei.equipment_no AS sampleNo, eei.equipment_name AS sampleName, eei.model AS model, eei.manufacture_no AS manufactureNo,
        bbdmi.measure_category AS measureCategory,  bbdmi.create_user_name AS staffName, bbdmi.trace_date AS traceDate,
        bbdmi.manufacturer AS manufacturer, bbdmi.conclusion AS conclusion, bbdmi.restriction_instruction AS restrictionInstruction,
        bbdmi.measure_address AS measureAddress, bbdmi.data_no AS measureDataNo, bbdmi.measure_valid_date, bbdmi.meter_identify, bbdmi.measure_valid_date,
        bbdmii.belong_standard_equipment, bbdmii.item_category_id, bbdmii.item_category_name, bboi.customer_name, eei.dept_id,
        bbdmi.data_no AS measureDataNo, sd.SIMPLE_NAME AS deptName
        FROM biz_business_device_measure_approval bbdma
        JOIN eqpt_equipment_info eei ON bbdma.sample_id = eei.id
        JOIN biz_business_device_measure_info bbdmi ON bbdma.data_id = bbdmi.id
        LEFT JOIN biz_business_device_measure_item_info bbdmii ON bbdmii.id = bbdmi.item_id
        JOIN biz_business_order_info bboi ON bboi.id = bbdma.order_id
        LEFT JOIN sys_dept sd ON sd.id = eei.dept_id
        WHERE 1=1
        <if test="request != null and request.approvalStatus != null and request.approvalStatus !=''">
            and bbdma.approval_status = #{request.approvalStatus}
        </if>
        <if test="request != null and request.createUserId != null and request.createUserId !=''">
            and bbdma.create_user_id = #{request.createUserId}
        </if>
        <if test="request != null and request.certificateNo != null and request.certificateNo !=''">
            and bbdma.certificate_no like concat('%',#{request.certificateNo},'%')
        </if>
        <if test="request != null and request.certificateName != null and request.certificateName !=''">
            and (bbdma.certificate_name like concat('%',#{request.certificateName},'%') OR bbdma.certificate_no like concat('%',#{request.certificateName},'%'))
        </if>
<!--        <if test="request != null and request.sampleNo != null and request.sampleNo !=''">-->
<!--            and eei.equipment_no like concat('%',#{request.sampleNo},'%')-->
<!--        </if>-->
        <if test="request != null and request.measureCategory != null and request.measureCategory !=''">
            and bbdmi.measure_category = #{request.measureCategory}
        </if>
        <if test="request != null and request.staffName != null and request.staffName !=''">
            and bbdmi.create_user_name = #{request.staffName}
        </if>
        <if test="request != null and request.traceDateStart != null and request.traceDateStart !=''">
            and bbdmi.trace_date &gt;= #{request.traceDateStart}
        </if>
        <if test="request != null and request.traceDateEnd != null and request.traceDateEnd !=''">
            and bbdmi.trace_date &lt;= #{request.traceDateEnd}
        </if>
        <if test="request != null and request.labCode != null and request.labCode !=''">
            and bbdma.lab_code = #{request.labCode}
        </if>
        <if test="request != null and request.groupCode != null and request.groupCode !=''">
            and bbdma.group_code = #{request.groupCode}
        </if>
        <if test="request != null and request.sampleNo != null and request.sampleNo !=''">
            and bbdmi.sample_no like concat('%',#{request.sampleNo},'%')
        </if>
        <if test="request != null and request.sampleName != null and request.sampleName !=''">
            and bbdmi.sample_name like concat('%',#{request.sampleName},'%')
        </if>
        <if test="request != null and request.model != null and request.model !=''">
            and bbdmi.model like concat('%',#{request.model},'%')
        </if>
        <if test="request != null and request.manufactureNo != null and request.manufactureNo !=''">
            and bbdmi.manufacture_no like concat('%',#{request.manufactureNo},'%')
        </if>
        <if test="request != null and request.manufacturer != null and request.manufacturer !=''">
            and bbdmi.manufacturer like concat('%',#{request.manufacturer},'%')
        </if>
        <if test="request != null and request.customerName != null and request.customerName !=''">
            and bboi.customer_name like concat('%',#{request.customerName},'%')
        </if>
        <if test="request != null and request.deptName != null and request.deptName !=''">
            and sd.SIMPLE_NAME like concat('%',#{request.deptName},'%')
        </if>
        <if test="request != null and request.measureDataNo != null and request.measureDataNo !=''">
            and bbdmi.data_no like concat('%',#{request.measureDataNo},'%')
        </if>
        <if test="request != null and request.conclusion != null and request.conclusion !=''">
            and bbdmi.conclusion like concat('%',#{request.conclusion},'%')
        </if>
        <if test="request != null and request.measureValidDateStart != null and request.measureValidDateStart !=''">
            and bbdmi.measure_valid_date &gt;= #{request.measureValidDateStart}
        </if>
        <if test="request != null and request.measureValidDateEnd != null and request.measureValidDateEnd !=''">
            and bbdmi.measure_valid_date &lt;= #{request.measureValidDateEnd}
        </if>
        <if test="businessKeys != null">
            and bbdma.id in
            <foreach collection="businessKeys" item="id" index="index" open="(" close=")" separator=",">
                #{id}
            </foreach>
        </if>
        ORDER BY bbdma.create_time DESC
    </select>

    <select id="selectMaxCertNo" resultType="java.lang.Long">
        SELECT IFNULL(max(RIGHT(certificate_no, 4)), 0)
        FROM biz_business_device_measure_approval
        WHERE certificate_no like concat('%',#{preCertNo},'%')
    </select>

    <select id="selectDetailById" resultMap="BaseResultMap">
        SELECT bbdma.*, eei.equipment_no AS sampleNo, eei.equipment_name AS sampleName, eei.model AS model, eei.model AS model, eei.manufacture_no AS manufactureNo,
        bbdmi.measure_category AS measureCategory,  bbdmi.create_user_name AS staffName, bbdmi.trace_date AS traceDate, bbdmi.meter_identify, bbdmi.measure_valid_date
        FROM biz_business_device_measure_approval bbdma
        JOIN eqpt_equipment_info eei ON bbdma.sample_id = eei.id
        JOIN biz_business_device_measure_info bbdmi ON bbdma.data_id = bbdmi.id
        WHERE bbdma.id = #{id}
    </select>

    <select id="customTemplateUrl" resultType="java.lang.String">
        SELECT minio_file_name
        FROM  system_template
        WHERE template_name= #{templateName}
        AND   template_type= #{coverModuleName}
        <if test="descn != null and descn!=''">
            AND template_desc like concat('%',#{descn},'%')
        </if>
    </select>

    <select id="customTemplateByCategory" resultType="java.lang.String">
        SELECT minio_file_name
        FROM  system_template
        WHERE measure_item_id= #{itemCategoryId}
        AND   template_type= #{templateType}
    </select>

    <select id="getMeasureAddress" resultType="java.lang.String">
        SELECT location_name
        FROM  env_location_info
        WHERE id= #{addressId}
    </select>

    <update id="updateCertificate">
        UPDATE biz_business_device_measure_approval
        SET original_record_file=#{originalRecordFile},certificate_file=#{certificateFile}
        WHERE id= #{id}
    </update>


    <select id="certificateRecordsById" resultType="com.casic.missiles.dto.business.certificate.CertificateRecordResponse">
        SELECT bcr.id AS certificationId, bcr.certificate_no AS certificateReportNo, bcr.certificate_name AS certificateReportName,
        bbdmi.trace_date AS calibrationTime, bbdmi.measure_valid_date AS expirationDate, bcr.certificate_file AS certificateReportFile,
        bbdmi.conclusion, bbdmi.restriction_instruction, bbdmi.meter_identify, bbdmi.measure_person_id, brsi.staff_name AS measurePersonName
        FROM biz_business_device_measure_approval bcr
        JOIN biz_business_device_measure_info bbdmi ON bcr.data_id = bbdmi.id
        JOIN (
        select id
        from biz_business_order_info
        where 1=1
        <if test="request.customerId != null and request.customerId !=''">
            AND customer_id = #{request.customerId}
        </if>
        )bo ON (bo.id = bcr.order_id AND bcr.approval_status = '4')
        LEFT JOIN biz_resource_staff_info brsi ON brsi.id = bbdmi.measure_person_id
        WHERE 1=1
        <if test="request.sampleId != null and request.sampleId !=''">
            AND bcr.sample_id = #{request.sampleId}
        </if>
        ORDER BY bcr.create_time DESC
    </select>

    <select id="certificateMonitorsById" resultType="com.casic.missiles.dto.business.certificate.CertificateMonitorDTO">
        SELECT bcr.id AS certificateId, bcr.certificate_no AS certificateReportNo, bcr.certificate_name AS certificateReportName,
        bcr.create_time AS submitTime, bcr.update_time AS finishedTime, bcr.approval_status AS certificateStatus, ms.staff_name AS staffName
        FROM biz_business_device_measure_approval bcr
        JOIN biz_business_device_measure_info bbdmi ON bcr.data_id = bbdmi.id
        LEFT JOIN biz_resource_staff_info ms ON bbdmi.measure_person_id = ms.id
        WHERE 1=1
        <if test="request.sampleId != null and request.sampleId !=''">
            AND bcr.sample_id = #{request.sampleId}
        </if>
        ORDER BY bcr.update_time DESC
    </select>
    <select id="selectApprovedCertificateListPage" resultType="com.casic.missiles.model.business.BizBusinessDeviceMeasureApproval">
        SELECT bbdma.id, bbdma.certificate_no, bbdma.certificate_name, bbdmi.measure_valid_date,
               bbdmi.measure_address, bbdmi.measure_person_id, bbdmi.sample_id, bbdmi.sample_name,
               bbdmi.model, bbdmi.manufacture_no, bbdmi.trace_date, bboi.customer_id,
               bboi.customer_name, bboi.dept_id, bboi.dept_name, brsi.staff_name
        FROM biz_business_device_measure_info bbdmi
                 JOIN biz_business_device_measure_item_info bbdmii ON bbdmii.id = bbdmi.item_id
                 JOIN eqpt_equipment_model_info eemi ON eemi.id = bbdmii.device_model_id
                 JOIN biz_business_order_sample_relation bbosr ON (bbosr.order_id = bbdmi.order_id AND bbosr.sample_id = bbdmi.sample_id)
                 JOIN biz_business_order_info bboi ON bbosr.order_id = bboi.id
                 JOIN biz_business_device_measure_equipment bbdme ON bbdmi.id = bbdme.data_id
                 JOIN biz_business_device_measure_approval bbdma ON bbdma.data_id = bbdmi.id
                 JOIN biz_resource_staff_info brsi ON brsi.id = bbdmi.measure_person_id
        WHERE bbdme.equipment_id = #{request.equipmentId} AND bbdma.approval_status = #{request.approvalStatus}
        <if test="request.certificateNo !=null and request.certificateNo !=''">
            AND bbdma.certificate_no like concat('%',#{request.certificateNo},'%')
        </if>
        <if test="request.startDate != null and request.startDate !=''">
            and bbdmi.measure_valid_date &gt;= #{request.startDate}
        </if>
        <if test="request.endDate != null and request.endDate !=''">
            and bbdmi.measure_valid_date &lt;= #{request.endDate}
        </if>
        <if test="request.measureAddress != null and request.measureAddress != ''">
            AND bbdmi.measure_address like concat('%',#{request.measureAddress},'%')
        </if>
        <if test="request.measurePersonName != null and request.measurePersonName !=''">
            AND bbdmi.staff_name like concat('%',#{request.measurePersonName},'%')
        </if>
        <if test="request.sampleName !=null and request.sampleName !=''">
            AND bbdmi.sample_name like concat('%',#{request.sampleName},'%')
        </if>
        <if test="request.model != null and request.model !=''">
            AND bbdmi.model like concat('%',#{request.model},'%')
        </if>
        <if test="request.manufactureNo !=null and request.manufactureNo !=''">
            AND bbdmi.manufacture_no like concat('%',#{request.manufactureNo},'%')
        </if>
        <if test="request.customerName != null and request.customerName !=''">
            AND bboi.customer_name like concat('%',#{request.customerName},'%')
        </if>
        <if test="request.deptName != null and request.deptName !=''">
            AND bboi.dept_name like concat('%',#{requestt.deptName},'%')
        </if>
        order by measure_valid_date DESC
    </select>

    <delete id="deleteMeasureApproval">
        delete
        from  biz_business_device_measure_approval
        where  id=#{id}
    </delete>

    <select id="selectAmountGroupByDevice" resultType="com.casic.missiles.model.workbench.BizWorkbenchCommonDTO">
        SELECT eei.equipment_name AS dimension, COUNT(bbdma.id) AS amount
        FROM biz_business_device_measure_approval bbdma
        JOIN eqpt_equipment_info eei ON bbdma.sample_id = eei.id
        WHERE bbdma.approval_status = 4 AND bbdma.original_record_file IS NOT NULL
        <if test="userId != null and userId !=''">
            AND bbdma.create_user_id = #{userId}
        </if>
        <if test="request != null and request.labCode != null and request.labCode !=''">
            AND bbdma.lab_code = #{request.labCode}
        </if>
        <if test="request != null and request.groupCode != null and request.groupCode !=''">
            AND bbdma.group_code = #{request.groupCode}
        </if>
        <if test="request != null and request.startDate != null and request.startDate !=''">
            and bbdma.create_time &gt;= #{request.startDate}
        </if>
        <if test="request != null and request.endDate != null and request.endDate !=''">
            and bbdma.create_time &lt;= #{request.endDate}
        </if>
        GROUP BY eei.equipment_name
    </select>

    <select id="getAmountGroupByConclusion" resultType="com.casic.missiles.model.workbench.BizWorkbenchCommonDTO">
        SELECT bbdmi.conclusion AS dimension, COUNT(bbdma.id) AS amount
        FROM biz_business_device_measure_approval bbdma
        JOIN biz_business_device_measure_info bbdmi ON bbdma.data_id = bbdmi.id
        WHERE bbdma.approval_status = 4 AND bbdma.original_record_file IS NOT NULL
        <if test="userId != null and userId !=''">
            AND bbdma.create_user_id = #{userId}
        </if>
        <if test="request != null and request.labCode != null and request.labCode !=''">
            AND bbdma.lab_code = #{request.labCode}
        </if>
        <if test="request != null and request.groupCode != null and request.groupCode !=''">
            AND bbdma.group_code = #{request.groupCode}
        </if>
        <if test="request != null and request.startDate != null and request.startDate !=''">
            and bbdma.create_time &gt;= #{request.startDate}
        </if>
        <if test="request != null and request.endDate != null and request.endDate !=''">
            and bbdma.create_time &lt;= #{request.endDate}
        </if>
        GROUP BY bbdmi.conclusion
    </select>

    <select id="selectSampleList" resultType="com.casic.missiles.model.eqpt.EqptEquipmentInfo">
        SELECT eei.*, bbdmi.meter_identify AS mIdentify
        FROM biz_business_device_measure_approval bbdma
        JOIN biz_business_device_measure_info bbdmi ON (bbdma.data_id = bbdmi.id AND bbdma.approval_status = 4)
        JOIN eqpt_equipment_info eei ON bbdma.sample_id = eei.id
        WHERE 1=1
        <if test="request != null and request.labCode != null and request.labCode !=''">
            AND bbdma.lab_code = #{request.labCode}
        </if>
        <if test="request != null and request.groupCode != null and request.groupCode !=''">
            AND bbdma.group_code = #{request.groupCode}
        </if>
        <if test="request != null and request.timeStart != null and request.timeStart !=''">
            and bbdmi.trace_date &gt;= #{request.timeStart}
        </if>
        <if test="request != null and request.timeEnd != null and request.timeEnd !=''">
            and bbdmi.trace_date &lt;= #{request.timeEnd}
        </if>
        <if test="request != null and request.sampleName != null and request.sampleName !=''">
            AND eei.equipment_name like concat('%',#{request.sampleName},'%')
        </if>
        <if test="request != null and request.model != null and request.model !=''">
            AND eei.model like concat('%',#{request.model},'%')
        </if>
        <if test="request != null and request.helpInstruction != null and request.helpInstruction !=''">
            AND eei.help_instruction = #{request.helpInstruction}
        </if>
        <if test="request != null and request.customerId != null">
            AND (eei.company_id = #{request.customerId} OR eei.dept_id = #{request.customerId})
        </if>
    </select>

    <select id="selectCategoryCount" resultType="com.casic.missiles.dto.data.BizDataCertificateCategoryDTO">
        SELECT bbdmi.measure_category,
            SUM(IF(bbdmi.conclusion = '所检项目合格', 1 ,0)) AS qualifiedAmount,
            SUM(IF(bbdmi.conclusion = '不合格', 1 ,0)) AS unqualifiedAmount,
            SUM(IF(bbdmi.conclusion = '除*外其余所检项目合格', 1 ,0)) AS otherAmount
        FROM biz_business_device_measure_approval bbdma
        JOIN biz_business_device_measure_info bbdmi ON (bbdma.data_id = bbdmi.id AND bbdma.approval_status = 4)
        JOIN eqpt_equipment_info eei ON bbdma.sample_id = eei.id
        WHERE bbdmi.conclusion IS NOT NULL
        <if test="request != null and request.contentType != null and request.contentType == 1">
            AND (bbdma.certificate_file IS NOT NULL OR bbdma.const_certificate_excel_data IS NOT NULL)
        </if>
        <if test="request != null and request.contentType != null and request.contentType == 2">
            AND (bbdma.original_record_file IS NOT NULL OR bbdma.const_record_excel_data IS NOT NULL)
        </if>
        <if test="request != null and request.labCode != null and request.labCode !=''">
            AND bbdma.lab_code = #{request.labCode}
        </if>
        <if test="request != null and request.groupCode != null and request.groupCode !=''">
            AND bbdma.group_code = #{request.groupCode}
        </if>
        <if test="request != null and request.timeStart != null and request.timeStart !=''">
            and bbdmi.trace_date &gt;= #{request.timeStart}
        </if>
        <if test="request != null and request.timeEnd != null and request.timeEnd !=''">
            and bbdmi.trace_date &lt;= #{request.timeEnd}
        </if>
        GROUP BY bbdmi.measure_category
    </select>

    <select id="selectGroupCount" resultType="com.casic.missiles.dto.data.BizDataCertificateRateDTO">
        SELECT
            SUM(IF(bbdma.group_code = 'DD', 1 ,0)) AS ddAmount,
            SUM(IF(bbdma.group_code = 'RL', 1 ,0)) AS rlAmount,
            SUM(IF(bbdma.group_code = 'WM', 1 ,0)) AS wmAmount
        FROM biz_business_device_measure_approval bbdma
        JOIN biz_business_device_measure_info bbdmi ON (bbdma.data_id = bbdmi.id AND bbdma.approval_status = 4)
        JOIN eqpt_equipment_info eei ON bbdma.sample_id = eei.id
        WHERE 1=1
        <if test="request != null and request.contentType != null and request.contentType == 1">
            AND (bbdma.certificate_file IS NOT NULL OR bbdma.const_certificate_excel_data IS NOT NULL)
        </if>
        <if test="request != null and request.contentType != null and request.contentType == 2">
            AND (bbdma.original_record_file IS NOT NULL OR bbdma.const_record_excel_data IS NOT NULL)
        </if>
        <if test="request != null and request.labCode != null and request.labCode !=''">
            AND bbdma.lab_code = #{request.labCode}
        </if>
        <if test="request != null and request.groupCode != null and request.groupCode !=''">
            AND bbdma.group_code = #{request.groupCode}
        </if>
        <if test="request != null and request.timeStart != null and request.timeStart !=''">
            and bbdmi.trace_date &gt;= #{request.timeStart}
        </if>
        <if test="request != null and request.timeEnd != null and request.timeEnd !=''">
            and bbdmi.trace_date &lt;= #{request.timeEnd}
        </if>
    </select>

    <select id="selectGroupCategoryCount" resultType="com.casic.missiles.dto.data.BizDataCertificateAnalysisDTO">
        SELECT bbdma.group_code,
            SUM(IF(bbdmi.measure_category = '1', 1 ,0)) AS testAmount,
            SUM(IF(bbdmi.measure_category = '2', 1 ,0)) AS calibrationAmount,
            SUM(IF(bbdmi.measure_category = '3', 1 ,0)) AS measureAmount,
            SUM(IF(bbdmi.measure_category = '4', 1 ,0)) AS checkAmount
        FROM biz_business_device_measure_approval bbdma
        JOIN biz_business_device_measure_info bbdmi ON (bbdma.data_id = bbdmi.id AND bbdma.approval_status = 4)
        JOIN eqpt_equipment_info eei ON bbdma.sample_id = eei.id
        WHERE 1=1
        <if test="request != null and request.contentType != null and request.contentType == 1">
            AND (bbdma.certificate_file IS NOT NULL OR bbdma.const_certificate_excel_data IS NOT NULL)
        </if>
        <if test="request != null and request.contentType != null and request.contentType == 2">
            AND (bbdma.original_record_file IS NOT NULL OR bbdma.const_record_excel_data IS NOT NULL)
        </if>
        <if test="request != null and request.labCode != null and request.labCode !=''">
            AND bbdma.lab_code = #{request.labCode}
        </if>
        <if test="request != null and request.groupCode != null and request.groupCode !=''">
            AND bbdma.group_code = #{request.groupCode}
        </if>
        <if test="request != null and request.timeStart != null and request.timeStart !=''">
            and bbdmi.trace_date &gt;= #{request.timeStart}
        </if>
        <if test="request != null and request.timeEnd != null and request.timeEnd !=''">
            and bbdmi.trace_date &lt;= #{request.timeEnd}
        </if>
        GROUP BY bbdma.group_code
    </select>

    <select id="selectStaffCountPage" resultType="com.casic.missiles.dto.data.BizDataCertificateStaffDTO">
        SELECT brsi.id AS staffId, brsi.staff_name AS staffName, bbdma.lab_code, bbdma.group_code, COUNT(bbdma.id) AS certificateAmount
        FROM biz_business_device_measure_approval bbdma
        JOIN biz_business_device_measure_info bbdmi ON (bbdma.data_id = bbdmi.id AND bbdma.approval_status = 4)
        JOIN eqpt_equipment_info eei ON bbdma.sample_id = eei.id
        JOIN biz_resource_staff_info brsi ON brsi.id = bbdmi.measure_person_id
        WHERE 1=1
        <if test="request != null and request.contentType != null and request.contentType == 1">
            AND (bbdma.certificate_file IS NOT NULL OR bbdma.const_certificate_excel_data IS NOT NULL)
        </if>
        <if test="request != null and request.contentType != null and request.contentType == 2">
            AND (bbdma.original_record_file IS NOT NULL OR bbdma.const_record_excel_data IS NOT NULL)
        </if>
        <if test="request != null and request.labCode != null and request.labCode !=''">
            AND bbdma.lab_code = #{request.labCode}
        </if>
        <if test="request != null and request.groupCode != null and request.groupCode !=''">
            AND bbdma.group_code = #{request.groupCode}
        </if>
        <if test="request != null and request.timeStart != null and request.timeStart !=''">
            and bbdmi.trace_date &gt;= #{request.timeStart}
        </if>
        <if test="request != null and request.timeEnd != null and request.timeEnd !=''">
            and bbdmi.trace_date &lt;= #{request.timeEnd}
        </if>
        GROUP BY brsi.id, bbdma.lab_code, bbdma.group_code
        ORDER BY COUNT(bbdma.id) DESC
    </select>

    <select id="selectOnlyRecordPage" resultType="com.casic.missiles.model.eqpt.EqptEquipmentInfo">
        SELECT eei.*
        FROM biz_business_device_measure_approval bbdma
        JOIN biz_business_device_measure_info bbdmi ON (bbdma.data_id = bbdmi.id AND bbdma.approval_status = 4)
        JOIN eqpt_equipment_info eei ON bbdma.sample_id = eei.id
        WHERE 1=1
        AND (bbdma.original_record_file IS NOT NULL OR bbdma.const_record_excel_data IS NOT NULL)
        AND (bbdma.certificate_file IS NULL AND bbdma.const_certificate_excel_data IS NULL)
        <if test="request != null and request.labCode != null and request.labCode !=''">
            AND bbdma.lab_code = #{request.labCode}
        </if>
        <if test="request != null and request.groupCode != null and request.groupCode !=''">
            AND bbdma.group_code = #{request.groupCode}
        </if>
        <if test="request != null and request.timeStart != null and request.timeStart !=''">
            and bbdmi.trace_date &gt;= #{request.timeStart}
        </if>
        <if test="request != null and request.timeEnd != null and request.timeEnd !=''">
            and bbdmi.trace_date &lt;= #{request.timeEnd}
        </if>
    </select>
</mapper>