feat: add community content and address APIs

This commit is contained in:
王鹏
2026-07-07 15:24:14 +08:00
parent 51e0f3a5ad
commit cad4bd3ea1
17 changed files with 1206 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
package com.linhelp.notice;
import org.junit.jupiter.api.Test;
import java.util.List;
import static org.assertj.core.api.Assertions.assertThat;
class NoticeServiceTests {
@Test
void miniListOnlyContainsPublishedNoticesWithPinnedFirst() {
NoticeService noticeService = new NoticeService();
NoticeResponse normal = noticeService.create(request("普通公告", false));
NoticeResponse pinned = noticeService.create(request("置顶公告", true));
noticeService.create(request("草稿公告", false));
noticeService.publish(normal.getId());
noticeService.publish(pinned.getId());
List<NoticeResponse> notices = noticeService.listPublished(1L);
assertThat(notices).extracting(NoticeResponse::getTitle)
.containsExactly("置顶公告", "普通公告");
}
private NoticeRequest request(String title, boolean pinned) {
NoticeRequest request = new NoticeRequest();
request.setTenantId(1L);
request.setCommunityId(1L);
request.setTitle(title);
request.setContent(title + "内容");
request.setCategory("物业通知");
request.setPinned(pinned);
return request;
}
}

View File

@@ -0,0 +1,34 @@
package com.linhelp.user;
import org.junit.jupiter.api.Test;
import java.util.List;
import static org.assertj.core.api.Assertions.assertThat;
class UserAddressServiceTests {
@Test
void settingOneAddressAsDefaultClearsOtherDefaultsForSameUser() {
UserAddressService addressService = new UserAddressService();
addressService.create(1L, request("张三", "13800000000", "1栋", "101", true));
AddressResponse second = addressService.create(1L, request("张三", "13800000000", "1栋", "102", true));
List<AddressResponse> addresses = addressService.listMine(1L);
assertThat(addresses).filteredOn(AddressResponse::isDefault).singleElement()
.extracting(AddressResponse::getId).isEqualTo(second.getId());
}
private AddressRequest request(String contactName, String phone, String building, String room, boolean isDefault) {
AddressRequest request = new AddressRequest();
request.setTenantId(1L);
request.setCommunityId(1L);
request.setContactName(contactName);
request.setPhone(phone);
request.setBuilding(building);
request.setRoom(room);
request.setDefault(isDefault);
return request;
}
}