From 1be4701f6d6541ed877937be57e6ab1739d061fa Mon Sep 17 00:00:00 2001 From: shahaibo <1023316923@qq.com> Date: Wed, 28 May 2025 09:37:27 +0800 Subject: [PATCH] =?UTF-8?q?TASK:mannequin=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../enums/CollectionLevel1TypeEnum.java | 2 +- .../CollectionElementRelModelMapper.java | 10 +++ .../entity/CollectionElementRelModel.java | 34 +++++++ .../da/mapper/primary/entity/DesignItem.java | 3 + .../ai/da/model/dto/DesignCollectionDTO.java | 2 + .../com/ai/da/model/dto/MannequinDTO.java | 3 + .../ai/da/model/vo/CollectionElementVO.java | 3 + .../model/vo/DesignLibraryModelPointVO.java | 4 + .../com/ai/da/model/vo/ModuleChooseVO.java | 2 + .../com/ai/da/model/vo/UserLikeChooseVO.java | 4 +- .../com/ai/da/model/vo/ValidateElementVO.java | 2 + .../java/com/ai/da/python/PythonService.java | 27 ++++-- .../ai/da/python/vo/DesignPythonBasic.java | 2 +- .../impl/CollectionElementServiceImpl.java | 43 ++++++--- .../ai/da/service/impl/DesignServiceImpl.java | 14 +++ .../impl/UserLikeGroupServiceImpl.java | 89 +++++++++++++++---- 16 files changed, 204 insertions(+), 40 deletions(-) create mode 100644 src/main/java/com/ai/da/mapper/primary/CollectionElementRelModelMapper.java create mode 100644 src/main/java/com/ai/da/mapper/primary/entity/CollectionElementRelModel.java diff --git a/src/main/java/com/ai/da/common/enums/CollectionLevel1TypeEnum.java b/src/main/java/com/ai/da/common/enums/CollectionLevel1TypeEnum.java index d8e025fe..76d8a375 100644 --- a/src/main/java/com/ai/da/common/enums/CollectionLevel1TypeEnum.java +++ b/src/main/java/com/ai/da/common/enums/CollectionLevel1TypeEnum.java @@ -29,7 +29,7 @@ public enum CollectionLevel1TypeEnum { */ MARKETING_SKETCH("MarketingSketch"), - MANNEQUIN("Mannequin"); + MODEL("Models"); private String realName; diff --git a/src/main/java/com/ai/da/mapper/primary/CollectionElementRelModelMapper.java b/src/main/java/com/ai/da/mapper/primary/CollectionElementRelModelMapper.java new file mode 100644 index 00000000..fb61a84f --- /dev/null +++ b/src/main/java/com/ai/da/mapper/primary/CollectionElementRelModelMapper.java @@ -0,0 +1,10 @@ +package com.ai.da.mapper.primary; + +import com.ai.da.common.config.mybatis.plus.CommonMapper; +import com.ai.da.mapper.primary.entity.CollectionElementRelModel; + +import java.util.Set; + +public interface CollectionElementRelModelMapper extends CommonMapper { + +} diff --git a/src/main/java/com/ai/da/mapper/primary/entity/CollectionElementRelModel.java b/src/main/java/com/ai/da/mapper/primary/entity/CollectionElementRelModel.java new file mode 100644 index 00000000..cc929505 --- /dev/null +++ b/src/main/java/com/ai/da/mapper/primary/entity/CollectionElementRelModel.java @@ -0,0 +1,34 @@ +package com.ai.da.mapper.primary.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("collection_element_rel_model") +public class CollectionElementRelModel implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * ID + */ + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + private Long relationId; + + private String relationType; + + private Long collectionElementId; + + private String ageGroup; + +} diff --git a/src/main/java/com/ai/da/mapper/primary/entity/DesignItem.java b/src/main/java/com/ai/da/mapper/primary/entity/DesignItem.java index f6532eea..66f47633 100644 --- a/src/main/java/com/ai/da/mapper/primary/entity/DesignItem.java +++ b/src/main/java/com/ai/da/mapper/primary/entity/DesignItem.java @@ -63,6 +63,9 @@ public class DesignItem implements Serializable { @TableField("is_like") private Byte hasLike; + private Long relationId; + private String modelType; + /** * 创建时间 */ diff --git a/src/main/java/com/ai/da/model/dto/DesignCollectionDTO.java b/src/main/java/com/ai/da/model/dto/DesignCollectionDTO.java index 45da3381..038846db 100644 --- a/src/main/java/com/ai/da/model/dto/DesignCollectionDTO.java +++ b/src/main/java/com/ai/da/model/dto/DesignCollectionDTO.java @@ -29,6 +29,8 @@ public class DesignCollectionDTO { @ApiModelProperty("手稿板图片id 数组") private List sketchBoards; + private List mannequins; + @NotNull(message = "systemScale.cannot.be.empty") @ApiModelProperty("系统取图比列") private BigDecimal systemScale; diff --git a/src/main/java/com/ai/da/model/dto/MannequinDTO.java b/src/main/java/com/ai/da/model/dto/MannequinDTO.java index e79dcc98..1ecc9b8e 100644 --- a/src/main/java/com/ai/da/model/dto/MannequinDTO.java +++ b/src/main/java/com/ai/da/model/dto/MannequinDTO.java @@ -9,6 +9,9 @@ import lombok.NoArgsConstructor; @NoArgsConstructor public class MannequinDTO { private Long id; + + private Long collectionElementId; + private String type; // private String modelType; } diff --git a/src/main/java/com/ai/da/model/vo/CollectionElementVO.java b/src/main/java/com/ai/da/model/vo/CollectionElementVO.java index 5662f16a..505ed4ef 100644 --- a/src/main/java/com/ai/da/model/vo/CollectionElementVO.java +++ b/src/main/java/com/ai/da/model/vo/CollectionElementVO.java @@ -46,4 +46,7 @@ public class CollectionElementVO { private List segmentedImages; + private Long mannequinRelationId; + private String mannequinRelationType; + } diff --git a/src/main/java/com/ai/da/model/vo/DesignLibraryModelPointVO.java b/src/main/java/com/ai/da/model/vo/DesignLibraryModelPointVO.java index 1360ab7e..1c2d642a 100644 --- a/src/main/java/com/ai/da/model/vo/DesignLibraryModelPointVO.java +++ b/src/main/java/com/ai/da/model/vo/DesignLibraryModelPointVO.java @@ -40,5 +40,9 @@ public class DesignLibraryModelPointVO implements Serializable { private String templateUrl; + private Long relationId; + + private String relationType; + } diff --git a/src/main/java/com/ai/da/model/vo/ModuleChooseVO.java b/src/main/java/com/ai/da/model/vo/ModuleChooseVO.java index e5786ba8..0d899a9f 100644 --- a/src/main/java/com/ai/da/model/vo/ModuleChooseVO.java +++ b/src/main/java/com/ai/da/model/vo/ModuleChooseVO.java @@ -35,4 +35,6 @@ public class ModuleChooseVO { private SketchReconstructionVO deReconstruction; private ThreeDModuleVO patternMaking3D; + + private List mannequin; } diff --git a/src/main/java/com/ai/da/model/vo/UserLikeChooseVO.java b/src/main/java/com/ai/da/model/vo/UserLikeChooseVO.java index b8f9956a..0bbc9230 100644 --- a/src/main/java/com/ai/da/model/vo/UserLikeChooseVO.java +++ b/src/main/java/com/ai/da/model/vo/UserLikeChooseVO.java @@ -6,6 +6,8 @@ import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; +import java.util.List; + @AllArgsConstructor @Data @ApiModel("用户choose详细-响应") @@ -15,7 +17,7 @@ public class UserLikeChooseVO { private Long userGroupId; @ApiModelProperty("分组详细数组") - private java.util.List userLikeDetails; + private List userLikeDetails; @ApiModelProperty("关联的collection") private UserLikeCollectionVO collection; diff --git a/src/main/java/com/ai/da/model/vo/ValidateElementVO.java b/src/main/java/com/ai/da/model/vo/ValidateElementVO.java index 85dd456f..68a70d27 100644 --- a/src/main/java/com/ai/da/model/vo/ValidateElementVO.java +++ b/src/main/java/com/ai/da/model/vo/ValidateElementVO.java @@ -2,6 +2,7 @@ package com.ai.da.model.vo; import com.ai.da.mapper.primary.entity.CollectionElement; import com.ai.da.model.dto.CollectionColorDTO; +import com.ai.da.model.dto.MannequinDTO; import com.ai.da.python.vo.DesignPythonItemPrint; import com.google.common.collect.Lists; import io.swagger.annotations.ApiModel; @@ -59,4 +60,5 @@ public class ValidateElementVO { private Long brandId; private Double brandScale; + private List mannequins; } diff --git a/src/main/java/com/ai/da/python/PythonService.java b/src/main/java/com/ai/da/python/PythonService.java index d4604c3c..e89124cd 100644 --- a/src/main/java/com/ai/da/python/PythonService.java +++ b/src/main/java/com/ai/da/python/PythonService.java @@ -29,7 +29,6 @@ import com.google.common.collect.Maps; import io.netty.util.internal.StringUtil; import lombok.extern.slf4j.Slf4j; import okhttp3.*; -import org.apache.catalina.User; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -45,7 +44,6 @@ import java.io.IOException; import java.math.BigDecimal; import java.math.RoundingMode; import java.net.HttpURLConnection; -import java.net.URLEncoder; import java.util.*; import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.TimeUnit; @@ -350,7 +348,7 @@ public class PythonService { private DesignPythonObject createDesignPythonObject(ValidateElementVO elementVO, CurrentDesignPictureTypeEnum designPictureType, BigDecimal systemScale, String singleOverall, String switchCategory, int i) { DesignPythonObject pythonObject = new DesignPythonObject(); pythonObject.setItems(coverToDesignPythonItemNew(elementVO, designPictureType, systemScale)); - pythonObject.setBasic(coverToBasic(pythonObject.getItems().get(0), singleOverall, switchCategory, elementVO.getDesignLibraryModelPoint())); + pythonObject.setBasic(coverToBasic(pythonObject.getItems().get(0), singleOverall, switchCategory, elementVO.getDesignLibraryModelPoint(), elementVO.getMannequins())); if (CollectionUtil.isNotEmpty(elementVO.getRequestIdList())) { pythonObject.setObjectSign(elementVO.getRequestIdList().get(i)); } @@ -2169,7 +2167,7 @@ public class PythonService { } private DesignPythonBasic coverToBasic(DesignPythonItem designPythonItem, String singleOverall, - String switchCategory, DesignLibraryModelPointVO designLibraryModelPoint) { + String switchCategory, DesignLibraryModelPointVO designLibraryModelPoint, List mannequins) { DesignPythonBasic basic = new DesignPythonBasic(); basic.setSingle_overall(singleOverall); basic.setSwitch_category(switchCategory); @@ -2182,12 +2180,25 @@ public class PythonService { basic.setSelf_template(Boolean.TRUE); } basic.setScale_earrings(0.16); - basic.setBody_point_test(getMap(designLibraryModelPoint)); + if (!CollectionUtils.isEmpty(mannequins)) { + DesignLibraryModelPointVO vo = getRandomDesignLibraryModelPoint(mannequins); + basic.setBody_point_test(getMap(vo)); + }else { + basic.setBody_point_test(getMap(designLibraryModelPoint)); + } return basic; } - private Map> getMap(DesignLibraryModelPointVO designLibraryModelPointOld) { - Map> body_point = Maps.newHashMap(); + private DesignLibraryModelPointVO getRandomDesignLibraryModelPoint(List mannequins) { + DesignLibraryModelPointVO vo = new DesignLibraryModelPointVO(); + Random random = new Random(); + int randomNumber = random.nextInt(mannequins.size()); + return mannequins.get(randomNumber); + + } + + private Map getMap(DesignLibraryModelPointVO designLibraryModelPointOld) { + Map body_point = Maps.newHashMap(); if (Objects.nonNull(designLibraryModelPointOld)) { DesignLibraryModelPointVO designLibraryModelPoint = CopyUtil.copyObject(designLibraryModelPointOld, DesignLibraryModelPointVO.class); @@ -2198,6 +2209,8 @@ public class PythonService { body_point.put("waistband_right", resolve(designLibraryModelPoint.getWaistbandRight())); body_point.put("hand_point_left", resolve(designLibraryModelPoint.getHandLeft())); body_point.put("hand_point_right", resolve(designLibraryModelPoint.getHandRight())); + body_point.put("relation_id", designLibraryModelPoint.getRelationId()); + body_point.put("relation_type", designLibraryModelPoint.getRelationType()); } else { //默认是13个点 body_point.put("shoulder_left", Arrays.asList(755, 519)); diff --git a/src/main/java/com/ai/da/python/vo/DesignPythonBasic.java b/src/main/java/com/ai/da/python/vo/DesignPythonBasic.java index b2d89c3c..e0edad78 100644 --- a/src/main/java/com/ai/da/python/vo/DesignPythonBasic.java +++ b/src/main/java/com/ai/da/python/vo/DesignPythonBasic.java @@ -36,7 +36,7 @@ public class DesignPythonBasic { private Double scale_earrings; - private Map> body_point_test = Maps.newHashMap(); + private Map body_point_test = Maps.newHashMap(); private Boolean layer_order = Boolean.FALSE; diff --git a/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java b/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java index 7b1ae53f..f2dc17cf 100644 --- a/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/CollectionElementServiceImpl.java @@ -601,18 +601,37 @@ public class CollectionElementServiceImpl extends ServiceImpl designLibraryModelPointVOList = new ArrayList<>(); + for (MannequinDTO mannequin : designDTO.getMannequins()) { + if (mannequin.getType().equals("System")) { + Library byId = libraryService.getById(mannequin.getId()); + LibraryModelPoint modelPoint = libraryModelPointService.getByRelationId(byId.getId(), designDTO.getModelType()); + designLibraryModelPointVOList.add(calculateTemplatePointTemplate(modelPoint, byId.getHigh(), byId.getWidth(), byId.getUrl())); + }else { + SysFileVO byId = sysFileService.getById(mannequin.getId()); +// if (!StringUtils.isEmpty(byId.getLevel3Type()) && byId.getLevel2Type().equals("Female")) { +// elementVO.setStyle(byId.getLevel3Type()); +// } + LibraryModelPoint modelPoint = libraryModelPointService.getByRelationId(byId.getId(), designDTO.getModelType()); + designLibraryModelPointVOList.add(calculateTemplatePointTemplate(modelPoint, 700, 320, byId.getUrl())); + } + } + elementVO.setMannequins(designLibraryModelPointVOList); + }else { + if (!StringUtils.isEmpty(designDTO.getModelType())) { + if (designDTO.getModelType().equals(ModelType.LIBRARY.getValue())) { + Library byId = libraryService.getById(designDTO.getTemplateId()); + LibraryModelPoint modelPoint = libraryModelPointService.getByRelationId(byId.getId(), designDTO.getModelType()); + elementVO.setDesignLibraryModelPoint(calculateTemplatePointTemplate(modelPoint, byId.getHigh(), byId.getWidth(), byId.getUrl())); + } else if (designDTO.getModelType().equals(ModelType.SYSTEM.getValue())) { + SysFileVO byId = sysFileService.getById(designDTO.getTemplateId()); + if (!StringUtils.isEmpty(byId.getLevel3Type()) && byId.getLevel2Type().equals("Female")) { + elementVO.setStyle(byId.getLevel3Type()); + } + LibraryModelPoint modelPoint = libraryModelPointService.getByRelationId(byId.getId(), designDTO.getModelType()); + elementVO.setDesignLibraryModelPoint(calculateTemplatePointTemplate(modelPoint, 700, 320, byId.getUrl())); } - LibraryModelPoint modelPoint = libraryModelPointService.getByRelationId(byId.getId(), designDTO.getModelType()); - elementVO.setDesignLibraryModelPoint(calculateTemplatePointTemplate(modelPoint, 700, 320, byId.getUrl())); } } elementVO.setModelSex(designDTO.getModelSex()); @@ -660,6 +679,8 @@ public class CollectionElementServiceImpl extends ServiceImpl impleme designItem.setDesignUrl(item.getBasic().getSave_name()); designItem.setHasLike((byte) 0); //生成designItem + Map bodyPointTest = item.getBasic().getBody_point_test(); + // 转换 relation_id (Long) + Long relationId = Optional.ofNullable(bodyPointTest.get("relation_id")) + .filter(Number.class::isInstance) + .map(num -> ((Number) num).longValue()) + .orElseThrow(null); + + // 转换 relation_type (String) + String relationType = Optional.ofNullable(bodyPointTest.get("relation_type")) + .filter(String.class::isInstance) + .map(String.class::cast) + .orElse(null); + designItem.setRelationId(relationId); + designItem.setModelType(relationType); Long designItemId = designItemService.saveOne(designItem); // python design返回入库及封装 // JSONObject outfit = data.getJSONObject(i + ""); diff --git a/src/main/java/com/ai/da/service/impl/UserLikeGroupServiceImpl.java b/src/main/java/com/ai/da/service/impl/UserLikeGroupServiceImpl.java index aee53ee0..f5d6c54a 100644 --- a/src/main/java/com/ai/da/service/impl/UserLikeGroupServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/UserLikeGroupServiceImpl.java @@ -131,6 +131,8 @@ public class UserLikeGroupServiceImpl extends ServiceImpl qw = new QueryWrapper<>(); + qw.lambda().eq(CollectionElement::getProjectId, projectDTO.getId()); + qw.lambda().eq(CollectionElement::getLevel1Type, CollectionLevel1TypeEnum.MODEL.getRealName()); + List collectionElements = collectionElementMapper.selectList(qw); + List list = new ArrayList<>(); + if (CollectionUtil.isNotEmpty(collectionElements)) { + for (CollectionElement collectionElement : collectionElements) { + CollectionElementVO collectionElementVO = CopyUtil.copyObject(collectionElement, CollectionElementVO.class); + CollectionElementRelModel relModel = getCollectionElementRelModel(collectionElementVO.getId()); + collectionElementVO.setUrl(minioUtil.getPreSignedUrl(collectionElementVO.getUrl(), 24 * 60)); + collectionElementVO.setMannequinRelationId(relModel.getRelationId()); + collectionElementVO.setMannequinRelationType(relModel.getRelationType()); + collectionElementVO.setCollectionId(collectionElement.getId()); + list.add(collectionElementVO); + } + } + moduleChooseVO.setMannequin(list); } } return moduleChooseVO; } + private CollectionElementRelModel getCollectionElementRelModel(Long id) { + QueryWrapper qw = new QueryWrapper<>(); + qw.lambda().eq(CollectionElementRelModel::getCollectionElementId, id); + CollectionElementRelModel collectionElementRelModel = collectionElementRelModelMapper.selectOne(qw); + return collectionElementRelModel; + } + @Override @Transactional public ModuleChooseVO saveModuleContent(ModuleSaveDTO moduleSaveDTO) { @@ -1905,61 +1932,79 @@ public class UserLikeGroupServiceImpl extends ServiceImpl qw = new QueryWrapper<>(); qw.lambda().eq(CollectionElement::getProjectId, projectId); - qw.lambda().eq(CollectionElement::getLevel1Type, CollectionLevel1TypeEnum.MANNEQUIN.getRealName()); + qw.lambda().eq(CollectionElement::getLevel1Type, CollectionLevel1TypeEnum.MODEL.getRealName()); List collectionElements = collectionElementMapper.selectList(qw); Set old = collectionElements.stream().map(CollectionElement::getId).collect(Collectors.toSet()); // Set oldUrl = collectionElements.stream().map(CollectionElement::getUrl).collect(Collectors.toSet()); List mannequin = moduleSaveDTO.getMannequin(); for (MannequinDTO dto : mannequin) { - + if (null != dto.getCollectionElementId()) { + old.remove(dto.getId()); + continue; + } if (dto.getType().equals("System")) { SysFile sysFile = sysFileMapper.selectById(dto.getId()); CollectionElement collectionElement = new CollectionElement(); collectionElement.setAccountId(accountId); collectionElement.setProjectId(projectId); - collectionElement.setLevel1Type(CollectionLevel1TypeEnum.MANNEQUIN.getRealName()); + collectionElement.setLevel1Type(CollectionLevel1TypeEnum.MODEL.getRealName()); // collectionElement.setLevel2Type(board.getLevel2Type()); collectionElement.setName(sysFile.getName()); collectionElement.setUrl(sysFile.getUrl()); // collectionElement.setHasPin(board.getIsPin()); collectionElement.setMd5(sysFile.getMd5()); collectionElement.setCreateDate(new Date()); + collectionElement.setHasPin((byte) 0); collectionElementMapper.insert(collectionElement); + CollectionElementRelModel collectionElementRelModel = new CollectionElementRelModel(); + collectionElementRelModel.setCollectionElementId(collectionElement.getId()); + collectionElementRelModel.setRelationId(dto.getId()); + collectionElementRelModel.setRelationType("System"); + collectionElementRelModelMapper.insert(collectionElementRelModel); }else if (dto.getType().equals("Library")) { Library library = libraryMapper.selectById(dto.getId()); CollectionElement collectionElement = new CollectionElement(); collectionElement.setAccountId(accountId); collectionElement.setProjectId(projectId); - collectionElement.setLevel1Type(CollectionLevel1TypeEnum.MANNEQUIN.getRealName()); + collectionElement.setLevel1Type(CollectionLevel1TypeEnum.MODEL.getRealName()); // collectionElement.setLevel2Type(board.getLevel2Type()); collectionElement.setName(library.getName()); collectionElement.setUrl(library.getUrl()); // collectionElement.setHasPin(board.getIsPin()); collectionElement.setMd5(library.getMd5()); collectionElement.setCreateDate(new Date()); + collectionElement.setHasPin((byte) 0); collectionElementMapper.insert(collectionElement); + CollectionElementRelModel collectionElementRelModel = new CollectionElementRelModel(); + collectionElementRelModel.setCollectionElementId(collectionElement.getId()); + collectionElementRelModel.setRelationId(dto.getId()); + collectionElementRelModel.setRelationType("System"); + collectionElementRelModelMapper.insert(collectionElementRelModel); + }else { - if (old.contains(dto.getId())) { - CollectionElement collectionElement = collectionElementMapper.selectById(dto.getId()); -// collectionElement.setLevel2Type(board.getLevel2Type()); -// collectionElement.setHasPin(board.getIsPin()); - collectionElement.setUpdateDate(new Date()); - collectionElementMapper.updateById(collectionElement); - old.remove(dto.getId()); - }else { - CollectionElement collectionElement = collectionElementMapper.selectById(dto.getId()); - collectionElement.setProjectId(projectId); -// collectionElement.setLevel2Type(board.getLevel2Type()); -// collectionElement.setHasPin(board.getIsPin()); - collectionElement.setUpdateDate(new Date()); - collectionElementMapper.updateById(collectionElement); - } +// if (old.contains(dto.getId())) { +// CollectionElement collectionElement = collectionElementMapper.selectById(dto.getId()); +//// collectionElement.setLevel2Type(board.getLevel2Type()); +//// collectionElement.setHasPin(board.getIsPin()); +// collectionElement.setUpdateDate(new Date()); +// collectionElementMapper.updateById(collectionElement); +// old.remove(dto.getId()); +// }else { +// CollectionElement collectionElement = collectionElementMapper.selectById(dto.getId()); +// collectionElement.setProjectId(projectId); +//// collectionElement.setLevel2Type(board.getLevel2Type()); +//// collectionElement.setHasPin(board.getIsPin()); +// collectionElement.setUpdateDate(new Date()); +// collectionElementMapper.updateById(collectionElement); +// } } } if (!CollectionUtils.isEmpty(old)) { collectionElementMapper.deleteBatchIds(old); + // 删除关联关系 + deleteByCollectionElementIdList(old); } } @@ -1993,6 +2038,12 @@ public class UserLikeGroupServiceImpl extends ServiceImpl old) { + QueryWrapper qw = new QueryWrapper<>(); + qw.lambda().in(CollectionElementRelModel::getCollectionElementId, old); + collectionElementRelModelMapper.delete(qw); + } + @Override public QueryLibraryPageVO getMannequinDetail(MannequinDTO mannequinDTO) { QueryLibraryPageVO vo = new QueryLibraryPageVO();