package org.jeecg.modules.eam.service.impl; import org.jeecg.modules.eam.entity.EquipmentDisposal; import org.jeecg.modules.eam.entity.EquipmentScrap; import org.jeecg.modules.eam.entity.EquipmentScrapDetail; import org.jeecg.modules.eam.mapper.EquipmentScrapDetailMapper; import org.jeecg.modules.eam.mapper.EquipmentScrapMapper; import org.jeecg.modules.eam.service.IEquipmentScrapService; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import java.io.Serializable; import java.util.List; import java.util.Collection; /** * @Description: 设备报废 * @Author: jeecg-boot * @Date: 2023-05-06 * @Version: V1.0 */ @Service public class EquipmentScrapServiceImpl extends ServiceImpl implements IEquipmentScrapService { @Autowired private EquipmentScrapMapper equipmentScrapMapper; @Autowired private EquipmentScrapDetailMapper equipmentScrapDetailMapper; @Override @Transactional(rollbackFor = Exception.class) public void saveMain(EquipmentScrap equipmentScrap, List equipmentScrapDetailList) { equipmentScrap.setAuditStatus("notSubmitted"); // equipmentScrap.setChangeMethod("scrap"); equipmentScrapMapper.insert(equipmentScrap); if (equipmentScrapDetailList != null && equipmentScrapDetailList.size() > 0) { for (EquipmentScrapDetail entity : equipmentScrapDetailList) { //外键设置 entity.setEquipmentChangeId(equipmentScrap.getId()); equipmentScrapDetailMapper.insert(entity); } } } @Override @Transactional(rollbackFor = Exception.class) public void updateMain(EquipmentScrap equipmentScrap, List equipmentScrapDetailList) { equipmentScrapMapper.updateById(equipmentScrap); //1.先删除子表数据 equipmentScrapDetailMapper.deleteByMainId(equipmentScrap.getId()); //2.子表数据重新插入 if (equipmentScrapDetailList != null && equipmentScrapDetailList.size() > 0) { for (EquipmentScrapDetail entity : equipmentScrapDetailList) { //外键设置 entity.setEquipmentChangeId(equipmentScrap.getId()); equipmentScrapDetailMapper.insert(entity); } } } @Override @Transactional(rollbackFor = Exception.class) public void delMain(String id) { equipmentScrapDetailMapper.deleteByMainId(id); equipmentScrapMapper.deleteById(id); } @Override @Transactional(rollbackFor = Exception.class) public void delBatchMain(Collection idList) { for (Serializable id : idList) { equipmentScrapDetailMapper.deleteByMainId(id.toString()); equipmentScrapMapper.deleteById(id); } } @Override public void submit(String id) { EquipmentScrap equipmentScrap = super.getById(id); equipmentScrap.setAuditStatus("pendingApproval"); super.updateById(equipmentScrap); } @Override public void revocation(String id) { EquipmentScrap equipmentScrap = super.getById(id); // 设置撤回后的状态为初始状态 待提交=notSubmitted // TODO 需要明确什么状态下不允许撤回 equipmentScrap.setAuditStatus("notSubmitted"); super.updateById(equipmentScrap); } }