<?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 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 JOIN biz_business_device_measure_item_info bbdmii ON bbdmii.id = bbdmi.item_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.certificateNo},'%')) </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 >= #{request.traceDateStart} </if> <if test="request != null and request.traceDateEnd != null and request.traceDateEnd !=''"> and bbdmi.trace_date <= #{request.traceDateEnd} </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 </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 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.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, 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 >= #{request.startDate} </if> <if test="request.endDate != null and request.endDate !=''"> and bbdmi.measure_valid_date <= #{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 >= #{request.startDate} </if> <if test="request != null and request.endDate != null and request.endDate !=''"> and bbdma.create_time <= #{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 >= #{request.startDate} </if> <if test="request != null and request.endDate != null and request.endDate !=''"> and bbdma.create_time <= #{request.endDate} </if> GROUP BY bbdmi.conclusion </select> </mapper>