You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
134 lines
5.2 KiB
XML
134 lines
5.2 KiB
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.op.mes.mapper.H5ApiMapper">
|
|
<resultMap type="H5" id="H5Result">
|
|
<result property="workOrderCode" column="workorder_code"/>
|
|
<result property="lineName" column="machine_name"/>
|
|
<result property="productName" column="product_name"/>
|
|
<result property="category" column="category"/>
|
|
<result property="specifications" column="umrez"/>
|
|
<result property="StandardStaffing" column="man_standar"/>
|
|
<result property="actualEmployment" column="use_man"/>
|
|
<result property="productionDuration" column="work_time"/>
|
|
<result property="planProduction" column="plan_production"/>
|
|
<result property="production" column="quantity_feedback"/>
|
|
<result property="parentOrder" column="parent_order"/>
|
|
<result property="standardEfficiency" column="standardEfficiency"/>
|
|
<result property="actualEfficiency" column="actualEfficiency"/>
|
|
<result property="efficiencyAcRate" column="efficiencyAcRate"/>
|
|
</resultMap>
|
|
<select id="selectMesLineProdceList" parameterType="H5" resultMap="H5Result">
|
|
SELECT
|
|
mrw.workorder_code,
|
|
mrw.machine_name,
|
|
mrw.product_code,
|
|
mrw.product_name,
|
|
bpa.category,
|
|
bp.umrez,
|
|
SUM ( mrw.quantity ) AS plan_production,
|
|
SUM ( mrw.quantity_feedback ) AS quantity_feedback,
|
|
MAX(A.quantity_s) AS quantity_s,
|
|
MAX(A.quantity_s_total) AS quantity_s_total,
|
|
bpa.man_standar,
|
|
MAX(A.use_man) AS use_man,
|
|
FORMAT(ROUND((MAX(A.work_time)), 1), '0.#') AS work_time,
|
|
mrw.parent_order ,
|
|
bpa.iei,
|
|
FORMAT(ROUND((bpa.iei / bp.umrez / bpa.man_standar), 1), '0.#') AS standardEfficiency,
|
|
FORMAT(ROUND(
|
|
CASE
|
|
WHEN MAX(A.use_man) = 0 OR SUM(A.work_time) = 0 THEN NULL
|
|
ELSE (SUM(mrw.quantity_feedback)) / MAX(A.use_man) / (MAX(A.work_time))
|
|
END,
|
|
1
|
|
), '0.#') AS actualEfficiency,
|
|
FORMAT(
|
|
CASE
|
|
WHEN (bpa.iei / bp.umrez / bpa.man_standar) = 0
|
|
THEN NULL
|
|
ELSE (CAST(
|
|
ROUND(
|
|
CASE
|
|
WHEN MAX(A.use_man) = 0 OR SUM(A.work_time) = 0 THEN NULL
|
|
ELSE (SUM(mrw.quantity_feedback)) / MAX(A.use_man) / (MAX(A.work_time))
|
|
END,
|
|
1
|
|
) AS DECIMAL(10,1))
|
|
/ CAST(
|
|
ROUND((bpa.iei / bp.umrez / bpa.man_standar), 1) AS DECIMAL(10,1)
|
|
) * 100
|
|
)
|
|
END,
|
|
'0.#'
|
|
) + '%' AS efficiencyAcRate
|
|
FROM
|
|
[dbo].[mes_report_work] mrw
|
|
LEFT JOIN base_product_attached bpa ON bpa.product_code = RIGHT ( mrw.product_code, 11 )
|
|
LEFT JOIN base_product bp ON bp.product_code = mrw.product_code
|
|
LEFT JOIN (
|
|
SELECT
|
|
mrws.workorder_code,
|
|
mrws.parent_order,
|
|
MAX(mrws.use_man) AS use_man,
|
|
MAX(pow.quantity_split) AS quantity_s,
|
|
SUM(mrws.quantity_feedback) AS quantity_s_total,
|
|
SUM (mrws.work_time ) AS work_time
|
|
FROM
|
|
[dbo].[mes_report_work] mrws
|
|
LEFT JOIN pro_order_workorder pow ON mrws.workorder_code=pow.workorder_code
|
|
WHERE
|
|
CAST (mrws.feedback_time AS DATE ) = #{feedbackTime}
|
|
AND mrws.parent_order != '0'
|
|
GROUP BY
|
|
mrws.workorder_code,
|
|
mrws.parent_order
|
|
) A ON A.parent_order= mrw.workorder_code
|
|
WHERE
|
|
CAST ( mrw.feedback_time AS DATE ) = #{feedbackTime}
|
|
AND mrw.parent_order = '0'
|
|
GROUP BY
|
|
mrw.workorder_code,
|
|
mrw.machine_name,
|
|
mrw.product_code,
|
|
mrw.product_name,
|
|
bpa.category,
|
|
bp.umrez,
|
|
bpa.man_standar,
|
|
mrw.use_man,
|
|
mrw.parent_order,
|
|
bpa.iei
|
|
ORDER BY mrw.machine_name ASC
|
|
</select>
|
|
|
|
|
|
<select id="selectMesLineProsdceLists" parameterType="H5" resultMap="H5Result">
|
|
SELECT
|
|
mrw.workorder_code,
|
|
mrw.machine_name,
|
|
mrw.product_code,
|
|
SUM ( mrw.quantity ) AS plan_production,
|
|
SUM ( mrw.quantity_feedback ) AS quantity_feedback,
|
|
mrw.use_man,
|
|
SUM ( mrw.work_time ) AS work_time,
|
|
mrw.parent_order
|
|
FROM
|
|
[dbo].[mes_report_work] mrw
|
|
LEFT JOIN base_product_attached bpa ON bpa.product_code = RIGHT(mrw.product_code, 11)
|
|
LEFT JOIN base_product bp ON bp.product_code = mrw.product_code
|
|
<where>
|
|
<if test="feedbackTime != null and feedbackTime != ''">
|
|
CAST ( mrw.feedback_time AS DATE ) = #{feedbackTime}
|
|
</if>
|
|
AND mrw.parent_order != '0'
|
|
</where>
|
|
GROUP BY
|
|
mrw.workorder_code,
|
|
mrw.machine_name,
|
|
mrw.product_code,
|
|
mrw.use_man,
|
|
mrw.parent_order;
|
|
</select>
|
|
</mapper>
|