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 { 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(); } }