Lius
2024-09-09 621f1bdaa9d84ea7e1fba28d883c4927a14ee485
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml
@@ -25,6 +25,21 @@
        WHERE
            t1.the_date <= #{ vo.endTime }
            AND t1.the_date >= #{ vo.startTime }
        <if test="vo.equipmentType != null and vo.equipmentType != '' ">
            AND t2.equipment_type = #{ vo.equipmentType }
        </if>
        <if test="vo.driveType != null and vo.driveType != '' ">
            AND t2.drive_type = #{ vo.driveType }
        </if>
        <if test="vo.deviceLevel != null and vo.deviceLevel != '' ">
            AND t2.device_level = #{vo.deviceLevel}
        </if>
        <if test="vo.deviceCategory != null and vo.deviceCategory != '' ">
            AND t2.device_category = #{vo.deviceCategory}
        </if>
        <if test="vo.deviceImportanceLevel != null and vo.deviceImportanceLevel != '' ">
            AND t2.device_importance_level = #{vo.deviceImportanceLevel}
        </if>
        <if test="vo.equipmentIdList != null and vo.equipmentIdList.size() > 0 ">
            AND t2.equipment_id IN
            <foreach collection="vo.equipmentIdList" item="id" index="index" open="(" close=")" separator=",">
@@ -60,6 +75,21 @@
        WHERE
            t1.the_date &lt;= #{ vo.endTime }
            AND t1.the_date &gt;= #{ vo.startTime }
        <if test="vo.equipmentType != null and vo.equipmentType != '' ">
            AND t2.equipment_type = #{ vo.equipmentType }
        </if>
        <if test="vo.driveType != null and vo.driveType != '' ">
            AND t2.drive_type = #{ vo.driveType }
        </if>
        <if test="vo.deviceLevel != null and vo.deviceLevel != '' ">
            AND t2.device_level = #{vo.deviceLevel}
        </if>
        <if test="vo.deviceCategory != null and vo.deviceCategory != '' ">
            AND t2.device_category = #{vo.deviceCategory}
        </if>
        <if test="vo.deviceImportanceLevel != null and vo.deviceImportanceLevel != '' ">
            AND t2.device_importance_level = #{vo.deviceImportanceLevel}
        </if>
        <if test="vo.equipmentIdList != null and vo.equipmentIdList.size() > 0 ">
            AND t2.equipment_id IN
            <foreach collection="vo.equipmentIdList" item="id" index="index" open="(" close=")" separator=",">
@@ -81,7 +111,8 @@
            SUM ( t1.process_long ) processLong,
            SUM ( t1.open_long ) openLong,
            SUM ( t1.wait_long ) waitLong,
            SUM ( t1.close_long ) closeLong
            SUM ( t1.close_long ) closeLong,
            sum ( t1.total_long ) totalLong
        FROM
            mdc_equipment t2
            LEFT JOIN mdc_equipment_statistical_shift_info t1 ON t1.equipment_id = t2.equipment_id
@@ -99,6 +130,21 @@
            </if>
            <if test="vo.shiftSubId != null and vo.shiftSubId != ''">
                AND t1.shift_sub_id = #{ vo.shiftSubId }
            </if>
            <if test="vo.equipmentType != null and vo.equipmentType != '' ">
                AND t2.equipment_type = #{ vo.equipmentType }
            </if>
            <if test="vo.driveType != null and vo.driveType != '' ">
                AND t2.drive_type = #{ vo.driveType }
            </if>
            <if test="vo.deviceLevel != null and vo.deviceLevel != '' ">
                AND t2.device_level = #{vo.deviceLevel}
            </if>
            <if test="vo.deviceCategory != null and vo.deviceCategory != '' ">
                AND t2.device_category = #{vo.deviceCategory}
            </if>
            <if test="vo.deviceImportanceLevel != null and vo.deviceImportanceLevel != '' ">
                AND t2.device_importance_level = #{vo.deviceImportanceLevel}
            </if>
        </where>
        GROUP BY
@@ -138,4 +184,15 @@
        GROUP BY
            mesi.equipment_id
    </select>
    <select id="getEfficiencyRate" resultType="java.math.BigDecimal">
        SELECT
            process_long
        FROM
            mdc_equipment_statistical_info
        WHERE
            equipment_id = #{ equipmentId } AND the_date &gt;= #{ date }
        ORDER BY the_date ASC
    </select>
</mapper>