This commit is contained in:
启航 2024-03-11 14:15:25 +08:00
parent 2735305ac1
commit ee08806345
19 changed files with 315 additions and 49 deletions

View File

@ -60,7 +60,9 @@
#### 1.3、存储及中间件
+ MySQL8
+ Redis7.x缓存在线用户、字典、系统配置
+ Redis7.x
+ 缓存:在线用户
+ 消息队列
+ Nacos2.2.0(配置中心、注册中心)
+ Sentinel分布式流量治理组件
@ -81,23 +83,30 @@
采用`gateway`进行api分发引入Sentinel进行流量治理。
#### 2.3 sys-api
oms项目系统微服务,主要功能包括:
项目系统微服务,主要功能包括:
+ 用户
+ 授权
+ 菜单
+ 公共配置
#### 2.4 tao-api
#### 2.4 oms-api
oms主功能微服务主要功能包括
+ 队列消息处理(订单消息、退款消息)
+ 订单接口
+ 退款接口
+ 店铺接口
#### 2.5 tao-api
淘宝开放平台接口api
#### 2.5 jd-api
#### 2.6 jd-api
京东开放平台接口api
#### 2.6 dou-api
#### 2.7 dou-api
抖店开放平台接口api
#### 2.7 pdd-api
#### 2.8 pdd-api
拼多多开放平台接口api
### 3、运行说明
@ -109,8 +118,8 @@ oms项目系统微服务主要功能包括
4. 启动Nacos2.2.0
#### 3.2、启动服务(项目)
1. 启动业务微服务tao-api、jd-api等平台接口api微服务
2. 启动sys-api(系统api)
1. 启动业务微服务tao-api、jd-api、dou-api、pdd-api等平台接口api微服务
2. 启动sys-api、oms-api微服务
3. 启动微服务网关api
#### 3.3、运行前端

View File

@ -23,6 +23,12 @@ spring:
locator:
enabled: true
routes:
- id: oms_api_route
uri: lb://oms-api
predicates:
- Path=/api/oms-api/**
filters:
- StripPrefix=2
- id: tao_api_route
uri: lb://tao-api
predicates:
@ -41,6 +47,12 @@ spring:
- Path=/api/sys-api/**
filters:
- StripPrefix=2
- id: dou_api_route
uri: lb://dou-api
predicates:
- Path=/api/dou-api/**
filters:
- StripPrefix=2
# - TokenFilter
# default-filters:
# - TokenFilter

Binary file not shown.

View File

@ -1,13 +1,22 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<?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">
<modelVersion>4.0.0</modelVersion>
<!-- <parent>-->
<!-- <groupId>com.qihang</groupId>-->
<!-- <artifactId>qihang-oms</artifactId>-->
<!-- <version>1.0-SNAPSHOT</version>-->
<!-- </parent>-->
<parent>
<groupId>com.qihang</groupId>
<artifactId>qihang-oms</artifactId>
<version>1.0-SNAPSHOT</version>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.0.2</version>
<relativePath/>
</parent>
<groupId>com.qihang.jd</groupId>
<groupId>com.qihang.dou</groupId>
<artifactId>dou-api</artifactId>
<packaging>jar</packaging>
@ -15,15 +24,88 @@
<url>http://maven.apache.org</url>
<properties>
<java.version>17</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<spring-boot.version>3.0.2</spring-boot.version>
<spring-cloud-alibaba.version>2022.0.0.0</spring-cloud-alibaba.version>
<jwt.version>0.11.5</jwt.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-undertow</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<!--SpringCloud Alibaba nacos 服务发现依赖-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
<groupId>com.qihang</groupId>
<artifactId>security</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.33</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
<version>3.5.5</version>
</dependency>
<dependency>
<groupId>doudian</groupId>
<artifactId>doudian-sdk-java</artifactId>
<version>1.1.0-20240217120650</version>
<scope>system</scope>
<systemPath>${project.basedir}/libs/doudian-sdk-java-1.1.0-20240217120650.jar</systemPath>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.30</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring-cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
</project>

View File

@ -1,18 +1,17 @@
package com.qihang.oms;
package com.qihang.dou;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.context.annotation.ComponentScan;
//@EnableDiscoveryClient
@ComponentScan(basePackages={"com.qihang"})
@SpringBootApplication
public class OmsApp {
public class DouApp {
public static void main( String[] args )
{
System.out.println( "Hello oms-api!" );
SpringApplication.run(OmsApp.class, args);
System.out.println( "Hello dou-api!" );
SpringApplication.run(DouApp.class, args);
}
}

View File

@ -1,5 +1,14 @@
package com.qihang.oms.controller;
package com.qihang.dou.controller;
import com.doudian.open.api.order_searchList.OrderSearchListRequest;
import com.doudian.open.api.order_searchList.OrderSearchListResponse;
import com.doudian.open.api.order_searchList.param.OrderSearchListParam;
import com.doudian.open.api.token_create.TokenCreateRequest;
import com.doudian.open.api.token_create.TokenCreateResponse;
import com.doudian.open.api.token_create.param.TokenCreateParam;
import com.doudian.open.core.AccessToken;
import com.doudian.open.core.AccessTokenBuilder;
import com.doudian.open.core.GlobalConfig;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@ -9,6 +18,38 @@ import org.springframework.web.bind.annotation.RestController;
public class HomeController {
@GetMapping("/")
public String home(){
return "{'code':0,'msg':'oms-api请通过api访问'}";
//设置appKey和appSecret全局设置一次
String appkey = "7005157746437834253";
String appSecret = "8104c8b8-9085-4a80-9248-629759b4f1a3";
// appkey = "7344938657423296019";
// appSecret = "4e704882-832a-42e5-845f-6af991ce0ce2";
GlobalConfig.initAppKey(appkey);
GlobalConfig.initAppSecret(appSecret);
//获取access_token方法
AccessToken accessToken = AccessTokenBuilder.build(4463798L); //入参为shopId
OrderSearchListRequest request = new OrderSearchListRequest();
OrderSearchListParam param = request.getParam();
param.setProduct("3473196049974326153");
param.setBType(2L);
param.setAfterSaleStatusDesc("refund_success");
param.setTrackingNo("435435");
param.setPresellType(1L);
param.setOrderType(1L);
param.setCreateTimeStart(1617355413L);
param.setCreateTimeEnd(1617355413L);
param.setAbnormalOrder(1L);
param.setTradeType(1L);
param.setUpdateTimeStart(1617355413L);
param.setUpdateTimeEnd(1617355413L);
param.setSize(20L);
param.setPage(0L);
param.setOrderBy("create_time");
param.setOrderAsc(false);
param.setFulfilStatus("no_accept");
OrderSearchListResponse response = request.execute(accessToken);
return "{'code':0,'msg':'dou-api请通过api访问'}";
}
}

View File

@ -1,4 +1,4 @@
package com.qihang.oms.mapper;
package com.qihang.dou.mapper;
import com.qihang.security.entity.SysUser;
import org.apache.ibatis.annotations.Mapper;

View File

@ -1,9 +1,9 @@
package com.qihang.oms.service.impl;
package com.qihang.dou.service.impl;
import com.qihang.common.common.ServiceException;
import com.qihang.common.constant.UserConstants;
import com.qihang.common.utils.StringUtils;
import com.qihang.oms.mapper.SysUserMapper;
import com.qihang.dou.mapper.SysUserMapper;
import com.qihang.security.entity.SysUser;
import com.qihang.security.service.ISysUserService;
import org.slf4j.Logger;

View File

@ -8,14 +8,14 @@ spring:
import:
- nacos:qihang-oms.yaml?refresh=true
application:
name: oms-api
name: dou-api
server:
port: 8081
port: 8085
mybatis-plus:
mapper-locations: classpath*:mapper/**/*Mapper.xml
type-aliases-package: com.qihang.oms.domain;com.qihang.security.entity;
type-aliases-package: com.qihang.dou.domain;com.qihang.security.entity;
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 开启sql日志

View File

@ -2,7 +2,7 @@
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.qihang.oms.mapper.SysUserMapper">
<mapper namespace="com.qihang.dou.mapper.SysUserMapper">
<resultMap type="SysUser" id="SysUserResult">
<id property="userId" column="user_id" />

View File

@ -22,7 +22,7 @@ security:
- pattern: /api/** # 定义需要授权的URL模式
server:
port: 8083
port: 8084
mybatis-plus:

View File

@ -1,13 +1,19 @@
<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">
<modelVersion>4.0.0</modelVersion>
<!-- <parent>-->
<!-- <groupId>com.qihang</groupId>-->
<!-- <artifactId>qihang-oms</artifactId>-->
<!-- <version>1.0-SNAPSHOT</version>-->
<!-- </parent>-->
<parent>
<groupId>com.qihang</groupId>
<artifactId>qihang-oms</artifactId>
<version>1.0-SNAPSHOT</version>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.0.2</version>
<relativePath/>
</parent>
<groupId>com.qihang.jd</groupId>
<groupId>com.qihang.oms</groupId>
<artifactId>oms-api</artifactId>
<packaging>jar</packaging>
@ -15,15 +21,80 @@
<url>http://maven.apache.org</url>
<properties>
<java.version>17</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<spring-boot.version>3.0.2</spring-boot.version>
<spring-cloud-alibaba.version>2022.0.0.0</spring-cloud-alibaba.version>
<jwt.version>0.11.5</jwt.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-undertow</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<!--SpringCloud Alibaba nacos 服务发现依赖-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
<groupId>com.qihang</groupId>
<artifactId>security</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.33</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
<version>3.5.5</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.30</version>
<scope>provided</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring-cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
</project>

View File

@ -1,2 +1,18 @@
package com.qihang.oms;public class OmsApp {
package com.qihang.oms;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.context.annotation.ComponentScan;
//@EnableDiscoveryClient
@ComponentScan(basePackages={"com.qihang"})
@SpringBootApplication
public class OmsApp {
public static void main( String[] args )
{
System.out.println( "Hello oms-api!" );
SpringApplication.run(OmsApp.class, args);
}
}

View File

@ -1,2 +1,14 @@
package com.qihang.oms.controller;public class HomeController {
package com.qihang.oms.controller;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@AllArgsConstructor
@RestController
public class HomeController {
@GetMapping("/")
public String home(){
return "{'code':0,'msg':'oms-api请通过api访问'}";
}
}

View File

@ -1,4 +1,4 @@
package com.qihang.jd.mapper;
package com.qihang.oms.mapper;
import com.qihang.security.entity.SysUser;
import org.apache.ibatis.annotations.Mapper;

View File

@ -1,11 +1,11 @@
package com.qihang.jd.service.impl;
package com.qihang.oms.service.impl;
import com.qihang.common.common.ServiceException;
import com.qihang.common.constant.UserConstants;
import com.qihang.common.utils.StringUtils;
import com.qihang.oms.mapper.SysUserMapper;
import com.qihang.security.entity.SysUser;
import com.qihang.security.service.ISysUserService;
import com.qihang.jd.mapper.SysUserMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;

View File

@ -0,0 +1,21 @@
spring:
cloud:
nacos:
serverAddr: 127.0.0.1:8848
discovery:
server-addr: 127.0.0.1:8848
config:
import:
- nacos:qihang-oms.yaml?refresh=true
application:
name: oms-api
server:
port: 8081
mybatis-plus:
mapper-locations: classpath*:mapper/**/*Mapper.xml
type-aliases-package: com.qihang.oms.domain;com.qihang.security.entity;
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 开启sql日志

View File

@ -16,6 +16,9 @@
<module>core</module>
<module>jd-api</module>
<module>oms-api</module>
<module>pdd-api</module>
<module>dou-api</module>
<!-- <module>core/common</module>-->
</modules>

View File

@ -22,7 +22,7 @@ security:
- pattern: /api/** # 定义需要授权的URL模式
server:
port: 8081
port: 8083
mybatis-plus: