fix(finance): Extended Sorting, Oracle Sys ID Search, and Multi-Type Filter for Product Master#142
Merged
ilramdhan merged 1 commit intoJul 2, 2026
Conversation
… multi-type filter - Sort map: product_type_code (scalar subquery), shade/grade, flex01/02/03, status; stable secondary ordering by product_code - Search clause now matches cpm_flex_02 (oracle sys id) - Filter.ProductTypeIDs unioned with legacy single ID; = ANY(pq.Array) predicate - Unit + integration tests for sort mapping, union semantics, oracle search - goconst: shared sortKeyStatus const replaces duplicated literals Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR enhances the query capabilities of the Product Master list endpoint. It introduces extended sorting fields (including subquery-driven type codes and flex fields), broadens the global search to include Oracle legacy IDs (
flex_02), and upgrades the product type filter to support multiple IDs simultaneously.Additionally, comprehensive unit and integration tests were added to ensure the reliability of these new query semantics.
Type of Change
Service(s) Affected
Changes Made
product_type_code(resolved via scalar subquery),shade,grade,flex_01/02/03, andstatus. Also enforced a stable secondary ordering byproduct_codeto prevent pagination jitter.cpm_flex_02, allowing users to easily find products using their legacy Oracle Sys IDs.Filter.ProductTypeIDsto support multiple values using PostgreSQL's= ANY(pq.Array)predicate. This is backward-compatible and unions cleanly with the legacy single ID filter.goconstduplicated literal warnings by extracting a sharedsortKeyStatusconstant.Related Issues
Fixes #
Related to #
API Changes (if applicable)
Proto Changes
Breaking Changes
None.
Testing Performed
Unit Tests
Integration Tests
Manual Testing