diff --git a/src/main/java/com/mixi/service/PythonService.java b/src/main/java/com/mixi/service/PythonService.java index 2b4e014..745293e 100644 --- a/src/main/java/com/mixi/service/PythonService.java +++ b/src/main/java/com/mixi/service/PythonService.java @@ -12,6 +12,7 @@ import com.mixi.common.config.FileProperties; import com.mixi.common.config.exception.BusinessException; import com.mixi.common.utils.AccessLimitUtils; import com.mixi.mapper.TProductMapper; +import com.mixi.mapper.entity.QeFilling; import com.mixi.mapper.entity.TProduct; import com.mixi.model.dto.AIRecommendDTO; import com.mixi.model.dto.GenerateCollocationDataBaseDTO; @@ -568,7 +569,7 @@ public class PythonService { return productList; } - public JSONObject getAIRecommend(AIRecommendDTO aiRecommendDTO) { + public JSONObject getAIRecommend(QeFilling qeFilling) { //限流校验 // AccessLimitUtils.validate("similarityMatch", 20); OkHttpClient client = new OkHttpClient().newBuilder() @@ -579,9 +580,16 @@ public class PythonService { .build(); MediaType mediaType = MediaType.parse("application/json"); Map content = Maps.newHashMap(); - content.put("input_message", "recommend four outfits"); - content.put("user_id", aiRecommendDTO.getUserId()); - content.put("image_urls", ""); + content.put("user_id", qeFilling.getPhoneNum()); + content.put("type", qeFilling.getType()); + content.put("q1", qeFilling.getQ1()); + content.put("q2", qeFilling.getQ2()); + content.put("q3", qeFilling.getQ3()); + content.put("q4", qeFilling.getQ4()); + content.put("q5", qeFilling.getQ5()); + content.put("q6", qeFilling.getQ6()); + content.put("q7", qeFilling.getQ7()); + content.put("q8", qeFilling.getQ8()); RequestBody body = RequestBody.create(mediaType, JSON.toJSONString(content)); Request request = new Request.Builder() diff --git a/src/main/java/com/mixi/service/TAppProductService.java b/src/main/java/com/mixi/service/TAppProductService.java index c5ce67d..d7b276e 100644 --- a/src/main/java/com/mixi/service/TAppProductService.java +++ b/src/main/java/com/mixi/service/TAppProductService.java @@ -2,6 +2,7 @@ package com.mixi.service; import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -744,8 +745,15 @@ public class TAppProductService extends ServiceImpl { // 创建推荐对象 OutfitRecommendation recommendation = new OutfitRecommendation(); + LambdaQueryWrapper qeFillingLambdaQueryWrapper = new LambdaQueryWrapper<>(); + qeFillingLambdaQueryWrapper.eq(QeFilling::getPhoneNum, aiRecommendDTO.getUserId()); + List qeFillings = qeFillingMapper.selectList(qeFillingLambdaQueryWrapper); + + if (CollectionUtils.isEmpty(qeFillings)) { + throw new BusinessException("Phone number not found"); + } // 调用ai推荐模型 - JSONObject jsonObject = pythonService.getAIRecommend(aiRecommendDTO); + JSONObject jsonObject = pythonService.getAIRecommend(qeFillings.get(0)); // 检查jsonObject是否为null if (jsonObject == null) { diff --git a/src/main/java/com/mixi/service/TProductService.java b/src/main/java/com/mixi/service/TProductService.java index 1d5c096..b50f14b 100644 --- a/src/main/java/com/mixi/service/TProductService.java +++ b/src/main/java/com/mixi/service/TProductService.java @@ -11,6 +11,7 @@ import com.alibaba.excel.write.metadata.WriteSheet; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSON; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -721,6 +722,9 @@ public class TProductService extends ServiceImpl { tProductAttributeService.deleteByProductId(deleteDTO.getId()); //删除商品主体 tProductMapper.deleteById(deleteDTO.getId()); + LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); + qw.eq(MiTuProduct::getProductId, deleteDTO.getId()); + miTuProductMapper.delete(qw); return Boolean.TRUE; }