46 lines
1.7 KiB
Java
46 lines
1.7 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 com.iconplus.smartproc.service.CommonService;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
@Service
|
|
public class PutUpdateUserService implements BaseService<UsersRequest, UsersResponse> {
|
|
|
|
private UsersRepository usersRepository;
|
|
private CommonService commonService;
|
|
|
|
public PutUpdateUserService(UsersRepository usersRepository,
|
|
CommonService commonService) {
|
|
this.usersRepository = usersRepository;
|
|
this.commonService = commonService;
|
|
}
|
|
@Override
|
|
public UsersResponse execute(UsersRequest input) {
|
|
|
|
var users = usersRepository.findByIdAndIsDeleteFalse(input.getId())
|
|
.orElseThrow(() -> new BusinessException("err", "err", "err"));
|
|
|
|
commonService.validateUserRequst(input);
|
|
|
|
users.setInstansiId(input.getInstansiId());
|
|
users.setBidangId(input.getBidangId());
|
|
users.setNama(input.getNama());
|
|
users.setUsername(input.getUsername());
|
|
users.setJabatan(input.getJabatan());
|
|
users.setRoleId(input.getRoleId());
|
|
users.setEmail(input.getEmail());
|
|
users.setPassword(input.getPassword());
|
|
users.setIsActive(input.getIsActive());
|
|
users.setIsDelete(false);
|
|
var result = usersRepository.save(users);
|
|
return UsersResponse.builder()
|
|
.id(result.getId())
|
|
.build();
|
|
}
|
|
}
|