From 21c87184ced55e8a7d0783e7eadfd03a2db9bd88 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 30 Sep 2025 10:10:09 +0800
Subject: [PATCH] fix(goods):修复商品文件上传路径缺少斜杠问题
---
src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java | 112 ++++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 104 insertions(+), 8 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java
index a1f0f5f..3135b2e 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductServiceImpl.java
@@ -1,16 +1,15 @@
package cc.mrbird.febs.ai.service.impl;
-import cc.mrbird.febs.ai.entity.AiProduct;
-import cc.mrbird.febs.ai.entity.AiProductCategory;
+import cc.mrbird.febs.ai.entity.*;
import cc.mrbird.febs.ai.mapper.AiProductMapper;
-import cc.mrbird.febs.ai.service.AiProductCategoryService;
-import cc.mrbird.febs.ai.service.AiProductService;
+import cc.mrbird.febs.ai.req.AdminMoveChooseInfoDto;
+import cc.mrbird.febs.ai.service.*;
import cc.mrbird.febs.ai.util.UUID;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
-import cc.mrbird.febs.mall.entity.ClothesArt;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -39,6 +38,9 @@
private final AiProductMapper aiProductMapper;
private final AiProductCategoryService aiProductCategoryService;
+ private final AiProductPointLinkService aiProductPointLinkService;
+ private final AiProductRoleLinkService aiProductRoleLinkService;
+ private final AiProductQuestionLinkService aiProductQuestionLinkService;
@Override
public AiProduct getById(String id) {
@@ -50,8 +52,11 @@
Page<AiProduct> page = new Page<>(request.getPageNum(), request.getPageSize());
LambdaQueryWrapper<AiProduct> query = Wrappers.lambdaQuery(AiProduct.class);
- if (ObjectUtil.isNotNull(dto.getProductCategoryId())){
+ if (StrUtil.isNotEmpty(dto.getProductCategoryId())){
query.eq(AiProduct::getProductCategoryId, dto.getProductCategoryId());
+ }
+ if (StrUtil.isNotEmpty(dto.getCompanyId())){
+ query.eq(AiProduct::getCompanyId, dto.getCompanyId());
}
query.ne(AiProduct::getState, 2);
query.orderByDesc(AiProduct::getHotState);
@@ -156,7 +161,98 @@
}
@Override
- public List<AiProduct> selectList() {
- return aiProductMapper.selectList( null);
+ public List<AiProduct> selectList(String companyId) {
+ LambdaQueryWrapper<AiProduct> query = Wrappers.lambdaQuery(AiProduct.class);
+ if (StrUtil.isNotEmpty(companyId)){
+ query.eq(AiProduct::getCompanyId, companyId);
+ }
+ query.ne(AiProduct::getState, 2);
+ return aiProductMapper.selectList(query);
+ }
+
+ @Override
+ public FebsResponse productSet(AdminMoveChooseInfoDto dto) {
+
+ String chooseId = dto.getChooseId();
+ List<String> chooseIds = dto.getChooseIds();
+ AiProduct aiProduct = this.getById(chooseId);
+ if (ObjectUtil.isNotNull(aiProduct)) {
+ String companyId = aiProduct.getCompanyId();
+ aiProductPointLinkService.deleteByQuery(
+ Wrappers.lambdaQuery(AiProductPointLink.class)
+ .eq(AiProductPointLink::getProductId,chooseId)
+ .eq(AiProductPointLink::getCompanyId,companyId)
+ );
+ if(CollUtil.isNotEmpty(chooseIds)){
+ Date createdTime = new Date();
+ for (String item : chooseIds){
+ AiProductPointLink entity = new AiProductPointLink();
+ entity.setId(UUID.getSimpleUUIDString());
+ entity.setCompanyId(companyId);
+ entity.setProductId(chooseId);
+ entity.setProductPointId(item);
+ entity.setCreatedTime(createdTime);
+ aiProductPointLinkService.getBaseMapper().insert(entity);
+ }
+ }
+ }
+ return new FebsResponse().success().message("操作成功");
+ }
+
+ @Override
+ public FebsResponse productRoleSet(AdminMoveChooseInfoDto dto) {
+
+ String chooseId = dto.getChooseId();
+ List<String> chooseIds = dto.getChooseIds();
+ AiProduct aiProduct = this.getById(chooseId);
+ if (ObjectUtil.isNotNull(aiProduct)) {
+ String companyId = aiProduct.getCompanyId();
+ aiProductRoleLinkService.deleteByQuery(
+ Wrappers.lambdaQuery(AiProductRoleLink.class)
+ .eq(AiProductRoleLink::getProductId,chooseId)
+ .eq(AiProductRoleLink::getCompanyId,companyId)
+ );
+ if(CollUtil.isNotEmpty(chooseIds)){
+ Date createdTime = new Date();
+ for (String item : chooseIds){
+ AiProductRoleLink entity = new AiProductRoleLink();
+ entity.setId(UUID.getSimpleUUIDString());
+ entity.setCompanyId(companyId);
+ entity.setProductId(chooseId);
+ entity.setProductRoleId(item);
+ entity.setCreatedTime(createdTime);
+ aiProductRoleLinkService.getBaseMapper().insert(entity);
+ }
+ }
+ }
+ return new FebsResponse().success().message("操作成功");
+ }
+
+ @Override
+ public FebsResponse productQuestionSet(AdminMoveChooseInfoDto dto) {
+ String chooseId = dto.getChooseId();
+ List<String> chooseIds = dto.getChooseIds();
+ AiProduct aiProduct = this.getById(chooseId);
+ if (ObjectUtil.isNotNull(aiProduct)) {
+ String companyId = aiProduct.getCompanyId();
+ aiProductQuestionLinkService.deleteByQuery(
+ Wrappers.lambdaQuery(AiProductQuestionLink.class)
+ .eq(AiProductQuestionLink::getProductId,chooseId)
+ .eq(AiProductQuestionLink::getCompanyId,companyId)
+ );
+ if(CollUtil.isNotEmpty(chooseIds)){
+ Date createdTime = new Date();
+ for (String item : chooseIds){
+ AiProductQuestionLink entity = new AiProductQuestionLink();
+ entity.setId(UUID.getSimpleUUIDString());
+ entity.setCompanyId(companyId);
+ entity.setProductId(chooseId);
+ entity.setProductQuestionId(item);
+ entity.setCreatedTime(createdTime);
+ aiProductQuestionLinkService.getBaseMapper().insert(entity);
+ }
+ }
+ }
+ return new FebsResponse().success().message("操作成功");
}
}
--
Gitblit v1.9.1