# 电子证照开源项目
**Repository Path**: daydream_bug/electronic-certificate
## Basic Information
- **Project Name**: 电子证照开源项目
- **Description**: 采用springcloud设计开发的电子证照开源API后端服务。可以通过此服务设计前端,做自己的电子证照系统
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: http://blog.la18.xyz
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 1
- **Created**: 2022-07-18
- **Last Updated**: 2025-09-20
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 此项目为电子证照服务API
## 项目现处于开发阶段,功能暂不可用,如有相关业务,请联系我,可以提供demo项目
demo项目拥有模板创建,证照生成/证照下载的基本功能
## 联系方式 2232480889@qq.com QQ同邮箱
## 如需使用项目或借用部分代码,请在使用的项目中注明来源
### a开头的属于系统模块,b开头的属于功能模块,c开头的属于业务模块
## 服务列表
1. a_config_service 配置中心
2. a_registration_center 服务注册中心
3. a_gateway 中心网关模块
4. b_oauth 权限控制/登陆模块
5. c_user_manager 用户信息模块
6. c_mail 邮件管理模块
7. c_lic_manager 证照管理模块
## 服务运行
1. 下拉项目代码
`https://gitee.com/daydream_bug/electronic-certificate.git`
2. 配置maven,加载maven依赖
3. 按照模块首字母顺序依次启动各模块
## 配置
### 配置放心白名单url
1. 在配置中心服务`a_config_service`中的`a-releaseurl-dev`中新增需要添加的地址
2. 检查业务模块中是否载入`a-releaseurl-dev`配置文件
3. 如以载入,重启配置中心服务和业务服务即可
4. 如未载入,新增`ReleaseUrl`实体类,并在继承`ResourceServerConfigurerAdapter`的配置类中加入对应的白名单即可
* `ResourceServerConfigurerAdapter`继承类示例:
```java
@Override
public void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.and().csrf().disable()
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);
// 加入配置中心的白名单地址
http.authorizeRequests().antMatchers(releaseUrl.getUrl()).permitAll() ;
}
```
* `ReleaseUrl`实体类示例
```java
@Data
@Component
@ConfigurationProperties(prefix = "release")
public class ReleaseUrl {
public String[] url ;
}
```
## 测试方法
### 模板创建
> 接口地址:`/lic/templates/create`
> 请求头示例:
>
| header | value |
|-----------|-------|
| Authorization | token |
| Content-Type | application/json |
> 入参示例(具体参数说明,可自行由【CreateTemplateDto】类查看):
```json
{
"document": {
"licName": "demo",
"sceneCode": "A01"
},
"elementInfo": [
{
"font": "",
"fontSize": 13,
"fontBody": "页面0图层0内的文字",
"borderX": 0,
"borderY": 0,
"height": 15,
"id": 0,
"layerId": 0,
"marginX": 0,
"marginY": 0,
"paddingX": 0,
"paddingY": 0,
"pageId": 0,
"width": 30
},
{
"url": "/data/xxx.jpg",
"borderX": 0,
"borderY": 0,
"height": 153,
"id": 0,
"layerId": 0,
"marginX": 0,
"marginY": 0,
"paddingX": 0,
"paddingY": 0,
"pageId": 0,
"width": 392
},
{
"paramsFont": "",
"paramsFontSize": 13,
"paramsFontBody": "页面1图层0的动参",
"borderX": 0,
"borderY": 0,
"height": 0,
"id": 0,
"layerId": 0,
"marginX": 0,
"marginY": 0,
"paddingX": 0,
"paddingY": 0,
"pageId": 1,
"width": 0
}
],
"layersInfo": [
{
"layerId": 0,
"pageId": 0
},
{
"layerId": 0,
"pageId": 1
}
],
"pagesInfo": [
{
"pageId": 0,
"pageSize": [
392,
153
]
},
{
"pageId": 1,
"pageSize": [
200,
374
]
}
]
}
```
----
## 项目启动后,访问`7561`端口【eureka服务页面】查看已启动的服务