feat(api): public good detail family block behind gray-release flag
This commit is contained in:
@@ -221,6 +221,10 @@ export class ProductFamiliesService {
|
||||
where: { id: { in: removeIds }, familyId: id },
|
||||
data: { familyId: null },
|
||||
});
|
||||
await this.prisma.good.updateMany({
|
||||
where: { originGoodId: { in: removeIds }, familyId: id },
|
||||
data: { familyId: null },
|
||||
});
|
||||
// 移除的是主链接(或主链接已不在族内)→ 落到剩余第一个成员
|
||||
if (remaining > 0) {
|
||||
const stillPrimary = await this.prisma.originGood.count({
|
||||
@@ -248,10 +252,12 @@ export class ProductFamiliesService {
|
||||
}
|
||||
|
||||
if (dto.addOriginGoodIds?.length) {
|
||||
await this.attachMembers(
|
||||
id,
|
||||
dto.addOriginGoodIds.map((v) => BigInt(v)),
|
||||
);
|
||||
const addIds = dto.addOriginGoodIds.map((v) => BigInt(v));
|
||||
await this.attachMembers(id, addIds);
|
||||
await this.prisma.good.updateMany({
|
||||
where: { originGoodId: { in: addIds } },
|
||||
data: { familyId: id },
|
||||
});
|
||||
}
|
||||
|
||||
await this.recompute.recomputeFamily(id);
|
||||
|
||||
Reference in New Issue
Block a user