Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
O
oms
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
oms
Commits
bf111e73
提交
bf111e73
authored
9月 20, 2023
作者:
zhenjie
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
购物车相关接口
上级
7f7eba61
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
130 行增加
和
2 行删除
+130
-2
UavCartController.java
...in/java/com/mmc/oms/controller/uav/UavCartController.java
+2
-1
UavOrderController.java
...n/java/com/mmc/oms/controller/uav/UavOrderController.java
+10
-0
UavOrderSkuDO.java
src/main/java/com/mmc/oms/entity/uav/UavOrderSkuDO.java
+12
-0
UavCartCompanyDTO.java
...ain/java/com/mmc/oms/model/dto/uav/UavCartCompanyDTO.java
+4
-0
UavCartDTO.java
src/main/java/com/mmc/oms/model/dto/uav/UavCartDTO.java
+2
-0
AddUavOrderByCartQO.java
...in/java/com/mmc/oms/model/vo/uav/AddUavOrderByCartQO.java
+38
-0
UavCartService.java
src/main/java/com/mmc/oms/service/uav/UavCartService.java
+3
-0
UavOrderService.java
src/main/java/com/mmc/oms/service/uav/UavOrderService.java
+5
-0
UavCartServiceImpl.java
...java/com/mmc/oms/service/uav/impl/UavCartServiceImpl.java
+2
-1
UavOrderServiceImpl.java
...ava/com/mmc/oms/service/uav/impl/UavOrderServiceImpl.java
+52
-0
没有找到文件。
src/main/java/com/mmc/oms/controller/uav/UavCartController.java
浏览文件 @
bf111e73
...
...
@@ -2,6 +2,7 @@ package com.mmc.oms.controller.uav;
import
com.mmc.oms.common.result.ResultBody
;
import
com.mmc.oms.controller.BaseController
;
import
com.mmc.oms.model.dto.uav.UavCartCompanyDTO
;
import
com.mmc.oms.model.dto.uav.UavCartDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderDTO
;
import
com.mmc.oms.model.qo.uav.UavCartQO
;
...
...
@@ -49,7 +50,7 @@ public class UavCartController extends BaseController {
}
@ApiOperation
(
value
=
"购物车列表"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
UavCartDTO
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
UavCart
Company
DTO
.
class
)})
@PostMapping
(
"list"
)
public
ResultBody
list
(
@RequestBody
UavCartQO
uavCartQO
,
HttpServletRequest
request
)
{
...
...
src/main/java/com/mmc/oms/controller/uav/UavOrderController.java
浏览文件 @
bf111e73
...
...
@@ -3,6 +3,7 @@ package com.mmc.oms.controller.uav;
import
com.mmc.oms.common.result.ResultBody
;
import
com.mmc.oms.controller.BaseController
;
import
com.mmc.oms.model.dto.ContractInfoDTO
;
import
com.mmc.oms.model.dto.uav.UavCartCompanyDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderStatusDTO
;
import
com.mmc.oms.model.qo.uav.UavOrderQO
;
...
...
@@ -16,6 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
/**
* @author: zj
...
...
@@ -35,6 +37,14 @@ public class UavOrderController extends BaseController {
return
uavOrderService
.
addOrder
(
param
,
this
.
getCurrentAccount
(
request
));
}
@ApiOperation
(
value
=
"提交订单-购物车"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
UavOrderDTO
.
class
)})
@PostMapping
(
"addOrderByCart"
)
public
ResultBody
<
UavOrderDTO
>
addOrderByCart
(
@RequestBody
AddUavOrderByCartQO
orderByCartQO
,
HttpServletRequest
request
)
{
return
uavOrderService
.
addOrderByCart
(
orderByCartQO
,
this
.
getCurrentAccount
(
request
));
}
@ApiOperation
(
value
=
"订单详情"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
UavOrderDTO
.
class
)})
@GetMapping
(
"detail"
)
...
...
src/main/java/com/mmc/oms/entity/uav/UavOrderSkuDO.java
浏览文件 @
bf111e73
package
com
.
mmc
.
oms
.
entity
.
uav
;
import
com.mmc.oms.model.dto.uav.UavCartDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderSkuDTO
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -52,4 +53,15 @@ public class UavOrderSkuDO implements Serializable {
.
skuNo
(
this
.
skuNo
).
createTime
(
this
.
createTime
).
build
();
}
public
UavOrderSkuDO
(
UavCartDTO
uavCartDTO
){
this
.
mallGoodsId
=
uavCartDTO
.
getMallGoodsId
();
this
.
orderNum
=
uavCartDTO
.
getOrderNum
();
this
.
unitPrice
=
uavCartDTO
.
getSalePrice
();
this
.
productSpec
=
uavCartDTO
.
getProductSpec
();
this
.
tradeName
=
uavCartDTO
.
getTradeName
();
this
.
skuNo
=
uavCartDTO
.
getSkuNo
();
this
.
skuImage
=
uavCartDTO
.
getSkuImage
();
this
.
priceStockId
=
uavCartDTO
.
getPriceStockId
();
}
}
src/main/java/com/mmc/oms/model/dto/uav/UavCartCompanyDTO.java
浏览文件 @
bf111e73
package
com
.
mmc
.
oms
.
model
.
dto
.
uav
;
import
com.mmc.oms.entity.uav.UavCartDO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
...
...
@@ -19,7 +20,10 @@ import java.util.List;
@NoArgsConstructor
public
class
UavCartCompanyDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
6785504068213761405L
;
@ApiModelProperty
(
value
=
"商家id"
)
private
Integer
thirdBackUserAccountId
;
@ApiModelProperty
(
value
=
"商家名称"
)
private
String
companyName
;
@ApiModelProperty
(
value
=
"购物车对应规格"
)
private
List
<
UavCartDTO
>
uavCartDOS
;
}
src/main/java/com/mmc/oms/model/dto/uav/UavCartDTO.java
浏览文件 @
bf111e73
...
...
@@ -48,4 +48,6 @@ public class UavCartDTO implements Serializable {
private
Date
createTime
;
@ApiModelProperty
(
value
=
"是否展示价格,0 不显示 1显示"
)
private
Integer
priceShow
;
@ApiModelProperty
(
value
=
"是否上架状态:0: 下架 1:上架"
)
private
Integer
shelfStatus
;
}
src/main/java/com/mmc/oms/model/vo/uav/AddUavOrderByCartQO.java
0 → 100644
浏览文件 @
bf111e73
package
com
.
mmc
.
oms
.
model
.
vo
.
uav
;
import
com.mmc.oms.model.dto.uav.UavCartCompanyDTO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.List
;
/**
* @author: zj
* @Date: 2023/9/20 9:46
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
AddUavOrderByCartQO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
2749055915328197141L
;
@ApiModelProperty
(
"收货地址"
)
private
Integer
userAddressId
;
@ApiModelProperty
(
"订单类型,0正常直接支付订单,1意向沟通订单"
)
private
Integer
orderType
;
@ApiModelProperty
(
"用户备注"
)
private
String
userRemark
;
@ApiModelProperty
(
"是否抵扣云享金,0否,1是"
)
private
Integer
deductShareAmount
;
@ApiModelProperty
(
"是否抵扣余额,0否,1是"
)
private
Integer
deductSalaryAmount
;
@ApiModelProperty
(
"每家商户对应的规格"
)
private
List
<
UavCartCompanyDTO
>
cartCompanyDTOS
;
}
src/main/java/com/mmc/oms/service/uav/UavCartService.java
浏览文件 @
bf111e73
package
com
.
mmc
.
oms
.
service
.
uav
;
import
com.mmc.oms.common.result.ResultBody
;
import
com.mmc.oms.model.dto.uav.UavCartCompanyDTO
;
import
com.mmc.oms.model.dto.user.BaseAccountDTO
;
import
com.mmc.oms.model.qo.uav.UavCartQO
;
import
com.mmc.oms.model.vo.uav.UavCartVO
;
...
...
@@ -19,4 +20,6 @@ public interface UavCartService {
ResultBody
updateNum
(
Integer
id
,
Integer
changeNum
);
ResultBody
list
(
UavCartQO
uavCartQO
,
BaseAccountDTO
currentAccount
);
void
buildUavCartCompany
(
Integer
orderType
,
List
<
UavCartCompanyDTO
>
uavCartCompanyDTOS
);
}
src/main/java/com/mmc/oms/service/uav/UavOrderService.java
浏览文件 @
bf111e73
...
...
@@ -2,12 +2,15 @@ package com.mmc.oms.service.uav;
import
com.mmc.oms.common.result.ResultBody
;
import
com.mmc.oms.model.dto.ContractInfoDTO
;
import
com.mmc.oms.model.dto.uav.UavCartCompanyDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderDTO
;
import
com.mmc.oms.model.dto.user.BaseAccountDTO
;
import
com.mmc.oms.model.qo.uav.UavOrderQO
;
import
com.mmc.oms.model.vo.uav.*
;
import
com.mmc.oms.model.vo.wallet.TopUpOrderVO
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
/**
* @author: zj
...
...
@@ -49,4 +52,6 @@ public interface UavOrderService {
ResultBody
uavOrderFinishSign
(
String
orderNo
);
ResultBody
removeUavOrder
(
Integer
id
);
ResultBody
addOrderByCart
(
AddUavOrderByCartQO
orderByCartQO
,
BaseAccountDTO
currentAccount
);
}
src/main/java/com/mmc/oms/service/uav/impl/UavCartServiceImpl.java
浏览文件 @
bf111e73
...
...
@@ -81,7 +81,8 @@ public class UavCartServiceImpl implements UavCartService {
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
uavCartQO
.
getPageSize
(),
list
.
size
(),
uavCartCompanyDTOS
));
}
private
void
buildUavCartCompany
(
Integer
orderType
,
List
<
UavCartCompanyDTO
>
uavCartCompanyDTOS
){
@Override
public
void
buildUavCartCompany
(
Integer
orderType
,
List
<
UavCartCompanyDTO
>
uavCartCompanyDTOS
){
List
<
PriceStockQO
>
priceStockQOS
=
new
ArrayList
<>();
for
(
UavCartCompanyDTO
uavCartCompanyDTO
:
uavCartCompanyDTOS
)
{
for
(
UavCartDTO
uavCartDO
:
uavCartCompanyDTO
.
getUavCartDOS
())
{
...
...
src/main/java/com/mmc/oms/service/uav/impl/UavOrderServiceImpl.java
浏览文件 @
bf111e73
...
...
@@ -33,6 +33,7 @@ import com.mmc.oms.model.vo.demand.CommonPaymentVO;
import
com.mmc.oms.model.vo.uav.*
;
import
com.mmc.oms.model.vo.wallet.TopUpOrderVO
;
import
com.mmc.oms.service.demand.DemandReleaseOrderService
;
import
com.mmc.oms.service.uav.UavCartService
;
import
com.mmc.oms.service.uav.UavOrderService
;
import
com.mmc.oms.service.uav.UavPOService
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -655,4 +656,55 @@ public class UavOrderServiceImpl implements UavOrderService {
uavOrderDao
.
closeShowUavOrder
(
id
);
return
ResultBody
.
success
();
}
@Autowired
private
UavCartService
uavCartService
;
@Transactional
@Override
public
ResultBody
addOrderByCart
(
AddUavOrderByCartQO
orderByCartQO
,
BaseAccountDTO
currentAccount
)
{
uavCartService
.
buildUavCartCompany
(
orderByCartQO
.
getOrderType
(),
orderByCartQO
.
getCartCompanyDTOS
());
// 可以多商家多商品,为每个商家生成一个订单
List
<
UavOrderDO
>
orders
=
new
ArrayList
<
UavOrderDO
>();
BigDecimal
allAmount
=
BigDecimal
.
ZERO
;
// 意向订单只能下一个商家的
if
(
orderByCartQO
.
getOrderType
().
equals
(
UavOrderType
.
SIGN
.
getCode
())
&&
orderByCartQO
.
getCartCompanyDTOS
().
size
()
>
1
)
{
return
ResultBody
.
error
(
"意向订单仅限下单个商家的商品"
);
}
// 生成订单信息
for
(
UavCartCompanyDTO
companyDTO
:
orderByCartQO
.
getCartCompanyDTOS
())
{
BigDecimal
singleOrderAmount
=
BigDecimal
.
ZERO
;
UavOrderDO
uavOrderDO
=
new
UavOrderDO
();
List
<
UavOrderSkuDO
>
skuDOS
=
new
ArrayList
<
UavOrderSkuDO
>();
String
orderNo
=
CodeUtil
.
uavOrderCode
();
if
(
CollectionUtils
.
isNotEmpty
(
companyDTO
.
getUavCartDOS
()))
{
for
(
UavCartDTO
uavCartDTO
:
companyDTO
.
getUavCartDOS
())
{
UavOrderSkuDO
uavOrderSkuDO
=
new
UavOrderSkuDO
(
uavCartDTO
);
skuDOS
.
add
(
uavOrderSkuDO
);
singleOrderAmount
=
singleOrderAmount
.
add
(
uavCartDTO
.
getSalePrice
().
multiply
(
BigDecimal
.
valueOf
(
uavCartDTO
.
getOrderNum
())));
}
}
// 设置订单状态
// uavOrderDO.setStatusCode();
uavOrderDO
.
setOrderTotalAmount
(
singleOrderAmount
);
uavOrderDO
.
setUserAccountId
(
currentAccount
.
getUserAccountId
());
uavOrderDO
.
setUserAddressId
(
orderByCartQO
.
getUserAddressId
());
uavOrderDO
.
setThirdBackUserAccountId
(
companyDTO
.
getThirdBackUserAccountId
());
uavOrderDO
.
setCompanyName
(
companyDTO
.
getCompanyName
());
uavOrderDO
.
setOrderType
(
orderByCartQO
.
getOrderType
());
uavOrderDO
.
setUserRemark
(
orderByCartQO
.
getUserRemark
());
uavOrderDO
.
setOrderNo
(
orderNo
);
uavOrderDO
.
setSkuDOS
(
skuDOS
);
orders
.
add
(
uavOrderDO
);
allAmount
=
allAmount
.
add
(
singleOrderAmount
);
}
// 云享金、余额扣除相关
ResultBody
<
PayWalletDTO
>
payResInfo
=
userAppApi
.
getCurrentUserPayWalletInfo
(
currentAccount
.
getToken
());
if
(!
payResInfo
.
getCode
().
equals
(
ResultEnum
.
SUCCESS
.
getResultCode
())
||
payResInfo
.
getResult
()
==
null
){
return
payResInfo
;
}
PayWalletDTO
payWalletDTO
=
payResInfo
.
getResult
();
return
ResultBody
.
success
();
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论