Files
smartproc-be/src/main/java/com/iconplus/smartproc/service/manajemenuser/GetUserByIdService.java
2023-05-24 12:21:01 +07:00

41 lines
1.5 KiB
Java

package com.iconplus.smartproc.service.manajemenuser;
import com.iconplus.smartproc.exception.BusinessException;
import com.iconplus.smartproc.helper.service.BaseService;
import com.iconplus.smartproc.model.request.UsersRequest;
import com.iconplus.smartproc.model.response.UsersResponse;
import com.iconplus.smartproc.repository.UsersRepository;
import org.springframework.stereotype.Service;
@Service
public class GetUserByIdService implements BaseService<UsersRequest, UsersResponse> {
private UsersRepository usersRepository;
public GetUserByIdService(UsersRepository usersRepository) {
this.usersRepository = usersRepository;
}
@Override
public UsersResponse execute(UsersRequest input) {
var userRoleView = usersRepository.getUserByIdAndDeletedFase(input.getId())
.orElseThrow(() -> new BusinessException("err", "err", "err"));
return UsersResponse.builder()
.id(userRoleView.getId())
.nama(userRoleView.getNama())
.username(userRoleView.getUsername())
.jabatan(userRoleView.getJabatan())
.roleId(userRoleView.getRoleId())
.role(userRoleView.getRole())
.bidangId(userRoleView.getBidangId())
.bidang(userRoleView.getBidang())
.instansiId(userRoleView.getInstansiId())
.instansi(userRoleView.getInstansi())
.email(userRoleView.getEmail())
.isActive(userRoleView.getIsActive())
.build();
}
}