|
@@ -2,7 +2,7 @@
|
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
<mapper namespace="com.jeesite.modules.mes.dao.MesProductRecordDao">
|
|
<mapper namespace="com.jeesite.modules.mes.dao.MesProductRecordDao">
|
|
|
|
|
|
|
|
- <!-- 查询数据
|
|
|
|
|
|
|
+ <!-- 查询数据 -->
|
|
|
<select id="findList" resultType="MesProductRecord">
|
|
<select id="findList" resultType="MesProductRecord">
|
|
|
SELECT ${sqlMap.column.toSql()}
|
|
SELECT ${sqlMap.column.toSql()}
|
|
|
FROM ${sqlMap.table.toSql()}
|
|
FROM ${sqlMap.table.toSql()}
|
|
@@ -10,7 +10,7 @@
|
|
|
${sqlMap.where.toSql()}
|
|
${sqlMap.where.toSql()}
|
|
|
</where>
|
|
</where>
|
|
|
ORDER BY ${sqlMap.order.toSql()}
|
|
ORDER BY ${sqlMap.order.toSql()}
|
|
|
- </select> -->
|
|
|
|
|
|
|
+ </select>
|
|
|
|
|
|
|
|
<select id="findBySn" resultType="com.jeesite.modules.mes.entity.MesProductRecord">
|
|
<select id="findBySn" resultType="com.jeesite.modules.mes.entity.MesProductRecord">
|
|
|
SELECT ${sqlMap.column.toSql()}
|
|
SELECT ${sqlMap.column.toSql()}
|
|
@@ -61,7 +61,8 @@
|
|
|
<select id="pieceworkStat" resultType="java.util.HashMap">
|
|
<select id="pieceworkStat" resultType="java.util.HashMap">
|
|
|
SELECT
|
|
SELECT
|
|
|
r.oprno,
|
|
r.oprno,
|
|
|
- LEFT(r.sn, 5) AS productPrefix,
|
|
|
|
|
|
|
+ CASE WHEN LEFT(r.sn, 1) = '+' THEN LEFT(r.sn, 5)
|
|
|
|
|
+ ELSE CONCAT('+', LEFT(r.sn, 4)) END AS productPrefix,
|
|
|
CASE WHEN TIME(r.update_date) >= '08:30:00' AND TIME(r.update_date) < '20:30:00'
|
|
CASE WHEN TIME(r.update_date) >= '08:30:00' AND TIME(r.update_date) < '20:30:00'
|
|
|
THEN 'day' ELSE 'night' END AS shift,
|
|
THEN 'day' ELSE 'night' END AS shift,
|
|
|
r.content AS result,
|
|
r.content AS result,
|
|
@@ -73,22 +74,25 @@
|
|
|
AND r.update_date >= #{params.dateStart}
|
|
AND r.update_date >= #{params.dateStart}
|
|
|
AND r.update_date < #{params.dateEnd}
|
|
AND r.update_date < #{params.dateEnd}
|
|
|
<if test="params.prefixes != null and params.prefixes.size() > 0">
|
|
<if test="params.prefixes != null and params.prefixes.size() > 0">
|
|
|
- AND LEFT(r.sn, 5) IN
|
|
|
|
|
|
|
+ AND (CASE WHEN LEFT(r.sn, 1) = '+' THEN LEFT(r.sn, 5)
|
|
|
|
|
+ ELSE CONCAT('+', LEFT(r.sn, 4)) END) IN
|
|
|
<foreach collection="params.prefixes" item="p" open="(" separator="," close=")">
|
|
<foreach collection="params.prefixes" item="p" open="(" separator="," close=")">
|
|
|
#{p}
|
|
#{p}
|
|
|
</foreach>
|
|
</foreach>
|
|
|
</if>
|
|
</if>
|
|
|
- GROUP BY r.oprno, LEFT(r.sn, 5),
|
|
|
|
|
|
|
+ GROUP BY r.oprno, CASE WHEN LEFT(r.sn, 1) = '+' THEN LEFT(r.sn, 5)
|
|
|
|
|
+ ELSE CONCAT('+', LEFT(r.sn, 4)) END,
|
|
|
CASE WHEN TIME(r.update_date) >= '08:30:00' AND TIME(r.update_date) < '20:30:00'
|
|
CASE WHEN TIME(r.update_date) >= '08:30:00' AND TIME(r.update_date) < '20:30:00'
|
|
|
THEN 'day' ELSE 'night' END,
|
|
THEN 'day' ELSE 'night' END,
|
|
|
r.content
|
|
r.content
|
|
|
- ORDER BY r.oprno ASC, LEFT(r.sn, 5) ASC
|
|
|
|
|
|
|
+ ORDER BY r.oprno ASC, productPrefix ASC
|
|
|
</select>
|
|
</select>
|
|
|
<!-- 按小时统计今日产量,用于趋势图 -->
|
|
<!-- 按小时统计今日产量,用于趋势图 -->
|
|
|
<select id="pieceworkHourlyStat" resultType="java.util.HashMap">
|
|
<select id="pieceworkHourlyStat" resultType="java.util.HashMap">
|
|
|
SELECT
|
|
SELECT
|
|
|
HOUR(r.update_date) AS hour,
|
|
HOUR(r.update_date) AS hour,
|
|
|
- LEFT(r.sn, 5) AS productPrefix,
|
|
|
|
|
|
|
+ CASE WHEN LEFT(r.sn, 1) = '+' THEN LEFT(r.sn, 5)
|
|
|
|
|
+ ELSE CONCAT('+', LEFT(r.sn, 4)) END AS productPrefix,
|
|
|
COUNT(*) AS cnt
|
|
COUNT(*) AS cnt
|
|
|
FROM mes_product_record r
|
|
FROM mes_product_record r
|
|
|
WHERE r.line_sn = 'XT'
|
|
WHERE r.line_sn = 'XT'
|
|
@@ -97,12 +101,14 @@
|
|
|
AND r.update_date >= #{params.dateStart}
|
|
AND r.update_date >= #{params.dateStart}
|
|
|
AND r.update_date < #{params.dateEnd}
|
|
AND r.update_date < #{params.dateEnd}
|
|
|
<if test="params.prefixes != null and params.prefixes.size() > 0">
|
|
<if test="params.prefixes != null and params.prefixes.size() > 0">
|
|
|
- AND LEFT(r.sn, 5) IN
|
|
|
|
|
|
|
+ AND (CASE WHEN LEFT(r.sn, 1) = '+' THEN LEFT(r.sn, 5)
|
|
|
|
|
+ ELSE CONCAT('+', LEFT(r.sn, 4)) END) IN
|
|
|
<foreach collection="params.prefixes" item="p" open="(" separator="," close=")">
|
|
<foreach collection="params.prefixes" item="p" open="(" separator="," close=")">
|
|
|
#{p}
|
|
#{p}
|
|
|
</foreach>
|
|
</foreach>
|
|
|
</if>
|
|
</if>
|
|
|
- GROUP BY HOUR(r.update_date), LEFT(r.sn, 5)
|
|
|
|
|
|
|
+ GROUP BY HOUR(r.update_date), CASE WHEN LEFT(r.sn, 1) = '+' THEN LEFT(r.sn, 5)
|
|
|
|
|
+ ELSE CONCAT('+', LEFT(r.sn, 4)) END
|
|
|
ORDER BY HOUR(r.update_date) ASC
|
|
ORDER BY HOUR(r.update_date) ASC
|
|
|
</select>
|
|
</select>
|
|
|
-</mapper>
|
|
|
|
|
|
|
+</mapper>
|