Загрузка данных
dmitriev-aal@VDI-Dmitriev-A:~/Desktop/rshbintech/intrabank/hrplatform/hrtech$ grep -n -A50 -B20 "POSITION_COMMON_INFO" adaptation/src/main/java/ru/rshbintech/intrabank/hrplatform/hrtech/adaptation/service/impl/EmployeeServiceImpl.java
12-import ru.rshbintech.intrabank.hrplatform.hrtech.adaptation.domain.dto.employee.ManagementInfoRequestDto;
13-import ru.rshbintech.intrabank.hrplatform.hrtech.adaptation.domain.dto.employee.ManagementInfoResponseDto;
14-import ru.rshbintech.intrabank.hrplatform.hrtech.adaptation.domain.dto.employee.PositionCommonInfoDto;
15-import ru.rshbintech.intrabank.hrplatform.hrtech.adaptation.domain.exceptions.ForbiddenException;
16-import ru.rshbintech.intrabank.hrplatform.hrtech.adaptation.mapper.AdaptationManagerMapper;
17-import ru.rshbintech.intrabank.hrplatform.hrtech.adaptation.mapper.EmployeeMapper;
18-import ru.rshbintech.intrabank.hrplatform.hrtech.adaptation.repo.AdaptationManagerRepo;
19-import ru.rshbintech.intrabank.hrplatform.hrtech.adaptation.service.EmployeeService;
20-import ru.rshbintech.intrabank.hrplatform.hrtech.adaptation.service.HttpService;
21-import ru.rshbintech.intrabank.hrplatform.hrtech.adaptation.service.security.EmployeeUserDetails;
22-
23-import java.util.List;
24-import java.util.Optional;
25-
26-@Slf4j
27-@Service
28-@RequiredArgsConstructor
29-public class EmployeeServiceImpl implements EmployeeService {
30-
31- private static final String MANAGEMENT_INFO_PATH = "/managementInfo";
32: private static final String POSITION_COMMON_INFO = "/positionCommonInfo";
33-
34- private final HttpService httpService;
35- private final EmployeeMapper employeeMapper;
36- private final AdaptationManagerRepo adaptationManagerRepo;
37- private final AdaptationManagerMapper adaptationManagerMapper;
38-
39- @Value("${hrtech.resource-and-cost-planning.url}")
40- private String resourceAndCostPlanning;
41-
42- @Override
43- public Optional<Employee> findByTabNum(String tabNum) {
44- log.info("Trying to find employee by tabNum={}", tabNum);
45- return findByTabNumAndPositionId(tabNum, null);
46- }
47-
48- @Override
49- public Optional<Employee> findByTabNumAndPositionId(String tabNum, String positionId) {
50- var uri = UriComponentsBuilder
51- .fromUriString(resourceAndCostPlanning)
52- .path(MANAGEMENT_INFO_PATH)
53- .toUriString();
54- var requestBody = new ManagementInfoRequestDto(tabNum, positionId);
55- var employeeInfo = httpService.postRequest(uri, requestBody, ManagementInfoResponseDto.class);
56- log.info("Response received when searching for employee by tabNum={}, positionId={}, response={}",
57- tabNum, positionId, employeeInfo);
58- return Optional.ofNullable(employeeInfo.getEmployee())
59- .map(employeeMapper::map);
60- }
61-
62- @Override
63- public Employee getCurrentUser() {
64- return Optional.ofNullable(SecurityContextHolder.getContext().getAuthentication())
65- .map(Authentication::getPrincipal)
66- .map(EmployeeUserDetails.class::cast)
67- .map(EmployeeUserDetails::getEmployee)
68- .orElseThrow(() -> new ForbiddenException("Can't find authorized employee"));
69- }
70-
71- @Override
72- public List<EmployeeDetails> getAllAdaptationManagers() {
73- return adaptationManagerRepo.findAll().stream()
74- .map(adaptationManagerMapper::map)
75- .toList();
76- }
77-
78- @Override
79- public Optional<Employee> findByPositionId(String id) {
80- var uri = UriComponentsBuilder
81- .fromUriString(resourceAndCostPlanning)
82: .path(POSITION_COMMON_INFO)
83- .queryParam("idFte", id)
84- .toUriString();
85- var positionInfo = httpService.getRequest(uri, PositionCommonInfoDto.class);
86- log.info("Response received when searching for position by idFte={}", id);
87- return Optional.ofNullable(positionInfo)
88- .map(employeeMapper::map);
89- }
90-
91-}
dmitriev-aal@VDI-Dmitriev-A:~/Desktop/rshbintech/intrabank/hrplatform/hrtech$ grep -R -n "class HttpService"
adaptation/src/main/java/ru/rshbintech/intrabank/hrplatform/hrtech/adaptation/service/HttpService.java:22:public class HttpService {
dmitriev-aal@VDI-Dmitriev-A:~/Desktop/rshbintech/intrabank/hrplatform/hrtech$ grep -R -n "interface HttpService"