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<HrmEmployeeEmergencyContactDO> getEmergencyContactListByEmployeeId(Long employeeId) {
|
return emergencyContactMapper.selectByEmployeeId(employeeId);
|
}
|
|
}
|