package org.jeecg.modules.mdc.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.jeecg.modules.mdc.dto.MdcFakeDataDto; import org.jeecg.modules.mdc.entity.MdcFakeData; import org.jeecg.modules.mdc.entity.MdcFakeDataSub; import org.jeecg.modules.mdc.mapper.MdcFakeDataMapper; import org.jeecg.modules.mdc.service.IMdcFakeDataService; import org.jeecg.modules.mdc.service.IMdcFakeDataSubService; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; /** * @author Lius * @date 2024/10/25 14:21 */ @Service public class MdcFakeDataServiceImpl extends ServiceImpl implements IMdcFakeDataService { @Resource private IMdcFakeDataSubService mdcFakeDataSubService; @Override public MdcFakeDataDto queryFakeData() { MdcFakeDataDto mdcFakeDataDto = new MdcFakeDataDto(); List list = this.list(); MdcFakeData mdcFakeData = list.get(0); BeanUtils.copyProperties(mdcFakeData, mdcFakeDataDto); mdcFakeDataDto.setTodayProductionList(mdcFakeDataSubService.list(new LambdaQueryWrapper().eq(MdcFakeDataSub::getFakeId, mdcFakeDataDto.getTodayProductionId()))); mdcFakeDataDto.setTodayPassRateList(mdcFakeDataSubService.list(new LambdaQueryWrapper().eq(MdcFakeDataSub::getFakeId, mdcFakeDataDto.getTodayPassRateId()))); mdcFakeDataDto.setTodayShiftCountList(mdcFakeDataSubService.list(new LambdaQueryWrapper().eq(MdcFakeDataSub::getFakeId, mdcFakeDataDto.getTodayShiftCountId()))); mdcFakeDataDto.setTodayOpenRateList(mdcFakeDataSubService.list(new LambdaQueryWrapper().eq(MdcFakeDataSub::getFakeId, mdcFakeDataDto.getTodayOpenRateId()))); mdcFakeDataDto.setTodayUtilizationRateList(mdcFakeDataSubService.list(new LambdaQueryWrapper().eq(MdcFakeDataSub::getFakeId, mdcFakeDataDto.getTodayUtilizationRateId()))); mdcFakeDataDto.setMonthUtilizationRateList(mdcFakeDataSubService.list(new LambdaQueryWrapper().eq(MdcFakeDataSub::getFakeId, mdcFakeDataDto.getMonthUtilizationRateId()))); return mdcFakeDataDto; } @Override public void updateFakeData(MdcFakeDataDto mdcFakeDataDto) { MdcFakeData mdcFakeData = new MdcFakeData(); BeanUtils.copyProperties(mdcFakeDataDto, mdcFakeData); this.updateById(mdcFakeData); List mdcFakeDataSubList = new ArrayList<>(); mdcFakeDataSubList.addAll(mdcFakeDataDto.getTodayProductionList()); mdcFakeDataSubList.addAll(mdcFakeDataDto.getTodayPassRateList()); mdcFakeDataSubList.addAll(mdcFakeDataDto.getTodayShiftCountList()); mdcFakeDataSubList.addAll(mdcFakeDataDto.getTodayOpenRateList()); mdcFakeDataSubList.addAll(mdcFakeDataDto.getTodayUtilizationRateList()); mdcFakeDataSubList.addAll(mdcFakeDataDto.getMonthUtilizationRateList()); mdcFakeDataSubService.updateBatchById(mdcFakeDataSubList); } }