3thinkthendoit/think-oms-ddd
49.7
Weak · 21 September 2026
3k
lines of production code
Java
primary language
4
measurements over time
What this system is
This system is an Order Management System (OMS) built on Java 17 and Spring Boot, designed to orchestrate the end-to-end lifecycle of orders from ingestion to fulfillment. It handles order creation with price calculation and risk checks, manages splitting and dispatching to warehouses, and processes shipping callbacks from external platforms like Taobao, Pinduodou, and Douyin. The architecture follows a layered domain-driven design with CQRS, separating core domain logic from infrastructure concerns such as database persistence and message queue integration.
Features
Added local order service facade
A new OrderLocalService class has been introduced in the local package to act as a facade for order operations. It delegates create, dispatch, fulfill, shipping callback, after-sales, and query actions to the underlying OrderAppService, providing a localized interface for order management logic.
think-oms-interface/src/main/java/com/think/oms/local · high confidence
Initial OSH interface layer for order ingestion and RPC
This change introduces the initial OSH (Order Service Hub) interface components, including the Spring Boot application entry point, REST controllers for MiJia order ingestion, scheduled tasks for polling Taobao and Pinduoduo orders, event listeners for order lifecycle events, a RocketMQ consumer for warehouse shipping callbacks, and an RPC interface with its implementation for order information queries.
think-oms-interface/src/main/java/com/think/oms/osh · high confidence
Initial domain model for order creation, fulfillment, and shipping callbacks
This change introduces the core domain model classes for the Order Management System within the \think-oms-domain\ module. It defines the \OrderCreateAggregate\ to handle order creation logic, including validation, price calculation, and priority processing for different SKU types (e.g., fresh food vs. virtual goods). It also adds the \OrderFulfillAggregate\ to manage order splitting and warehouse dispatching based on store or SKU mappings, and the \ShippingCallbackAggregate\ to handle shipping status updates and records. Supporting value objects and entities such as \OrderInvoice\, \OrderPay\, \FulfillSkuItem\, and \ShippingSkuItem\ are included, along with constants for order statuses, sources, and fee types.
think-oms-domain/src/main/java/com/think/oms/domain/model · high confidence
Initial domain port definitions for order management
This change introduces the foundational domain ports for the think-oms-domain module, establishing the interfaces and data structures required to support order creation, fulfillment, shipping callbacks, and risk checks. It adds gateway interfaces (Invoice, OrderFulfill, OrderInfo, RiskCheck, ShippingCallback, SkuInfoQuery) to define external system interactions, along with corresponding request and response DTOs. Additionally, it defines command objects for order creation and shipping, event classes for order lifecycle notifications, and repository interfaces for persisting order and shipping aggregates.
think-oms-domain/src/main/java/com/think/oms/domain/port · high confidence
Initial infrastructure scaffolding for order management
This change introduces the foundational infrastructure layer for the Order Management System, establishing the technical stack and core data models. It adds MyBatis-Plus mappers and persistent objects for order and SKU data, alongside gateway implementations for order information, fulfillment, risk checks, and shipping callbacks. The diff also includes platform-specific client stubs for Taobao, Pinduoduo, and Douyin, as well as utility classes for data transformation and publishers for order events via Spring Events and RocketMQ.
think-oms-infrastructure · high confidence
Introduce OrderAppService for order lifecycle orchestration
Added OrderAppService to coordinate the end-to-end order process using a CQRS pattern. The service exposes methods to create orders (including validation, base info initialization, auditing, and price calculation), dispatch and split orders across warehouses, push fulfillment requests to WMS, handle shipping callbacks, and query order information directly via gateways.
think-oms-application · high confidence
New domain services for order creation, fulfillment, and shipping callbacks
Added three new domain services in the OMS domain layer to handle specific order lifecycle stages. OrderCreateDomainService manages order creation logic, including base info initialization and risk control checks via a dedicated gateway. OrderFulfillDomainService provides the structure for order fulfillment, initializing warehouse and SKU mappings. OrderShippingDomainService handles shipping callbacks, initializing order and SKU shipping details and notifying upstream systems of shipment status.
think-oms-domain/src/main/java/com/think/oms/domain/service · high confidence
Dependencies
Initial project setup with Java 17 and Spring Boot 3.5.9
The project has been initialized as a multi-module Maven build (think-oms) targeting Java 17. The root pom.xml establishes Spring Boot 3.5.9 as the base framework and manages versions for key dependencies including MyBatis-Plus 3.5.17, Druid 1.2.28, Fastjson 1.2.83, Guava 33.7.1, and OkHttp 4.12.0. The module structure includes domain, application, infrastructure, and interface layers, with the infrastructure module explicitly pulling in MySQL Connector/J 9.5.0, RocketMQ Spring Boot Starter 2.3.6, and the aforementioned data access and HTTP libraries.
(dependencies) · high confidence
Housekeeping
Updated order domain context and domain boundary diagrams
The documentation in the \doc/context\ directory has been updated with new SVG diagrams illustrating the order domain's context and its boundaries with other domains. The new 'Order Context' diagram visualizes the central order system and its interactions with external contexts such as Product, User, Shop, Fulfillment, Inventory, Settlement, Invoice, After-sales, and Risk Control, using ACL and OHS boundary patterns. The 'Domain Division' diagram further clarifies the separation between the Order Domain and other domains like Product and Inventory.
doc · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 50 → 50 (-0.2)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 100 (-0.1)
- Architecture 100 → 91 (-9.1)
- Maturity 70 → 73 (+3.2)
- Readiness 12 → 12 (+0.0)
- Security 95 → 95 (+0.0)
Resolved (6)
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
- No exposed public API
- Scanner failed to run — not a clean result
- There is no code structure or implementation guidance for the four-layer architecture shown in the outline. (README.md)
New (9)
- Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- Duplicated block (8 lines × 2) (think-oms-interface/src/main/java/com/think/oms/osh/listener/OrderCreatedListener.java)
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
- No ADRs found
- Scanner failed to run — not a clean result
- Scanner failed to run — not a clean result
Changes since last survey
- 3 commits — 2 feature/other, 1 fixes
By area
- (root) — 1 commit
- think-oms-domain/src — 1 commit
- think-oms-infrastructure/src — 1 commit
Notable commits
- fix: fix:优化包结构
- change: build:升级java版本为jdk17
- change: doc:中英文readme.md分开
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
3thinkthendoit/think-oms-ddd was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 21 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 9c5c837006279d55609c70e629a49618fd505ada — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-fa71c66cabd8.