package com.lxzn.mes.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.lxzn.framework.domain.mes.MesSyncWorkmanship; import com.lxzn.framework.domain.mes.ext.MesSyncWorkmanshipReceive; import com.lxzn.framework.utils.BeanMapper; import com.lxzn.mes.dao.MesSyncWorkmanshipMapper; import com.lxzn.mes.ext.MesResultModel; import com.lxzn.mes.service.IMesSyncWorkmanshipService; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; /** * @author clown * * @date 2022/11/1 */ @Service public class MesSyncWorkmanshipServiceImpl extends ServiceImpl implements IMesSyncWorkmanshipService { @Override @Transactional(rollbackFor = {Exception.class}) public MesResultModel saveOrUpdateMes(MesSyncWorkmanshipReceive mesReceives) { if (mesReceives == null ) { return null; } MesSyncWorkmanship task = new MesSyncWorkmanship(); MesResultModel model =new MesResultModel(); model.setSuccFlag("成功"); MesSyncWorkmanship mes = findWorkFromId(mesReceives.getMesWorkId()); if (mes == null) { BeanMapper.copy(mesReceives,task); boolean b = this.save(task); if (b) { return model; } } else { BeanMapper.copy(mesReceives,mes); boolean b = this.saveOrUpdate(mes); if (b) { return model; } } /*if (mesReceives == null || mesReceives.isEmpty()) { return null; } List mesD = new ArrayList<>(); List mesResults = new ArrayList<>(); mesReceives.forEach(item -> { MesSyncWorkmanship task = new MesSyncWorkmanship(); MesSyncWorkmanship mes = findWorkFromId(item.getMesWorkId()); if (mes == null) { BeanMapper.copy(item,task); mesD.add(task); } else { BeanMapper.copy(item,mes); mesD.add(mes); } MesResultModel model =new MesResultModel(); model.setSuccFlag("成功"); mesResults.add(model); }); if(mesD != null && !mesD.isEmpty()) { boolean b = this.saveOrUpdateBatch(mesD); if (b) { return mesResults; } } */ return null; } @Override public MesSyncWorkmanship findWorkFromId(String mesId) { List tasks = super.lambdaQuery().eq(MesSyncWorkmanship::getMesWorkId, mesId).list(); if (tasks == null || tasks.isEmpty()) { return null; } return tasks.get(0); } }