BUGFIX: 无法二创

This commit is contained in:
2025-09-01 23:13:54 +08:00
parent 179b79812a
commit feca192f53
2 changed files with 89 additions and 22 deletions

View File

@@ -1039,18 +1039,22 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
List<Account> accountList = accountMapper.selectList(queryWrapper);
System.out.println(accountList);
int i = 0;
int size = accountList.size();
for (Account account : accountList) {
i ++;
try {
if (account.getLanguage().equals(Language.CHINESE_SIMPLIFIED.name())) {
log.info("进度:{} / {} CN - {}", i, size, account.getUserEmail());
SendEmailUtil.sendUpgradeNotification(account, null, 0);
} else {
log.info("进度:{} / {} EN - {}", i, size, account.getUserEmail());
// 英文
SendEmailUtil.sendUpgradeNotification(account, null, 1);
}
}catch (Exception e) {
log.info(e.getMessage());
log.error("向 {} 发送邮件失败", account.getUserEmail());
log.error(e.getMessage());
}
i ++;
}
}

View File

@@ -13,6 +13,8 @@ import com.ai.da.mapper.primary.*;
import com.ai.da.mapper.primary.entity.*;
import com.ai.da.mapper.primary.entity.Collection;
import com.ai.da.model.dto.*;
import com.ai.da.model.enums.Position;
import com.ai.da.model.enums.Sex;
import com.ai.da.model.vo.*;
import com.ai.da.service.*;
import com.alibaba.fastjson.JSONObject;
@@ -31,6 +33,7 @@ import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.*;
import java.util.stream.Collectors;
@@ -611,6 +614,7 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
@Transactional(rollbackFor = Exception.class)
public ProjectChooseVO choose(PortfolioDTO portfolioDTO) {
AuthPrincipalVo authPrincipalVo = UserContext.getUserHolder();
Long accountId = authPrincipalVo.getId();
Portfolio portfolio = portfolioMapper.selectById(portfolioDTO.getId());
String snapshot = portfolio.getSnapshot();
@@ -624,11 +628,12 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
project.setCreateTime(LocalDateTime.now());
project.setId(null);
project.setAccountId(authPrincipalVo.getId());
project.setAccountId(accountId);
project.setUpdateTime(LocalDateTime.now());
project.setName(project.getName() + "_copy");
if (portfolio.getOriginal() == 1) {
if (Objects.equals(portfolio.getAccountId(), authPrincipalVo.getId())) {
if (Objects.equals(portfolio.getAccountId(), accountId)) {
project.setOriginal(1);
} else {
project.setOriginal(0);
@@ -645,10 +650,68 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
Long projectIdNew = project.getId();
Workspace workspaceCopy = projectSnapshot.getWorkspace();
workspaceCopy.setAccountId(accountId);
workspaceCopy.setProjectId(projectIdNew);
workspaceCopy.setId(null);
workspaceMapper.insert(workspaceCopy);
Workspace workspace = workspaceService.getCurrentWorkspace();
List<CollectionElement> collectionElementListOld = projectSnapshot.getCollectionElementList();
Long collectionIdNew;
if (collectionElementListOld.isEmpty()){
throw new BusinessException("No elements in collection.");
} else {
Long collectionIdOld = collectionElementListOld.get(0).getCollectionId();
Collection collection = collectionMapper.selectById(collectionIdOld);
if (Objects.nonNull(collection) && Objects.nonNull(collection.getMoodTemplateId())){
CollectionElement moodTemplateElement = collectionElementMapper.selectById(collection.getMoodTemplateId());
if (Objects.nonNull(moodTemplateElement)){
moodTemplateElement.setId(null);
moodTemplateElement.setAccountId(accountId);
moodTemplateElement.setProjectId(projectIdNew);
moodTemplateElement.setCreateDate(new Date());
collectionElementMapper.insert(moodTemplateElement);
collection.setMoodTemplateId(String.valueOf(moodTemplateElement.getId()));
}
}
collection.setId(null);
collection.setAccountId(accountId);
collection.setCreateDate(new Date());
collectionMapper.insert(collection);
collectionIdNew = collection.getId();
}
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);
for (CollectionElement element : collectionElementListOld) {
element.setCollectionId(collectionIdNew);
element.setProjectId(projectIdNew);
element.setId(null);
element.setCreateDate(new Date());
element.setUpdateDate(null);
collectionElementMapper.insert(element);
}
@@ -657,10 +720,11 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
UserLikeGroup userLikeGroupNew = projectSnapshot.getUserLikeGroup();
userLikeGroupNew.setId(null);
userLikeGroupNew.setCollectionId(collectionIdNew);
userLikeGroupNew.setCreateDate(new Date());
userLikeGroupNew.setProjectId(projectIdNew);
if (portfolio.getOriginal() == 1) {
if (Objects.equals(portfolio.getAccountId(), authPrincipalVo.getId())) {
if (Objects.equals(portfolio.getAccountId(), accountId)) {
userLikeGroupNew.setOriginal(1);
} else {
userLikeGroupNew.setOriginal(0);
@@ -672,9 +736,7 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
userLikeGroupNew.setOriginalAccountId(portfolio.getOriginalAccountId());
userLikeGroupNew.setOriginalPortfolioId(portfolio.getId());
}
userLikeGroupNew.setAccountId(authPrincipalVo.getId());
userLikeGroupNew.setCollectionId(null);
userLikeGroupNew.setAccountId(accountId);
userLikeGroupNew.setUpdateDate(new Date());
userLikeGroupMapper.insert(userLikeGroupNew);
@@ -683,9 +745,9 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
for (UserLikeSnapshot userLike : userLikeList) {
Long designOutfitIdOld = userLike.getDesignOutfitId();
TDesignPythonOutfit designPythonOutfit = userLike.getDesignPythonOutfit();
designPythonOutfit.setDesignId(null);
designPythonOutfit.setDesignId(design.getId());
designPythonOutfit.setDesignItemId(-1L);
designPythonOutfit.setCollectionId(null);
designPythonOutfit.setCollectionId(collectionIdNew);
designPythonOutfit.setCreateDate(LocalDateTime.now());
designPythonOutfit.setId(null);
@@ -700,7 +762,8 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
if (CollectionUtil.isNotEmpty(tDesignPythonOutfitDetails)){
for (TDesignPythonOutfitDetail tDesignPythonOutfitDetail : tDesignPythonOutfitDetails) {
tDesignPythonOutfitDetail.setId(null);
tDesignPythonOutfitDetail.setDesignId(null);
tDesignPythonOutfitDetail.setUserId(accountId);
tDesignPythonOutfitDetail.setDesignId(design.getId());
tDesignPythonOutfitDetail.setDesignPythonOutfitId(designOutfitIdNew);
tDesignPythonOutfitDetail.setCreateDate(LocalDateTime.now());
designPythonOutfitDetailMapper.insert(tDesignPythonOutfitDetail);
@@ -709,9 +772,10 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
DesignItem designItemOld = userLike.getDesignItem();
designItemOld.setId(null);
designItemOld.setAccountId(authPrincipalVo.getId());
designItemOld.setDesignId(null);
designItemOld.setCollectionId(null);
designItemOld.setAccountId(accountId);
designItemOld.setDesignId(design.getId());
designItemOld.setCollectionId(collectionIdNew);
designItemOld.setCreateDate(new Date());
designItemMapper.insert(designItemOld);
Long designItemIdNew = designItemOld.getId();
@@ -720,8 +784,9 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
userLike.setDesignItemId(designItemIdNew);
userLike.setId(null);
userLike.setDesignId(null);
userLike.setDesignId(design.getId());
userLike.setUserLikeGroupId(userLikeGroupNew.getId());
userLike.setCreateDate(new Date());
userLikeMapper.insert(userLike);
// 加入collection_sort表
@@ -731,9 +796,10 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
if (CollectionUtil.isNotEmpty(designItemDetailList)) {
for (DesignItemDetailSnapshot designItemDetailOld : designItemDetailList) {
designItemDetailOld.setId(null);
designItemDetailOld.setAccountId(authPrincipalVo.getId());
designItemDetailOld.setDesignId(null);
designItemDetailOld.setAccountId(accountId);
designItemDetailOld.setDesignId(design.getId());
designItemDetailOld.setDesignItemId(designItemIdNew);
designItemDetailOld.setCreateDate(new Date());
designItemDetailMapper.insert(designItemDetailOld);
Long designItemDetailIdNew = designItemDetailOld.getId();
@@ -742,6 +808,7 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
for (DesignItemDetailPrint designItemDetailPrint : designItemDetailPrintList) {
designItemDetailPrint.setId(null);
designItemDetailPrint.setDesignItemDetailId(designItemDetailIdNew);
designItemDetailPrint.setCreateDate(LocalDateTime.now());
designItemDetailPrintMapper.insert(designItemDetailPrint);
}
}
@@ -750,11 +817,7 @@ public class PortfolioServiceImpl extends ServiceImpl<PortfolioMapper, Portfolio
}
}
}
Workspace workspaceCopy = projectSnapshot.getWorkspace();
workspaceCopy.setAccountId(authPrincipalVo.getId());
workspaceCopy.setProjectId(projectIdNew);
workspaceCopy.setId(null);
workspaceMapper.insert(workspaceCopy);
ProjectDTO projectDTO = new ProjectDTO();
projectDTO.setId(project.getId());