TASK:mixi;
This commit is contained in:
@@ -12,6 +12,7 @@ import com.mixi.common.config.FileProperties;
|
|||||||
import com.mixi.common.config.exception.BusinessException;
|
import com.mixi.common.config.exception.BusinessException;
|
||||||
import com.mixi.common.utils.AccessLimitUtils;
|
import com.mixi.common.utils.AccessLimitUtils;
|
||||||
import com.mixi.mapper.TProductMapper;
|
import com.mixi.mapper.TProductMapper;
|
||||||
|
import com.mixi.mapper.entity.QeFilling;
|
||||||
import com.mixi.mapper.entity.TProduct;
|
import com.mixi.mapper.entity.TProduct;
|
||||||
import com.mixi.model.dto.AIRecommendDTO;
|
import com.mixi.model.dto.AIRecommendDTO;
|
||||||
import com.mixi.model.dto.GenerateCollocationDataBaseDTO;
|
import com.mixi.model.dto.GenerateCollocationDataBaseDTO;
|
||||||
@@ -568,7 +569,7 @@ public class PythonService {
|
|||||||
return productList;
|
return productList;
|
||||||
}
|
}
|
||||||
|
|
||||||
public JSONObject getAIRecommend(AIRecommendDTO aiRecommendDTO) {
|
public JSONObject getAIRecommend(QeFilling qeFilling) {
|
||||||
//限流校验
|
//限流校验
|
||||||
// AccessLimitUtils.validate("similarityMatch", 20);
|
// AccessLimitUtils.validate("similarityMatch", 20);
|
||||||
OkHttpClient client = new OkHttpClient().newBuilder()
|
OkHttpClient client = new OkHttpClient().newBuilder()
|
||||||
@@ -579,9 +580,16 @@ public class PythonService {
|
|||||||
.build();
|
.build();
|
||||||
MediaType mediaType = MediaType.parse("application/json");
|
MediaType mediaType = MediaType.parse("application/json");
|
||||||
Map<String, Object> content = Maps.newHashMap();
|
Map<String, Object> content = Maps.newHashMap();
|
||||||
content.put("input_message", "recommend four outfits");
|
content.put("user_id", qeFilling.getPhoneNum());
|
||||||
content.put("user_id", aiRecommendDTO.getUserId());
|
content.put("type", qeFilling.getType());
|
||||||
content.put("image_urls", "");
|
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));
|
RequestBody body = RequestBody.create(mediaType, JSON.toJSONString(content));
|
||||||
Request request = new Request.Builder()
|
Request request = new Request.Builder()
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.mixi.service;
|
|||||||
|
|
||||||
import cn.hutool.core.collection.CollectionUtil;
|
import cn.hutool.core.collection.CollectionUtil;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
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.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
@@ -744,8 +745,15 @@ public class TAppProductService extends ServiceImpl<TProductMapper, TProduct> {
|
|||||||
// 创建推荐对象
|
// 创建推荐对象
|
||||||
OutfitRecommendation recommendation = new OutfitRecommendation();
|
OutfitRecommendation recommendation = new OutfitRecommendation();
|
||||||
|
|
||||||
|
LambdaQueryWrapper<QeFilling> qeFillingLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
qeFillingLambdaQueryWrapper.eq(QeFilling::getPhoneNum, aiRecommendDTO.getUserId());
|
||||||
|
List<QeFilling> qeFillings = qeFillingMapper.selectList(qeFillingLambdaQueryWrapper);
|
||||||
|
|
||||||
|
if (CollectionUtils.isEmpty(qeFillings)) {
|
||||||
|
throw new BusinessException("Phone number not found");
|
||||||
|
}
|
||||||
// 调用ai推荐模型
|
// 调用ai推荐模型
|
||||||
JSONObject jsonObject = pythonService.getAIRecommend(aiRecommendDTO);
|
JSONObject jsonObject = pythonService.getAIRecommend(qeFillings.get(0));
|
||||||
|
|
||||||
// 检查jsonObject是否为null
|
// 检查jsonObject是否为null
|
||||||
if (jsonObject == null) {
|
if (jsonObject == null) {
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import com.alibaba.excel.write.metadata.WriteSheet;
|
|||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.alibaba.fastjson2.JSON;
|
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.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
@@ -721,6 +722,9 @@ public class TProductService extends ServiceImpl<TProductMapper, TProduct> {
|
|||||||
tProductAttributeService.deleteByProductId(deleteDTO.getId());
|
tProductAttributeService.deleteByProductId(deleteDTO.getId());
|
||||||
//删除商品主体
|
//删除商品主体
|
||||||
tProductMapper.deleteById(deleteDTO.getId());
|
tProductMapper.deleteById(deleteDTO.getId());
|
||||||
|
LambdaQueryWrapper<MiTuProduct> qw = new LambdaQueryWrapper<>();
|
||||||
|
qw.eq(MiTuProduct::getProductId, deleteDTO.getId());
|
||||||
|
miTuProductMapper.delete(qw);
|
||||||
return Boolean.TRUE;
|
return Boolean.TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user