Administrator
1 days ago 1e35772e6e401dd9a0f6fe80299c9109edbb13c7
src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java
@@ -9,8 +9,12 @@
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.common.exception.FebsException;
import cc.mrbird.febs.mall.entity.MallMember;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
@@ -55,7 +59,14 @@
    public IPage<AiProductQuestion> listInPage(AiProductQuestion dto, QueryRequest request) {
        Page<AiProductQuestion> page = new Page<>(request.getPageNum(), request.getPageSize());
        LambdaQueryWrapper<AiProductQuestion> query = Wrappers.lambdaQuery(AiProductQuestion.class);
        if (StrUtil.isNotEmpty(dto.getCompanyId())){
            query.eq(AiProductQuestion::getCompanyId, dto.getCompanyId());
        }
        if (StrUtil.isNotEmpty(dto.getProductCategoryId())){
            query.eq(AiProductQuestion::getProductCategoryId, dto.getProductCategoryId());
        }
        query.ne(AiProductQuestion::getState, 2);
        query.orderByDesc(AiProductQuestion::getCreatedTime);
        Page<AiProductQuestion> pages = aiProductQuestionMapper.selectPage(page, query);
        return pages;
    }
@@ -99,6 +110,7 @@
        for (AiProductQuestionItem item : dto.getAiProductQuestionItems()){
            item.setId(UUID.getSimpleUUIDString());
            item.setProductQuestionId(entity.getId());
            item.setCompanyId(dto.getCompanyId());
            item.setTitle(entity.getTitle());
            item.setCreatedTime(new Date());
            aiProductQuestionItemService.getBaseMapper().insert(item);
@@ -125,7 +137,6 @@
        if (ObjectUtil.isNotNull( entity)){
            this.update(null,
                    Wrappers.lambdaUpdate(AiProductQuestion.class)
                            .set(AiProductQuestion::getCompanyId, dto.getCompanyId())
                            .set(AiProductQuestion::getProductCategoryId, dto.getProductCategoryId())
                            .set(AiProductQuestion::getTitle, dto.getTitle())
                            .set(AiProductQuestion::getDifficulty, dto.getDifficulty())
@@ -147,6 +158,20 @@
    }
    @Override
    public FebsResponse stateUpdate(String ids, Integer type) {
        if (StrUtil.isEmpty(ids)) {
            throw new FebsException("参数错误");
        }
        List<String> idList = StrUtil.split(ids, ',');
        this.update(null,
                Wrappers.lambdaUpdate(AiProductQuestion.class)
                        .set(AiProductQuestion::getState, type)
                        .set(AiProductQuestion::getUpdatedTime, new Date())
                        .in(AiProductQuestion::getId, idList));
        return new FebsResponse().success().message("操作成功");
    }
    @Override
    public FebsResponse delete(String id) {
        AiProductQuestion entity = this.getById(id);
        if(ObjectUtil.isNotNull( entity)){
@@ -161,9 +186,13 @@
    }
    @Override
    public List<AiProductQuestion> questionTree() {
    public List<AiProductQuestion> questionTree(String companyId) {
        LambdaQueryWrapper<AiProductQuestion> query = Wrappers.lambdaQuery(AiProductQuestion.class);
        if (StrUtil.isNotEmpty(companyId)){
            query.eq(AiProductQuestion::getCompanyId, companyId);
        }
        return aiProductQuestionMapper.selectList(null);
        return aiProductQuestionMapper.selectList(query);
    }
    @Override
@@ -190,6 +219,7 @@
            AiProductQuestion aiProductQuestion = new AiProductQuestion();
            aiProductQuestion.setId(UUID.getSimpleUUIDString());
            aiProductQuestion.setCompanyId(dto.getCompanyId());
            aiProductQuestion.setProductCategoryId(productCategoryId);
            aiProductQuestion.setTitle(title);
            aiProductQuestion.setDifficulty(difficulty);
@@ -205,6 +235,7 @@
                System.out.println("分析: " + answer.getStr("analysis"));
                AiProductQuestionItem aiProductQuestionItem = new AiProductQuestionItem();
                aiProductQuestionItem.setId(UUID.getSimpleUUIDString());
                aiProductQuestionItem.setCompanyId(dto.getCompanyId());
                aiProductQuestionItem.setProductQuestionId(aiProductQuestion.getId());
                aiProductQuestionItem.setTitle(aiProductQuestion.getTitle());
                aiProductQuestionItem.setAnswer(answer.getStr("answer"));