feat(dify): 添加应用启用禁用功能和可用应用列表接口- 在 DifyServerService 接口中添加 enabledApp 方法
- 在 DifyServerServiceImpl 中实现 enabledApp 方法,用于切换应用的启用状态 - 在 V1ServerController 中添加 enabledApp 控制器方法- 新增 getAbleApps接口,用于获取可用应用列表 - 优化应用列表查询,使用 LambdaQueryWrapper 替代 QueryWrapper
This commit is contained in:
parent
b4d5584f9b
commit
9b72d5deb0
@ -10,6 +10,7 @@ import org.springframework.security.authentication.ProviderManager;
|
|||||||
import org.springframework.security.authentication.dao.DaoAuthenticationProvider;
|
import org.springframework.security.authentication.dao.DaoAuthenticationProvider;
|
||||||
import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity;
|
import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity;
|
||||||
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
||||||
|
import org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity;
|
||||||
import org.springframework.security.core.session.SessionRegistry;
|
import org.springframework.security.core.session.SessionRegistry;
|
||||||
import org.springframework.security.core.userdetails.UserDetailsService;
|
import org.springframework.security.core.userdetails.UserDetailsService;
|
||||||
import org.springframework.security.web.SecurityFilterChain;
|
import org.springframework.security.web.SecurityFilterChain;
|
||||||
@ -23,6 +24,7 @@ import javax.sql.DataSource;
|
|||||||
/**
|
/**
|
||||||
* @author harry_yao
|
* @author harry_yao
|
||||||
*/
|
*/
|
||||||
|
//@EnableWebFluxSecurity
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@EnableMethodSecurity
|
@EnableMethodSecurity
|
||||||
@Configuration
|
@Configuration
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package com.zsc.edu.dify.modules.dify.controller;
|
package com.zsc.edu.dify.modules.dify.controller;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.zsc.edu.dify.modules.dify.entity.AppEntity;
|
import com.zsc.edu.dify.modules.dify.entity.AppEntity;
|
||||||
import com.zsc.edu.dify.modules.dify.service.DifyServerService;
|
import com.zsc.edu.dify.modules.dify.service.DifyServerService;
|
||||||
import io.github.guoshiqiufeng.dify.server.DifyServer;
|
import io.github.guoshiqiufeng.dify.server.DifyServer;
|
||||||
@ -82,11 +83,25 @@ public class V1ServerController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* 切换启用状态
|
||||||
*
|
*
|
||||||
|
* @param id 应用id
|
||||||
|
* @return
|
||||||
*/
|
*/
|
||||||
@PostMapping("/app/{id}")
|
@PostMapping("/app/{id}")
|
||||||
public boolean enabledApp(@PathVariable("id") String id) {
|
public boolean enabledApp(@PathVariable String id) {
|
||||||
return true;
|
return difyServerService.enabledApp(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取可用应用列表
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@GetMapping("/apps/able")
|
||||||
|
public List<AppEntity> getAbleApps() {
|
||||||
|
LambdaQueryWrapper<AppEntity> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.eq(AppEntity::isEnabled, true);
|
||||||
|
return difyServerService.list(queryWrapper);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -9,4 +9,5 @@ import java.util.List;
|
|||||||
public interface DifyServerService extends IService<AppEntity> {
|
public interface DifyServerService extends IService<AppEntity> {
|
||||||
List<AppsResponseVO> getApps(String mode, String name);
|
List<AppsResponseVO> getApps(String mode, String name);
|
||||||
|
|
||||||
|
boolean enabledApp(String id);
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,7 @@
|
|||||||
package com.zsc.edu.dify.modules.dify.service.Impl;
|
package com.zsc.edu.dify.modules.dify.service.Impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.zsc.edu.dify.common.util.TreeUtil;
|
|
||||||
import com.zsc.edu.dify.exception.ConstraintException;
|
import com.zsc.edu.dify.exception.ConstraintException;
|
||||||
import com.zsc.edu.dify.modules.dify.entity.AppEntity;
|
import com.zsc.edu.dify.modules.dify.entity.AppEntity;
|
||||||
import com.zsc.edu.dify.modules.dify.mapper.AppEntityMapper;
|
import com.zsc.edu.dify.modules.dify.mapper.AppEntityMapper;
|
||||||
@ -57,4 +55,14 @@ public class DifyServerServiceImpl extends ServiceImpl<AppEntityRepository, AppE
|
|||||||
return appsResponseList;
|
return appsResponseList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean enabledApp(String id) {
|
||||||
|
AppEntity appEntity = baseMapper.selectById(id);
|
||||||
|
if(appEntity == null){
|
||||||
|
throw new ConstraintException("应用不存在");
|
||||||
|
}
|
||||||
|
appEntity.setEnabled(!appEntity.isEnabled());
|
||||||
|
baseMapper.updateById(appEntity);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user