package cn.iocoder.yudao.module.hrm.service.employee; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.module.hrm.controller.admin.employee.vo.HrmEmployeeEmergencyContactSaveReqVO; import cn.iocoder.yudao.module.hrm.dal.dataobject.employee.HrmEmployeeEmergencyContactDO; import cn.iocoder.yudao.module.hrm.dal.mysql.employee.HrmEmployeeEmergencyContactMapper; import jakarta.annotation.Resource; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import java.util.List; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.module.hrm.enums.ErrorCodeConstants.EMPLOYEE_EMERGENCY_CONTACT_NOT_EXISTS; /** * 员工紧急联系人 Service 实现类 * * @author 芋道源码 */ @Service @Validated public class HrmEmployeeEmergencyContactServiceImpl implements HrmEmployeeEmergencyContactService { @Resource private HrmEmployeeEmergencyContactMapper emergencyContactMapper; @Override public Long createEmergencyContact(HrmEmployeeEmergencyContactSaveReqVO createReqVO) { HrmEmployeeEmergencyContactDO emergencyContact = BeanUtils.toBean(createReqVO, HrmEmployeeEmergencyContactDO.class); emergencyContactMapper.insert(emergencyContact); return emergencyContact.getId(); } @Override public void updateEmergencyContact(HrmEmployeeEmergencyContactSaveReqVO updateReqVO) { validateEmergencyContactExists(updateReqVO.getId()); HrmEmployeeEmergencyContactDO updateObj = BeanUtils.toBean(updateReqVO, HrmEmployeeEmergencyContactDO.class); emergencyContactMapper.updateById(updateObj); } @Override public void deleteEmergencyContact(Long id) { validateEmergencyContactExists(id); emergencyContactMapper.deleteById(id); } private void validateEmergencyContactExists(Long id) { if (emergencyContactMapper.selectById(id) == null) { throw exception(EMPLOYEE_EMERGENCY_CONTACT_NOT_EXISTS); } } @Override public List getEmergencyContactListByEmployeeId(Long employeeId) { return emergencyContactMapper.selectByEmployeeId(employeeId); } }