Эх сурвалжийг харах

问答历史添加页码, 记录历史数据添加页码

Gaokun Wang 3 сар өмнө
parent
commit
9e34712845

+ 0 - 40
als-modules/agile-assurance/src/main/java/org/eco/als/controller/QaHistoryController.java

@@ -1,28 +1,18 @@
 package org.eco.als.controller;
 
 import cn.dev33.satoken.annotation.SaCheckPermission;
-import cn.hutool.core.collection.CollUtil;
 import jakarta.annotation.Resource;
-import jakarta.servlet.http.HttpServletResponse;
 import lombok.RequiredArgsConstructor;
 import org.eco.als.domain.bo.QaHistoryBo;
-import org.eco.als.domain.vo.QaHistoryImportVo;
 import org.eco.als.domain.vo.QaHistoryVo;
 import org.eco.als.service.IQaHistoryService;
 import org.eco.common.core.core.domain.CommonResult;
-import org.eco.common.core.core.domain.model.LoginUser;
 import org.eco.common.core.core.page.PageResult;
-import org.eco.common.excel.utils.ExcelUtil;
-import org.eco.common.log.annotation.Log;
-import org.eco.common.log.enums.BusinessType;
-import org.eco.common.security.utils.LoginHelper;
 import org.eco.common.web.annotation.RepeatSubmit;
 import org.eco.common.web.core.BaseController;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
 
-import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -54,36 +44,6 @@ public class QaHistoryController extends BaseController {
         return CommonResult.success(qaHistoryService.selectList(qaHistoryBo));
     }
 
-    /**
-     * 导出问答历史记录列表
-     */
-    @Log(title = "问答历史记录", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public CommonResult<Void> export(QaHistoryBo qaHistoryBo) {
-        LoginUser loginUser = LoginHelper.getLoginUser();
-        List<QaHistoryVo> list = qaHistoryService.selectList(qaHistoryBo);
-        if (CollUtil.isEmpty(list)) {
-            return CommonResult.fail("导出列表为空");
-        }
-        qaHistoryService.asyncExport(list, "问答历史记录", loginUser);
-        return CommonResult.success();
-    }
-
-    @PostMapping("/importTemplate")
-    public void importTemplate(HttpServletResponse response) {
-        ExcelUtil.exportExcel(new ArrayList<>(), "问答历史记录", QaHistoryImportVo.class, response);
-    }
-
-    /**
-     * 导入问答历史记录列表
-     */
-    @PostMapping("/importData")
-    public CommonResult<Void> importData(MultipartFile file, boolean updateSupport) {
-        LoginUser loginUser = LoginHelper.getLoginUser();
-        qaHistoryService.asyncImportData(file, updateSupport, loginUser);
-        return CommonResult.success();
-    }
-
     /**
      * 获取问答历史记录详细信息
      */

+ 2 - 0
als-modules/agile-assurance/src/main/java/org/eco/als/domain/DataImport.java

@@ -59,6 +59,8 @@ public class DataImport extends BaseEntity {
      */
     private String status;
 
+    private String dataStatus;
+
     /**
      * 删除标识(1删除 0未删除)
      */

+ 2 - 0
als-modules/agile-assurance/src/main/java/org/eco/als/domain/QaHistory.java

@@ -58,6 +58,8 @@ public class QaHistory extends BaseEntity {
      */
     private String fileName;
 
+    private Integer filePage;
+
     /**
      * 备注
      */

+ 2 - 0
als-modules/agile-assurance/src/main/java/org/eco/als/domain/bo/DataImportBo.java

@@ -60,5 +60,7 @@ public class DataImportBo extends BaseEntity {
      */
     private String status;
 
+    private String dataStatus;
+
 
 }

+ 2 - 0
als-modules/agile-assurance/src/main/java/org/eco/als/domain/bo/QaHistoryBo.java

@@ -56,5 +56,7 @@ public class QaHistoryBo extends BaseEntity {
      */
     private String remarks;
 
+    private Integer filePage;
+
 
 }

+ 1 - 1
als-modules/agile-assurance/src/main/java/org/eco/als/domain/vo/DataImportVo.java

@@ -70,8 +70,8 @@ public class DataImportVo extends BaseEntity implements Serializable {
      * 状态(1正常)
      */
     @ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
-    @ExcelDictFormat(dictType = "common_type")
     private String status;
+    private String dataStatus;
 
     /**
      * 删除标识(1删除 0未删除)

+ 0 - 76
als-modules/agile-assurance/src/main/java/org/eco/als/domain/vo/QaHistoryImportVo.java

@@ -1,76 +0,0 @@
-package org.eco.als.domain.vo;
-
-import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
-import com.alibaba.excel.annotation.ExcelProperty;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.io.Serial;
-import java.io.Serializable;
-
-/**
- * 问答历史记录导入视图对象 als_qa_history_t
- *
- * @author wgk
- * @date 2024-12-13
- */
-
-@Data
-@NoArgsConstructor
-@ExcelIgnoreUnannotated
-public class QaHistoryImportVo implements Serializable {
-
-    @Serial
-    private static final long serialVersionUID = 1L;
-
-
-    /**
-     * 当前用户
-     */
-    @ExcelProperty(value = "当前用户")
-    private String userId;
-
-    /**
-     * 问题
-     */
-    @ExcelProperty(value = "问题")
-    private String question;
-
-    /**
-     * 回答
-     */
-    @ExcelProperty(value = "回答")
-    private String answer;
-
-    /**
-     *图谱相关
-     */
-    @ExcelProperty(value = "图谱相关")
-    private String graph;
-
-    /**
-     * 文件ID
-     */
-    @ExcelProperty(value = "文件ID")
-    private Long ossId;
-
-    /**
-     * 文件名称
-     */
-    @ExcelProperty(value = "文件名称")
-    private String fileName;
-
-    /**
-     * 备注
-     */
-    @ExcelProperty(value = "备注")
-    private String remarks;
-
-    /**
-     * 删除标识(1删除 0未删除)
-     */
-    @ExcelProperty(value = "删除标识(1删除 0未删除)")
-    private Integer delFlag;
-
-
-}

+ 2 - 0
als-modules/agile-assurance/src/main/java/org/eco/als/domain/vo/QaHistoryVo.java

@@ -70,6 +70,8 @@ public class QaHistoryVo extends BaseEntity implements Serializable {
     @ExcelProperty(value = "文件名称")
     private String fileName;
 
+    private Integer filePage;
+
     /**
      * 备注
      */

+ 0 - 128
als-modules/agile-assurance/src/main/java/org/eco/als/listener/QaHistoryImportListener.java

@@ -1,128 +0,0 @@
-package org.eco.als.listener;
-
-import cn.hutool.core.bean.BeanUtil;
-import cn.hutool.core.util.ObjectUtil;
-import com.alibaba.excel.context.AnalysisContext;
-import com.alibaba.excel.event.AnalysisEventListener;
-import lombok.extern.slf4j.Slf4j;
-import org.eco.als.domain.bo.QaHistoryBo;
-import org.eco.als.domain.vo.QaHistoryImportVo;
-import org.eco.als.domain.vo.QaHistoryVo;
-import org.eco.als.service.IQaHistoryService;
-import org.eco.common.core.core.domain.model.LoginUser;
-import org.eco.common.core.utils.SpringUtils;
-import org.eco.common.core.utils.ValidatorUtils;
-import org.eco.common.excel.core.ExcelListener;
-import org.eco.common.excel.core.ExcelResult;
-import org.eco.common.excel.entity.ExcelResultRes;
-
-import java.util.List;
-
-/**
- * 问答历史记录自定义导入
- *
- * @author wgk
- */
-@Slf4j
-public class QaHistoryImportListener extends AnalysisEventListener<QaHistoryImportVo> implements ExcelListener<QaHistoryImportVo> {
-    private final IQaHistoryService qaHistoryService;
-
-    private final Boolean isUpdateSupport;
-    private final LoginUser loginUser;
-    private int successNum = 0;
-    private int failureNum = 0;
-    private final StringBuilder successMsg = new StringBuilder();
-    private final StringBuilder failureMsg = new StringBuilder();
-
-    public QaHistoryImportListener(Boolean isUpdateSupport, LoginUser loginUser) {
-        this.qaHistoryService = SpringUtils.getBean(IQaHistoryService.class);
-        this.isUpdateSupport = isUpdateSupport;
-        this.loginUser = loginUser;
-    }
-
-    @Override
-    public void invoke(QaHistoryImportVo qaHistoryVo, AnalysisContext context) {
-        try {
-
-            QaHistoryBo qaHistoryBo = BeanUtil.toBean(qaHistoryVo, QaHistoryBo.class);
-
-            //TODO:根据某个字段,查询数据库表中是否存在记录,不存在就新增,存在就更新
-            QaHistoryVo qaHistoryVo1 = null;
-
-            //qaHistoryVo1 = qaHistoryService.selectBySomefield(qaHistoryVo.getSomefield());
-            if (ObjectUtil.isNull(qaHistoryVo1)) {
-                //不存在就新增
-                setBo(qaHistoryBo);
-                ValidatorUtils.validate(qaHistoryBo);
-                boolean inserted = qaHistoryService.insert(qaHistoryBo);
-
-                if (inserted) {
-                    successNum++;
-                    successMsg.append("<br/>").append(successNum).append("、问答历史记录 记录导入成功");
-                } else {
-                    failureNum++;
-                    failureMsg.append("<br/>").append(failureNum).append("、问答历史记录 记录导入失败");
-                }
-            } else if (isUpdateSupport) {
-                //存在就更新
-                qaHistoryBo.setId(qaHistoryVo1.getId());//主键
-                qaHistoryBo.setVersion(qaHistoryVo1.getVersion());
-                boolean updated = qaHistoryService.update(qaHistoryBo);
-                if (updated) {
-                    successNum++;
-                    successMsg.append("<br/>").append(successNum).append("、问答历史记录 记录更新成功");
-                } else {
-                    failureNum++;
-                    failureMsg.append("<br/>").append(failureNum).append("、问答历史记录 记录更新失败");
-                }
-            }
-        } catch (Exception e) {
-            failureNum++;
-            String msg = "<br/>" + failureNum + "、问答历史记录 记录导入失败:";
-            failureMsg.append(msg).append(e.getMessage());
-            log.error(msg, e);
-        }
-    }
-
-    private void setBo(QaHistoryBo qaHistoryBo) {
-        qaHistoryBo.setVersion(0);
-        qaHistoryBo.setCreateBy(loginUser.getUserId());
-        qaHistoryBo.setUpdateBy(loginUser.getUserId());
-        qaHistoryBo.setTenantId(loginUser.getTenantId());
-    }
-
-    @Override
-    public void doAfterAllAnalysed(AnalysisContext context) {
-        log.info("解析完成");
-    }
-
-    @Override
-    public ExcelResult<QaHistoryImportVo> getExcelResult() {
-        return new ExcelResult<>() {
-
-            @Override
-            public ExcelResultRes getAnalysis() {
-                if (failureNum > 0 && successNum == 0) {
-                    failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据没有成功导入,错误如下:");
-                    return ExcelResultRes.builder().logInfo(failureMsg.toString()).status("0").build();
-                } else if (failureNum > 0 && successNum > 0) {
-                    failureMsg.insert(0, "很抱歉,部分导入失败!共 " + failureNum + " 条数据没有成功导入,错误如下:");
-                    return ExcelResultRes.builder().logInfo(failureMsg.toString()).status("2").build();
-                } else {
-                    successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:");
-                    return ExcelResultRes.builder().logInfo(successMsg.toString()).status("1").build();
-                }
-            }
-
-            @Override
-            public List<QaHistoryImportVo> getList() {
-                return null;
-            }
-
-            @Override
-            public List<String> getErrorList() {
-                return null;
-            }
-        };
-    }
-}

+ 0 - 23
als-modules/agile-assurance/src/main/java/org/eco/als/service/IQaHistoryService.java

@@ -3,11 +3,8 @@ package org.eco.als.service;
 import org.eco.als.domain.QaHistory;
 import org.eco.als.domain.bo.QaHistoryBo;
 import org.eco.als.domain.vo.QaHistoryVo;
-import org.eco.common.core.core.domain.model.LoginUser;
 import org.eco.common.core.core.page.PageResult;
 import org.eco.common.orm.core.service.IBaseService;
-import org.springframework.scheduling.annotation.Async;
-import org.springframework.web.multipart.MultipartFile;
 
 import java.util.List;
 
@@ -80,24 +77,4 @@ public interface IQaHistoryService extends IBaseService<QaHistory> {
      */
     boolean deleteByIds(Long[] ids);
 
-    /**
-     * 异步导入
-     *
-     * @param file          导入的文件
-     * @param updateSupport 是否覆盖
-     * @param user          用户上下文信息
-     */
-    @Async
-    void asyncImportData(MultipartFile file, boolean updateSupport, LoginUser user);
-
-    /**
-     * asyncExport 异步导出
-     *
-     * @param listVo    数据列表
-     * @param sheetName 文件名称
-     * @param user      上下文
-     */
-    @Async
-    void asyncExport(List<QaHistoryVo> listVo, String sheetName, LoginUser user);
-
 }

+ 14 - 2
als-modules/agile-assurance/src/main/java/org/eco/als/service/impl/AlgorithmService.java

@@ -191,8 +191,10 @@ public class AlgorithmService implements IAlgorithmService {
             DataImport dataImport = new DataImport();
             dataImport.setId(dataImportVo.getId());
             dataImport.setVersion(dataImportVo.getVersion());
-            dataImport.setStatus("4");
+            dataImport.setDataStatus("1");
             dataImportService.updateById(dataImport);
+        } else {
+            throw new BusinessException("无警告信息!");
         }
     }
 
@@ -204,7 +206,11 @@ public class AlgorithmService implements IAlgorithmService {
     @Override
     @Transactional
     public void executeFault(AlgorithmBo algorithmBo) {
-        //
+        DataImportVo dataImportVo = dataImportService.selectById(algorithmBo.getDataId());
+        DataImport dataImport = new DataImport();
+        dataImport.setId(dataImportVo.getId());
+        dataImport.setVersion(dataImportVo.getVersion());
+        dataImport.setStatus("1");
         ModelBo modelBo = new ModelBo();
         modelBo.setAircraftType(algorithmBo.getAircraftType());
         modelBo.setType("5");
@@ -251,8 +257,12 @@ public class AlgorithmService implements IAlgorithmService {
                     .remarks(modelVo.getParamType())
                     .build();
                 faultDiagnosisResultService.insert(resultBo);
+            } else {
+                dataImport.setStatus("3");
+                throw new BusinessException("算法服务异常");
             }
         });
+        dataImportService.updateById(dataImport);
     }
 
     @Override
@@ -371,6 +381,7 @@ public class AlgorithmService implements IAlgorithmService {
         String ossId = answerJson.getStr("ossId");
         String userId = answerJson.getStr("userId");
         String fileName = answerJson.getStr("fileName");
+        Integer filePage = answerJson.getInt("filePage");
         String graph = answerJson.getStr("graph");
         String answer = answerJson.getStr("answer");
         QaHistoryBo qaHistoryBo = new QaHistoryBo();
@@ -381,6 +392,7 @@ public class AlgorithmService implements IAlgorithmService {
         qaHistoryBo.setUserId(userId);
         qaHistoryBo.setQuestion(qaBo.getQuestion());
         qaHistoryBo.setFileName(fileName);
+        qaHistoryBo.setFilePage(filePage);
         qaHistoryBo.setGraph(graph);
         qaHistoryService.insert(qaHistoryBo);
         return data;

+ 0 - 39
als-modules/agile-assurance/src/main/java/org/eco/als/service/impl/QaHistoryServiceImpl.java

@@ -8,28 +8,19 @@ import jakarta.annotation.Resource;
 import lombok.extern.slf4j.Slf4j;
 import org.eco.als.domain.QaHistory;
 import org.eco.als.domain.bo.QaHistoryBo;
-import org.eco.als.domain.vo.QaHistoryImportVo;
 import org.eco.als.domain.vo.QaHistoryVo;
-import org.eco.als.listener.QaHistoryImportListener;
 import org.eco.als.mapper.QaHistoryMapper;
 import org.eco.als.service.IQaHistoryService;
-import org.eco.common.core.core.domain.model.LoginUser;
 import org.eco.common.core.core.page.PageResult;
 import org.eco.common.core.utils.MapstructUtils;
-import org.eco.common.excel.entity.ExcelResultRes;
-import org.eco.common.excel.service.IExcelService;
 import org.eco.common.orm.core.page.PageQuery;
 import org.eco.common.orm.core.service.impl.BaseServiceImpl;
-import org.eco.system.service.IImportExportService;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.multipart.MultipartFile;
 
-import java.io.IOException;
 import java.util.Arrays;
 import java.util.List;
 
-import static com.mybatisflex.core.query.QueryMethods.avg;
 import static org.eco.als.domain.table.QaHistoryTableDef.QA_HISTORY;
 
 /**
@@ -44,12 +35,6 @@ public class QaHistoryServiceImpl extends BaseServiceImpl<QaHistoryMapper, QaHis
     @Resource
     private QaHistoryMapper qaHistoryMapper;
 
-    @Resource
-    private IExcelService excelService;
-
-    @Resource
-    private IImportExportService importExportService;
-
     @Override
     public QueryWrapper query() {
         return super.query().from(QA_HISTORY);
@@ -164,30 +149,6 @@ public class QaHistoryServiceImpl extends BaseServiceImpl<QaHistoryMapper, QaHis
         return false;
     }
 
-    @Override
-    public void asyncImportData(MultipartFile file, boolean updateSupport, LoginUser loginUser) {
-        ExcelResultRes result;
-        try {
-            String name = file.getOriginalFilename();
-            result = excelService.importExcel(file.getInputStream(), name, QaHistoryImportVo.class, new QaHistoryImportListener(updateSupport, loginUser));
-        } catch (IOException e) {
-            throw new RuntimeException(e);
-        }
-        boolean flag = importExportService.saveInfo(result, loginUser, "0");
-        if (flag) {
-            log.info("异步导入日志写入成功");
-        }
-    }
-
-    @Override
-    public void asyncExport(List<QaHistoryVo> listVo, String sheetName, LoginUser loginUser) {
-        ExcelResultRes result = excelService.exportExcel(listVo, sheetName, QaHistoryVo.class);
-        boolean flag = importExportService.saveInfo(result, loginUser, "1");
-        if (flag) {
-            log.info("异步导出日志写入成功");
-        }
-    }
-
     /**
      * 批量删除问答历史记录
      *

+ 3 - 0
als-start/src/main/resources/db/dm/V1_0_0_13__als-20250305-dml.sql

@@ -0,0 +1,3 @@
+ALTER TABLE "lqbz"."als_data_import_t" ADD COLUMN "data_status" CHAR(1);
+ALTER TABLE "lqbz"."als_qa_history_t" ADD COLUMN "file_page" INTEGER;
+COMMENT ON COLUMN "lqbz"."als_qa_history_t"."file_page" IS '页码';