zhangherong
2025-04-27 1007e0b552accd3288e7da6b47d8cc49a03bdf62
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamMaintenanceStandardMapper.xml
@@ -1,34 +1,11 @@
<?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="org.jeecg.modules.eam.mapper.EamMaintenanceStandardMapper">
    <select id="queryListBykeywordAndCategory" resultType="org.jeecg.modules.eam.entity.EamMaintenanceStandard">
        SELECT
            e.equipment_code+ '[' + e.equipment_name+ ']' AS 'equipmentText',
            m.id,
            m.standard_code,
            m.standard_name,
            m.maintenance_period,
            m.equipment_id
        FROM
            eam_maintenance_standard m -- 先过滤设备表,减少 JOIN 量
                INNER JOIN (
                SELECT
                    id,
                    eam_equipment.equipment_code as equipment_code,
                    eam_equipment.equipment_name as equipment_name,
                    org_id
                FROM
                    eam_equipment
                WHERE
                    del_flag = 0
                  AND ( equipment_code LIKE CONCAT ( #{ keyword }, '%' ) -- 右模糊利用索引
                    OR equipment_name LIKE CONCAT ( #{ keyword }, '%' ) )
            ) e ON m.equipment_id = e.id
        WHERE
            m.del_flag = 0
          AND m.standard_status= 'NORMAL'
          AND m.maintenance_category = #{maintenanceCategory}
          AND EXISTS ( SELECT 1 FROM mdc_user_production t WHERE t.user_id = #{ userId } AND t.pro_id = e.org_id );
    <select id="queryPageList" resultType="org.jeecg.modules.eam.entity.EamMaintenanceStandard">
        select ems.*, e.equipment_code, e.equipment_name
        from eam_maintenance_standard ems
        inner join eam_equipment e
        on ems.equipment_id = e.id
            ${ew.customSqlSegment}
    </select>
</mapper>