Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
order-management-backend
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Ascend
order-management-backend
Commits
6db36a9a
Commit
6db36a9a
authored
May 11, 2021
by
dbhuller
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[AFP-37]
✨
getting item data (Items ordered) from each order [
@dbhuller
]
parent
2e856257
Pipeline
#1696
failed with stage
in 38 seconds
Changes
2
Pipelines
1
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
26 additions
and
0 deletions
+26
-0
OrderController.java
...a/com/afp/ordermanagement/controller/OrderController.java
+7
-0
OrderService.java
...in/java/com/afp/ordermanagement/service/OrderService.java
+19
-0
No files found.
src/main/java/com/afp/ordermanagement/controller/OrderController.java
View file @
6db36a9a
package
com
.
afp
.
ordermanagement
.
controller
;
package
com
.
afp
.
ordermanagement
.
controller
;
import
com.afp.ordermanagement.model.Item
;
import
com.afp.ordermanagement.model.Order
;
import
com.afp.ordermanagement.model.Order
;
import
com.afp.ordermanagement.reactivekafkaservice.Sender
;
import
com.afp.ordermanagement.reactivekafkaservice.Sender
;
import
com.afp.ordermanagement.service.OrderService
;
import
com.afp.ordermanagement.service.OrderService
;
...
@@ -10,6 +11,8 @@ import org.springframework.web.bind.annotation.*;
...
@@ -10,6 +11,8 @@ import org.springframework.web.bind.annotation.*;
import
reactor.core.publisher.Flux
;
import
reactor.core.publisher.Flux
;
import
reactor.core.publisher.Mono
;
import
reactor.core.publisher.Mono
;
import
java.util.List
;
@RestController
@RestController
@RequestMapping
(
"/api"
)
@RequestMapping
(
"/api"
)
@CrossOrigin
@CrossOrigin
...
@@ -60,5 +63,9 @@ public class OrderController {
...
@@ -60,5 +63,9 @@ public class OrderController {
.
defaultIfEmpty
(
ResponseEntity
.
notFound
().
build
());
.
defaultIfEmpty
(
ResponseEntity
.
notFound
().
build
());
}
}
@GetMapping
(
"/items"
)
public
Mono
<
List
<
Item
>>
getItems
()
{
return
orderService
.
getItems
();
}
}
}
src/main/java/com/afp/ordermanagement/service/OrderService.java
View file @
6db36a9a
package
com
.
afp
.
ordermanagement
.
service
;
package
com
.
afp
.
ordermanagement
.
service
;
import
com.afp.ordermanagement.model.Item
;
import
com.afp.ordermanagement.model.Order
;
import
com.afp.ordermanagement.model.Order
;
import
com.afp.ordermanagement.model.OrderStatus
;
import
com.afp.ordermanagement.model.OrderStatus
;
import
com.afp.ordermanagement.repository.OrderRepository
;
import
com.afp.ordermanagement.repository.OrderRepository
;
...
@@ -8,6 +9,9 @@ import org.springframework.stereotype.Service;
...
@@ -8,6 +9,9 @@ import org.springframework.stereotype.Service;
import
reactor.core.publisher.Flux
;
import
reactor.core.publisher.Flux
;
import
reactor.core.publisher.Mono
;
import
reactor.core.publisher.Mono
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@Service
@Service
public
class
OrderService
{
public
class
OrderService
{
...
@@ -50,4 +54,19 @@ public class OrderService {
...
@@ -50,4 +54,19 @@ public class OrderService {
return
orderRepository
.
save
(
existingOrder
);
return
orderRepository
.
save
(
existingOrder
);
});
});
}
}
public
Mono
<
List
<
Item
>>
getItems
()
{
Flux
<
Order
>
orderFlux
=
orderRepository
.
findAll
();
Mono
<
List
<
Item
>>
itemsMono
=
orderFlux
.
collectList
().
map
(
ordersList
->
{
List
<
List
<
Item
>>
itemList
=
ordersList
.
stream
()
.
filter
(
order
->
order
.
getOrderItems
()
!=
null
)
.
map
(
order
->
order
.
getOrderItems
())
.
collect
(
Collectors
.
toList
());
List
<
Item
>
items
=
itemList
.
stream
().
flatMap
(
List:
:
stream
).
collect
(
Collectors
.
toList
());
return
items
;
});
return
itemsMono
;
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment