Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // API CALL
- createByID: (toCreate, id) =>
- axios.post(`${resourceURL}/${id}`, toCreate, {
- headers: { Authorization: getBearerTokenFromCookie() },
- })
- // CONTROLLER POST METHOD
- @ApiOperation(value = "Posts a users application")
- @PostMapping("/{applicantId}")
- public ResponseEntity<UserAssignmentApplication> postUserApplication(
- @RequestBody UserAssignmentApplication userAssignmentApplication,
- @PathVariable Long applicantId) {
- try {
- userAssignmentApplicationInterface.createUserAssignmentApplication(userAssignmentApplication, applicantId);
- } catch (Exception e) {
- e.printStackTrace();
- return ResponseEntity.notFound().build();
- }
- return ResponseEntity.ok().build();
- }
- // SERVICE METHOD
- @Override
- public void createUserAssignmentApplication(UserAssignmentApplication userAssignmentApplication, Long applicantId) throws Exception {
- UserAssignment userAssignment;
- User applicant;
- Long userAssignmentId = userAssignmentApplication.getUserAssignment().getId();
- boolean applicationAlreadyExists = repository.existsUserAssignmentApplicationByApplicantIdAndUserAssignmentId(applicantId, userAssignmentId);
- if (applicationAlreadyExists) {
- throw new UserAssignmentApplicationAlreadyExistsException();
- }
- try {
- userAssignment = userAssignmentService.findById(userAssignmentId);
- } catch (Exception e) {
- e.printStackTrace();
- return;
- }
- try {
- applicant = userService.findById(applicantId);
- } catch (Exception e) {
- e.printStackTrace();
- return;
- }
- userAssignmentApplication.setApplicant(applicant);
- userAssignmentApplication.setUserAssignment(userAssignment);
- userAssignmentApplication.setStatus(AssignmentApplicationStatus.PENDING);
- repository.save(userAssignmentApplication);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement