修改移动端内容,后端添加了所有查询接口
This commit is contained in:
@@ -0,0 +1,127 @@
|
||||
<?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.pocket.mapper.Klptcm1PdoExcoilMapper">
|
||||
|
||||
<!-- 生产统计汇总 -->
|
||||
<resultMap id="ProductionStatisticsResultMap" type="com.klp.pocket.domain.vo.ProductionStatisticsVo">
|
||||
<result column="coilCount" property="coilCount" jdbcType="BIGINT"/>
|
||||
<result column="avgWidth" property="avgWidth" jdbcType="DECIMAL"/>
|
||||
<result column="avgThick" property="avgThick" jdbcType="DECIMAL"/>
|
||||
<result column="totalEntryWeight" property="totalEntryWeight" jdbcType="DECIMAL"/>
|
||||
<result column="totalExitWeight" property="totalExitWeight" jdbcType="DECIMAL"/>
|
||||
<result column="yieldRate" property="yieldRate" jdbcType="DECIMAL"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectProductionStatistics" resultMap="ProductionStatisticsResultMap">
|
||||
SELECT
|
||||
COUNT(*) AS coilCount,
|
||||
ROUND(AVG(EXIT_WIDTH), 2) AS avgWidth,
|
||||
ROUND(AVG(EXIT_THICK), 2) AS avgThick,
|
||||
ROUND(SUM(ENTRY_WEIGHT), 2) AS totalEntryWeight,
|
||||
ROUND(SUM(EXIT_WEIGHT), 2) AS totalExitWeight,
|
||||
ROUND(SUM(EXIT_WEIGHT) / SUM(ENTRY_WEIGHT) * 100, 2) AS yieldRate
|
||||
FROM klptcm1_pdo_excoil
|
||||
WHERE DATE(INSDATE) BETWEEN #{startDate} AND #{endDate}
|
||||
</select>
|
||||
|
||||
<!-- 班组产量统计 -->
|
||||
<resultMap id="CrewProductionResultMap" type="com.klp.pocket.domain.vo.CrewProductionVo">
|
||||
<result column="crew" property="crew" jdbcType="VARCHAR"/>
|
||||
<result column="shift" property="shift" jdbcType="VARCHAR"/>
|
||||
<result column="coilCount" property="coilCount" jdbcType="BIGINT"/>
|
||||
<result column="totalWeight" property="totalWeight" jdbcType="DECIMAL"/>
|
||||
<result column="avgThick" property="avgThick" jdbcType="DECIMAL"/>
|
||||
<result column="avgWidth" property="avgWidth" jdbcType="DECIMAL"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectCrewProduction" resultMap="CrewProductionResultMap">
|
||||
SELECT
|
||||
CREW AS crew,
|
||||
SHIFT AS shift,
|
||||
COUNT(*) AS coilCount,
|
||||
ROUND(SUM(EXIT_WEIGHT), 2) AS totalWeight,
|
||||
ROUND(AVG(EXIT_THICK), 2) AS avgThick,
|
||||
ROUND(AVG(EXIT_WIDTH), 2) AS avgWidth
|
||||
FROM klptcm1_pdo_excoil
|
||||
WHERE DATE(INSDATE) BETWEEN #{startDate} AND #{endDate}
|
||||
GROUP BY CREW, SHIFT
|
||||
ORDER BY totalWeight DESC
|
||||
</select>
|
||||
|
||||
<!-- 厚度分布统计 -->
|
||||
<resultMap id="SpecDistributionResultMap" type="com.klp.pocket.domain.vo.SpecDistributionVo">
|
||||
<result column="category" property="category" jdbcType="VARCHAR"/>
|
||||
<result column="count" property="count" jdbcType="BIGINT"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectThicknessDistribution" resultMap="SpecDistributionResultMap">
|
||||
SELECT
|
||||
CASE
|
||||
WHEN EXIT_THICK < 0.8 THEN '0.5-0.8mm'
|
||||
WHEN EXIT_THICK < 1.0 THEN '0.8-1.0mm'
|
||||
WHEN EXIT_THICK < 1.2 THEN '1.0-1.2mm'
|
||||
WHEN EXIT_THICK < 1.5 THEN '1.2-1.5mm'
|
||||
ELSE '1.5mm以上'
|
||||
END AS category,
|
||||
COUNT(*) AS count
|
||||
FROM klptcm1_pdo_excoil
|
||||
WHERE DATE(INSDATE) BETWEEN #{startDate} AND #{endDate}
|
||||
GROUP BY category
|
||||
ORDER BY category
|
||||
</select>
|
||||
|
||||
<!-- 宽度分布统计 -->
|
||||
<select id="selectWidthDistribution" resultMap="SpecDistributionResultMap">
|
||||
SELECT
|
||||
CASE
|
||||
WHEN EXIT_WIDTH < 1000 THEN '800-1000mm'
|
||||
WHEN EXIT_WIDTH < 1200 THEN '1000-1200mm'
|
||||
WHEN EXIT_WIDTH < 1400 THEN '1200-1400mm'
|
||||
ELSE '1400mm以上'
|
||||
END AS category,
|
||||
COUNT(*) AS count
|
||||
FROM klptcm1_pdo_excoil
|
||||
WHERE DATE(INSDATE) BETWEEN #{startDate} AND #{endDate}
|
||||
GROUP BY category
|
||||
ORDER BY category
|
||||
</select>
|
||||
|
||||
<!-- 班组绩效统计 -->
|
||||
<resultMap id="TeamPerformanceResultMap" type="com.klp.pocket.domain.vo.TeamPerformanceVo">
|
||||
<result column="crew" property="crew" jdbcType="VARCHAR"/>
|
||||
<result column="shift" property="shift" jdbcType="VARCHAR"/>
|
||||
<result column="teamName" property="teamName" jdbcType="VARCHAR"/>
|
||||
<result column="output" property="output" jdbcType="DECIMAL"/>
|
||||
<result column="yieldRate" property="yieldRate" jdbcType="DECIMAL"/>
|
||||
<result column="passRate" property="passRate" jdbcType="DECIMAL"/>
|
||||
<result column="avgThickQuality" property="avgThickQuality" jdbcType="DECIMAL"/>
|
||||
<result column="avgShapeQuality" property="avgShapeQuality" jdbcType="DECIMAL"/>
|
||||
<result column="efficiency" property="efficiency" jdbcType="BIGINT"/>
|
||||
<result column="score" property="score" jdbcType="DECIMAL"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectTeamPerformance" resultMap="TeamPerformanceResultMap">
|
||||
SELECT
|
||||
CREW AS crew,
|
||||
SHIFT AS shift,
|
||||
CONCAT(CREW, '-', SHIFT) AS teamName,
|
||||
ROUND(SUM(EXIT_WEIGHT), 2) AS output,
|
||||
ROUND(SUM(EXIT_WEIGHT) / SUM(ENTRY_WEIGHT) * 100, 2) AS yieldRate,
|
||||
ROUND(AVG(THICK_QUALITY), 2) AS passRate,
|
||||
ROUND(AVG(THICK_QUALITY), 2) AS avgThickQuality,
|
||||
ROUND(AVG(SHAPE_QUALITY), 2) AS avgShapeQuality,
|
||||
COUNT(*) AS efficiency,
|
||||
ROUND(
|
||||
(SUM(EXIT_WEIGHT) / SUM(ENTRY_WEIGHT) * 30) +
|
||||
(AVG(THICK_QUALITY) * 0.4) +
|
||||
(AVG(SHAPE_QUALITY) * 0.3),
|
||||
2
|
||||
) AS score
|
||||
FROM klptcm1_pdo_excoil
|
||||
WHERE DATE(INSDATE) BETWEEN #{startDate} AND #{endDate}
|
||||
GROUP BY CREW, SHIFT
|
||||
ORDER BY score DESC
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
<result column="historyInsdate" property="historyInsdate" jdbcType="TIMESTAMP"/>
|
||||
</resultMap>
|
||||
<select id="selectByValue" resultMap="ValueVoResultMap">
|
||||
SELECT
|
||||
SELECT
|
||||
d.ID,
|
||||
d.NAME,
|
||||
d.UNITS,
|
||||
@@ -125,13 +125,13 @@
|
||||
h.INSDATE AS historyInsdate
|
||||
FROM klptcm1_pro_plant_state_define d
|
||||
CROSS JOIN (
|
||||
SELECT * FROM klptcm1_pro_plant_state_current
|
||||
ORDER BY INSDATE DESC
|
||||
SELECT * FROM klptcm1_pro_plant_state_current
|
||||
ORDER BY INSDATE DESC
|
||||
LIMIT 1
|
||||
) c
|
||||
CROSS JOIN (
|
||||
SELECT * FROM klptcm1_pro_plant_state_history
|
||||
ORDER BY INSDATE DESC
|
||||
SELECT * FROM klptcm1_pro_plant_state_history
|
||||
ORDER BY INSDATE DESC
|
||||
LIMIT 200
|
||||
) h
|
||||
WHERE d.NAME = #{name}
|
||||
@@ -139,5 +139,47 @@
|
||||
LIMIT 200
|
||||
</select>
|
||||
|
||||
<!-- 新增:获取所有定义及其当前值(不带name过滤) -->
|
||||
<select id="selectAllWithValues" resultMap="ValueVoResultMap">
|
||||
SELECT
|
||||
d.ID,
|
||||
d.NAME,
|
||||
d.UNITS,
|
||||
d.COMMENTS,
|
||||
d.INSDATE,
|
||||
d.MODELTYPE,
|
||||
-- current表的最新值:根据define的ID取对应的VALUE字段
|
||||
CASE d.ID
|
||||
WHEN 1 THEN c.VALUE1 WHEN 2 THEN c.VALUE2 WHEN 3 THEN c.VALUE3 WHEN 4 THEN c.VALUE4 WHEN 5 THEN c.VALUE5
|
||||
WHEN 6 THEN c.VALUE6 WHEN 7 THEN c.VALUE7 WHEN 8 THEN c.VALUE8 WHEN 9 THEN c.VALUE9 WHEN 10 THEN c.VALUE10
|
||||
WHEN 11 THEN c.VALUE11 WHEN 12 THEN c.VALUE12 WHEN 13 THEN c.VALUE13 WHEN 14 THEN c.VALUE14 WHEN 15 THEN c.VALUE15
|
||||
WHEN 16 THEN c.VALUE16 WHEN 17 THEN c.VALUE17 WHEN 18 THEN c.VALUE18 WHEN 19 THEN c.VALUE19 WHEN 20 THEN c.VALUE20
|
||||
WHEN 21 THEN c.VALUE21 WHEN 22 THEN c.VALUE22 WHEN 23 THEN c.VALUE23 WHEN 24 THEN c.VALUE24 WHEN 25 THEN c.VALUE25
|
||||
WHEN 26 THEN c.VALUE26 WHEN 27 THEN c.VALUE27 WHEN 28 THEN c.VALUE28 WHEN 29 THEN c.VALUE29 WHEN 30 THEN c.VALUE30
|
||||
WHEN 31 THEN c.VALUE31 WHEN 32 THEN c.VALUE32 WHEN 33 THEN c.VALUE33 WHEN 34 THEN c.VALUE34 WHEN 35 THEN c.VALUE35
|
||||
WHEN 36 THEN c.VALUE36 WHEN 37 THEN c.VALUE37 WHEN 38 THEN c.VALUE38 WHEN 39 THEN c.VALUE39 WHEN 40 THEN c.VALUE40
|
||||
WHEN 41 THEN c.VALUE41 WHEN 42 THEN c.VALUE42 WHEN 43 THEN c.VALUE43 WHEN 44 THEN c.VALUE44 WHEN 45 THEN c.VALUE45
|
||||
WHEN 46 THEN c.VALUE46 WHEN 47 THEN c.VALUE47 WHEN 48 THEN c.VALUE48 WHEN 49 THEN c.VALUE49 WHEN 50 THEN c.VALUE50
|
||||
WHEN 51 THEN c.VALUE51 WHEN 52 THEN c.VALUE52 WHEN 53 THEN c.VALUE53 WHEN 54 THEN c.VALUE54 WHEN 55 THEN c.VALUE55
|
||||
WHEN 56 THEN c.VALUE56 WHEN 57 THEN c.VALUE57 WHEN 58 THEN c.VALUE58 WHEN 59 THEN c.VALUE59 WHEN 60 THEN c.VALUE60
|
||||
WHEN 61 THEN c.VALUE61 WHEN 62 THEN c.VALUE62 WHEN 63 THEN c.VALUE63 WHEN 64 THEN c.VALUE64 WHEN 65 THEN c.VALUE65
|
||||
WHEN 66 THEN c.VALUE66 WHEN 67 THEN c.VALUE67 WHEN 68 THEN c.VALUE68 WHEN 69 THEN c.VALUE69 WHEN 70 THEN c.VALUE70
|
||||
WHEN 71 THEN c.VALUE71 WHEN 72 THEN c.VALUE72 WHEN 73 THEN c.VALUE73 WHEN 74 THEN c.VALUE74 WHEN 75 THEN c.VALUE75
|
||||
WHEN 76 THEN c.VALUE76 WHEN 77 THEN c.VALUE77 WHEN 78 THEN c.VALUE78 WHEN 79 THEN c.VALUE79 WHEN 80 THEN c.VALUE80
|
||||
WHEN 81 THEN c.VALUE81 WHEN 82 THEN c.VALUE82 WHEN 83 THEN c.VALUE83 WHEN 84 THEN c.VALUE84 WHEN 85 THEN c.VALUE85
|
||||
WHEN 86 THEN c.VALUE86 WHEN 87 THEN c.VALUE87 WHEN 88 THEN c.VALUE88 WHEN 89 THEN c.VALUE89 WHEN 90 THEN c.VALUE90
|
||||
WHEN 91 THEN c.VALUE91 WHEN 92 THEN c.VALUE92 WHEN 93 THEN c.VALUE93 WHEN 94 THEN c.VALUE94 WHEN 95 THEN c.VALUE95
|
||||
WHEN 96 THEN c.VALUE96 WHEN 97 THEN c.VALUE97 WHEN 98 THEN c.VALUE98 WHEN 99 THEN c.VALUE99
|
||||
ELSE NULL END AS currentValue,
|
||||
c.INSDATE AS currentInsdate
|
||||
FROM klptcm1_pro_plant_state_define d
|
||||
CROSS JOIN (
|
||||
SELECT * FROM klptcm1_pro_plant_state_current
|
||||
ORDER BY INSDATE DESC
|
||||
LIMIT 1
|
||||
) c
|
||||
ORDER BY d.ID
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
<?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.pocket.mapper.Klptcm1ShiftCurrentMapper">
|
||||
|
||||
<!-- 结果集映射 -->
|
||||
<resultMap id="ShiftCurrentVoResultMap" type="com.klp.pocket.domain.vo.Klptcm1ShiftCurrentVo">
|
||||
<result column="SHIFT" property="shift" jdbcType="VARCHAR"/>
|
||||
<result column="CREW" property="crew" jdbcType="DECIMAL"/>
|
||||
<result column="SEQ_NUM" property="seqNum" jdbcType="DECIMAL"/>
|
||||
<result column="SYS_TIME" property="sysTime" jdbcType="TIMESTAMP"/>
|
||||
</resultMap>
|
||||
|
||||
<!-- 查询当前班组信息 -->
|
||||
<select id="selectCurrent" resultMap="ShiftCurrentVoResultMap">
|
||||
SELECT SHIFT, CREW, SEQ_NUM, SYS_TIME
|
||||
FROM klptcm1_shift_current
|
||||
ORDER BY SYS_TIME DESC
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
||||
Reference in New Issue
Block a user