Lius
2024-07-31 0bd71968ff07a70c421a0f41a642742fedf125bd
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOverallEquipmentEfficiencyServiceImpl.java
@@ -12,6 +12,8 @@
import org.jeecg.modules.mdc.service.*;
import org.jeecg.modules.mdc.util.DateUtils;
import org.jeecg.modules.mdc.vo.MdcOverallEquipmentEfficiencyVo;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.service.IMdcProductionService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -58,6 +60,9 @@
    @Resource
    private IProcessCountService processCountService;
    @Resource
    private IMdcProductionService mdcProductionService;
    /**
     * 计算设备综合效率OEE
     */
@@ -98,6 +103,8 @@
            mdcOverallEquipmentEfficiency.setEquipmentName(mdcEquipment.getEquipmentName());
            mdcOverallEquipmentEfficiency.setEquipmentModel(mdcEquipment.getEquipmentModel());
            mdcOverallEquipmentEfficiency.setValidDate(validDate);
            //
//            mdcOverallEquipmentEfficiency.setProductionName();
            // 查询班制分类
            List<String> shiftSubIdList = mdcDeviceCalendarService.findShiftSort(equipmentId, validDate);
@@ -287,6 +294,38 @@
        if (StringUtils.isNotEmpty(mdcOverallEquipmentEfficiencyVo.getDriveType())) {
            mdcOverallEquipmentEfficiencyVo.setDriveTypeList(Arrays.asList(mdcOverallEquipmentEfficiencyVo.getDriveType().split(",")));
        }
        return this.baseMapper.pageList(page, mdcOverallEquipmentEfficiencyVo);
        IPage<MdcOverallEquipmentEfficiency> mdcOverallEquipmentEfficiencyIPage = this.baseMapper.pageList(page, mdcOverallEquipmentEfficiencyVo);
//        List<MdcOverallEquipmentEfficiency> list = mdcOverallEquipmentEfficiencyIPage.getRecords();
        for (MdcOverallEquipmentEfficiency mdcOverallEquipmentEfficiency : mdcOverallEquipmentEfficiencyIPage.getRecords()) {
            mdcOverallEquipmentEfficiency.setProductionName(this.findProductionName(mdcOverallEquipmentEfficiency.getEquipmentId()));
        }
        return mdcOverallEquipmentEfficiencyIPage;
    }
    /**
     * 递归查询设备车间名称
     *
     * @param equipmentId
     * @return
     */
    private String findProductionName(String equipmentId) {
        MdcProduction mdcProduction = mdcProductionService.findProductionList(equipmentId);
        if ("2".equals(mdcProduction.getOrgType())) {
            return mdcProduction.getProductionName();
        } else {
            return this.findProductionNameById(mdcProduction.getParentId());
        }
    }
    private String findProductionNameById(String parentId) {
        MdcProduction mdcProduction = mdcProductionService.getById(parentId);
        if ("2".equals(mdcProduction.getOrgType())) {
            return mdcProduction.getProductionName();
        } else {
            return this.findProductionNameById(parentId);
        }
    }
}