Files
klp-oa/klp-wms/src/main/resources/mapper/WmsAnnealPerformanceMapper.xml

55 lines
2.2 KiB
XML
Raw Normal View History

<?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.klp.mapper.WmsAnnealPerformanceMapper">
<sql id="AnnealPerformanceWhere">
<where>
p.del_flag = 0
<if test="startTime != null">
AND p.actual_start_time <![CDATA[>=]]> #{startTime}
</if>
<if test="endTime != null">
AND p.actual_start_time <![CDATA[<=]]> #{endTime}
</if>
<if test="targetFurnaceId != null">
AND p.target_furnace_id = #{targetFurnaceId}
</if>
<if test="planNo != null and planNo != ''">
AND p.plan_no LIKE CONCAT('%', #{planNo}, '%')
</if>
<if test="enterCoilNo != null and enterCoilNo != ''">
AND mc.enter_coil_no LIKE CONCAT('%', #{enterCoilNo}, '%')
</if>
</where>
</sql>
<select id="selectSummary" resultType="com.klp.domain.vo.anneal.WmsAnnealPerformanceSummaryVo">
SELECT COUNT(DISTINCT p.plan_id) AS plan_count,
COUNT(mc.coil_id) AS coil_count,
COALESCE(SUM(mc.net_weight), 0) AS total_weight
FROM wms_furnace_plan p
INNER JOIN wms_furnace_plan_coil pc ON pc.plan_id = p.plan_id AND pc.del_flag = 0
INNER JOIN wms_material_coil mc ON mc.coil_id = pc.coil_id AND mc.del_flag = 0
<include refid="AnnealPerformanceWhere" />
</select>
<select id="selectDetails" resultType="com.klp.domain.vo.anneal.WmsAnnealPerformanceDetailVo">
SELECT p.plan_id AS planId,
p.plan_no AS planNo,
p.target_furnace_id AS targetFurnaceId,
f.furnace_name AS targetFurnaceName,
p.actual_start_time AS actualStartTime,
p.end_time AS endTime,
mc.coil_id AS coilId,
mc.enter_coil_no AS enterCoilNo,
mc.current_coil_no AS currentCoilNo,
mc.net_weight AS netWeight
FROM wms_furnace_plan p
INNER JOIN wms_furnace_plan_coil pc ON pc.plan_id = p.plan_id AND pc.del_flag = 0
INNER JOIN wms_material_coil mc ON mc.coil_id = pc.coil_id AND mc.del_flag = 0
LEFT JOIN wms_furnace f ON f.furnace_id = p.target_furnace_id
<include refid="AnnealPerformanceWhere" />
ORDER BY p.actual_start_time DESC, p.plan_no DESC
</select>
</mapper>