Skip to content

Commit 2a5e200

Browse files
authored
Merge pull request #77 from Staketab/dev
add domain activities endpoint
2 parents 11fd5e4 + 9b74b92 commit 2a5e200

File tree

4 files changed

+24
-0
lines changed

4 files changed

+24
-0
lines changed

src/main/java/com/staketab/minanames/controller/ActivityController.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,13 @@ public Page<ActivityDTO> getActivities(@Valid @ParameterObject BaseRequest reque
3333
@PathVariable String address) {
3434
return activityService.findAllByPageable(request.withSortColumn(sortBy), address);
3535
}
36+
37+
@GetMapping("/domain/{domainName}")
38+
@Operation(summary = "getActivities", description = "Get a page of all activities.")
39+
public Page<ActivityDTO> getActivitiesByDomainName(@Valid @ParameterObject BaseRequest request,
40+
@RequestParam @Schema(defaultValue = "TIMESTAMP", allowableValues = {"TIMESTAMP"},
41+
description = "Select sorting parameter.") ActivitySortColumn sortBy,
42+
@PathVariable String domainName) {
43+
return activityService.findAllByDomainNameAndPageable(request.withSortColumn(sortBy), domainName);
44+
}
3645
}

src/main/java/com/staketab/minanames/repository/ActivityRepository.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,11 @@ public interface ActivityRepository extends JpaRepository<ActivityEntity, String
1717
from activity
1818
where owner_address = :address and is_show is true""")
1919
Page<ActivityEntity> findAllActivities(Pageable buildPageable, String address);
20+
21+
@Query(nativeQuery = true,
22+
value = """
23+
select *
24+
from activity
25+
where domain_name = :domainName and is_show is true""")
26+
Page<ActivityEntity> findAllActivitiesByDomainName(Pageable buildPageable, String domainName);
2027
}

src/main/java/com/staketab/minanames/service/ActivityService.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ public interface ActivityService {
1313

1414
Page<ActivityDTO> findAllByPageable(BaseRequest baseRequest, String address);
1515

16+
Page<ActivityDTO> findAllByDomainNameAndPageable(BaseRequest baseRequest, String domainName);
17+
1618
void saveActivity(DomainEntity domainEntity, ActivityStatus status, String details);
1719

1820
void saveAllActivities(List<DomainEntity> domainEntities, ActivityStatus status, String details);

src/main/java/com/staketab/minanames/service/impl/ActivityServiceImpl.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,12 @@ public Page<ActivityDTO> findAllByPageable(BaseRequest baseRequest, String addre
2929
return activityRepository.findAllActivities(baseRequest.buildPageable(), address).map(this::buildActivityDTO);
3030
}
3131

32+
@Override
33+
public Page<ActivityDTO> findAllByDomainNameAndPageable(BaseRequest baseRequest, String domainName) {
34+
return activityRepository.findAllActivitiesByDomainName(baseRequest.buildPageable(), domainName)
35+
.map(this::buildActivityDTO);
36+
}
37+
3238
@Override
3339
public void saveActivity(DomainEntity domainEntity, ActivityStatus status, String details) {
3440
activityRepository.save(buildActivityEntity(domainEntity, status, details));

0 commit comments

Comments
 (0)