TASK:模块化;

This commit is contained in:
shahaibo
2025-04-10 14:00:33 +08:00
parent 6b62d26544
commit 03ae184541

View File

@@ -638,149 +638,172 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
Long projectId = portfolio.getProjectId(); Long projectId = portfolio.getProjectId();
QueryWrapper<UserLikeGroup> userLikeGroupQueryWrapper = new QueryWrapper<>(); // QueryWrapper<UserLikeGroup> userLikeGroupQueryWrapper = new QueryWrapper<>();
userLikeGroupQueryWrapper.lambda().eq(UserLikeGroup::getCollectionId, portfolio.getCollectionId()); // userLikeGroupQueryWrapper.lambda().eq(UserLikeGroup::getCollectionId, portfolio.getCollectionId());
UserLikeGroup userLikeGroup = userLikeGroupMapper.selectOne(userLikeGroupQueryWrapper); UserLikeGroup userLikeGroup = userLikeService.getUserLikeGroupByProjectId(projectId);
if (Objects.isNull(userLikeGroup)) {
throw new BusinessException("");
}
Long portfolioUserLikeGroupId = userLikeGroup.getId();
Project project = projectMapper.selectById(userLikeGroup.getProjectId()); Project project = projectMapper.selectById(projectId);
Long projectIdOld = project.getId(); // Long projectIdOld = project.getId();
project.setCreateTime(LocalDateTime.now()); project.setCreateTime(LocalDateTime.now());
project.setId(null); project.setId(null);
project.setAccountId(authPrincipalVo.getId()); project.setAccountId(authPrincipalVo.getId());
project.setName(project.getName() + "_copy"); project.setName(project.getName() + "_copy");
projectMapper.insert(project);
UserLikeGroup userLikeGroupNew = CopyUtil.copyObject(userLikeGroup, UserLikeGroup.class);
userLikeGroupNew.setId(null);
userLikeGroupNew.setCreateDate(new Date());
userLikeGroupNew.setProjectId(project.getId());
if (portfolio.getOriginal() == 1) { if (portfolio.getOriginal() == 1) {
if (Objects.equals(portfolio.getAccountId(), authPrincipalVo.getId())) { if (Objects.equals(portfolio.getAccountId(), authPrincipalVo.getId())) {
userLikeGroupNew.setOriginal(1); project.setOriginal(1);
} else { } else {
userLikeGroupNew.setOriginal(0); project.setOriginal(0);
userLikeGroupNew.setOriginalAccountId(portfolio.getAccountId()); project.setOriginalAccountId(portfolio.getAccountId());
userLikeGroupNew.setOriginalPortfolioId(portfolio.getId()); project.setOriginalPortfolioId(portfolio.getId());
} }
} else { } else {
userLikeGroupNew.setOriginal(0); project.setOriginal(0);
userLikeGroupNew.setOriginalAccountId(portfolio.getOriginalAccountId()); project.setOriginalAccountId(portfolio.getOriginalAccountId());
userLikeGroupNew.setOriginalPortfolioId(portfolio.getId()); project.setOriginalPortfolioId(portfolio.getId());
} }
userLikeGroupNew.setAccountId(authPrincipalVo.getId());
Long collectionIdOld = userLikeGroup.getCollectionId();
Collection collectionOld = collectionMapper.selectById(collectionIdOld);
List<CollectionElement> collectionElementListOld = collectionElementService.getByCollectionId(collectionIdOld);
collectionOld.setId(null);
collectionMapper.insert(collectionOld);
Long collectionIdNew = collectionOld.getId();
Workspace workspace = workspaceService.getCurrentWorkspace(); projectMapper.insert(project);
Design design = new Design();
design.setCollectionId(collectionIdNew);
design.setAccountId(authPrincipalVo.getId());
if (workspace.getSex().equals(Sex.FEMALE.getValue())) {
design.setTemplateId(workspace.getMannequinFemaleId());
design.setModelType(workspace.getMannequinFemaleType());
} else {
design.setTemplateId(workspace.getMannequinMaleId());
design.setModelType(workspace.getMannequinMaleType());
}
design.setSystemScale(BigDecimal.valueOf(workspace.getSystemDesignerPercentage()));
if (workspace.getPosition().equals(Position.OVERALL.getValue())) {
design.setSingleOverall("overall");
design.setSwitchCategory("");
} else {
design.setSingleOverall("single");
design.setSwitchCategory(workspace.getPosition());
}
design.setCreateDate(new Date());
designMapper.insert(design);
userLikeGroupNew.setCollectionId(collectionIdNew); Long projectIdNew = project.getId();
userLikeGroupNew.setUpdateDate(new Date());
userLikeGroupMapper.insert(userLikeGroupNew); List<CollectionElement> collectionElementListOld = collectionElementService.getByProjectId(projectId);
// List<TCollectionElementRelation> collectionElementRelationListNew = new ArrayList<>();
for (CollectionElement element : collectionElementListOld) { for (CollectionElement element : collectionElementListOld) {
element.setProjectId(project.getId()); element.setProjectId(projectIdNew);
element.setCollectionId(collectionIdNew);
element.setId(null); element.setId(null);
collectionElementMapper.insert(element); collectionElementMapper.insert(element);
TCollectionElementRelation collectionElementRelationNew = new TCollectionElementRelation();
collectionElementRelationNew.setCollectionId(collectionIdNew);
collectionElementRelationNew.setElementId(element.getId());
collectionElementRelationNew.setCreateDate(new Date());
collectionElementRelationMapper.insert(collectionElementRelationNew);
} }
if (Objects.nonNull(userLikeGroup)) {
Long portfolioUserLikeGroupId = userLikeGroup.getId();
List<UserLike> userLikeList = userLikeService.getUserLikeList(portfolioUserLikeGroupId); UserLikeGroup userLikeGroupNew = CopyUtil.copyObject(userLikeGroup, UserLikeGroup.class);
userLikeGroupNew.setId(null);
userLikeGroupNew.setCreateDate(new Date());
userLikeGroupNew.setProjectId(projectIdNew);
if (portfolio.getOriginal() == 1) {
if (Objects.equals(portfolio.getAccountId(), authPrincipalVo.getId())) {
userLikeGroupNew.setOriginal(1);
} else {
userLikeGroupNew.setOriginal(0);
userLikeGroupNew.setOriginalAccountId(portfolio.getAccountId());
userLikeGroupNew.setOriginalPortfolioId(portfolio.getId());
}
} else {
userLikeGroupNew.setOriginal(0);
userLikeGroupNew.setOriginalAccountId(portfolio.getOriginalAccountId());
userLikeGroupNew.setOriginalPortfolioId(portfolio.getId());
}
userLikeGroupNew.setAccountId(authPrincipalVo.getId());
Long collectionIdOld = userLikeGroup.getCollectionId();
Collection collectionOld = collectionMapper.selectById(collectionIdOld);
// List<CollectionElement> collectionElementListOld = collectionElementService.getByCollectionId(collectionIdOld);
collectionOld.setId(null);
collectionMapper.insert(collectionOld);
Long collectionIdNew = collectionOld.getId();
for (UserLike userLike : userLikeList) { Workspace workspace = workspaceService.getCurrentWorkspace();
Long designOutfitIdOld = userLike.getDesignOutfitId(); Design design = new Design();
TDesignPythonOutfit designPythonOutfit = designPythonOutfitMapper.selectById(designOutfitIdOld); design.setCollectionId(collectionIdNew);
designPythonOutfit.setDesignId(design.getId()); design.setAccountId(authPrincipalVo.getId());
designPythonOutfit.setDesignItemId(-1L); if (workspace.getSex().equals(Sex.FEMALE.getValue())) {
designPythonOutfit.setCollectionId(collectionIdNew); design.setTemplateId(workspace.getMannequinFemaleId());
design.setModelType(workspace.getMannequinFemaleType());
} else {
design.setTemplateId(workspace.getMannequinMaleId());
design.setModelType(workspace.getMannequinMaleType());
}
design.setSystemScale(BigDecimal.valueOf(workspace.getSystemDesignerPercentage()));
if (workspace.getPosition().equals(Position.OVERALL.getValue())) {
design.setSingleOverall("overall");
design.setSwitchCategory("");
} else {
design.setSingleOverall("single");
design.setSwitchCategory(workspace.getPosition());
}
design.setCreateDate(new Date());
designMapper.insert(design);
designPythonOutfit.setId(null); userLikeGroupNew.setCollectionId(collectionIdNew);
designPythonOutfitMapper.insert(designPythonOutfit); userLikeGroupNew.setUpdateDate(new Date());
Long designOutfitIdNew = designPythonOutfit.getId(); userLikeGroupMapper.insert(userLikeGroupNew);
userLike.setDesignOutfitId(designOutfitIdNew); // List<TCollectionElementRelation> collectionElementRelationListNew = new ArrayList<>();
QueryWrapper<TDesignPythonOutfitDetail> qw = new QueryWrapper<>(); for (CollectionElement element : collectionElementListOld) {
qw.lambda().eq(TDesignPythonOutfitDetail::getDesignPythonOutfitId, designOutfitIdOld); element.setCollectionId(collectionIdNew);
List<TDesignPythonOutfitDetail> tDesignPythonOutfitDetails = designPythonOutfitDetailMapper.selectList(qw); collectionElementMapper.updateById(element);
for (TDesignPythonOutfitDetail tDesignPythonOutfitDetail : tDesignPythonOutfitDetails) { TCollectionElementRelation collectionElementRelationNew = new TCollectionElementRelation();
// Long designPythonOutfitDetailIdOld = tDesignPythonOutfitDetail.getId(); collectionElementRelationNew.setCollectionId(collectionIdNew);
tDesignPythonOutfitDetail.setId(null); collectionElementRelationNew.setElementId(element.getId());
tDesignPythonOutfitDetail.setDesignId(design.getId()); collectionElementRelationNew.setCreateDate(new Date());
tDesignPythonOutfitDetail.setDesignPythonOutfitId(designOutfitIdNew); collectionElementRelationMapper.insert(collectionElementRelationNew);
designPythonOutfitDetailMapper.insert(tDesignPythonOutfitDetail);
} }
Long designItemIdOld = userLike.getDesignItemId();
DesignItem designItemOld = designItemMapper.selectById(designItemIdOld);
designItemOld.setId(null);
designItemOld.setAccountId(authPrincipalVo.getId());
designItemOld.setDesignId(design.getId());
designItemOld.setCollectionId(collectionIdNew);
designItemMapper.insert(designItemOld);
Long designItemIdNew = designItemOld.getId();
designPythonOutfit.setDesignItemId(designItemIdNew); List<UserLike> userLikeList = userLikeService.getUserLikeList(portfolioUserLikeGroupId);
designPythonOutfitMapper.updateById(designPythonOutfit);
userLike.setDesignItemId(designItemIdNew); for (UserLike userLike : userLikeList) {
userLike.setId(null); Long designOutfitIdOld = userLike.getDesignOutfitId();
userLike.setDesignId(design.getId()); TDesignPythonOutfit designPythonOutfit = designPythonOutfitMapper.selectById(designOutfitIdOld);
userLike.setUserLikeGroupId(userLikeGroupNew.getId()); designPythonOutfit.setDesignId(design.getId());
userLikeMapper.insert(userLike); designPythonOutfit.setDesignItemId(-1L);
QueryWrapper<DesignItemDetail> designItemDetailQueryWrapper = new QueryWrapper<>(); designPythonOutfit.setCollectionId(collectionIdNew);
designItemDetailQueryWrapper.lambda().eq(DesignItemDetail::getDesignItemId, designItemIdOld);
List<DesignItemDetail> designItemDetailListOld = designItemDetailMapper.selectList(designItemDetailQueryWrapper); designPythonOutfit.setId(null);
for (DesignItemDetail designItemDetailOld : designItemDetailListOld) { designPythonOutfitMapper.insert(designPythonOutfit);
Long designItemDetailIdOld = designItemDetailOld.getId(); Long designOutfitIdNew = designPythonOutfit.getId();
designItemDetailOld.setId(null); userLike.setDesignOutfitId(designOutfitIdNew);
designItemDetailOld.setAccountId(authPrincipalVo.getId()); QueryWrapper<TDesignPythonOutfitDetail> qw = new QueryWrapper<>();
designItemDetailOld.setDesignId(design.getId()); qw.lambda().eq(TDesignPythonOutfitDetail::getDesignPythonOutfitId, designOutfitIdOld);
designItemDetailOld.setDesignItemId(designItemIdNew); List<TDesignPythonOutfitDetail> tDesignPythonOutfitDetails = designPythonOutfitDetailMapper.selectList(qw);
designItemDetailMapper.insert(designItemDetailOld); for (TDesignPythonOutfitDetail tDesignPythonOutfitDetail : tDesignPythonOutfitDetails) {
Long designItemDetailIdNew = designItemDetailOld.getId(); // Long designPythonOutfitDetailIdOld = tDesignPythonOutfitDetail.getId();
QueryWrapper<DesignItemDetailPrint> designItemDetailPrintQueryWrapper = new QueryWrapper<>(); tDesignPythonOutfitDetail.setId(null);
designItemDetailPrintQueryWrapper.lambda().eq(DesignItemDetailPrint::getDesignItemDetailId, designItemDetailIdOld); tDesignPythonOutfitDetail.setDesignId(design.getId());
List<DesignItemDetailPrint> designItemDetailPrintList = designItemDetailPrintMapper.selectList(designItemDetailPrintQueryWrapper); tDesignPythonOutfitDetail.setDesignPythonOutfitId(designOutfitIdNew);
for (DesignItemDetailPrint designItemDetailPrint : designItemDetailPrintList) { designPythonOutfitDetailMapper.insert(tDesignPythonOutfitDetail);
designItemDetailPrint.setId(null); }
designItemDetailPrint.setDesignItemDetailId(designItemDetailIdNew);
designItemDetailPrintMapper.insert(designItemDetailPrint); Long designItemIdOld = userLike.getDesignItemId();
DesignItem designItemOld = designItemMapper.selectById(designItemIdOld);
designItemOld.setId(null);
designItemOld.setAccountId(authPrincipalVo.getId());
designItemOld.setDesignId(design.getId());
designItemOld.setCollectionId(collectionIdNew);
designItemMapper.insert(designItemOld);
Long designItemIdNew = designItemOld.getId();
designPythonOutfit.setDesignItemId(designItemIdNew);
designPythonOutfitMapper.updateById(designPythonOutfit);
userLike.setDesignItemId(designItemIdNew);
userLike.setId(null);
userLike.setDesignId(design.getId());
userLike.setUserLikeGroupId(userLikeGroupNew.getId());
userLikeMapper.insert(userLike);
QueryWrapper<DesignItemDetail> designItemDetailQueryWrapper = new QueryWrapper<>();
designItemDetailQueryWrapper.lambda().eq(DesignItemDetail::getDesignItemId, designItemIdOld);
List<DesignItemDetail> designItemDetailListOld = designItemDetailMapper.selectList(designItemDetailQueryWrapper);
for (DesignItemDetail designItemDetailOld : designItemDetailListOld) {
Long designItemDetailIdOld = designItemDetailOld.getId();
designItemDetailOld.setId(null);
designItemDetailOld.setAccountId(authPrincipalVo.getId());
designItemDetailOld.setDesignId(design.getId());
designItemDetailOld.setDesignItemId(designItemIdNew);
designItemDetailMapper.insert(designItemDetailOld);
Long designItemDetailIdNew = designItemDetailOld.getId();
QueryWrapper<DesignItemDetailPrint> designItemDetailPrintQueryWrapper = new QueryWrapper<>();
designItemDetailPrintQueryWrapper.lambda().eq(DesignItemDetailPrint::getDesignItemDetailId, designItemDetailIdOld);
List<DesignItemDetailPrint> designItemDetailPrintList = designItemDetailPrintMapper.selectList(designItemDetailPrintQueryWrapper);
for (DesignItemDetailPrint designItemDetailPrint : designItemDetailPrintList) {
designItemDetailPrint.setId(null);
designItemDetailPrint.setDesignItemDetailId(designItemDetailIdNew);
designItemDetailPrintMapper.insert(designItemDetailPrint);
}
} }
} }
} }
// Long collectionId = portfolio.getCollectionId(); // Long collectionId = portfolio.getCollectionId();
// QueryWrapper<Design> getWorkspaceQw = new QueryWrapper<>(); // QueryWrapper<Design> getWorkspaceQw = new QueryWrapper<>();
// getWorkspaceQw.lambda().eq(Design::getCollectionId, collectionId); // getWorkspaceQw.lambda().eq(Design::getCollectionId, collectionId);
@@ -899,10 +922,10 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
// workspaceMapper.updateById(workspaceNew); // workspaceMapper.updateById(workspaceNew);
// } // }
// } // }
Long workspaceIdOld = workspaceService.getByProjectId(projectIdOld); Long workspaceIdOld = workspaceService.getByProjectId(projectId);
Workspace workspaceCopy = workspaceMapper.selectById(workspaceIdOld); Workspace workspaceCopy = workspaceMapper.selectById(workspaceIdOld);
workspaceCopy.setAccountId(authPrincipalVo.getId()); workspaceCopy.setAccountId(authPrincipalVo.getId());
workspaceCopy.setProjectId(project.getId()); workspaceCopy.setProjectId(projectIdNew);
workspaceCopy.setId(null); workspaceCopy.setId(null);
workspaceMapper.insert(workspaceCopy); workspaceMapper.insert(workspaceCopy);