keyfil/发版/2025/20250321-eBay电商订单对接发布.md
liuxiaohua 3b6ddd9eeb
All checks were successful
Publish to Confluence / confluence (push) Successful in 46s
[2025-03-28] 更新eBay电商订单对接发布
2025-03-28 15:31:30 +08:00

20 KiB
Raw Blame History

20250321-eBay电商订单对接发布

发布说明

涉及项目

项目 分支 发布顺序 数据库变更 配置变更 负责人 备注
yuanmeng-engine feat/20250311-engine-starter-cache 1 刘晓华 升级 1.0.14
yuanmeng-parent feat/20250311-engine-starter-cache 2 刘晓华 升级 1.0.14
qifu-saas-eg feat/20250304-e-commerce 3 数据库脚本DDL Nacos配置文件 刘晓华 注意配置文件中需要修改的部分需要修改为对应环境的数据

附件

数据库脚本DDL

qifu-saas-eg 数据库
/*
 Navicat Premium Dump SQL

 Source Server         : DEV-Mysql
 Source Server Type    : MySQL
 Source Server Version : 50743 (5.7.43-log)
 Source Host           : mysql.develop.qifu.com:30336
 Source Schema         : dev_qifu_saas_eg

 Target Server Type    : MySQL
 Target Server Version : 50743 (5.7.43-log)
 File Encoding         : 65001

 Date: 21/03/2025 11:28:05
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for eg_order_app
-- ----------------------------
DROP TABLE IF EXISTS `eg_order_app`;
CREATE TABLE `eg_order_app`
(
    `id`             bigint(20)                                                    NOT NULL AUTO_INCREMENT,
    `channel`        int(4)                                                        NOT NULL COMMENT '渠道1=eBay',
    `client_id`      varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '客户端id',
    `client_secret`  varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '客户端secret',
    `dev_id`         varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '开发者id',
    `scopes`         text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci         NULL COMMENT '授权范围,+ 号拼接',
    `redirect_uri`   varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '回调链接',
    `attach_info`    text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci         NULL COMMENT '附加信息Json 格式',
    `create_user_id` bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '创建人id',
    `create_by`      varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '创建人名称',
    `create_time`    bigint(20)                                                    NOT NULL COMMENT '创建时间',
    `update_user_id` bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '更新人ID',
    `update_by`      varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '更新人名称',
    `update_time`    bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '更新时间',
    `deleted`        bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '删除标识0=未删除id=以删除',
    PRIMARY KEY (`id`) USING BTREE,
    INDEX `idx_channel` (`channel`) USING BTREE
) ENGINE = InnoDB
  AUTO_INCREMENT = 2
  CHARACTER SET = utf8mb4
  COLLATE = utf8mb4_general_ci COMMENT = '电商应用表'
  ROW_FORMAT = DYNAMIC;


-- ----------------------------
-- Table structure for eg_order_app_seller
-- ----------------------------
DROP TABLE IF EXISTS `eg_order_app_seller`;
CREATE TABLE `eg_order_app_seller`
(
    `id`                         bigint(20)                                                    NOT NULL AUTO_INCREMENT,
    `channel`                    int(4)                                                        NOT NULL COMMENT '渠道1=eBay',
    `seller_id`                  varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '卖家id',
    `order_app_id`               bigint(20)                                                    NOT NULL COMMENT '应用id',
    `region`                     varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '所属区域,对照 client 包中的 xxxRegionEnum',
    `spi_server_codes`           varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '关联服务编码spi调用使用。, 分割',
    `refresh_token`              varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '刷新token',
    `refresh_token_expires_in`   int(8)                                                        NOT NULL DEFAULT 0 COMMENT '刷新token过期时间',
    `refresh_token_expires_time` bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '过期时间',
    `create_user_id`             bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '创建人id',
    `create_by`                  varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '创建人名称',
    `create_time`                bigint(20)                                                    NOT NULL COMMENT '创建时间',
    `update_user_id`             bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '更新人ID',
    `update_by`                  varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '更新人名称',
    `update_time`                bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '更新时间',
    `deleted`                    bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '删除标识0=未删除id=以删除',
    PRIMARY KEY (`id`) USING BTREE,
    INDEX `idx_channel_seller_id_update_time` (`channel`, `seller_id`, `update_time`) USING BTREE
) ENGINE = InnoDB
  AUTO_INCREMENT = 2
  CHARACTER SET = utf8mb4
  COLLATE = utf8mb4_general_ci COMMENT = '卖家电商应用表'
  ROW_FORMAT = DYNAMIC;


-- ----------------------------
-- Table structure for eg_order_order
-- ----------------------------
DROP TABLE IF EXISTS `eg_order_order`;
CREATE TABLE `eg_order_order`
(
    `id`                       bigint(20)                                                    NOT NULL AUTO_INCREMENT,
    `channel`                  int(4)                                                        NOT NULL COMMENT '渠道1=eBay',
    `order_app_seller_id`      varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '卖家id',
    `order_id`                 varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '电商订单id',
    `buyer_id`                 varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '买家ID',
    `buyer_remark`             varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '买家备注',
    `buyer_name`               varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '买家全名',
    `buyer_phone`              varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '发货收件人的主要电话号码',
    `buyer_email`              varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '买家邮箱',
    `buyer_tax_id`             varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '买家税号',
    `buyer_tax_type`           varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '买家税号类型',
    `buyer_company_name`       varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '买家公司名称',
    `receiver_address_line1`   varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '街道地址的第一行',
    `receiver_address_line2`   varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '街道地址的第二行',
    `receiver_address_detail`  varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '完整的收件人详细地址',
    `receiver_city`            varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '配送目的地所在的城市',
    `receiver_country_code`    varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '配送目的地所在的国家/地区',
    `receiver_province`        varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '配送目的地的州或省',
    `receiver_postal_code`     varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '配送目的地的邮政编码',
    `cancel_state`             varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '订单取消状态NONE_REQUESTED 表示尚未针对该订单提出取消请求',
    `cancelled_date`           varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '订单取消时间',
    `creation_date`            varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '订单创建时间',
    `creation_date_time`       bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '订单创建时间的时间戳',
    `last_modified_date`       varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '订单修改时间',
    `last_modified_date_time`  bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '订单修改时间的时间戳',
    `order_fulfillment_status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '订单履行完成的程度,参考 com.yuanmeng.qifu.eg.feign.order.constants.OrderFulfillmentStatusEnum',
    `order_payment_status`     varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '订单支付状态,可能的值有 FAILED买家付款或退款失败、FULLY_REFUNDED订单全额退款、PAID订单已全额支付、PARTIALLY_REFUNDED订单部分退款、PENDING买家付款或卖家退款待处理',
    `seller_id`                varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '销售订单的卖家的唯一用户 ID',
    `original_md5`             varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '参数md5',
    `create_user_id`           bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '创建人id',
    `create_by`                varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '创建人名称',
    `create_time`              bigint(20)                                                    NOT NULL COMMENT '创建时间',
    `update_user_id`           bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '更新人ID',
    `update_by`                varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '更新人名称',
    `update_time`              bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '更新时间',
    `deleted`                  bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '删除标识0=未删除id=以删除',
    PRIMARY KEY (`id`) USING BTREE,
    INDEX `idx_channel_seller_id_order_id` (`channel`, `order_app_seller_id`, `order_id`) USING BTREE,
    INDEX `idx_last_modified_time` (`channel`, `order_app_seller_id`, `last_modified_date_time`) USING BTREE
) ENGINE = InnoDB
  AUTO_INCREMENT = 1
  CHARACTER SET = utf8mb4
  COLLATE = utf8mb4_general_ci COMMENT = '电商订单表'
  ROW_FORMAT = DYNAMIC;


-- ----------------------------
-- Table structure for eg_order_order_detail
-- ----------------------------
DROP TABLE IF EXISTS `eg_order_order_detail`;
CREATE TABLE `eg_order_order_detail`
(
    `id`             bigint(20)                                                    NOT NULL AUTO_INCREMENT,
    `order_id`       bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT 'order 表 id',
    `line_item_id`   varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '订单行项目的唯一标识符。一旦承诺从卖方处购买,就会创建此字段。',
    `quantity`       int(8)                                                        NOT NULL DEFAULT 0 COMMENT '订单中行项目的单位数',
    `title`          varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT 'listing title',
    `sku`            varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '卖家定义的库存单位 SKU。此库存编码在卖家的库存中必须是唯一的。',
    `create_user_id` bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '创建人id',
    `create_by`      varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '创建人名称',
    `create_time`    bigint(20)                                                    NOT NULL COMMENT '创建时间',
    `update_user_id` bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '更新人ID',
    `update_by`      varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '更新人名称',
    `update_time`    bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '更新时间',
    `deleted`        bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '删除标识0=未删除id=以删除',
    PRIMARY KEY (`id`) USING BTREE,
    INDEX `idx_order_id` (`order_id`) USING BTREE
) ENGINE = InnoDB
  AUTO_INCREMENT = 1
  CHARACTER SET = utf8mb4
  COLLATE = utf8mb4_general_ci COMMENT = '电商平台订单详情'
  ROW_FORMAT = DYNAMIC;


-- ----------------------------
-- Table structure for eg_order_order_original
-- ----------------------------
DROP TABLE IF EXISTS `eg_order_order_original`;
CREATE TABLE `eg_order_order_original`
(
    `id`             bigint(20)                                                   NOT NULL AUTO_INCREMENT,
    `order_id`       bigint(20)                                                   NOT NULL DEFAULT 0 COMMENT 'order 表 id',
    `original`       text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci        NULL COMMENT '原始订单信息',
    `create_user_id` bigint(20)                                                   NOT NULL DEFAULT 0 COMMENT '创建人id',
    `create_by`      varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '创建人名称',
    `create_time`    bigint(20)                                                   NOT NULL COMMENT '创建时间',
    `update_user_id` bigint(20)                                                   NOT NULL DEFAULT 0 COMMENT '更新人ID',
    `update_by`      varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '更新人名称',
    `update_time`    bigint(20)                                                   NOT NULL DEFAULT 0 COMMENT '更新时间',
    `deleted`        bigint(20)                                                   NOT NULL DEFAULT 0 COMMENT '删除标识0=未删除id=以删除',
    PRIMARY KEY (`id`) USING BTREE,
    INDEX `idx_order_id` (`order_id`) USING BTREE
) ENGINE = InnoDB
  AUTO_INCREMENT = 1
  CHARACTER SET = utf8mb4
  COLLATE = utf8mb4_general_ci COMMENT = '电商平台订单原始信息表'
  ROW_FORMAT = DYNAMIC;


-- ----------------------------
-- Table structure for eg_spi
-- ----------------------------
DROP TABLE IF EXISTS `eg_spi`;
CREATE TABLE `eg_spi`
(
    `id`                 bigint(20)                                                    NOT NULL AUTO_INCREMENT,
    `type`               int(4)                                                        NOT NULL COMMENT 'spi 类型1=订单信息同步',
    `server_code`        varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL COMMENT '服务编码针对type唯一',
    `server_name`        varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL COMMENT '服务名称feign调用服务名',
    `server_description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '服务描述',
    `secret`             varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT 'SPI请求密钥',
    `create_user_id`     bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '创建人id',
    `create_by`          varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '创建人名称',
    `create_time`        bigint(20)                                                    NOT NULL COMMENT '创建时间',
    `update_user_id`     bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '更新人ID',
    `update_by`          varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '' COMMENT '更新人名称',
    `update_time`        bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '更新时间',
    `deleted`            bigint(20)                                                    NOT NULL DEFAULT 0 COMMENT '删除标识0=未删除id=以删除',
    PRIMARY KEY (`id`) USING BTREE,
    INDEX `idx_type_server_code` (`type`, `server_code`) USING BTREE
) ENGINE = InnoDB
  AUTO_INCREMENT = 1
  CHARACTER SET = utf8mb4
  COLLATE = utf8mb4_general_ci COMMENT = 'SPI服务信息表'
  ROW_FORMAT = DYNAMIC;

SET FOREIGN_KEY_CHECKS = 1;

Nacos配置文件

rocketmq:
  name-server: rocketmq.qifu.com:30938
  producer:
    group: qifu-saas-eg
    namespace: dev
  consumer:
    group: qifu-saas-eg
    namespace: dev

qifu:
  eg:
    ebay:
      authorize-url: https://auth.sandbox.ebay.com/oauth2/authorize
      token-url: https://api.sandbox.ebay.com/identity/v1/oauth2/token
      order-url: https://api.sandbox.ebay.com/sell/fulfillment/v1/order
      shipping-fulfillment-url: https://api.sandbox.ebay.com/sell/fulfillment/v1/order/{orderId}/shipping_fulfillment

    spi-consumer-group: qifuEgSpiConsumerGroup

yuanmeng:
  redis:
    cache-manager:
      enable: true

其余配置

Ebay开发者平台配置

  1. 需要创建生产应用,并激活
  2. 添加 eg_order_app 表记录
  3. 生产需要把 sandbox 链接改为 product 链接

开发说明