| | |
| | | |
| | | <select id="calculateProductionStatistics" resultType="com.ruoyi.home.dto.processDataProductionStatisticsDto"> |
| | | SELECT |
| | | pp.name AS processName, |
| | | pp.type AS processType, |
| | | SUM(pi.quantity) AS totalInput, |
| | | SUM(distinct ppo.scrap_qty) AS totalScrap, |
| | | SUM(distinct (ppo.quantity - ppo.scrap_qty)) AS totalOutput |
| | |
| | | <if test="userId != null"> |
| | | AND ppm.user_id = #{userId} |
| | | </if> |
| | | <if test="processIds != null and processIds.size() > 0"> |
| | | AND pp.id IN |
| | | <foreach collection="processIds" item="id" open="(" separator="," close=")"> |
| | | <if test="processTypes != null and processTypes.size() > 0"> |
| | | AND pp.type IN |
| | | <foreach collection="processTypes" item="id" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </if> |
| | | </where> |
| | | GROUP BY |
| | | pp.id, |
| | | pp.name |
| | | pp.type |
| | | </select> |
| | | </mapper> |