Explorar o código

Get请求接口更改为Post请求

2643616413 hai 2 semanas
pai
achega
83baccd29b
Modificáronse 18 ficheiros con 365 adicións e 106 borrados
  1. 17 29
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagApiLogController.java
  2. 9 13
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagAppController.java
  3. 22 31
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagTagCategoryController.java
  4. 77 13
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagTagInfoController.java
  5. 45 4
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagTagLogController.java
  6. 3 9
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/FastApiController.java
  7. 22 0
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagApiLogDetailDto.java
  8. 23 0
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagApiLogListDto.java
  9. 17 0
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagAppListDto.java
  10. 22 0
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagAppQueryDto.java
  11. 17 0
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagEnabledTagCategoryListDto.java
  12. 16 0
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagTagCategoryDetailDto.java
  13. 20 0
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagTagCategoryListDto.java
  14. 16 0
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/TagInfoDetailDto.java
  15. 29 0
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/TagInfoPageDto.java
  16. 6 5
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/fastapidto/AiTaggingQueryRequestDto.java
  17. 2 0
      server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/vo/AitagTagInfoQueryVo.java
  18. 2 2
      server/yusp-tagging-core/src/main/resources/mapper/AitagTagLogMapper.xml

+ 17 - 29
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagApiLogController.java

@@ -1,12 +1,15 @@
 package cn.com.yusys.yusp.controller;
 
 import cn.com.yusys.yusp.domain.dto.AitagApiLogQueryDto;
+import cn.com.yusys.yusp.domain.dto.AitagApiLogDetailDto;
+import cn.com.yusys.yusp.domain.dto.AitagApiLogListDto;
 import cn.com.yusys.yusp.domain.entity.AitagApiLog;
 import cn.com.yusys.yusp.domain.vo.AitagApiLogListVo;
 import cn.com.yusys.yusp.model.Result;
 import cn.com.yusys.yusp.service.AitagApiLogService;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import java.text.ParseException;
@@ -24,25 +27,24 @@ public class AitagApiLogController {
     private AitagApiLogService apiLogService;
 
 
-    @GetMapping("/list")
-    public Result<List<AitagApiLogListVo>> listApiLogs(
-            @RequestParam(required = false) String startTime,
-            @RequestParam(required = false) String endTime,
-            @RequestParam(defaultValue = "1") Integer page,
-            @RequestParam(defaultValue = "10") Integer pageSize) {
+    @PostMapping("/list")
+    public Result<List<AitagApiLogListVo>> listApiLogs(@RequestBody AitagApiLogListDto dto) {
         try {
             // 构建查询条件
             AitagApiLogQueryDto queryDTO = new AitagApiLogQueryDto();
-            queryDTO.setPage(page);
-            queryDTO.setPageSize(pageSize);
+            queryDTO.setPage(dto.getPage());
+
+            // 处理 pageSize:如果前端没传,使用默认值 10;否则使用前端传入的值
+            int actualSize = (dto.getPageSize() == null || dto.getPageSize() <= 0) ? 10 : dto.getPageSize();
+            queryDTO.setPageSize(actualSize);
 
             // 处理时间参数 - 只处理日期粒度
-            if (startTime != null && !startTime.isEmpty()) {
-                queryDTO.setStartTime(parseDateOnly(startTime));
+            if (dto.getStartTime() != null && !dto.getStartTime().isEmpty()) {
+                queryDTO.setStartTime(parseDateOnly(dto.getStartTime()));
             }
 
-            if (endTime != null && !endTime.isEmpty()) {
-                queryDTO.setEndTime(parseDateOnly(endTime));
+            if (dto.getEndTime() != null && !dto.getEndTime().isEmpty()) {
+                queryDTO.setEndTime(parseDateOnly(dto.getEndTime()));
             }
 
             Page<AitagApiLogListVo> pageResult = apiLogService.listApiLogs(queryDTO);
@@ -72,24 +74,10 @@ public class AitagApiLogController {
         }
     }
 
-    @GetMapping("/refresh")
-    public Result<List<AitagApiLogListVo>> refreshApiLogs(
-            @RequestParam(defaultValue = "1") Integer page,
-            @RequestParam(defaultValue = "10") Integer pageSize) {
-        try {
-            Page<AitagApiLogListVo> pageResult = apiLogService.refreshApiLogs(page, pageSize);
-            // 直接返回Page对象
-            return Result.pageSuccess(pageResult.getRecords(), pageResult.getTotal());
-        } catch (Exception e) {
-            return Result.error("500", "刷新日志列表失败:" + e.getMessage());
-        }
-    }
-
-
-    @GetMapping("/query/{id}")
-    public Result<AitagApiLog> getApiLogDetail(@PathVariable String id) {
+    @PostMapping("/query")
+    public Result<AitagApiLog> getApiLogDetail(@Validated @RequestBody AitagApiLogDetailDto dto) {
         try {
-            AitagApiLog logDetail = apiLogService.getApiLogDetail(id);
+            AitagApiLog logDetail = apiLogService.getApiLogDetail(dto.getId());
             if (logDetail == null) {
                 return Result.error("404", "日志记录不存在");
             }

+ 9 - 13
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagAppController.java

@@ -1,6 +1,7 @@
 package cn.com.yusys.yusp.controller;
 
-import cn.com.yusys.yusp.annotation.RequireRole;
+import cn.com.yusys.yusp.domain.dto.AitagAppListDto;
+import cn.com.yusys.yusp.domain.dto.AitagAppQueryDto;
 import cn.com.yusys.yusp.model.Result;
 import cn.com.yusys.yusp.domain.dto.AitagAppCreateDto;
 import cn.com.yusys.yusp.domain.entity.AitagApp;
@@ -22,14 +23,11 @@ public class AitagAppController {
     private AitagAppService aiTagAppService;
 
     @ApiOperationType("应用列表一览")
-    @RequireRole({"1", "4"})
-    @GetMapping("/list")
-    public Result<List<AitagApp>> listApps(
-            @RequestParam(defaultValue = "1") int page,
-            @RequestParam(defaultValue = "10") int size) {
+    @PostMapping("/list")
+    public Result<List<AitagApp>> listApps(@RequestBody AitagAppListDto dto) {
         try {
             // 分页查询
-            Page<AitagApp> pageResult = aiTagAppService.listApps(page, size);
+            Page<AitagApp> pageResult = aiTagAppService.listApps(dto.getPage(), dto.getPageSize());
 
             // 提取 records 并封装为 Result 对象
             return Result.pageSuccess(pageResult.getRecords(), pageResult.getTotal());
@@ -39,6 +37,7 @@ public class AitagAppController {
     }
 
 
+
     @ApiOperationType("新增应用")
     @PostMapping("/add")
     public Result<AitagApp> addApp(@Validated @RequestBody AitagAppCreateDto dto) {
@@ -51,13 +50,10 @@ public class AitagAppController {
     }
 
     @ApiOperationType("查询应用")
-    @GetMapping("/query")
-    public Result<List<AitagApp>> queryByName(
-            @RequestParam String appName,
-            @RequestParam(defaultValue = "1") int page,
-            @RequestParam(defaultValue = "10") int pageSize) {
+    @PostMapping("/query")
+    public Result<List<AitagApp>> queryByName(@Validated @RequestBody AitagAppQueryDto dto) {
         try {
-            Page<AitagApp> pageResult = aiTagAppService.queryByAppNameLikeWithPagination(appName, page, pageSize);
+            Page<AitagApp> pageResult = aiTagAppService.queryByAppNameLikeWithPagination(dto.getAppName(), dto.getPage(), dto.getPageSize());
             return Result.pageSuccess(pageResult.getRecords(), pageResult.getTotal()); // ✅ 返回 Result<List<AitagApp>>
         } catch (Exception e) {
             return Result.error("500", "应用查询失败:" + e.getMessage());

+ 22 - 31
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagTagCategoryController.java

@@ -1,7 +1,6 @@
 package cn.com.yusys.yusp.controller;
 
-import cn.com.yusys.yusp.domain.dto.AitagTagCategoryCreateDto;
-import cn.com.yusys.yusp.domain.dto.AitagTagCategoryUpdateDto;
+import cn.com.yusys.yusp.domain.dto.*;
 import cn.com.yusys.yusp.domain.entity.AitagTagCategory;
 import cn.com.yusys.yusp.domain.vo.AitagTagCategoryVo;
 import cn.com.yusys.yusp.model.Result;
@@ -30,17 +29,13 @@ public class AitagTagCategoryController {
     private static final int MAX_PAGE_SIZE = 100;
 
     @ApiOperationType("标签体系列表")
-    @GetMapping("/list")
-    public Result<List<AitagTagCategoryVo>> listCategories(
-            @RequestParam(required = false) String categoryNm,
-            @RequestParam(defaultValue = "1") int page,
-            @RequestParam(value = "pageSize", required = false) Integer size) {
-
-        // 处理 pageSize:如果前端没传,使用默认值;如果传了,可以使用前端值
-        int actualSize = (size == null || size <= 0) ? DEFAULT_PAGE_SIZE : Math.min(size, MAX_PAGE_SIZE);
-
+    @PostMapping("/list")
+    public Result<List<AitagTagCategoryVo>> listCategories(@RequestBody AitagTagCategoryListDto dto) {
         try {
-            Page<AitagTagCategoryVo> pageResult = aiTagCategoryService.listCategories(categoryNm, page, actualSize);
+            // 如果前端没传 pageSize,使用默认值 10;否则使用前端传入的值
+            int actualSize = (dto.getPageSize() == null || dto.getPageSize() <= 0) ? 10 : dto.getPageSize();
+
+            Page<AitagTagCategoryVo> pageResult = aiTagCategoryService.listCategories(dto.getCategoryNm(), dto.getPage(), actualSize);
             return Result.pageSuccess(pageResult.getRecords(), pageResult.getTotal());
         } catch (Exception e) {
             return Result.error("500", "分页查询失败:" + e.getMessage());
@@ -107,15 +102,13 @@ public class AitagTagCategoryController {
     }
 
     @ApiOperationType("已启用标签体系列表一览")
-    @GetMapping("/enablelist")
-    public Result<List<AitagTagCategoryVo>> listEnabledCategories(
-            @RequestParam(defaultValue = "1") int page,
-            @RequestParam(value = "pageSize", required = false) Integer size) { // 修改点:改为 Integer,移除 defaultValue
-
-        int actualSize = (size == null || size <= 0) ? DEFAULT_PAGE_SIZE : Math.min(size, MAX_PAGE_SIZE);
-
+    @PostMapping("/enablelist")
+    public Result<List<AitagTagCategoryVo>> listEnabledCategories(@RequestBody AitagEnabledTagCategoryListDto dto) {
         try {
-            Page<AitagTagCategoryVo> pageResult = aiTagCategoryService.listEnabledCategories(page, actualSize);
+            // 如果前端没传 pageSize,使用默认值 10;否则使用前端传入的值
+            int actualSize = (dto.getPageSize() == null || dto.getPageSize() <= 0) ? 10 : dto.getPageSize();
+
+            Page<AitagTagCategoryVo> pageResult = aiTagCategoryService.listEnabledCategories(dto.getPage(), actualSize);
             return Result.pageSuccess(pageResult.getRecords(), pageResult.getTotal());
         } catch (Exception e) {
             return Result.error("500", "分页查询失败:" + e.getMessage());
@@ -123,10 +116,10 @@ public class AitagTagCategoryController {
     }
 
     @ApiOperationType("标签体系详情")
-    @GetMapping("/detail/{id}")
-    public Result<AitagTagCategoryVo> getCategoryDetail(@PathVariable String id) {
+    @PostMapping("/detail")
+    public Result<AitagTagCategoryVo> getCategoryDetail(@Validated @RequestBody AitagTagCategoryDetailDto dto) {
         try {
-            AitagTagCategoryVo categoryDetail = aiTagCategoryService.getCategoryDetail(id);
+            AitagTagCategoryVo categoryDetail = aiTagCategoryService.getCategoryDetail(dto.getId());
             return Result.success(categoryDetail);
         } catch (Exception e) {
             return Result.error("500", "查询标签体系详情失败:" + e.getMessage());
@@ -134,15 +127,13 @@ public class AitagTagCategoryController {
     }
 
     @ApiOperationType("外部标签体系")
-    @GetMapping("/enablelistnoauth")
-    public Result<List<AitagTagCategoryVo>> listEnabledCategoriesNoAuth(
-            @RequestParam(defaultValue = "1") int page,
-            @RequestParam(value = "pageSize", required = false) Integer size) { // 修改点:改为 Integer,移除 defaultValue
-
-        int actualSize = (size == null || size <= 0) ? DEFAULT_PAGE_SIZE : Math.min(size, MAX_PAGE_SIZE);
-
+    @PostMapping("/enablelistnoauth")
+    public Result<List<AitagTagCategoryVo>> listEnabledCategoriesNoAuth(@RequestBody AitagEnabledTagCategoryListDto dto) {
         try {
-            Page<AitagTagCategoryVo> pageResult = aiTagCategoryService.listEnabledCategories(page, actualSize);
+            // 如果前端没传 pageSize,使用默认值 10;否则使用前端传入的值
+            int actualSize = (dto.getPageSize() == null || dto.getPageSize() <= 0) ? 10 : dto.getPageSize();
+
+            Page<AitagTagCategoryVo> pageResult = aiTagCategoryService.listEnabledCategories(dto.getPage(), actualSize);
             return Result.pageSuccess(pageResult.getRecords(), pageResult.getTotal());
         } catch (Exception e) {
             return Result.error("500", "分页查询失败:" + e.getMessage());

+ 77 - 13
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagTagInfoController.java

@@ -3,7 +3,9 @@ package cn.com.yusys.yusp.controller;
 import cn.com.yusys.yusp.annotation.ApiOperationType;
 import cn.com.yusys.yusp.commons.exception.BizException;
 import cn.com.yusys.yusp.commons.module.adapter.web.rest.ResultDto;
+import cn.com.yusys.yusp.domain.dto.TagInfoDetailDto;
 import cn.com.yusys.yusp.domain.dto.TagInfoDto;
+import cn.com.yusys.yusp.domain.dto.TagInfoPageDto;
 import cn.com.yusys.yusp.domain.entity.AitagTagInfoEntity;
 import cn.com.yusys.yusp.domain.vo.*;
 import cn.com.yusys.yusp.domain.vo.fastapivo.AiTaggingResponseVo;
@@ -20,6 +22,7 @@ import org.springframework.core.io.Resource;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -57,13 +60,26 @@ public class AitagTagInfoController {
     /**
      * 列表查询
      *
-     * @param aitagTagInfoQueryVo
+     * @param dto
      * @return ResultDto
      */
     @ApiOperationType("列表标签分页信息")
-    @GetMapping("/page")
-    public ResultDto<List<AitagTagInfoEntity>> page(AitagTagInfoQueryVo aitagTagInfoQueryVo) {
-        IPage<AitagTagInfoEntity> page = aitagTagInfoService.queryPage(aitagTagInfoQueryVo);
+    @PostMapping("/page")
+    public ResultDto<List<AitagTagInfoEntity>> page(@RequestBody TagInfoPageDto dto) {
+        AitagTagInfoQueryVo queryVo = new AitagTagInfoQueryVo();
+        queryVo.setCategoryId(dto.getCategoryId());
+        queryVo.setTagNm(dto.getTagName());
+        queryVo.setTagCode(dto.getTagCode());
+
+        // 处理 state:String -> Integer
+        if (dto.getState() != null && !dto.getState().isEmpty()) {
+            queryVo.setState(Integer.valueOf(dto.getState()));
+        }
+
+        queryVo.setPage(dto.getPage());
+        queryVo.setPageSize(dto.getPageSize());
+
+        IPage<AitagTagInfoEntity> page = aitagTagInfoService.queryPage(queryVo);
         return ResultDto.success(page.getRecords()).total(page.getTotal());
     }
 
@@ -71,16 +87,49 @@ public class AitagTagInfoController {
     /**
      * 列表查询
      *
-     * @param aitagTagInfoQueryVo
+     * @param dto
      * @return ResultDto
      */
     @ApiOperationType("标签列表查询")
-    @GetMapping("/list")
-    public ResultDto<List<AitagTagInfoEntity>> list(AitagTagInfoQueryVo aitagTagInfoQueryVo) {
-        List<AitagTagInfoEntity> page = aitagTagInfoService.queryList(aitagTagInfoQueryVo);
+    @PostMapping("/list")
+    public ResultDto<List<AitagTagInfoEntity>> list(@RequestBody TagInfoPageDto dto) {
+        AitagTagInfoQueryVo queryVo = new AitagTagInfoQueryVo();
+        queryVo.setCategoryId(dto.getCategoryId());
+        queryVo.setTagNm(dto.getTagName());
+        queryVo.setTagCode(dto.getTagCode());
+
+        // 处理 state:String -> Integer
+        if (dto.getState() != null && !dto.getState().isEmpty()) {
+            queryVo.setState(Integer.valueOf(dto.getState()));
+        }
+
+        List<AitagTagInfoEntity> page = aitagTagInfoService.queryList(queryVo);
         return ResultDto.success(page);
     }
 
+//    @ApiOperationType("列表标签分页信息")
+//    @GetMapping("/page")
+//    public ResultDto<List<AitagTagInfoEntity>> page(AitagTagInfoQueryVo aitagTagInfoQueryVo) {
+//        IPage<AitagTagInfoEntity> page = aitagTagInfoService.queryPage(aitagTagInfoQueryVo);
+//        return ResultDto.success(page.getRecords()).total(page.getTotal());
+//    }
+//
+//
+//    /**
+//     * 列表查询
+//     *
+//     * @param aitagTagInfoQueryVo
+//     * @return ResultDto
+//     */
+//    @ApiOperationType("标签列表查询")
+//    @GetMapping("/list")
+//    public ResultDto<List<AitagTagInfoEntity>> list(AitagTagInfoQueryVo aitagTagInfoQueryVo) {
+//        List<AitagTagInfoEntity> page = aitagTagInfoService.queryList(aitagTagInfoQueryVo);
+//        return ResultDto.success(page);
+//    }
+
+
+
     /**
      * 查询标签树
      *
@@ -101,16 +150,30 @@ public class AitagTagInfoController {
     /**
      * 详细
      *
-     * @param id
+     * @param dto
      * @return ResultDto
      */
     @ApiOperationType("标签详细")
-    @GetMapping("/info/{id}")
-    public ResultDto<TagInfoDto> info(@PathVariable("id") String id) {
-        TagInfoDto aitagTagInfo = aitagTagInfoService.getTagInfo(id);
+    @PostMapping("/info")
+    public ResultDto<TagInfoDto> info(@Validated @RequestBody TagInfoDetailDto dto) {
+        TagInfoDto aitagTagInfo = aitagTagInfoService.getTagInfo(dto.getId());
         return ResultDto.success(aitagTagInfo);
     }
 
+//    /**
+//     * 详细
+//     *
+//     * @param id
+//     * @return ResultDto
+//     */
+//    @ApiOperationType("标签详细")
+//    @GetMapping("/info/{id}")
+//    public ResultDto<TagInfoDto> info(@PathVariable("id") String id) {
+//        TagInfoDto aitagTagInfo = aitagTagInfoService.getTagInfo(id);
+//        return ResultDto.success(aitagTagInfo);
+//    }
+//
+
     /**
      * 保存
      *
@@ -233,7 +296,8 @@ public class AitagTagInfoController {
      * @return ResultDto
      */
     @ApiOperationType("批量导入模板下载")
-    @GetMapping("/downloadFile")
+    @PostMapping("/downloadFile")
+//    @GetMapping("/downloadFile")
     public ResponseEntity<Resource> downloadFile( ) throws IOException {
 
         ClassPathResource resource = new ClassPathResource("template/tag_batch_Import_template.xlsx");

+ 45 - 4
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagTagLogController.java

@@ -103,8 +103,8 @@ public class AitagTagLogController {
      * @return ResultDto
      */
     @ApiOperationType("打标结果详情")
-    @GetMapping("/show/{id}")
-    public ResultDto<TagLogDto> show(@PathVariable("id") String id) {
+    @PostMapping("/show")
+    public ResultDto<TagLogDto> show(@RequestParam("id") String id) {
         TagLogDto taggingDetailsResDTO = aitagTagLogService.show(id);
         return ResultDto.success(taggingDetailsResDTO);
     }
@@ -117,8 +117,8 @@ public class AitagTagLogController {
      * @return ResultDto
      */
     @ApiOperationType("导出数据")
-    @GetMapping("/exportData")
-    public void exportData(TaggingTransactionReqVo transactionReqVo,HttpServletResponse response) throws IOException {
+    @PostMapping("/exportData")
+    public void exportData(@RequestBody TaggingTransactionReqVo transactionReqVo, HttpServletResponse response) throws IOException {
         List<AitagTagLogEntity> aitagTagLogEntities = aitagTagLogService.queryConfirmedTagData(transactionReqVo);
         List<ExportDataVo> exportDataVos = new ArrayList<>();
         for (AitagTagLogEntity aitagTagLog:aitagTagLogEntities) {
@@ -143,6 +143,47 @@ public class AitagTagLogController {
                 .doWrite(exportDataVos);
     }
 
+//    @ApiOperationType("打标结果详情")
+//    @GetMapping("/show/{id}")
+//    public ResultDto<TagLogDto> show(@PathVariable("id") String id) {
+//        TagLogDto taggingDetailsResDTO = aitagTagLogService.show(id);
+//        return ResultDto.success(taggingDetailsResDTO);
+//    }
+//
+//
+//    /**
+//     * 导出数据
+//     *
+//     * @param transactionReqVo
+//     * @return ResultDto
+//     */
+//    @ApiOperationType("导出数据")
+//    @GetMapping("/exportData")
+//    public void exportData(TaggingTransactionReqVo transactionReqVo,HttpServletResponse response) throws IOException {
+//        List<AitagTagLogEntity> aitagTagLogEntities = aitagTagLogService.queryConfirmedTagData(transactionReqVo);
+//        List<ExportDataVo> exportDataVos = new ArrayList<>();
+//        for (AitagTagLogEntity aitagTagLog:aitagTagLogEntities) {
+//            ExportDataVo exportDataVo = JSONObject.parseObject(JSONObject.toJSONString(aitagTagLog), ExportDataVo.class);
+//            if(FEEDBACK_RESULT_REJECT.equals(aitagTagLog.getFeedback())){
+//                String feedbackResult = aitagTagLog.getFeedbackResult();
+//                exportDataVo.setResult(getTags(feedbackResult));
+//            }else{
+//                String result = aitagTagLog.getResult();
+//                exportDataVo.setResult(getTags(result));
+//            }
+//            exportDataVos.add(exportDataVo);
+//        }
+//        // 2. 设置响应头(防止中文乱码)
+//        response.reset();
+//        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
+//        response.setCharacterEncoding("utf-8");
+//        String fileName = URLEncoder.encode("导出标签", "UTF-8").replaceAll("\\+", "%20");
+//        response.setHeader("Content-Disposition", "attachment; filename*=utf-8''" + fileName + ".xlsx");
+//        EasyExcel.write(response.getOutputStream(), ExportDataVo.class)
+//                .sheet("标签数据")
+//                .doWrite(exportDataVos);
+//    }
+
     private String getTags(String result) {
         if(StringUtils.isBlank(result)){
             return "";

+ 3 - 9
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/FastApiController.java

@@ -4,12 +4,10 @@ import cn.com.yusys.yusp.annotation.ApiOperationType;
 import cn.com.yusys.yusp.domain.dto.fastapidto.AiTaggingFeedbackRequestDto;
 import cn.com.yusys.yusp.domain.dto.fastapidto.AiTaggingQueryRequestDto;
 import cn.com.yusys.yusp.domain.dto.fastapidto.AiTaggingRequestDto;
-import cn.com.yusys.yusp.domain.vo.EsbVo.CustomerProfileReqVo;
 import cn.com.yusys.yusp.domain.vo.fastapivo.AiTaggingQueryResponseVo;
 import cn.com.yusys.yusp.domain.vo.fastapivo.AiTaggingResponseVo;
 import cn.com.yusys.yusp.model.Result;
 import cn.com.yusys.yusp.service.FastApiService;
-import cn.com.yusys.yusp.service.esb.ESBService;
 import cn.com.yusys.yusp.util.AuthContextUtil;
 import io.swagger.annotations.Api;
 import lombok.extern.slf4j.Slf4j;
@@ -42,14 +40,10 @@ public class FastApiController {
     }
 
     @ApiOperationType("AI 打标查询")
-    @GetMapping("/query")
-    public Result<AiTaggingQueryResponseVo> query(
-            @Valid @RequestParam String businessAttr) {
+    @PostMapping("/query")
+    public Result<AiTaggingQueryResponseVo> query(@Valid @RequestBody AiTaggingQueryRequestDto request) {
         try {
-            log.info("收到 AI 打标查询请求:businessAttr={}", businessAttr);
-
-            AiTaggingQueryRequestDto request = new AiTaggingQueryRequestDto();
-            request.setBusinessAttr(businessAttr);
+            log.info("收到 AI 打标查询请求:businessAttr={}", request.getBusinessAttr());
 
             AiTaggingQueryResponseVo response = fastApiService.query(request);
             return Result.success(response);

+ 22 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagApiLogDetailDto.java

@@ -0,0 +1,22 @@
+package cn.com.yusys.yusp.domain.dto;
+
+import lombok.Data;
+import io.swagger.annotations.ApiModelProperty;
+import javax.validation.constraints.NotBlank;
+
+/**
+ * API 日志详情查询 DTO
+ */
+@Data
+public class AitagApiLogDetailDto {
+    
+    @NotBlank(message = "日志 ID 不能为空")
+    @ApiModelProperty(value = "日志 ID", required = true)
+    private String id;
+    
+    @ApiModelProperty(value = "页码", example = "1")
+    private int page = 1;
+    
+    @ApiModelProperty(value = "每页大小", example = "10")
+    private Integer pageSize;
+}

+ 23 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagApiLogListDto.java

@@ -0,0 +1,23 @@
+package cn.com.yusys.yusp.domain.dto;
+
+import lombok.Data;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * API 日志列表查询 DTO
+ */
+@Data
+public class AitagApiLogListDto {
+
+    @ApiModelProperty(value = "开始时间(yyyy-MM-dd)")
+    private String startTime;
+
+    @ApiModelProperty(value = "结束时间(yyyy-MM-dd)")
+    private String endTime;
+
+    @ApiModelProperty(value = "页码", example = "1")
+    private int page = 1;
+
+    @ApiModelProperty(value = "每页大小", example = "10")
+    private Integer pageSize;
+}

+ 17 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagAppListDto.java

@@ -0,0 +1,17 @@
+package cn.com.yusys.yusp.domain.dto;
+
+import lombok.Data;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * 应用列表查询 DTO
+ */
+@Data
+public class AitagAppListDto {
+
+    @ApiModelProperty(value = "页码", example = "1")
+    private int page = 1;
+
+    @ApiModelProperty(value = "每页大小", example = "10")
+    private int pageSize = 10;
+}

+ 22 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagAppQueryDto.java

@@ -0,0 +1,22 @@
+package cn.com.yusys.yusp.domain.dto;
+
+import lombok.Data;
+import io.swagger.annotations.ApiModelProperty;
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 应用查询 DTO
+ */
+@Data
+public class AitagAppQueryDto {
+    
+    @NotBlank(message = "应用名称不能为空")
+    @ApiModelProperty(value = "应用名称", required = true)
+    private String appName;
+    
+    @ApiModelProperty(value = "页码", example = "1")
+    private int page = 1;
+    
+    @ApiModelProperty(value = "每页大小", example = "10")
+    private int pageSize = 10;
+}

+ 17 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagEnabledTagCategoryListDto.java

@@ -0,0 +1,17 @@
+package cn.com.yusys.yusp.domain.dto;
+
+import lombok.Data;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * 已启用标签体系列表查询 DTO
+ */
+@Data
+public class AitagEnabledTagCategoryListDto {
+    
+    @ApiModelProperty(value = "页码", example = "1")
+    private int page = 1;
+    
+    @ApiModelProperty(value = "每页大小", example = "10")
+    private Integer pageSize;
+}

+ 16 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagTagCategoryDetailDto.java

@@ -0,0 +1,16 @@
+package cn.com.yusys.yusp.domain.dto;
+
+import lombok.Data;
+import io.swagger.annotations.ApiModelProperty;
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 标签体系详情查询 DTO
+ */
+@Data
+public class AitagTagCategoryDetailDto {
+    
+    @NotBlank(message = "体系 ID 不能为空")
+    @ApiModelProperty(value = "体系 ID", required = true)
+    private String id;
+}

+ 20 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/AitagTagCategoryListDto.java

@@ -0,0 +1,20 @@
+package cn.com.yusys.yusp.domain.dto;
+
+import lombok.Data;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * 标签体系列表查询 DTO
+ */
+@Data
+public class AitagTagCategoryListDto {
+
+    @ApiModelProperty(value = "体系名称(模糊查询)")
+    private String categoryNm;
+
+    @ApiModelProperty(value = "页码", example = "1")
+    private int page = 1;
+
+    @ApiModelProperty(value = "每页大小")
+    private Integer pageSize;
+}

+ 16 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/TagInfoDetailDto.java

@@ -0,0 +1,16 @@
+package cn.com.yusys.yusp.domain.dto;
+
+import lombok.Data;
+import io.swagger.annotations.ApiModelProperty;
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 标签详情查询 DTO
+ */
+@Data
+public class TagInfoDetailDto {
+    
+    @NotBlank(message = "标签 ID 不能为空")
+    @ApiModelProperty(value = "标签 ID", required = true)
+    private String id;
+}

+ 29 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/TagInfoPageDto.java

@@ -0,0 +1,29 @@
+package cn.com.yusys.yusp.domain.dto;
+
+import lombok.Data;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * 标签分页查询 DTO
+ */
+@Data
+public class TagInfoPageDto {
+
+    @ApiModelProperty(value = "体系 ID")
+    private String categoryId;
+
+    @ApiModelProperty(value = "标签名称")
+    private String tagName;
+
+    @ApiModelProperty(value = "标签编码")
+    private String tagCode;
+
+    @ApiModelProperty(value = "状态:0-启用;1-停用")
+    private String state;
+
+    @ApiModelProperty(value = "页码", example = "1")
+    private long page = 1;
+
+    @ApiModelProperty(value = "每页大小", example = "10")
+    private Integer pageSize;
+}

+ 6 - 5
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/dto/fastapidto/AiTaggingQueryRequestDto.java

@@ -1,17 +1,18 @@
-
 package cn.com.yusys.yusp.domain.dto.fastapidto;
 
 import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
+import io.swagger.annotations.ApiModelProperty;
 import javax.validation.constraints.NotBlank;
 
+/**
+ * AI 打标查询请求 DTO
+ */
 @Data
 @ApiModel("AI 打标查询请求")
 public class AiTaggingQueryRequestDto {
-
+    
     @NotBlank(message = "业务属性不能为空")
-    @ApiModelProperty(value = "业务属性", required = true)
+    @ApiModelProperty(value = "业务属性(贷款编号)", required = true)
     private String businessAttr;
 }

+ 2 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/vo/AitagTagInfoQueryVo.java

@@ -75,4 +75,6 @@ public class AitagTagInfoQueryVo extends PageQuery {
     private String tagPrompt;
 
 
+    public void setPageSize(Integer pageSize) {
+    }
 }

+ 2 - 2
server/yusp-tagging-core/src/main/resources/mapper/AitagTagLogMapper.xml

@@ -104,7 +104,7 @@
         FROM (
         -- 从feedback_result获取
         SELECT elem->>'tag_name' AS tag_name
-        FROM ai_tagging.aitag_tag_log t
+        FROM aitag_tag_log t
         CROSS JOIN LATERAL jsonb_array_elements(t.feedback_result) elem
         WHERE t.is_delete = 0
         AND t.tag_scope = 0
@@ -123,7 +123,7 @@
         </if>
         UNION ALL
         SELECT elem->>'tag_name' AS tag_name
-        FROM ai_tagging.aitag_tag_log t
+        FROM aitag_tag_log t
         CROSS JOIN LATERAL jsonb_array_elements(t.result) elem
         WHERE t.is_delete = 0
         AND t.tag_scope = 0