Compare commits

...

1 Commits

Author SHA1 Message Date
vertoryao
e72d36e049 refactor(dify): 升级 dify-spring-boot-starter版本并优化相关代码
- 将 dify-spring-boot-starter 版本从 0.11.0 升级到 1.0.3
2025-06-12 17:18:49 +08:00
7 changed files with 26 additions and 20 deletions

View File

@ -42,7 +42,7 @@
<dependency>
<groupId>io.github.guoshiqiufeng.dify</groupId>
<artifactId>dify-spring-boot-starter</artifactId>
<version>0.11.0</version>
<version>1.0.3</version>
</dependency>
<dependency>

View File

@ -1,6 +1,7 @@
package com.zsc.edu.dify.framework.json;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
import org.springframework.context.annotation.Bean;
@ -15,6 +16,7 @@ public class JsonConfig {
@Bean
public Jackson2ObjectMapperBuilderCustomizer customizer() {
return builder -> builder
.modules(new JavaTimeModule())
.serializationInclusion(JsonInclude.Include.NON_NULL)
.serializationInclusion(JsonInclude.Include.NON_EMPTY);
}

View File

@ -9,9 +9,9 @@ import com.zsc.edu.dify.modules.dify.service.AppEntityService;
import com.zsc.edu.dify.modules.dify.service.WorkflowDeptService;
import com.zsc.edu.dify.modules.operationLog.entity.OperationLogAnnotation;
import io.github.guoshiqiufeng.dify.server.DifyServer;
import io.github.guoshiqiufeng.dify.server.dto.response.ApiKeyResponseVO;
import io.github.guoshiqiufeng.dify.server.dto.response.AppsResponseVO;
import io.github.guoshiqiufeng.dify.server.dto.response.DatasetApiKeyResponseVO;
import io.github.guoshiqiufeng.dify.server.dto.response.ApiKeyResponse;
import io.github.guoshiqiufeng.dify.server.dto.response.AppsResponse;
import io.github.guoshiqiufeng.dify.server.dto.response.DatasetApiKeyResponse;
import jakarta.annotation.Resource;
import lombok.AllArgsConstructor;
import org.springframework.http.HttpStatus;
@ -50,7 +50,7 @@ public class V1ServerController {
* @return
*/
@GetMapping("/{id}")
public AppsResponseVO getApp(@PathVariable("id") String id) {
public AppsResponse getApp(@PathVariable("id") String id) {
return difyServer.app(id);
}
@ -60,7 +60,7 @@ public class V1ServerController {
* @return
*/
@GetMapping("/api-key/{id}")
public List<ApiKeyResponseVO> getAppApiKey(@PathVariable("id") String id) {
public List<ApiKeyResponse> getAppApiKey(@PathVariable("id") String id) {
return difyServer.getAppApiKey(id);
}
@ -70,7 +70,7 @@ public class V1ServerController {
* @return
*/
@PostMapping("/api-key/init/{id}")
public List<ApiKeyResponseVO> initAppApiKey(@PathVariable("id") String id) {
public List<ApiKeyResponse> initAppApiKey(@PathVariable("id") String id) {
return difyServer.initAppApiKey(id);
}
@ -79,7 +79,7 @@ public class V1ServerController {
* @return
*/
@GetMapping("/api-key/dataset")
public List<DatasetApiKeyResponseVO> getDatasetApiKey() {
public List<DatasetApiKeyResponse> getDatasetApiKey() {
return difyServer.getDatasetApiKey();
}
@ -88,7 +88,7 @@ public class V1ServerController {
* @return
*/
@PostMapping("/api-key/dataset/init")
public List<DatasetApiKeyResponseVO> initDatasetApiKey() {
public List<DatasetApiKeyResponse> initDatasetApiKey() {
return difyServer.initDatasetApiKey();
}

View File

@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.annotation.IEnum;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zsc.edu.dify.framework.json.JsonbTypeHandler;
import io.github.guoshiqiufeng.dify.server.dto.response.AppsResponseVO;
import io.github.guoshiqiufeng.dify.server.dto.response.AppsResponse;
import lombok.*;
import java.util.List;
@ -20,7 +20,7 @@ import java.util.Map;
@Getter
@Setter
@TableName("apps_entity")
public class AppEntity extends AppsResponseVO {
public class AppEntity extends AppsResponse {
@TableField(typeHandler = JsonbTypeHandler.class)
private Map<String, Object> modelConfig;

View File

@ -2,10 +2,10 @@ package com.zsc.edu.dify.modules.dify.mapper;
import com.zsc.edu.dify.common.mapstruct.BaseMapper;
import com.zsc.edu.dify.modules.dify.entity.AppEntity;
import io.github.guoshiqiufeng.dify.server.dto.response.AppsResponseVO;
import io.github.guoshiqiufeng.dify.server.dto.response.AppsResponse;
import org.mapstruct.Mapper;
import org.mapstruct.ReportingPolicy;
@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE)
public interface AppEntityMapper extends BaseMapper<AppsResponseVO, AppEntity> {
public interface AppEntityMapper extends BaseMapper<AppsResponse, AppEntity> {
}

View File

@ -11,8 +11,8 @@ import com.zsc.edu.dify.modules.dify.repo.AppEntityRepository;
import com.zsc.edu.dify.modules.dify.repo.WorkflowDeptRepository;
import com.zsc.edu.dify.modules.dify.service.AppEntityService;
import io.github.guoshiqiufeng.dify.server.DifyServer;
import io.github.guoshiqiufeng.dify.server.dto.response.ApiKeyResponseVO;
import io.github.guoshiqiufeng.dify.server.dto.response.AppsResponseVO;
import io.github.guoshiqiufeng.dify.server.dto.response.ApiKeyResponse;
import io.github.guoshiqiufeng.dify.server.dto.response.AppsResponse;
import jakarta.annotation.Resource;
import lombok.AllArgsConstructor;
import org.springframework.cache.annotation.Cacheable;
@ -51,19 +51,19 @@ public class AppEntityServiceImpl extends ServiceImpl<AppEntityRepository, AppEn
* @param appsResponseList
* @return
*/
public List<AppsResponseVO> addApps(List<AppsResponseVO> appsResponseList) {
for(AppsResponseVO appsResponse : appsResponseList){
public List<AppsResponse> addApps(List<AppsResponse> appsResponseList) {
for(AppsResponse appsResponse : appsResponseList){
boolean isHave = baseMapper.exists(new QueryWrapper<AppEntity>().eq("id", appsResponse.getId()));
if(!isHave){
AppEntity appEntity = appEntityMapper.toEntity(appsResponse);
baseMapper.insert(appEntity);
List<ApiKeyResponseVO> apiKeyList =difyServer.getAppApiKey(appsResponse.getId());
List<ApiKeyResponse> apiKeyList =difyServer.getAppApiKey(appsResponse.getId());
if (apiKeyList != null) {
difyServer.initAppApiKey(appsResponse.getId());
Optional<ApiKeyResponseVO> apiKeyResponseVO = apiKeyList.stream()
Optional<ApiKeyResponse> ApiKeyResponse = apiKeyList.stream()
.filter(apiKey -> apiKey.getToken() != null)
.findFirst();
apiKeyResponseVO.ifPresent(apiKey -> appEntity.setApiKey(apiKey.getToken()));
ApiKeyResponse.ifPresent(apiKey -> appEntity.setApiKey(apiKey.getToken()));
}
baseMapper.updateById(appEntity);
}else{

View File

@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Getter;
import lombok.Setter;
@ -38,6 +40,7 @@ public class BaseEntity implements Serializable {
* 创建时间
*/
@TableField(value = "create_time", fill = FieldFill.INSERT)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
public LocalDateTime createTime;
/*
* 创建人
@ -49,6 +52,7 @@ public class BaseEntity implements Serializable {
* 更新时间
*/
@TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
public LocalDateTime updateTime;
/*
* 更新人