Merge branch 'dev-ltx' into dev/3.1_release_merge

# Conflicts:
#	src/main/java/com/ai/da/service/impl/DesignItemServiceImpl.java
This commit is contained in:
litianxiang
2025-12-01 17:10:35 +08:00
176 changed files with 2733 additions and 2810 deletions

View File

@@ -13,9 +13,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpSession;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

View File

@@ -2,7 +2,7 @@ package com.ai.da.service;
import com.ai.da.model.dto.ProductPurchaseDTO;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
import java.util.Map;
public interface AliPayService {

View File

@@ -3,7 +3,7 @@ package com.ai.da.service;
import com.ai.da.model.dto.AlipayHKCallbackDTO;
import com.ai.da.model.dto.ProductPurchaseDTO;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
public interface AlipayHKService {

View File

@@ -13,7 +13,7 @@ import com.ai.da.model.vo.QueryUserConditionsVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

View File

@@ -1,27 +1,12 @@
package com.ai.da.service;
import com.ai.da.common.response.PageBaseResponse;
import com.ai.da.common.response.Response;
import com.ai.da.mapper.primary.entity.Account;
import com.ai.da.mapper.primary.entity.AccountExtend;
import com.ai.da.mapper.primary.entity.ChatMessage;
import com.ai.da.mapper.primary.entity.TrialOrder;
import com.ai.da.model.dto.*;
import com.ai.da.model.vo.AccountLoginVO;
import com.ai.da.model.vo.AccountPreLoginVO;
import com.ai.da.model.vo.BindEmailVO;
import com.ai.da.model.vo.PersonalHomepageVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* 服务类

View File

@@ -8,7 +8,7 @@ import com.ai.da.mapper.primary.entity.OrderInfo;
import com.ai.da.model.dto.QueryPageByTimeDTO;
import com.baomidou.mybatisplus.extension.service.IService;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
import java.util.List;
public interface OrderInfoService extends IService<OrderInfo> {

View File

@@ -4,9 +4,9 @@ import com.ai.da.model.dto.ProductPurchaseDTO;
import com.paypal.http.exceptions.SerializeException;
import com.paypal.orders.Order;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.HashMap;

View File

@@ -9,7 +9,7 @@ import com.ai.da.model.vo.CheckCouponsVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.stripe.exception.StripeException;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

View File

@@ -6,7 +6,7 @@ import com.ai.da.model.dto.TrialOrderDTO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
import java.util.List;
public interface TrialOrderService extends IService<TrialOrder> {

View File

@@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import io.minio.errors.MinioException;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

View File

@@ -9,7 +9,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;

View File

@@ -39,6 +39,7 @@ import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Lazy;
import org.springframework.core.io.ClassPathResource;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -47,11 +48,11 @@ import org.springframework.util.CollectionUtils;
import org.springframework.web.client.RestTemplate;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import jakarta.annotation.Resource;
import jakarta.servlet.ServletOutputStream;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpSession;
import javax.sql.DataSource;
import java.io.IOException;
import java.io.InputStream;
@@ -94,9 +95,6 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
@Resource
private AccountLoginLogService accountLoginLogService;
@Resource
private ConvenientInquiryService convenientInquiryService;
@Resource
private LibraryService libraryService;
@@ -115,9 +113,6 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
@Resource
private QuestionnaireMapper questionnaireMapper;
@Resource
private CreditsService creditsService;
@Resource
private MinioUtil minioUtil;
@@ -137,12 +132,6 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
@Resource
private RedisUtil redisUtil;
@Resource
private StripeService stripeService;
@Resource
private AffiliateService affiliateService;
@Resource
private UserFollowService userFollowService;
@@ -201,9 +190,6 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
return new AccountPreLoginVO(account.getId());
}
@Resource
private PortfolioService portfolioService;
@Transactional(rollbackFor = Exception.class)
@Override
public AccountLoginVO login(AccountLoginDTO accountLoginDTO, HttpServletRequest request) {
@@ -1634,6 +1620,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
log.warn("当前用户 {} 在AiDA中没有账号", email);
throw new BusinessException("user.has.no.account", ResultEnum.PROMPT.getCode());
}
CreditsService creditsService = SpringUtils.getBean(CreditsService.class);
// 2、先判断当前用户是否已经填写过问卷
CreditsDetail record = creditsService.getByAccountIdAndChangeEvent(account.getId(), "Fill out the questionnaire", "+100");
if (!Objects.isNull(record)) {
@@ -2052,7 +2039,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
String avatar = StringUtil.isNullOrEmpty(account.getAvatar()) ? CommonConstant.DEFAULT_AVATAR : account.getAvatar();
personalHomepageVO.setAvatar(minioUtil.getPreSignedUrl(avatar, CommonConstant.MINIO_IMAGE_EXPIRE_TIME));
personalHomepageVO.setPortfolioCount(portfolioService.getPortfolioCount(accountId));
personalHomepageVO.setPortfolioCount(SpringUtils.getBean(PortfolioService.class).getPortfolioCount(accountId));
personalHomepageVO.setFolloweeCount(userFollowService.getFolloweeCount(accountId));
personalHomepageVO.setFollowerCount(userFollowService.getFollowerCount(accountId));
personalHomepageVO.setHomepageViewCount(viewPersonalHomepageCount(0L));
@@ -3142,7 +3129,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
response.setAccountExtendList(accountExtends);
}
response.setLanguage(Language.valueOf(account.getLanguage()).name());
SubscriptionInfo subscriptionInfo = stripeService.getLatestSubscriptionInfoByAccountId(accountId);
SubscriptionInfo subscriptionInfo = SpringUtils.getBean(StripeService.class).getLatestSubscriptionInfoByAccountId(accountId);
if (!Objects.isNull(subscriptionInfo)) {
response.setSubscriptionId(subscriptionInfo.getSubscriptionId());
response.setSubscriptionType(subscriptionInfo.getType());
@@ -3151,7 +3138,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
response.setAutoRenewal(subscriptionInfo.getStatus().equals("active"));
}
Affiliate affiliate = affiliateService.getByAccountId(accountId);
Affiliate affiliate = SpringUtils.getBean(AffiliateService.class).getByAccountId(accountId);
if (!Objects.isNull(affiliate) && affiliate.getStatus().equals("Active")) {
response.setAffiliate(true);
}
@@ -3371,6 +3358,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
}
accountMapper.updateById(account);
CreditsService creditsService = SpringUtils.getBean(CreditsService.class);
// 先判断是否已添加添加积分变更记录
CreditsDetail creditsDetail = creditsService.queryDetailByTaskId(orderNo);
if (Objects.isNull(creditsDetail)) {
@@ -3663,14 +3651,19 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
// todo 机构管理员再次订阅时,需要同步机构的激活状态
private void setOrganizationStatus(Account adminAcc, boolean isActive) {
Organization organization;
ConvenientInquiryService convenientInquiryService = null;
if (Objects.nonNull(adminAcc.getOrganizationId())) {
organization = organizationMapper.selectById(adminAcc.getOrganizationId());
} else if (!StringUtil.isNullOrEmpty(adminAcc.getOrganizationName())) {
convenientInquiryService = SpringUtils.getBean(ConvenientInquiryService.class);
organization = convenientInquiryService.checkOrganization(adminAcc.getSystemUser(), adminAcc.getOrganizationName());
} else {
return;
}
if (Objects.isNull(organization)) {
if (Objects.isNull(convenientInquiryService)) {
convenientInquiryService = SpringUtils.getBean(ConvenientInquiryService.class);
}
organization = convenientInquiryService.addOrganization(adminAcc.getOrganizationName(), getOrganizationTypeByRole(adminAcc.getSystemUser()));
}
if (isActive) {

View File

@@ -26,10 +26,11 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mysql.cj.util.StringUtils;
import io.netty.util.internal.StringUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDateTime;
@@ -54,8 +55,6 @@ public class AffiliateServiceImpl extends ServiceImpl<AffiliateMapper, Affiliate
@Resource
private SubscriptionInfoMapper subscriptionInfoMapper;
@Resource
private ReferralService referralService;
@Resource
private ReferralMapper referralMapper;
@Resource
private StripeService stripeService;
@@ -337,7 +336,7 @@ public class AffiliateServiceImpl extends ServiceImpl<AffiliateMapper, Affiliate
referral.setCommissionPercent(affiliate.getCommissionPercent());
referral.setStatus("Pending");
referral.setCreateTime(LocalDateTime.now());
int insert = referralService.getBaseMapper().insert(referral);
int insert = referralMapper.insert(referral);
log.info("向Referral中插入 {} 条数据", insert);
}
}

View File

@@ -23,8 +23,8 @@ import org.springframework.core.env.Environment;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Map;

View File

@@ -20,8 +20,8 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletRequest;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.HashMap;

View File

@@ -9,7 +9,6 @@ import com.ai.da.common.enums.LibraryLevel1TypeEnum;
import com.ai.da.common.utils.CopyUtil;
import com.ai.da.common.utils.MD5Utils;
import com.ai.da.common.utils.MinioUtil;
import com.ai.da.common.utils.S3Util;
import com.ai.da.mapper.primary.AccountMapper;
import com.ai.da.mapper.primary.LibraryMapper;
import com.ai.da.mapper.primary.entity.Account;
@@ -39,7 +38,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.web.client.RestTemplate;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;

View File

@@ -13,8 +13,6 @@ import com.ai.da.mapper.primary.ClassificationRelLibraryMapper;
import com.ai.da.mapper.primary.entity.Classification;
import com.ai.da.mapper.primary.entity.ClassificationRelLibrary;
import com.ai.da.model.dto.ClassificationDTO;
import com.ai.da.model.enums.DesignElementsEnum;
import com.ai.da.model.enums.Language;
import com.ai.da.model.vo.AuthPrincipalVo;
import com.ai.da.model.vo.ClassificationVO;
import com.ai.da.service.ClassificationService;
@@ -23,7 +21,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

View File

@@ -1,18 +1,16 @@
package com.ai.da.service.impl;
import com.ai.da.mapper.primary.AccountMapper;
import com.ai.da.mapper.primary.CloudTaskMapper;
import com.ai.da.mapper.primary.entity.Account;
import com.ai.da.mapper.primary.entity.CloudTask;
import com.ai.da.service.ClassificationService;
import com.ai.da.service.CloudTaskService;
import com.ai.da.service.CreditsService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.time.LocalDateTime;
@Slf4j

View File

@@ -41,7 +41,7 @@ import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.io.File;
import java.math.BigDecimal;
import java.time.LocalDateTime;

View File

@@ -30,7 +30,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

View File

@@ -7,7 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.util.List;
@Service

View File

@@ -33,11 +33,12 @@ import io.netty.util.internal.StringUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.xssf.usermodel.*;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletResponse;
import java.io.*;
import java.math.BigDecimal;
import java.math.RoundingMode;

View File

@@ -22,10 +22,11 @@ import io.netty.util.internal.StringUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.context.annotation.Lazy;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDateTime;

View File

@@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.util.*;
/**

View File

@@ -13,7 +13,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;

View File

@@ -37,7 +37,7 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.io.File;
import java.io.IOException;
import java.net.URI;

View File

@@ -39,7 +39,6 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import javax.annotation.Resource;
import java.io.File;
import java.io.IOException;
import java.math.BigDecimal;

View File

@@ -7,24 +7,25 @@ import com.ai.da.common.response.ResultEnum;
import com.ai.da.common.utils.DateUtil;
import com.ai.da.common.utils.MailUtil;
import com.ai.da.common.utils.RedisUtil;
import com.ai.da.mapper.primary.AccountMapper;
import com.ai.da.mapper.primary.EmailLogMapper;
import com.ai.da.mapper.primary.EmailTemplateMapper;
import com.ai.da.mapper.primary.entity.*;
import com.ai.da.model.dto.AffiliateEmailParamsDTO;
import com.ai.da.model.dto.BasicEmailParamDTO;
import com.ai.da.model.dto.SubscriptionEmailParamsDTO;
import com.ai.da.service.AccountService;
import com.ai.da.service.EmailService;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Lazy;
import org.springframework.core.io.InputStreamSource;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.mail.MessagingException;
import javax.mail.internet.AddressException;
import jakarta.annotation.Resource;
import jakarta.mail.MessagingException;
import jakarta.mail.internet.AddressException;
import java.io.*;
import java.net.URL;
import java.nio.charset.StandardCharsets;
@@ -46,7 +47,7 @@ public class EmailServiceImpl implements EmailService {
@Resource
private EmailLogMapper emailLogMapper;
@Resource
private AccountService accountService;
private AccountMapper accountMapper;
@Resource
private RedisUtil redisUtil;
@Resource
@@ -161,7 +162,7 @@ public class EmailServiceImpl implements EmailService {
public void sendEmail(List<String> mailTo, JSONObject jsonObject, String templateName, String title, String fileName, InputStreamSource inputStreamSource) {
if (mailTo.size() == 1){
String receiver = mailTo.get(0);
Account account = accountService.getBaseMapper().selectOne(new QueryWrapper<Account>().eq("user_email", receiver));
Account account = accountMapper.selectOne(new QueryWrapper<Account>().eq("user_email", receiver));
if (Objects.nonNull(account)){
boolean b = redisUtil.allowSend(account.getId());
if (!b){throw new BusinessException("email.count.limit", ResultEnum.PROMPT.getCode());}

View File

@@ -62,7 +62,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.*;
@@ -89,7 +89,6 @@ import static com.ai.da.common.enums.WangXiangTaskStatusEnum.UNKNOWN_W;
@RequiredArgsConstructor
public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> implements GenerateService {
private final AccountService accountService;
private final APIGenerateService apiGenerateService;
private final CollectionElementMapper collectionElementMapper;
private final CollectionElementService collectionElementService;
@@ -828,7 +827,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
if (finishMessage != null && finishMessage.contains("Try rephrasing the prompt")) {
finishMessage = "Try rephrasing the prompt or modifying the model image. If you think this was an error, send feedback.";
LambdaQueryWrapper<Account> select = new LambdaQueryWrapper<Account>().eq(Account::getId, userId).select(Account::getLanguage);
Account account = accountService.getOne(select);
Account account = getAccountService().getOne(select);
if ("CHINESE_SIMPLIFIED".equals(account.getLanguage())) {
finishMessage = "请尝试重新表述提示词,或修改模特图。若您认为这是误判,可提交反馈。";
}
@@ -1096,7 +1095,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
if (finishMessage != null && finishMessage.contains("Try rephrasing the prompt")) {
finishMessage = "Try rephrasing the prompt or replacing the image. If you think this was an error, send feedback.";
LambdaQueryWrapper<Account> select = new LambdaQueryWrapper<Account>().eq(Account::getId, userId).select(Account::getLanguage);
Account account = accountService.getOne(select);
Account account = getAccountService().getOne(select);
if ("CHINESE_SIMPLIFIED".equals(account.getLanguage())) {
finishMessage = "请尝试重新表述提示词,或更换图片。若您认为这是误判,可提交反馈。";
}
@@ -1117,7 +1116,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
if (raiFilteredReason != null && raiFilteredReason.contains("Try rephrasing the prompt")) {
raiFilteredReason = "Input data may contain inappropriate content.";
LambdaQueryWrapper<Account> select = new LambdaQueryWrapper<Account>().eq(Account::getId, userId).select(Account::getLanguage);
Account account = accountService.getOne(select);
Account account = getAccountService().getOne(select);
if ("CHINESE_SIMPLIFIED".equals(account.getLanguage())) {
raiFilteredReason = "输入数据可能包含不当内容。";
}
@@ -1381,7 +1380,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
exceptionMessage = jsonObj.getStr("message");
if ("Input data may contain inappropriate content.".equals(exceptionMessage)) {
LambdaQueryWrapper<Account> select = new LambdaQueryWrapper<Account>().eq(Account::getId, userId).select(Account::getLanguage);
Account account = accountService.getOne(select);
Account account = getAccountService().getOne(select);
if ("CHINESE_SIMPLIFIED".equals(account.getLanguage())) {
exceptionMessage = "输入数据可能包含不当内容。";
}
@@ -1478,7 +1477,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
} catch (Exception e) {
log.error("Doubao image generation failed for taskId: {}", taskId, e);
LambdaQueryWrapper<Account> select = new LambdaQueryWrapper<Account>().eq(Account::getId, userId).select(Account::getLanguage);
Account account = accountService.getOne(select);
Account account = getAccountService().getOne(select);
// 根据用户语言设置默认错误信息
String errorMessage = "图像生成失败,请稍后重试"; // 默认中文
@@ -2204,7 +2203,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
}
public void doCreditsSubtract(Long accountId, CreditsEventsEnum event) {
Account account = accountService.getById(accountId);
Account account = getAccountService().getById(accountId);
BigDecimal existingCredits = account.getCredits();
BigDecimal subtract = existingCredits.subtract(new BigDecimal(event.getValue()));
BigDecimal creditsUsage = null;
@@ -2212,10 +2211,14 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
creditsUsage = Objects.isNull(account.getCreditsUsage()) ? BigDecimal.ZERO : account.getCreditsUsage();
creditsUsage = creditsUsage.add(new BigDecimal(event.getValue()));
}
accountService.updateCreditsAndEndTime(account, subtract.toString(), null, creditsUsage);
getAccountService().updateCreditsAndEndTime(account, subtract.toString(), null, creditsUsage);
creditsService.preInsert(accountId, event.getName(), null, Boolean.FALSE, event.getValue());
}
private AccountService getAccountService() {
return SpringUtils.getBean(AccountService.class);
}
// 注入线程池(可在配置类中定义)
@Resource
private Executor asyncTaskExecutor;

View File

@@ -35,7 +35,7 @@ import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;

File diff suppressed because it is too large Load Diff

View File

@@ -25,8 +25,8 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletRequest;
import java.time.Duration;
import java.time.Instant;
import java.time.LocalDateTime;

View File

@@ -19,7 +19,7 @@ import com.google.common.collect.Maps;
import io.netty.util.internal.StringUtil;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
@@ -30,8 +30,6 @@ public class PanToneServiceImpl extends ServiceImpl<PanToneMapper, PanTone> impl
@Resource
private PanToneMapper panToneMapper;
@Resource
private PanToneService panToneService;
@Resource
private ColorLoopUpTableService colorLoopUpTableService;
@Override
@@ -139,7 +137,7 @@ public class PanToneServiceImpl extends ServiceImpl<PanToneMapper, PanTone> impl
// 3. 查询 Pantone 数据
Set<Integer> colorIndexes = colorIndexRgb.keySet();
List<PanTone> panTones = panToneService.listByIds(colorIndexes);
List<PanTone> panTones = this.listByIds(colorIndexes);
// 4. 将 PanTone 转换为 PantoneVO并处理缺失的 Pantone 数据
Map<Integer, PantoneVO> pantoneVOMap = new HashMap<>();

View File

@@ -27,15 +27,16 @@ import com.paypal.payments.CapturesRefundRequest;
import com.paypal.payments.RefundRequest;
import com.paypal.payments.RefundsGetRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Lazy;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.annotation.Resource;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;

View File

@@ -3,6 +3,7 @@ package com.ai.da.service.impl;
import com.ai.da.common.context.UserContext;
import com.ai.da.common.enums.PayTypeEnum;
import com.ai.da.common.response.PageBaseResponse;
import com.ai.da.common.utils.SpringUtils;
import com.ai.da.mapper.primary.PaymentInfoMapper;
import com.ai.da.mapper.primary.entity.OrderInfo;
import com.ai.da.mapper.primary.entity.PaymentInfo;
@@ -25,12 +26,13 @@ import com.stripe.model.Subscription;
import com.stripe.model.checkout.Session;
import io.netty.util.internal.StringUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Lazy;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDateTime;
@@ -44,9 +46,6 @@ import java.util.Objects;
@Slf4j
public class PaymentInfoServiceImpl extends ServiceImpl<PaymentInfoMapper, PaymentInfo> implements PaymentInfoService {
@Resource
private StripeService stripeService;
@Resource
private OrderInfoService orderInfoService;
@@ -228,6 +227,7 @@ public class PaymentInfoServiceImpl extends ServiceImpl<PaymentInfoMapper, Payme
@Transactional(rollbackFor = Exception.class)
public PaymentInfo createOrUpdatePaymentInfoForStripe(Invoice invoice){
Stripe.apiKey = privateKey;
StripeService stripeService = SpringUtils.getBean(StripeService.class);
// 获取transactionId,从sessionId更改为invoiceId
String invoiceId = invoice.getId();

View File

@@ -38,7 +38,7 @@ import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.*;

View File

@@ -24,7 +24,7 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;

View File

@@ -14,7 +14,7 @@ import org.springframework.dao.DuplicateKeyException;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.time.LocalDateTime;
import java.util.*;
import java.util.stream.Collectors;

View File

@@ -14,7 +14,7 @@ import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;

View File

@@ -13,7 +13,7 @@ import okhttp3.Request;
import okhttp3.Response;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.util.Objects;

View File

@@ -18,7 +18,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.YearMonth;

View File

@@ -15,7 +15,7 @@ import com.stripe.model.Refund;
import io.netty.util.internal.StringUtil;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.time.Duration;
import java.time.Instant;
import java.time.LocalDateTime;

View File

@@ -37,12 +37,13 @@ import com.stripe.param.*;
import com.stripe.param.checkout.SessionCreateParams;
import io.netty.util.internal.StringUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Lazy;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.Instant;

View File

@@ -6,6 +6,7 @@ import com.ai.da.common.context.UserContext;
import com.ai.da.common.enums.CreditsEventsEnum;
import com.ai.da.common.response.PageBaseResponse;
import com.ai.da.common.utils.RedisUtil;
import com.ai.da.common.utils.SpringUtils;
import com.ai.da.mapper.primary.TaskListMapper;
import com.ai.da.mapper.primary.entity.TaskList;
import com.ai.da.model.dto.QueryTaskHistoryDTO;
@@ -28,7 +29,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
@@ -48,9 +49,6 @@ public class SuperResolutionServiceImpl extends ServiceImpl<TaskListMapper, Task
@Resource
private PythonService pythonService;
@Resource
private TaskListService taskListService;
@Resource
private RedisUtil redisUtil;
@@ -114,7 +112,7 @@ public class SuperResolutionServiceImpl extends ServiceImpl<TaskListMapper, Task
// 6、加入任务列表 设置状态为 等待中
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String name = superResolutionDTO.getImages();
taskListService.addToTaskListRedis(new TaskDTO<>(uuid, "SR", name.substring(name.lastIndexOf("/") + 1), superResolutionDTO, "Waiting", LocalDateTime.now().format(dateTimeFormatter)));
SpringUtils.getBean(TaskListService.class).addToTaskListRedis(new TaskDTO<>(uuid, "SR", name.substring(name.lastIndexOf("/") + 1), superResolutionDTO, "Waiting", LocalDateTime.now().format(dateTimeFormatter)));
// 7、将消息发布到MQ消息队列
log.info("发送消息到SR_QUEUE参数 {}", jsonString);

View File

@@ -26,7 +26,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

View File

@@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.util.List;
import java.util.stream.Collectors;

View File

@@ -16,7 +16,7 @@ import io.netty.util.internal.StringUtil;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@@ -57,15 +57,15 @@ public class TDesignPythonOutfitDetailServiceImpl extends ServiceImpl<TDesignPyt
}
DesignPythonOutfitVO designPythonOutfitVO = CopyUtil.copyObject(detail, DesignPythonOutfitVO.class);
designPythonOutfitVO.setPosition(StringUtil.isNullOrEmpty(detail.getPosition()) ? null : (List<Long>) JSON.parse(detail.getPosition()));
designPythonOutfitVO.setImageSize(StringUtil.isNullOrEmpty(detail.getImageSize()) ? null : (List<Long>) JSON.parse(detail.getImageSize()));
designPythonOutfitVO.setPosition(parseLongList(detail.getPosition()));
designPythonOutfitVO.setImageSize(parseLongList(detail.getImageSize()));
designPythonOutfitVO.setImageUrl(StringUtil.isNullOrEmpty(detail.getImageUrl()) ? null : minioUtil.getPreSignedUrl(detail.getImageUrl(), 24 * 60));
designPythonOutfitVO.setImageMinioUrl(StringUtil.isNullOrEmpty(detail.getImageUrl()) ? null : detail.getImageUrl());
designPythonOutfitVO.setMaskUrl(StringUtil.isNullOrEmpty(detail.getMaskUrl()) ? null : minioUtil.getPreSignedUrl(detail.getMaskUrl(), 24 * 60));
designPythonOutfitVO.setMaskMinioUrl(StringUtil.isNullOrEmpty(detail.getMaskUrl()) ? null : detail.getMaskUrl());
// designPythonOutfitVO.setScale(Float.parseFloat(detail.getScale()));
designPythonOutfitVO.setScale(modifyScale(detail.getScale()));
designPythonOutfitVO.setOffset(StringUtil.isNullOrEmpty(detail.getOffset()) ? Arrays.asList(0L, 0L) : (List<Long>) JSON.parse(detail.getOffset()));
designPythonOutfitVO.setOffset(StringUtil.isNullOrEmpty(detail.getOffset()) ? Arrays.asList(0L, 0L) : parseLongList(detail.getOffset()));
designPythonOutfitVO.setPriority(Math.abs(detail.getPriority()));
// designPythonOutfitVO.setOffset(CollectionUtil.isEmpty(offset) ? Arrays.asList(0L, 0L) : offset);
@@ -107,6 +107,16 @@ public class TDesignPythonOutfitDetailServiceImpl extends ServiceImpl<TDesignPyt
return scaleFloat;
}
/**
* fastjson 默认把整型反序列化成 Integer这里统一转成 Long 避免 toJSONString ClassCast 异常。
*/
private List<Long> parseLongList(String raw) {
if (StringUtil.isNullOrEmpty(raw)) {
return null;
}
return JSON.parseArray(raw, Long.class);
}
@Override
public void deleteByDesignPythonOutfitIdLogical(Long designPythonOutfitId) {
UpdateWrapper<TDesignPythonOutfitDetail> updateWrapper = new UpdateWrapper<>();

View File

@@ -20,10 +20,11 @@ import io.netty.util.internal.StringUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.lang.reflect.Type;
import java.time.format.DateTimeFormatter;
import java.util.*;

View File

@@ -7,6 +7,7 @@ import com.ai.da.common.response.ResultEnum;
import com.ai.da.common.utils.CopyUtil;
import com.ai.da.common.utils.RequestInfoUtil;
import com.ai.da.common.utils.SendEmailUtil;
import com.ai.da.common.utils.SpringUtils;
import com.ai.da.mapper.primary.AccountMapper;
import com.ai.da.mapper.primary.TrialOrderMapper;
import com.ai.da.mapper.primary.entity.Account;
@@ -24,10 +25,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.time.*;
import java.time.temporal.ChronoUnit;
@@ -41,8 +43,6 @@ public class TrialOrderServiceImpl extends ServiceImpl<TrialOrderMapper, TrialOr
private AccountMapper accountMapper;
@Resource
private LibraryService libraryService;
@Resource
private UserLikeGroupService userLikeGroupService;
@Override
public Boolean addTrialUser(AccountTrialDTO accountTrialDTO, HttpServletRequest request) {
@@ -235,7 +235,7 @@ public class TrialOrderServiceImpl extends ServiceImpl<TrialOrderMapper, TrialOr
throw new BusinessException("用户为正式用户");
}
libraryService.deleteTrialData(userInfo.getId());
userLikeGroupService.deleteTrialData(userInfo.getId());
SpringUtils.getBean(UserLikeGroupService.class).deleteTrialData(userInfo.getId());
return Boolean.TRUE;
}
}

View File

@@ -50,8 +50,8 @@ import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletResponse;
import java.io.*;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
@@ -72,7 +72,7 @@ import java.util.stream.Collectors;
@RequiredArgsConstructor
public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, UserLikeGroup> implements UserLikeGroupService {
private final UserLikeGroupMapper userLikeGroupMapper;
private final AccountService accountService;
private final AccountMapper accountMapper;
private final CollectionService collectionService;
private final UserLikeService userLikeService;
private final WorkspaceService workspaceService;
@@ -1963,7 +1963,7 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
.collect(Collectors.groupingBy(UserLikeVO::getUserLikeGroupId));
}
Account account = accountService.getById(authPrincipalVo.getId());
Account account = accountMapper.selectById(authPrincipalVo.getId());
Map<Long, List<UserLikeVO>> finalGroupDetailMap = groupDetailMap;
IPage<ProjectVO> convert = page.convert((Function<Project, ProjectVO>) project -> {
if (project != null) {
@@ -1991,7 +1991,7 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
userLikeGroupVO.setSketchCount(0);
}
if (userLikeGroupVO.getOriginal() == 0) {
userLikeGroupVO.setOriginalAccountName(accountService.getById(userLikeGroupVO.getOriginalAccountId()).getUserName());
userLikeGroupVO.setOriginalAccountName(accountMapper.selectById(userLikeGroupVO.getOriginalAccountId()).getUserName());
Portfolio byId = portfolioMapper.getByIdAll(userLikeGroupVO.getOriginalPortfolioId());
if (Objects.nonNull(byId)) {
String portfolioName = byId.getPortfolioName();

View File

@@ -35,9 +35,8 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Paths;
@@ -91,8 +90,6 @@ public class WorkspaceServiceImpl extends ServiceImpl<WorkspaceMapper, Workspace
@Resource
private SysFileService sysFileService;
@Resource
private WorkspaceService workspaceService;
@Resource
private CollectionElementMapper collectionElementMapper;
@@ -516,7 +513,7 @@ public class WorkspaceServiceImpl extends ServiceImpl<WorkspaceMapper, Workspace
boolean b = minioUtil.doesObjectExist(bucketName, uploadMinioPath);
if (!b) {
FileItem a = getMultipartFile(file, file.getName());
MultipartFile multipartFile = new CommonsMultipartFile(a);
MultipartFile multipartFile = FileUtil.fileItemToMultipartFile(a);
minioUtil.upload(bucketName, uploadMinioPath, multipartFile, "");
}
sysFile.setUrl(bucketName + "/" + uploadMinioPath);
@@ -548,7 +545,7 @@ public class WorkspaceServiceImpl extends ServiceImpl<WorkspaceMapper, Workspace
boolean b = minioUtil.doesObjectExist(bucketName, sb.toString());
if (!b) {
FileItem a = getMultipartFile(file, file.getName());
MultipartFile multipartFile = new CommonsMultipartFile(a);
MultipartFile multipartFile = FileUtil.fileItemToMultipartFile(a);
minioUtil.upload(bucketName, sb.toString(), multipartFile, "");
}
o.setUrl(bucketName + "/" + sb);
@@ -711,7 +708,7 @@ public class WorkspaceServiceImpl extends ServiceImpl<WorkspaceMapper, Workspace
sysFile.setId(null);
sysFileMapper.insert(sysFile);
FileItem a = getMultipartFile(pngFile, fileName);
MultipartFile multipartFile = new CommonsMultipartFile(a);
MultipartFile multipartFile = FileUtil.fileItemToMultipartFile(a);
minioUtil.upload(url.substring(0, 14), url.substring(15), multipartFile, "");
System.out.println("上传成功url:" + url);
if (absolutePath.contains("unisex")) {
@@ -777,7 +774,7 @@ public class WorkspaceServiceImpl extends ServiceImpl<WorkspaceMapper, Workspace
// minioUtil.upload(bucketName, uploadMinioPath, multipartFile, "");
// }
FileItem a = getMultipartFile(pngFile, fileName);
MultipartFile multipartFile = new CommonsMultipartFile(a);
MultipartFile multipartFile = FileUtil.fileItemToMultipartFile(a);
minioUtil.upload(url.substring(0, 14), url.substring(15), multipartFile, "");
sysFile.setCreateDate(new Date());
sysFileMapper.insert(sysFile);
@@ -915,8 +912,8 @@ public class WorkspaceServiceImpl extends ServiceImpl<WorkspaceMapper, Workspace
workspaceRelStyleMapper.deleteBatchIds(workspaceRelStyles);
}
}
Long workspaceId = workspaceService.getByProjectId(projectId);
WorkspaceVO byIdForProject = workspaceService.getByIdForProject(workspaceId);
Long workspaceId = this.getByProjectId(projectId);
WorkspaceVO byIdForProject = this.getByIdForProject(workspaceId);
vo.setWorkspaceVO(byIdForProject);
}
vo.setId(projectId);
@@ -977,7 +974,7 @@ public class WorkspaceServiceImpl extends ServiceImpl<WorkspaceMapper, Workspace
rel.setStyleId(projectDTO.getStyleId());
workspaceRelStyleMapper.insert(rel);
}
WorkspaceVO byIdForProject = workspaceService.getByIdForProject(workspace.getId());
WorkspaceVO byIdForProject = this.getByIdForProject(workspace.getId());
vo.setWorkspaceVO(byIdForProject);
}
vo.setId(project.getId());