From d335c577d314e67f5053f1807fa30d105157a84b Mon Sep 17 00:00:00 2001 From: irving Date: Fri, 2 Jan 2026 02:03:20 -0500 Subject: [PATCH] fix: restore apitest commodities --- .../common/apitest/ApiTestDataSeeder.java | 26 +++++++++++++++++++ .../shop/mapper/PlayCommodityInfoMapper.java | 11 ++++++++ 2 files changed, 37 insertions(+) diff --git a/play-admin/src/main/java/com/starry/admin/common/apitest/ApiTestDataSeeder.java b/play-admin/src/main/java/com/starry/admin/common/apitest/ApiTestDataSeeder.java index 8d51ed3..3bc726e 100644 --- a/play-admin/src/main/java/com/starry/admin/common/apitest/ApiTestDataSeeder.java +++ b/play-admin/src/main/java/com/starry/admin/common/apitest/ApiTestDataSeeder.java @@ -16,6 +16,7 @@ import com.starry.admin.modules.custom.service.IPlayCustomUserInfoService; import com.starry.admin.modules.personnel.module.entity.PlayPersonnelGroupInfoEntity; import com.starry.admin.modules.personnel.service.IPlayPersonnelGroupInfoService; import com.starry.admin.modules.shop.mapper.PlayClerkGiftInfoMapper; +import com.starry.admin.modules.shop.mapper.PlayCommodityInfoMapper; import com.starry.admin.modules.shop.module.entity.PlayClerkGiftInfoEntity; import com.starry.admin.modules.shop.module.entity.PlayCommodityAndLevelInfoEntity; import com.starry.admin.modules.shop.module.entity.PlayCommodityInfoEntity; @@ -88,6 +89,7 @@ public class ApiTestDataSeeder implements CommandLineRunner { private final IPlayGiftInfoService giftInfoService; private final IPlayClerkCommodityService clerkCommodityService; private final PlayClerkUserInfoMapper clerkUserInfoMapper; + private final PlayCommodityInfoMapper commodityInfoMapper; private final IPlayClerkGiftInfoService playClerkGiftInfoService; private final IPlayCustomUserInfoService customUserInfoService; private final IPlayCustomGiftInfoService playCustomGiftInfoService; @@ -109,6 +111,7 @@ public class ApiTestDataSeeder implements CommandLineRunner { IPlayGiftInfoService giftInfoService, IPlayClerkCommodityService clerkCommodityService, PlayClerkUserInfoMapper clerkUserInfoMapper, + PlayCommodityInfoMapper commodityInfoMapper, IPlayClerkGiftInfoService playClerkGiftInfoService, IPlayCustomUserInfoService customUserInfoService, IPlayCustomGiftInfoService playCustomGiftInfoService, @@ -128,6 +131,7 @@ public class ApiTestDataSeeder implements CommandLineRunner { this.giftInfoService = giftInfoService; this.clerkCommodityService = clerkCommodityService; this.clerkUserInfoMapper = clerkUserInfoMapper; + this.commodityInfoMapper = commodityInfoMapper; this.playClerkGiftInfoService = playClerkGiftInfoService; this.customUserInfoService = customUserInfoService; this.playCustomGiftInfoService = playCustomGiftInfoService; @@ -275,6 +279,17 @@ public class ApiTestDataSeeder implements CommandLineRunner { private PlayCommodityInfoEntity seedCommodityHierarchy() { PlayCommodityInfoEntity parent = commodityInfoService.getById(DEFAULT_COMMODITY_PARENT_ID); + if (parent == null) { + PlayCommodityInfoEntity existingParent = commodityInfoMapper + .selectByIdIncludingDeleted(DEFAULT_COMMODITY_PARENT_ID); + if (existingParent != null) { + commodityInfoMapper.restoreCommodity(DEFAULT_COMMODITY_PARENT_ID, DEFAULT_TENANT_ID); + parent = commodityInfoService.getById(DEFAULT_COMMODITY_PARENT_ID); + if (parent == null) { + parent = existingParent; + } + } + } if (parent == null) { parent = new PlayCommodityInfoEntity(); parent.setId(DEFAULT_COMMODITY_PARENT_ID); @@ -311,6 +326,17 @@ public class ApiTestDataSeeder implements CommandLineRunner { } PlayCommodityInfoEntity child = commodityInfoService.getById(DEFAULT_COMMODITY_ID); + if (child == null) { + PlayCommodityInfoEntity existingChild = commodityInfoMapper + .selectByIdIncludingDeleted(DEFAULT_COMMODITY_ID); + if (existingChild != null) { + commodityInfoMapper.restoreCommodity(DEFAULT_COMMODITY_ID, DEFAULT_TENANT_ID); + child = commodityInfoService.getById(DEFAULT_COMMODITY_ID); + if (child == null) { + child = existingChild; + } + } + } if (child != null) { boolean childNeedsUpdate = false; if (!DEFAULT_COMMODITY_PARENT_ID.equals(child.getPId())) { diff --git a/play-admin/src/main/java/com/starry/admin/modules/shop/mapper/PlayCommodityInfoMapper.java b/play-admin/src/main/java/com/starry/admin/modules/shop/mapper/PlayCommodityInfoMapper.java index 85fb31b..5841be1 100644 --- a/play-admin/src/main/java/com/starry/admin/modules/shop/mapper/PlayCommodityInfoMapper.java +++ b/play-admin/src/main/java/com/starry/admin/modules/shop/mapper/PlayCommodityInfoMapper.java @@ -1,9 +1,12 @@ package com.starry.admin.modules.shop.mapper; +import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import com.github.yulichang.base.MPJBaseMapper; import com.starry.admin.modules.shop.module.entity.PlayCommodityInfoEntity; import com.starry.admin.modules.shop.module.vo.PlayCommodityInfoVo; +import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; +import org.apache.ibatis.annotations.Update; /** * 服务项目Mapper接口 @@ -34,4 +37,12 @@ public interface PlayCommodityInfoMapper extends MPJBaseMapper