From e9d3f263ad049ea59e3d5fa8235e6a7d808f2183 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 03 Feb 2026 14:07:54 +0800
Subject: [PATCH] feat(ai): 新增产品题库问题删除功能 产品题库需要批量删除
---
src/main/java/cc/mrbird/febs/ai/service/AiProductQuestionService.java | 2 ++
src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java | 14 ++++++++++++++
src/main/java/cc/mrbird/febs/ai/controller/productQuestion/AiProductQuestionController.java | 8 +++++++-
src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html | 24 ++++++++++++++++++++++++
4 files changed, 47 insertions(+), 1 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/ai/controller/productQuestion/AiProductQuestionController.java b/src/main/java/cc/mrbird/febs/ai/controller/productQuestion/AiProductQuestionController.java
index 8fc94e9..67031b3 100644
--- a/src/main/java/cc/mrbird/febs/ai/controller/productQuestion/AiProductQuestionController.java
+++ b/src/main/java/cc/mrbird/febs/ai/controller/productQuestion/AiProductQuestionController.java
@@ -86,11 +86,17 @@
}
@PostMapping(value = "stateUpdate/{type}/{ids}")
- @ControllerEndpoint(operation = "更新", exceptionMessage = "更新失败")
+ @ControllerEndpoint(operation = "更新", exceptionMessage = "操作失败")
public FebsResponse stateUpdate(@PathVariable("ids") String ids, @PathVariable("type") Integer type) {
return aiProductQuestionService.stateUpdate(ids, type);
}
+ @PostMapping(value = "productQuestionDelete/{ids}")
+ @ControllerEndpoint(operation = "删除", exceptionMessage = "操作失败")
+ public FebsResponse productQuestionDelete(@PathVariable("ids") String ids) {
+ return aiProductQuestionService.productQuestionDelete(ids);
+ }
+
@GetMapping("delete/{id}")
@ControllerEndpoint(operation = "删除", exceptionMessage = "操作失败")
public FebsResponse delete(
diff --git a/src/main/java/cc/mrbird/febs/ai/service/AiProductQuestionService.java b/src/main/java/cc/mrbird/febs/ai/service/AiProductQuestionService.java
index 49b0835..bc75b00 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/AiProductQuestionService.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/AiProductQuestionService.java
@@ -40,6 +40,8 @@
FebsResponse delete(String id);
+ FebsResponse productQuestionDelete(String ids);
+
List<AiProductQuestion> questionTree(String companyId);
List<AiProductQuestion> productQuestionTree(LambdaQueryWrapper<AiProductQuestion> aiProductQuestionLambdaQueryWrapper);
diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java
index 85818c2..e640397 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java
@@ -206,6 +206,20 @@
}
@Override
+ public FebsResponse productQuestionDelete(String ids) {
+ if (StrUtil.isEmpty(ids)) {
+ throw new FebsException("参数错误");
+ }
+ List<String> idList = StrUtil.split(ids, ',');
+ this.update(null,
+ Wrappers.lambdaUpdate(AiProductQuestion.class)
+ .set(AiProductQuestion::getState, 2)
+ .set(AiProductQuestion::getUpdatedTime, new Date())
+ .in(AiProductQuestion::getId, idList));
+ return new FebsResponse().success().message("操作成功");
+ }
+
+ @Override
public List<AiProductQuestion> questionTree(String companyId) {
LambdaQueryWrapper<AiProductQuestion> query = Wrappers.lambdaQuery(AiProductQuestion.class);
if (StrUtil.isNotEmpty(companyId)){
diff --git a/src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html b/src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html
index 16447b4..246eb71 100644
--- a/src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html
+++ b/src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html
@@ -55,6 +55,7 @@
<button class="layui-btn layui-btn-sm layui-btn-primary febs-button-green-plain" shiro:hasPermission="productQuestionList:aiAdd" lay-event="productQuestionAiAdd">AI新增</button>
<button class="layui-btn layui-btn-sm layui-btn-primary febs-button-green-plain" shiro:hasPermission="productQuestionList:aiAdd" lay-event="productQuestionStateOpen">启用</button>
<button class="layui-btn layui-btn-sm layui-btn-primary febs-button-green-plain" shiro:hasPermission="productQuestionList:aiAdd" lay-event="productQuestionStateClose">禁用</button>
+ <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-green-plain" shiro:hasPermission="productQuestionList:aiAdd" lay-event="productQuestionDelete">删除</button>
</div>
</script>
@@ -236,6 +237,21 @@
productQuestionStateUpdate(ids.join(','), 0);
});
}
+ if (layEvent === 'productQuestionDelete') {
+
+ var checkData = table.checkStatus('productQuestionTable').data;
+ if (checkData.length <= 0) {
+ febs.alert.warn('请选择');
+ return;
+ }
+ febs.modal.confirm('删除', '确定?', function () {
+ var ids = [];
+ layui.each(checkData, function (key, item) {
+ ids.push(item.id)
+ });
+ productQuestionDelete(ids.join(','));
+ });
+ }
});
@@ -246,6 +262,14 @@
});
}
+
+
+ function productQuestionDelete(ids) {
+ febs.post(ctx + 'admin/productQuestion/productQuestionDelete/'+ ids, null, function () {
+ febs.alert.success('操作成功');
+ });
+ }
+
function initProductQuestionTable() {
tableIns = febs.table.init({
elem: $view.find('table'),
--
Gitblit v1.9.1