This commit is contained in:
六如
2024-09-14 10:33:43 +08:00
parent 95072a02f6
commit a14ac9e3c9
237 changed files with 1078 additions and 694 deletions

View File

@@ -2,15 +2,11 @@
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.gitee.sop</groupId>
<artifactId>sop-parent</artifactId>
<version>5.0.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath> <!-- lookup parent from repository -->
</parent>
<groupId>com.gitee.sop</groupId>
<modelVersion>4.0.0</modelVersion>
<artifactId>sop-example</artifactId>
<version>5.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>

View File

@@ -1,19 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.gitee.sop</groupId>
<artifactId>sop-parent</artifactId>
<version>5.0.0-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath> <!-- lookup parent from repository -->
</parent>
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.6.15</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.gitee.sop</groupId>
<artifactId>sop-story</artifactId>
<version>5.0.0-SNAPSHOT</version>
<name>sop-story</name>
<properties>
<java.version>1.8</java.version>
<!-- dubbo版本 -->
<dubbo.version>3.2.10</dubbo.version>
</properties>
<dependencies>
@@ -31,13 +36,16 @@
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>${dubbo.version}</version>
</dependency>
<!-- nacos注册中心
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-discovery-spring-boot-starter</artifactId>
<version>0.2.1</version>
</dependency>
-->
<dependency>
<groupId>org.apache.commons</groupId>

View File

@@ -3,21 +3,24 @@ package com.gitee.sop.storyweb.open;
import com.gitee.sop.storyweb.open.req.StorySaveDTO;
import com.gitee.sop.storyweb.open.resp.StoryResponse;
import com.gitee.sop.support.annotation.Open;
import com.gitee.sop.support.request.FileData;
import java.util.List;
/**
* 开放接口定义
*
* @author 六如
*/
public interface StoryService {
public interface OpenStory {
@Open("story.save")
Integer save(StorySaveDTO storySaveDTO);
@Open("story.update")
Integer update(Integer id, StorySaveDTO storySaveDTO);
@Open("story.get")
StoryResponse getById(Integer id);
// 默认方法,注解放在这里也有效
@Open("story.find")
default StoryResponse getById(Integer id, String name) {
StoryResponse storyResponse = new StoryResponse();
@@ -26,4 +29,13 @@ public interface StoryService {
return storyResponse;
}
// 演示单文件上传
StoryResponse upload(StorySaveDTO storySaveDTO, FileData file);
// 演示多文件上传
StoryResponse upload2(StorySaveDTO storySaveDTO, FileData idCardFront, FileData idCardBack);
// 演示多文件上传
StoryResponse upload3(StorySaveDTO storySaveDTO, List<FileData> files);
}

View File

@@ -0,0 +1,110 @@
package com.gitee.sop.storyweb.open.impl;
import com.gitee.sop.storyweb.open.OpenStory;
import com.gitee.sop.storyweb.open.req.StorySaveDTO;
import com.gitee.sop.storyweb.open.resp.StoryResponse;
import com.gitee.sop.support.annotation.Open;
import com.gitee.sop.support.context.OpenContext;
import com.gitee.sop.support.request.FileData;
import org.apache.dubbo.config.annotation.DubboService;
import org.springframework.util.Assert;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* 开放接口实现
*
* @author 六如
*/
@DubboService(validation = "true")
public class OpenStoryImpl implements OpenStory {
@Open("story.save")
@Override
public Integer save(StorySaveDTO storySaveDTO) {
System.out.println("save storySaveDTO:" + storySaveDTO);
System.out.println("appId:" + OpenContext.getAppId());
System.out.println("apiName:" + OpenContext.getApiName());
System.out.println("version:" + OpenContext.getVersion());
System.out.println("token:" + OpenContext.getAppAuthToken());
System.out.println("ip:" + OpenContext.getClientIp());
System.out.println("traceId:" + OpenContext.getTraceId());
Assert.notNull(OpenContext.getAppId());
Assert.notNull(OpenContext.getApiName());
Assert.notNull(OpenContext.getVersion());
Assert.notNull(OpenContext.getClientIp());
Assert.notNull(OpenContext.getTraceId());
return 1;
}
@Open("story.update")
@Override
public Integer update(Integer id, StorySaveDTO storySaveDTO) {
System.out.println("update, id:" + id + ", storySaveDTO=" + storySaveDTO);
return 1;
}
@Open("story.get")
@Override
public StoryResponse getById(@NotNull(message = "id必填") Integer id) {
StoryResponse storyResponse = new StoryResponse();
storyResponse.setId(id);
storyResponse.setName("乌鸦喝水");
return storyResponse;
}
@Open("story.upload")
@Override
public StoryResponse upload(StorySaveDTO storySaveDTO, FileData file) {
System.out.println("upload:" + storySaveDTO);
checkFile(Arrays.asList(file));
StoryResponse storyResponse = new StoryResponse();
storyResponse.setId(1);
storyResponse.setName(storySaveDTO.getStoryName());
return storyResponse;
}
@Open("story.upload.more")
@Override
public StoryResponse upload2(StorySaveDTO storySaveDTO, FileData idCardFront, FileData idCardBack) {
List<String> list = new ArrayList<>();
System.out.println("upload:" + storySaveDTO);
checkFile(Arrays.asList(idCardFront, idCardBack));
StoryResponse storyResponse = new StoryResponse();
storyResponse.setId(1);
storyResponse.setName(storySaveDTO.getStoryName());
return storyResponse;
}
@Open("story.upload.list")
@Override
public StoryResponse upload3(StorySaveDTO storySaveDTO, @Min(value = 2,message = "最少上传2个文件") List<FileData> files) {
List<String> list = new ArrayList<>();
list.add("upload:" + storySaveDTO);
checkFile(files);
StoryResponse storyResponse = new StoryResponse();
storyResponse.setId(1);
storyResponse.setName(storySaveDTO.getStoryName());
return storyResponse;
}
private void checkFile(List<FileData> fileDataList) {
for (FileData file : fileDataList) {
Assert.notNull(file.getName());
Assert.notNull(file.getOriginalFilename());
Assert.notNull(file.getBytes());
Assert.isTrue(!file.isEmpty());
}
}
}

View File

@@ -1,45 +0,0 @@
package com.gitee.sop.storyweb.open.impl;
import com.gitee.sop.storyweb.open.StoryService;
import com.gitee.sop.storyweb.open.req.StorySaveDTO;
import com.gitee.sop.storyweb.open.resp.StoryResponse;
import com.gitee.sop.support.context.OpenContext;
import org.apache.dubbo.config.annotation.DubboService;
import javax.validation.constraints.NotNull;
/**
* 开放接口实现
*
* @author 六如
*/
@DubboService(validation = "true")
public class StoreyServiceImpl implements StoryService {
@Override
public Integer save(StorySaveDTO storySaveDTO) {
System.out.println("save storySaveDTO:" + storySaveDTO);
System.out.println("appId:" + OpenContext.getAppId());
System.out.println("apiName:" + OpenContext.getApiName());
System.out.println("version:" + OpenContext.getVersion());
System.out.println("token:" + OpenContext.getAppAuthToken());
System.out.println("ip:" + OpenContext.getClientIp());
System.out.println("traceId:" + OpenContext.getTraceId());
return 1;
}
@Override
public Integer update(Integer id, StorySaveDTO storySaveDTO) {
System.out.println("update, id:" + id + ", storySaveDTO=" + storySaveDTO);
return 1;
}
@Override
public StoryResponse getById(@NotNull(message = "id必填") Integer id) {
StoryResponse storyResponse = new StoryResponse();
storyResponse.setId(id);
storyResponse.setName("乌鸦喝水");
return storyResponse;
}
}