chore: seed demo group buy delivery order

This commit is contained in:
王鹏
2026-07-07 17:51:26 +08:00
parent 4658b35aaf
commit c4b32da54d
3 changed files with 32 additions and 4 deletions

View File

@@ -7,6 +7,9 @@ import com.linhelp.common.enums.DeliveryMethod;
import com.linhelp.express.ExpressOrderRequest; import com.linhelp.express.ExpressOrderRequest;
import com.linhelp.express.ExpressOrderResponse; import com.linhelp.express.ExpressOrderResponse;
import com.linhelp.express.ExpressOrderService; import com.linhelp.express.ExpressOrderService;
import com.linhelp.groupbuy.GroupBuyOrderRequest;
import com.linhelp.groupbuy.GroupBuyOrderResponse;
import com.linhelp.groupbuy.GroupBuyOrderService;
import com.linhelp.groupbuy.GroupBuyRequest; import com.linhelp.groupbuy.GroupBuyRequest;
import com.linhelp.groupbuy.GroupBuyResponse; import com.linhelp.groupbuy.GroupBuyResponse;
import com.linhelp.groupbuy.GroupBuyService; import com.linhelp.groupbuy.GroupBuyService;
@@ -51,6 +54,7 @@ public class DevDataInitializer implements ApplicationRunner {
private final ProductService productService; private final ProductService productService;
private final GroupBuyService groupBuyService; private final GroupBuyService groupBuyService;
private final GroupBuyOrderService groupBuyOrderService;
private final NoticeService noticeService; private final NoticeService noticeService;
private final BannerService bannerService; private final BannerService bannerService;
private final SecondGoodsService secondGoodsService; private final SecondGoodsService secondGoodsService;
@@ -62,6 +66,7 @@ public class DevDataInitializer implements ApplicationRunner {
public DevDataInitializer(ProductService productService, public DevDataInitializer(ProductService productService,
GroupBuyService groupBuyService, GroupBuyService groupBuyService,
GroupBuyOrderService groupBuyOrderService,
NoticeService noticeService, NoticeService noticeService,
BannerService bannerService, BannerService bannerService,
SecondGoodsService secondGoodsService, SecondGoodsService secondGoodsService,
@@ -72,6 +77,7 @@ public class DevDataInitializer implements ApplicationRunner {
ExpressOrderService expressOrderService) { ExpressOrderService expressOrderService) {
this.productService = productService; this.productService = productService;
this.groupBuyService = groupBuyService; this.groupBuyService = groupBuyService;
this.groupBuyOrderService = groupBuyOrderService;
this.noticeService = noticeService; this.noticeService = noticeService;
this.bannerService = bannerService; this.bannerService = bannerService;
this.secondGoodsService = secondGoodsService; this.secondGoodsService = secondGoodsService;
@@ -92,7 +98,8 @@ public class DevDataInitializer implements ApplicationRunner {
List<ProductCategoryResponse> categories = seedCategories(); List<ProductCategoryResponse> categories = seedCategories();
ProductResponse demoProduct = seedProducts(categories); ProductResponse demoProduct = seedProducts(categories);
seedDemoDeliveryTasks(address.getId(), demoProduct); seedDemoDeliveryTasks(address.getId(), demoProduct);
seedGroupBuy(); GroupBuyResponse groupBuy = seedGroupBuy();
seedGroupBuyOrder(address.getId(), groupBuy.getId());
seedNotices(); seedNotices();
seedBanner(); seedBanner();
seedSecondGoods(); seedSecondGoods();
@@ -224,7 +231,7 @@ public class DevDataInitializer implements ApplicationRunner {
return request; return request;
} }
private void seedGroupBuy() { private GroupBuyResponse seedGroupBuy() {
GroupBuyRequest request = new GroupBuyRequest(); GroupBuyRequest request = new GroupBuyRequest();
request.setTenantId(TENANT_ID); request.setTenantId(TENANT_ID);
request.setCommunityId(COMMUNITY_ID); request.setCommunityId(COMMUNITY_ID);
@@ -238,7 +245,21 @@ public class DevDataInitializer implements ApplicationRunner {
request.setEndTime(LocalDateTime.now().plusDays(1)); request.setEndTime(LocalDateTime.now().plusDays(1));
request.setPickupAddress("小区东门团购点"); request.setPickupAddress("小区东门团购点");
GroupBuyResponse groupBuy = groupBuyService.create(request); GroupBuyResponse groupBuy = groupBuyService.create(request);
groupBuyService.start(groupBuy.getId()); return groupBuyService.start(groupBuy.getId());
}
private void seedGroupBuyOrder(Long addressId, Long groupBuyId) {
GroupBuyOrderRequest request = new GroupBuyOrderRequest();
request.setTenantId(TENANT_ID);
request.setCommunityId(COMMUNITY_ID);
request.setGroupBuyId(groupBuyId);
request.setAddressId(addressId);
request.setQuantity(2);
request.setDeliveryMethod(DeliveryMethod.IMMEDIATE);
request.setRemark("Demo团购送货上门");
GroupBuyOrderResponse order = groupBuyOrderService.create(RESIDENT_USER_ID, request);
groupBuyOrderService.confirm(order.getId());
groupBuyOrderService.markReady(order.getId());
} }
private void seedNotices() { private void seedNotices() {

View File

@@ -2,6 +2,8 @@ package com.linhelp.dev;
import com.linhelp.delivery.DeliveryUserService; import com.linhelp.delivery.DeliveryUserService;
import com.linhelp.delivery.DeliveryAssignmentService; import com.linhelp.delivery.DeliveryAssignmentService;
import com.linhelp.common.enums.GroupBuyOrderStatus;
import com.linhelp.groupbuy.GroupBuyOrderService;
import com.linhelp.groupbuy.GroupBuyService; import com.linhelp.groupbuy.GroupBuyService;
import com.linhelp.notice.BannerService; import com.linhelp.notice.BannerService;
import com.linhelp.notice.NoticeService; import com.linhelp.notice.NoticeService;
@@ -23,6 +25,8 @@ class DevDataInitializerTests {
@Autowired @Autowired
private GroupBuyService groupBuyService; private GroupBuyService groupBuyService;
@Autowired @Autowired
private GroupBuyOrderService groupBuyOrderService;
@Autowired
private NoticeService noticeService; private NoticeService noticeService;
@Autowired @Autowired
private BannerService bannerService; private BannerService bannerService;
@@ -38,6 +42,9 @@ class DevDataInitializerTests {
assertThat(productService.listCategories(1L, true)).hasSize(6); assertThat(productService.listCategories(1L, true)).hasSize(6);
assertThat(productService.listMini(1L, null)).hasSizeGreaterThanOrEqualTo(10); assertThat(productService.listMini(1L, null)).hasSizeGreaterThanOrEqualTo(10);
assertThat(groupBuyService.listMini(1L)).hasSize(1); assertThat(groupBuyService.listMini(1L)).hasSize(1);
assertThat(groupBuyOrderService.listByGroupBuy(groupBuyService.listMini(1L).get(0).getId()))
.extracting("status")
.containsExactly(GroupBuyOrderStatus.PENDING_DELIVERY);
assertThat(noticeService.listPublished(1L)).hasSize(2); assertThat(noticeService.listPublished(1L)).hasSize(2);
assertThat(bannerService.listEnabled(1L)).hasSize(1); assertThat(bannerService.listEnabled(1L)).hasSize(1);
assertThat(secondGoodsService.listPublic(1L, null)).hasSize(1); assertThat(secondGoodsService.listPublic(1L, null)).hasSize(1);

View File

@@ -50,7 +50,7 @@ Demo profile URL:
Backend API: http://localhost:18080 Backend API: http://localhost:18080
``` ```
The demo profile starts without MySQL and seeds product, notice, group-buy, secondhand, one goods delivery task, and one express pickup task in memory. The demo profile starts without MySQL and seeds product, notice, group-buy, a pending group-buy delivery order, secondhand, one goods delivery task, and one express pickup task in memory.
Demo accounts: Demo accounts: