Toggle navigation
Toggle navigation
This project
Loading...
Sign in
jiujian
/
client-customer-order-api
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
wangyingyang
2024-11-21 10:20:01 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
5f6edb46ed46068ad03fb880291c237196786f1d
5f6edb46
1 parent
ed5b7a02
update order detail
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
60 additions
and
37 deletions
src/main/java/com/infoloop/tianting/controller/OrderController.java
src/main/java/com/infoloop/tianting/model/dto/StatisticDTO.java
src/main/java/com/infoloop/tianting/service/client/MenuServiceRpcClient.java
src/main/java/com/infoloop/tianting/service/client/OrderServiceRpcClient.java
src/main/java/com/infoloop/tianting/controller/OrderController.java
View file @
5f6edb4
...
...
@@ -72,7 +72,7 @@ public class OrderController {
return
orderService
.
createOrder
(
createOrderDto
);
}
@ApiOperation
(
value
=
"创建订单"
)
@ApiOperation
(
value
=
"
院区端
创建订单"
)
@PostMapping
(
"/operator/orders"
)
@ResponseStatus
(
HttpStatus
.
OK
)
public
CreateOrderResponse
createOrderByOperator
(
...
...
src/main/java/com/infoloop/tianting/model/dto/StatisticDTO.java
0 → 100644
View file @
5f6edb4
package
com
.
infoloop
.
tianting
.
model
.
dto
;
public
class
StatisticDTO
{
}
src/main/java/com/infoloop/tianting/service/client/MenuServiceRpcClient.java
View file @
5f6edb4
...
...
@@ -7,6 +7,8 @@ import com.infoloop.tianting.menuservice.GetClientCustomerMenuRefsByCustomerIdRp
import
com.infoloop.tianting.menuservice.GetClientCustomerMenuRefsByCustomerIdRpcResponse
;
import
com.infoloop.tianting.menuservice.GetMenuByIdRpcRequest
;
import
com.infoloop.tianting.menuservice.GetMenuByIdRpcResponse
;
import
com.infoloop.tianting.menuservice.GetMenuDetailByIdRpcRequest
;
import
com.infoloop.tianting.menuservice.GetMenuDetailByIdRpcResponse
;
import
com.infoloop.tianting.menuservice.GetMenuDetailsByMenuIdsRpcRequest
;
import
com.infoloop.tianting.menuservice.GetMenuDetailsByMenuIdsRpcResponse
;
import
com.infoloop.tianting.menuservice.GetMicroPublishedMenusByStallIdsRpcRequest
;
...
...
@@ -16,6 +18,7 @@ import com.infoloop.tianting.menuservice.GetPublishedMenusByStallIdsRpcResponse;
import
com.infoloop.tianting.menuservice.MenuServiceRpcGrpc
;
import
com.infoloop.tianting.model.dto.MenuDbDTO.BatchCreateMenuRefsDto
;
import
com.infoloop.tianting.utils.DateUtil
;
import
io.swagger.models.auth.In
;
import
java.time.LocalDateTime
;
import
java.time.ZoneOffset
;
import
java.util.List
;
...
...
@@ -57,6 +60,15 @@ public class MenuServiceRpcClient {
return
menuServiceRpcBlockingStub
.
getMenuById
(
request
);
}
public
GetMenuDetailByIdRpcResponse
getMenuDetailById
(
Integer
enterpriseId
,
Integer
id
)
{
final
var
request
=
GetMenuDetailByIdRpcRequest
.
newBuilder
()
.
setEnterpriseId
(
enterpriseId
)
.
setId
(
id
)
.
setIncludeDeleted
(
false
)
.
build
();
return
menuServiceRpcBlockingStub
.
getMenuDetailById
(
request
);
}
public
GetMenuDetailsByMenuIdsRpcResponse
queryMenuDetailsByMenuId
(
Integer
enterpriseId
,
Integer
menuId
)
{
final
var
request
=
GetMenuDetailsByMenuIdsRpcRequest
.
newBuilder
()
...
...
src/main/java/com/infoloop/tianting/service/client/OrderServiceRpcClient.java
View file @
5f6edb4
package
com
.
infoloop
.
tianting
.
service
.
client
;
import
com.infoloop.tianting.SingleResponse
;
import
com.infoloop.tianting.SingleSpecialResponse
;
import
com.infoloop.tianting.clientcustomerorderservice.BatchUpdateClientCustomerOrderDetailsRpcRequest
;
import
com.infoloop.tianting.clientcustomerorderservice.BatchUpdateClientCustomerOrderDetailsRpcResponse
;
import
com.infoloop.tianting.clientcustomerorderservice.ClientCustomerOrderCreation
;
...
...
@@ -48,6 +50,8 @@ import org.springframework.stereotype.Service;
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Autowired
))
public
class
OrderServiceRpcClient
{
private
final
ClientCustomerOrderServiceRpcGrpc
.
ClientCustomerOrderServiceRpcBlockingStub
orderServiceRpcBlockingStub
;
private
final
MenuServiceRpcClient
menuServiceRpcClient
;
private
final
SkuServiceRpcClient
skuServiceRpcClient
;
public
List
<
SingleClientCustomerOrderRpcResponse
>
getOrdersByCustomerId
(
Integer
customerId
)
{
return
orderServiceRpcBlockingStub
.
getClientCustomerOrdersByCustomerId
(
...
...
@@ -100,52 +104,54 @@ public class OrderServiceRpcClient {
public
BatchUpdateClientCustomerOrderDetailsRpcResponse
batchUpdateClientCustomerOrderDetails
(
OrderDetailBatchUpdateDto
orderDetailBatchUpdateDto
)
{
final
var
modifications
=
orderDetailBatchUpdateDto
.
getDetails
().
stream
().
map
(
d
->
{
MealDetail
mealDetail
;
if
(
d
.
getShouldUpdateMealDetailJson
())
{
mealDetail
=
MealDetail
.
newBuilder
()
.
setBasicMaterials
(
d
.
getMealDetailJson
().
getBasicMaterials
())
.
addAllTastes
(
d
.
getMealDetailJson
().
getTastes
())
.
addAllEfficacies
(
d
.
getMealDetailJson
().
getEfficacies
())
.
addAllDockers
(
d
.
getMealDetailJson
().
getDockers
())
.
setEnergy
(
d
.
getMealDetailJson
().
getEnergy
())
.
setFat
(
d
.
getMealDetailJson
().
getFat
())
.
setProtein
(
d
.
getMealDetailJson
().
getProtein
())
.
setCarbohydrate
(
d
.
getMealDetailJson
().
getCarbohydrate
())
.
addAllAllergies
(
d
.
getMealDetailJson
().
getAllergies
())
.
addAllAvoids
(
d
.
getMealDetailJson
().
getAvoids
())
.
addAllSkus
(
d
.
getMealDetailJson
().
getSkus
())
.
build
();
}
else
{
mealDetail
=
MealDetail
.
newBuilder
().
build
();
}
MealDetail
mealDetail
=
MealDetail
.
newBuilder
().
build
();;
Integer
menuDetailId
=
0
;
if
(
d
.
getShouldUpdateMenuDetailId
())
{
menuDetailId
=
d
.
getMenuDetailId
();
}
Integer
count
=
0
;
if
(
d
.
getShouldUpdateCount
())
{
count
=
d
.
getCount
();
}
Integer
mealId
=
0
;
if
(
d
.
getShouldUpdateMealId
())
{
mealId
=
d
.
getMealId
();
}
Integer
categoryId
=
0
;
if
(
d
.
getShouldUpdateCategoryId
())
{
categoryId
=
d
.
getCategoryId
();
}
Integer
skuId
=
0
;
if
(
d
.
getShouldUpdateSkuId
())
{
skuId
=
d
.
getSkuId
();
}
String
showName
=
""
;
if
(
d
.
getShouldUpdateShowName
())
{
showName
=
d
.
getShowName
();
if
(
d
.
getShouldUpdateMenuDetailId
())
{
menuDetailId
=
d
.
getMenuDetailId
();
final
var
menuDetail
=
menuServiceRpcClient
.
getMenuDetailById
(
orderDetailBatchUpdateDto
.
getEnterpriseId
(),
menuDetailId
).
getResponse
();
mealId
=
menuDetail
.
getMealId
();
categoryId
=
menuDetail
.
getCategoryId
();
skuId
=
menuDetail
.
getSkuId
();
showName
=
menuDetail
.
getShowName
();
final
var
rpcSkus
=
skuServiceRpcClient
.
getDishSkusByIds
(
List
.
of
(
skuId
)).
getResponseList
();
if
(!
rpcSkus
.
isEmpty
())
{
final
var
skus
=
rpcSkus
.
get
(
0
).
getSkusList
().
stream
().
map
(
SingleResponse:
:
getName
).
collect
(
Collectors
.
toList
());
final
var
skuAvoids
=
rpcSkus
.
get
(
0
).
getAvoidsList
().
stream
().
map
(
SingleResponse:
:
getName
).
collect
(
Collectors
.
toList
());
final
var
tastes
=
rpcSkus
.
get
(
0
).
getTastesList
().
stream
().
map
(
SingleResponse:
:
getName
).
collect
(
Collectors
.
toList
());
final
var
efficacies
=
rpcSkus
.
get
(
0
).
getEfficaciesList
().
stream
().
map
(
SingleResponse:
:
getName
).
collect
(
Collectors
.
toList
());
final
var
allergies
=
rpcSkus
.
get
(
0
).
getAllergiesList
().
stream
().
map
(
SingleSpecialResponse:
:
getName
).
collect
(
Collectors
.
toList
());
final
var
skuDoctors
=
rpcSkus
.
get
(
0
).
getDoctorsList
().
stream
().
map
(
SingleSpecialResponse:
:
getName
).
collect
(
Collectors
.
toList
());
mealDetail
=
MealDetail
.
newBuilder
()
.
setBasicMaterials
(
rpcSkus
.
get
(
0
).
getBasicMaterials
())
.
addAllTastes
(
tastes
)
.
addAllEfficacies
(
efficacies
)
.
addAllDockers
(
skuDoctors
)
.
setEnergy
(
rpcSkus
.
get
(
0
).
getEnergy
())
.
setFat
(
rpcSkus
.
get
(
0
).
getFat
())
.
setProtein
(
rpcSkus
.
get
(
0
).
getProtein
())
.
setCarbohydrate
(
rpcSkus
.
get
(
0
).
getCarbohydrate
())
.
addAllAllergies
(
allergies
)
.
addAllAvoids
(
skuAvoids
)
.
addAllSkus
(
skus
)
.
build
();
}
}
Boolean
notServe
=
false
;
if
(
d
.
getShouldUpdateNotServe
())
{
notServe
=
true
;
}
Integer
count
=
0
;
if
(
d
.
getShouldUpdateCount
())
{
count
=
d
.
getCount
();
}
final
var
detail
=
ClientCustomerOrderDetailModification
.
newBuilder
()
.
setId
(
d
.
getId
())
.
setShouldUpdateMenuDetailId
(
d
.
getShouldUpdateMenuDetailId
())
...
...
Please
register
or
login
to post a comment