| | |
| | | |
| | | <select id="listPage" resultType="com.ruoyi.production.dto.ProductProcessDto"> |
| | | SELECT |
| | | p.id, |
| | | p.name, |
| | | p.no, |
| | | p.remark |
| | | * |
| | | FROM |
| | | product_process p |
| | | <where> |
| | |
| | | </where> |
| | | order by p.id asc |
| | | </select> |
| | | |
| | | <select id="calculateProductionStatistics" resultType="com.ruoyi.home.dto.processDataProductionStatisticsDto"> |
| | | SELECT |
| | | pp.name AS processName, |
| | | SUM((ppo.quantity + ppo.scrap_qty) * pp.salary_quota) AS totalInput, |
| | | SUM(ppo.scrap_qty * pp.salary_quota) AS totalScrap, |
| | | SUM(ppo.quantity * pp.salary_quota) AS totalOutput |
| | | FROM |
| | | production_product_output ppo |
| | | INNER JOIN production_product_main ppm ON ppo.product_main_id = ppm.id |
| | | INNER JOIN product_process_route_item ppri ON ppm.product_process_route_item_id = ppri.id |
| | | INNER JOIN product_process pp ON ppri.process_id = pp.id |
| | | <where> |
| | | <if test="startDateTime != null"> |
| | | AND ppo.create_time >= #{startDateTime} |
| | | </if> |
| | | <if test="endDateTime != null"> |
| | | AND ppo.create_time <= #{endDateTime} |
| | | </if> |
| | | <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=")"> |
| | | #{id} |
| | | </foreach> |
| | | </if> |
| | | </where> |
| | | GROUP BY |
| | | pp.id, |
| | | pp.name |
| | | </select> |
| | | </mapper> |