fix: 修复生产驾驶舱工单执行效率分析、生产核算分析、投入产出分析数据不显示问题
已修改4个文件
26 ■■■■ 文件已修改
src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/production/ProductionAccountMapper.xml 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/production/ProductionProductInputMapper.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/production/ProductionProductOutputMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
@@ -1345,15 +1345,15 @@
        String endStr = endDate.atStartOfDay()
                .format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
//        List<Map<String, Object>> inputList = productionProductInputMapper.selectInputStats(startStr, endStr);
        List<Map<String, Object>> inputList = null;
        List<Map<String, Object>> inputList = productionProductInputMapper.selectInputStats(startStr, endStr);
        //List<Map<String, Object>> inputList = null;
        List<Map<String, Object>> outputList = productionProductOutputMapper.selectDailyOutputStats(startStr, endStr);
        Map<String, InputOutputAnalysisDto> dateMap = new HashMap<>();
        if (!CollectionUtils.isEmpty(inputList)) {
            for (Map<String, Object> map : inputList) {
                String date = (String) map.get("date");
                String date = (String) map.get("statDate");
                if (date == null)
                    continue;
                InputOutputAnalysisDto dto = dateMap.getOrDefault(date, new InputOutputAnalysisDto());
@@ -1366,7 +1366,7 @@
        if (!CollectionUtils.isEmpty(outputList)) {
            for (Map<String, Object> map : outputList) {
                String date = (String) map.get("date");
                String date = (String) map.get("statDate");
                if (date == null)
                    continue;
                InputOutputAnalysisDto dto = dateMap.getOrDefault(date, new InputOutputAnalysisDto());
src/main/resources/mapper/production/ProductionAccountMapper.xml
@@ -124,8 +124,10 @@
        select date_format(scheduling_date, '%m-%d') as dateStr,
               cast(ifnull(sum(finished_num), 0) as decimal(18,2)) as numberOfCompleted,
               cast(ifnull(sum(work_hours), 0) as decimal(18,2)) as amount,
               cast(0 as decimal(18,2)) as passRate
               cast(sum(ppo.quantity) / sum(ppo.quantity + ppo.scrap_qty) * 100.00 as decimal(18,2)) as passRate
        from production_account
        left join production_product_main ppm on ppm.id = production_account.production_product_main_id
        left join production_product_output ppo on ppo.production_product_main_id = ppm.id
        where scheduling_date &gt;= #{startDate}
          and scheduling_date &lt;= #{endDate}
        group by date_format(scheduling_date, '%m-%d')
src/main/resources/mapper/production/ProductionProductInputMapper.xml
@@ -42,5 +42,15 @@
        </where>
        order by ppi.create_time desc
    </select>
    <select id="selectInputStats" resultType="java.util.Map">
        select DATE_FORMAT(create_time, '%Y-%m-%d') as statDate,
               sum(ifnull(quantity, 0)) as quantity
#                sum(ifnull(scrap_qty, 0)) as scrapQty
        from production_product_input
        where create_time &gt;= #{startDate}
          and create_time &lt;= #{endDate}
        group by DATE_FORMAT(create_time, '%Y-%m-%d')
        order by statDate asc
    </select>
</mapper>
src/main/resources/mapper/production/ProductionProductOutputMapper.xml
@@ -48,13 +48,13 @@
    </select>
    <select id="selectDailyOutputStats" resultType="java.util.Map">
        select date(create_time) as statDate,
        select DATE_FORMAT(create_time, '%Y-%m-%d') as statDate,
               sum(ifnull(quantity, 0)) as quantity,
               sum(ifnull(scrap_qty, 0)) as scrapQty
        from production_product_output
        where create_time &gt;= #{startDate}
          and create_time &lt;= #{endDate}
        group by date(create_time)
        group by DATE_FORMAT(create_time, '%Y-%m-%d')
        order by statDate asc
    </select>