<?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.mdc.mapper.EquipmentMachiningHistoryMapper">
|
|
<!--获取某个时间附近的主轴转速和主轴负载-->
|
<select id="getNearTimeSpindleLoad" resultType="org.jeecg.modules.mdc.dto.EquipmentMachiningHistoryDto">
|
SELECT
|
t1.CollectTime collectTime,
|
t1.EquipmentID equipmentID,
|
t2.SpindleLoad spindleLoad,
|
t2.SpindleSpeed spindleSpeed
|
FROM
|
(
|
SELECT
|
m.diff,
|
m.EquipmentID,
|
n.CollectTime
|
FROM
|
(
|
SELECT
|
MIN( p.diff ) diff,
|
MIN( p.EquipmentID ) EquipmentID
|
FROM
|
(
|
SELECT
|
ABS( DATEDIFF( millisecond, CollectTime, #{nearTime} ) ) diff,
|
CollectTime,
|
EquipmentID
|
FROM
|
EquipmentMachining_History
|
WHERE
|
CollectTime >= #{startDate}
|
AND CollectTime < #{endDate}
|
AND EquipmentID = #{equipmentId}
|
) p
|
) m
|
LEFT JOIN (
|
SELECT
|
ABS( DATEDIFF( millisecond, CollectTime, #{nearTime} ) ) diff,
|
CollectTime,
|
EquipmentID
|
FROM
|
EquipmentMachining_History
|
WHERE
|
CollectTime >= #{startDate}
|
AND CollectTime < #{endDate}
|
AND EquipmentID = #{equipmentId}
|
) n ON m.EquipmentID = n.EquipmentID
|
AND m.diff = n.diff
|
) t1
|
LEFT JOIN ( SELECT EquipmentID, CollectTime, SpindleLoad, SpindleSpeed FROM EquipmentMachining_History WHERE CollectTime >= #{startDate} AND CollectTime < #{endDate} AND EquipmentID = #{equipmentId} ) t2 ON t1.EquipmentID = t2.EquipmentID
|
AND t1.CollectTime = t2.CollectTime
|
</select>
|
|
<select id="getMinDate" resultType="java.util.Date">
|
SELECT MIN(CollectTime) CollectTime FROM EquipmentMachining_History WHERE EquipmentID = #{equipmentId}
|
</select>
|
|
|
<select id="getMaxSpindleLoad" resultType="org.jeecg.modules.mdc.dto.EquipmentMachiningHistoryDto">
|
SELECT
|
n.SpindleLoad,
|
m.EquipmentID,
|
n.CollectTime,
|
n.SpindleSpeed
|
FROM
|
(
|
SELECT
|
MAX ( ABS( CONVERT ( DECIMAL ( 8, 3 ), SpindleLoad ) ) ) SpindleLoad,
|
MAX ( EquipmentID ) EquipmentID
|
FROM
|
EquipmentMachining_History
|
WHERE
|
CollectTime >= #{startDate}
|
AND CollectTime < #{endDate}
|
AND EquipmentID = #{equipmentId}
|
) m
|
LEFT JOIN (
|
SELECT
|
EquipmentID,
|
CollectTime,
|
ABS( CONVERT ( DECIMAL ( 8, 3 ), SpindleLoad ) ) loadValue,
|
SpindleLoad,
|
SpindleSpeed
|
FROM
|
EquipmentMachining_History
|
WHERE
|
CollectTime >= #{startDate}
|
AND CollectTime < #{endDate}
|
AND EquipmentID = #{equipmentId}
|
) n ON m.SpindleLoad= n.loadValue
|
AND m.EquipmentID= n.EquipmentID
|
</select>
|
</mapper>
|