package org.jeecg.modules.eam.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.jeecg.modules.eam.entity.EquipmentChange; import org.jeecg.modules.eam.entity.EquipmentScrapDetail; import org.jeecg.modules.eam.entity.EquipmentTransfer; import org.jeecg.modules.eam.mapper.EquipmentChangeMapper; import org.jeecg.modules.eam.mapper.EquipmentScrapDetailMapper; import org.jeecg.modules.eam.service.IEquipmentChangeService; 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; import java.util.Map; /** * @Description: 设备变动 * @Author: jeecg-boot * @Date: 2023-04-25 * @Version: V1.0 */ @Service public class EquipmentChangeServiceImpl extends ServiceImpl implements IEquipmentChangeService { @Autowired private EquipmentChangeMapper equipmentChangeMapper; @Autowired private EquipmentScrapDetailMapper equipmentScrapDetailMapper; @Override @Transactional(rollbackFor = Exception.class) public void saveMain(EquipmentChange equipmentChange, List equipmentScrapDetailList) { equipmentChange.setAuditStatus("notSubmitted"); equipmentChangeMapper.insert(equipmentChange); if (equipmentScrapDetailList != null && equipmentScrapDetailList.size() > 0) { for (EquipmentScrapDetail entity : equipmentScrapDetailList) { //外键设置 entity.setEquipmentChangeId(equipmentChange.getId()); equipmentScrapDetailMapper.insert(entity); } } } @Override @Transactional(rollbackFor = Exception.class) public void updateMain(EquipmentChange equipmentChange, List equipmentScrapDetailList) { equipmentChangeMapper.updateById(equipmentChange); //1.先删除子表数据 equipmentScrapDetailMapper.deleteByMainId(equipmentChange.getId()); //2.子表数据重新插入 if (equipmentScrapDetailList != null && equipmentScrapDetailList.size() > 0) { for (EquipmentScrapDetail entity : equipmentScrapDetailList) { //外键设置 entity.setEquipmentChangeId(equipmentChange.getId()); equipmentScrapDetailMapper.insert(entity); } } } @Override @Transactional(rollbackFor = Exception.class) public void delMain(String id) { equipmentScrapDetailMapper.deleteByMainId(id); equipmentChangeMapper.deleteById(id); } @Override @Transactional(rollbackFor = Exception.class) public void delBatchMain(Collection idList) { for (Serializable id : idList) { equipmentScrapDetailMapper.deleteByMainId(id.toString()); equipmentChangeMapper.deleteById(id); } } @Override public IPage> getEquipmentChangeList(Integer pageNo, Integer pageSize, Map params) { IPage pageData = new Page(pageNo, pageSize); String num = String.valueOf(params.get("num")); String name = String.valueOf(params.get("name")); String auditStatus = String.valueOf(params.get("auditStatus")); String changeMethod = String.valueOf(params.get("changeMethod")); return super.baseMapper.getEquipmentChangeList(pageData, num, name, auditStatus, changeMethod); } @Override public void submit(String id) { EquipmentChange equipmentChange = super.getById(id); equipmentChange.setAuditStatus("pendingApproval"); super.updateById(equipmentChange); } @Override public void revocation(String id) { EquipmentChange equipmentChange = super.getById(id); /*前端页面已经处理,只在待审批下方展示撤回按钮*/ equipmentChange.setAuditStatus("notSubmitted"); super.updateById(equipmentChange); } @Override public void approval(EquipmentChange equipmentChange) { String id = equipmentChange.getId(); EquipmentChange change = super.getById(id); /*前端页面已经处理,只在待审批下方展示撤回按钮*/ change.setAuditStatus("Approved"); change.setApprovalOpinions(equipmentChange.getApprovalOpinions()); super.updateById(change); } @Override public void reject(EquipmentChange equipmentChange) { String id = equipmentChange.getId(); EquipmentChange change = super.getById(id); /*前端页面已经处理,只在待审批下方展示撤回按钮*/ change.setAuditStatus("Rejected"); change.setApprovalOpinions(equipmentChange.getApprovalOpinions()); super.updateById(change); } }