src/main/java/cc/mrbird/febs/ai/controller/productQuestion/AiProductQuestionController.java
@@ -72,6 +72,12 @@ return aiProductQuestionService.update(dto); } @PostMapping(value = "stateUpdate/{type}/{ids}") @ControllerEndpoint(operation = "更新", exceptionMessage = "更新失败") public FebsResponse stateUpdate(@PathVariable("ids") String ids, @PathVariable("type") Integer type) { return aiProductQuestionService.stateUpdate(ids, type); } @GetMapping("delete/{id}") @ControllerEndpoint(operation = "删除", exceptionMessage = "操作失败") public FebsResponse delete( src/main/java/cc/mrbird/febs/ai/service/AiProductQuestionService.java
@@ -33,6 +33,8 @@ FebsResponse update(AiProductQuestion dto); FebsResponse stateUpdate(String ids, Integer type); FebsResponse delete(String id); List<AiProductQuestion> questionTree(String companyId); src/main/java/cc/mrbird/febs/ai/service/impl/AiProductQuestionServiceImpl.java
@@ -9,9 +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; @@ -155,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)){ src/main/resources/templates/febs/views/modules/ai/productQuestion/list.html
@@ -52,7 +52,9 @@ <script type="text/html" id="productQuestionToolbar"> <div class="layui-btn-container"> <button class="layui-btn layui-btn-sm layui-btn-primary febs-button-green-plain" shiro:hasPermission="productQuestionList:add" lay-event="productQuestionAdd">手动新增</button> <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:add" lay-event="productQuestionAdd">手动新增</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> </div> </script> @@ -205,7 +207,44 @@ } }); } if (layEvent === 'productQuestionStateOpen') { 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) }); productQuestionStateUpdate(ids.join(','), 1); }); } if (layEvent === 'productQuestionStateClose') { 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) }); productQuestionStateUpdate(ids.join(','), 0); }); } }); function productQuestionStateUpdate(ids, type) { febs.post(ctx + 'admin/productQuestion/stateUpdate/' + type + "/"+ ids, null, function () { febs.alert.success('重置成功'); }); } function initProductQuestionTable() { tableIns = febs.table.init({