Files
2026-02-03 14:20:30 +08:00

5.4 KiB
Raw Permalink Blame History

根目录 > jsowell-pile

jsowell-pile 模块

充电桩业务核心模块,包含订单、会员、计费、支付等核心业务逻辑。


变更记录 (Changelog)

2026-02-03 11:32:30

  • 初始化模块文档
  • 识别 80 个 Service 实现类
  • 统计 60+ Mapper XML 文件

模块职责

  • 订单管理: 充电订单创建、结算、分账、退款
  • 会员服务: 会员注册、钱包管理、积分系统
  • 计费管理: 计费模板、时段电价、服务费
  • 支付集成: 微信支付、支付宝、汇付支付Adapay
  • 设备管理: 充电桩、充电枪、站点信息
  • 商户管理: 商户信息、分账配置、清算账单

入口与启动

本模块为业务模块,无独立启动入口,由 jsowell-admin 模块引用。

核心 Service

Service 说明
OrderBasicInfoServiceImpl 订单核心服务(创建、结算、分账)
MemberBasicInfoServiceImpl 会员服务
MemberWalletInfoServiceImpl 钱包服务
MemberPointsInfoServiceImpl 积分服务
PileStationInfoServiceImpl 站点服务
PileBasicInfoServiceImpl 充电桩服务
PileConnectorInfoServiceImpl 充电枪服务
PileBillingTemplateServiceImpl 计费模板服务
WechatPayServiceImpl 微信支付服务
AdapayService 汇付支付服务

对外接口

RPC 服务

// WccServiceImpl.java - Dubbo RPC 服务
@DubboService
public class WccServiceImpl implements WccService {
    // 提供给其他服务调用的接口
}

RabbitMQ 消费者

// OrderRabbitListener.java
@RabbitListener(queues = RabbitConstants.ORDER_QUEUE)
public void handleOrderMessage(Message message) {
    // 处理订单消息
}

关键依赖与配置

Maven 依赖

<dependencies>
    <dependency>
        <groupId>com.jsowell</groupId>
        <artifactId>jsowell-framework</artifactId>
    </dependency>
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.4.0</version>
    </dependency>
    <dependency>
        <groupId>com.huifu.adapay</groupId>
        <artifactId>adapay-java-sdk</artifactId>
    </dependency>
    <dependency>
        <groupId>com.alipay.sdk</groupId>
        <artifactId>alipay-sdk-java</artifactId>
    </dependency>
</dependencies>

数据模型

核心实体

实体类 数据库表 说明
OrderBasicInfo order_basic_info 充电订单
OrderPayRecord order_pay_record 支付记录
OrderSplitRecord order_split_record 分账记录
MemberBasicInfo member_basic_info 会员信息
MemberWalletInfo member_wallet_info 会员钱包
MemberPointsInfo member_points_info 会员积分
PileStationInfo pile_station_info 充电站
PileBasicInfo pile_basic_info 充电桩
PileConnectorInfo pile_connector_info 充电枪
PileBillingTemplate pile_billing_template 计费模板
PileMerchantInfo pile_merchant_info 商户信息
ClearingBillInfo clearing_bill_info 清算账单

Mapper XML 文件

位置:src/main/resources/mapper/pile/

主要文件:

  • OrderBasicInfoMapper.xml (3620 行)
  • PileMerchantInfoMapper.xml (1304 行)
  • PersonalChargingRecordMapper.xml (1413 行)
  • OrderDetailMapper.xml (1306 行)
  • OrderPileOccupyMapper.xml (1043 行)

测试与质量

单元测试

测试位于 jsowell-admin/src/test/java/,涉及本模块的测试:

  • OrderServiceWhitelistCompletionTest
  • WhitelistOrderCompletionDefaultsTest

常见问题 (FAQ)

Q: 订单分账失败如何处理?

检查 OrderBasicInfoServiceImpl.realTimeOrderSplit() 方法,查看分账配置和汇付账户状态

Q: 积分发放延迟?

积分通过 RabbitMQ 异步发放,检查 PointsRabbitConfig 配置和消息队列状态

Q: 支付回调未收到?

检查支付平台回调地址配置,查看 WxpayCallbackRecordAdapayCallbackRecord


相关文件清单

jsowell-pile/
├── src/main/java/com/jsowell/
│   ├── adapay/                    # 汇付支付
│   │   ├── config/               # 支付配置
│   │   ├── dto/                  # 数据传输对象
│   │   ├── service/              # 支付服务
│   │   └── vo/                   # 视图对象
│   ├── alipay/                   # 支付宝
│   ├── wxpay/                    # 微信支付
│   ├── mq/                       # RabbitMQ 消费者
│   ├── pile/
│   │   ├── domain/               # 实体类
│   │   ├── dto/                  # DTO
│   │   ├── mapper/               # Mapper 接口
│   │   ├── service/              # Service 接口
│   │   │   └── impl/            # Service 实现
│   │   ├── vo/                   # VO
│   │   ├── jcpp/                 # JCPP 协议
│   │   ├── rpc/                  # RPC 服务
│   │   └── transaction/          # 事务服务
│   └── thirdparty/               # 第三方服务
├── src/main/resources/
│   └── mapper/pile/              # Mapper XML (60+ 文件)
└── src/main/proto/               # Protobuf 定义