Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
O
oms-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
oms-ci-test
Commits
1d912593
提交
1d912593
authored
9月 14, 2023
作者:
zhenjie
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
商城订单审核付款、收货解冻及优化
上级
5fe8e08c
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
55 行增加
和
19 行删除
+55
-19
UavOrderController.java
...n/java/com/mmc/oms/controller/uav/UavOrderController.java
+2
-0
UavOrderDao.java
src/main/java/com/mmc/oms/dao/uav/UavOrderDao.java
+4
-0
UserAppApi.java
src/main/java/com/mmc/oms/feign/UserAppApi.java
+3
-0
UserAppApiHystrix.java
...ain/java/com/mmc/oms/feign/hystrix/UserAppApiHystrix.java
+6
-0
PayUavWalletVO.java
src/main/java/com/mmc/oms/model/vo/uav/PayUavWalletVO.java
+1
-1
UavOrderServiceImpl.java
...ava/com/mmc/oms/service/uav/impl/UavOrderServiceImpl.java
+24
-9
UavOrderDao.xml
src/main/resources/mapper/uav/UavOrderDao.xml
+15
-9
没有找到文件。
src/main/java/com/mmc/oms/controller/uav/UavOrderController.java
浏览文件 @
1d912593
...
...
@@ -126,6 +126,8 @@ public class UavOrderController extends BaseController {
return
uavOrderService
.
confirmOrder
(
uavOrderVO
,
this
.
getCurrentAccount
(
request
));
}
// 用户删除订单
// 设置订单抽成比例
// 微信完成回调-修改订单状态
...
...
src/main/java/com/mmc/oms/dao/uav/UavOrderDao.java
浏览文件 @
1d912593
...
...
@@ -43,4 +43,8 @@ public interface UavOrderDao {
void
checkPay
(
UavOrderPayDO
uavOrderPayDO
);
void
addRemarkOrder
(
UavOrderRemarkDO
uavOrderRemarkDO
);
UavOrderPayDO
getUavOrderPayById
(
Integer
id
);
void
updateUavOrderProportion
(
Integer
id
,
Integer
proportion
);
}
src/main/java/com/mmc/oms/feign/UserAppApi.java
浏览文件 @
1d912593
...
...
@@ -28,6 +28,9 @@ public interface UserAppApi {
@GetMapping
(
"pay/getCurrentUserPayWalletInfo"
)
public
ResultBody
<
PayWalletDTO
>
getCurrentUserPayWalletInfo
(
@RequestHeader
String
token
);
@GetMapping
(
"pay/getPayWalletInfo"
)
public
ResultBody
<
PayWalletDTO
>
getPayWalletInfo
(
@RequestParam
Integer
userAccountId
,
@RequestHeader
String
token
);
@PostMapping
(
"pay/feignPayUavWallet"
)
public
ResultBody
feignPayUavWallet
(
@RequestBody
PayUavWalletVO
payUavWalletVO
,
@RequestHeader
String
token
);
...
...
src/main/java/com/mmc/oms/feign/hystrix/UserAppApiHystrix.java
浏览文件 @
1d912593
...
...
@@ -33,6 +33,12 @@ public class UserAppApiHystrix implements UserAppApi {
}
@Override
public
ResultBody
<
PayWalletDTO
>
getPayWalletInfo
(
Integer
userAccountId
,
String
token
)
{
log
.
error
(
"熔断:UserAppApiHystrix.getPayWalletInfo==error"
);
return
ResultBody
.
error
(
"-1"
,
"远程调用失败"
);
}
@Override
public
ResultBody
feignPayUavWallet
(
PayUavWalletVO
payUavWalletVO
,
String
token
)
{
log
.
error
(
"熔断:UserAppApiHystrix.feignPayUavWallet==error==>param:{}"
,
JSONObject
.
toJSONString
(
payUavWalletVO
));
return
ResultBody
.
error
(
"-1"
,
"远程调用失败"
);
...
...
src/main/java/com/mmc/oms/model/vo/uav/PayUavWalletVO.java
浏览文件 @
1d912593
...
...
@@ -29,7 +29,7 @@ public class PayUavWalletVO implements Serializable {
@ApiModelProperty
(
value
=
"佣金"
)
private
BigDecimal
salaryAmount
;
@ApiModelProperty
(
value
=
"订单状态 100:订单支付 1400:商城订单退款
"
)
@ApiModelProperty
(
value
=
"订单状态 100:订单支付 1400:商城订单退款
1500:订单提成 999:确认收货"
,
required
=
true
)
private
Integer
orderStatus
;
@ApiModelProperty
(
value
=
"订单备注"
)
...
...
src/main/java/com/mmc/oms/service/uav/impl/UavOrderServiceImpl.java
浏览文件 @
1d912593
...
...
@@ -183,7 +183,6 @@ public class UavOrderServiceImpl implements UavOrderService {
}
else
{
uavOrderDO
.
setStatusCode
(
UavOrderStatus
.
CONFIRM
.
getCode
());
}
log
.
info
(
"钱包使用情况:salaryAmount-{},shareAmount-{},otherAmount-{}"
,
salaryAmount
,
shareAmount
,
otherAmount
);
uavOrderDO
.
setUserAccountId
(
currentAccount
.
getUserAccountId
());
uavOrderDO
.
setThirdBackUserAccountId
(
param
.
getThirdBackUserAccountId
());
uavOrderDO
.
setCompanyName
(
param
.
getCompanyName
());
...
...
@@ -321,7 +320,7 @@ public class UavOrderServiceImpl implements UavOrderService {
List
<
UavOrderDO
>
uavOrderDOS
=
uavOrderDao
.
list
(
uavOrderQO
);
List
<
UavOrderDTO
>
uavOrderDTOS
=
uavOrderDOS
.
stream
().
map
(
UavOrderDO:
:
buildUavOrderDTO
).
collect
(
Collectors
.
toList
());
List
<
Integer
>
userIds
=
uavOrderDTOS
.
stream
().
map
(
UavOrderDTO:
:
getUserAccountId
).
collect
(
Collectors
.
toList
());
//
TODO
买家信息
// 买家信息
UserAccountQO
userAccountQO
=
new
UserAccountQO
();
userAccountQO
.
setUserIds
(
userIds
);
List
<
UserAccountSimpleDTO
>
userDTOS
=
userAppApi
.
feignListAppUserAccount
(
userAccountQO
,
currentAccount
.
getToken
());
...
...
@@ -399,12 +398,26 @@ public class UavOrderServiceImpl implements UavOrderService {
return
ResultBody
.
error
(
"操作有误,请重试!"
);
}
this
.
updateUavOrderStatus
(
id
,
UavOrderStatus
.
WAITING_RECEIVE_GOODS
);
// 解冻用户钱包金额
if
(
uavOrderDO
.
getShareAmount
().
compareTo
(
BigDecimal
.
ZERO
)
>
0
||
uavOrderDO
.
getSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
PayUavWalletVO
userPayUavWalletVO
=
new
PayUavWalletVO
();
userPayUavWalletVO
.
setUserAccountId
(
uavOrderDO
.
getUserAccountId
());
userPayUavWalletVO
.
setSalaryAmount
(
uavOrderDO
.
getSalaryAmount
());
userPayUavWalletVO
.
setCashAmount
(
uavOrderDO
.
getShareAmount
());
userPayUavWalletVO
.
setOrderStatus
(
999
);
userPayUavWalletVO
.
setRemark
(
"商城订单金额解冻"
);
ResultBody
resultBody
=
userAppApi
.
feignPayUavWallet
(
userPayUavWalletVO
,
null
);
if
(!
resultBody
.
getCode
().
equals
(
ResultEnum
.
SUCCESS
.
getResultCode
()))
{
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
return
resultBody
;
}
}
// 修改收货信息
UavOrderExpressDO
uavOrderExpressDO
=
uavOrderExpressDao
.
getUavOrderExpressDO
(
id
);
uavOrderExpressDO
.
setReceive
(
1
);
uavOrderExpressDO
.
setReceiveTime
(
new
Date
());
uavOrderExpressDao
.
updateUavOrderExpressDO
(
uavOrderExpressDO
);
if
(
uavOrderDO
.
getOrderType
().
equals
(
0
))
{
if
(
uavOrderDO
.
getOrderType
().
equals
(
UavOrderType
.
PAY
.
getCode
()
))
{
// 订单抽成设置
BigDecimal
thirdAmount
=
uavOrderDO
.
getOrderTotalAmount
().
multiply
(
BigDecimal
.
valueOf
(
100
).
subtract
(
UavOrderProportion
.
PROPORTION
).
divide
(
BigDecimal
.
valueOf
(
100
)));
...
...
@@ -425,6 +438,7 @@ public class UavOrderServiceImpl implements UavOrderService {
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
return
resultBody
;
}
uavOrderDao
.
updateUavOrderProportion
(
uavOrderDO
.
getId
(),
UavOrderProportion
.
PROPORTION
.
intValue
());
}
return
ResultBody
.
success
();
}
...
...
@@ -483,19 +497,20 @@ public class UavOrderServiceImpl implements UavOrderService {
@Transactional
@Override
public
ResultBody
checkPay
(
UavOrderPayVO
uavOrderPayVO
)
{
UavOrderPayDO
beforeUavOrderPayDO
=
uavOrderDao
.
getUavOrderPayById
(
uavOrderPayVO
.
getId
());
// 一个订单可能会多次上传付款凭证,因此单独审核
UavOrderDO
uavOrderDO
=
uavOrderDao
.
detail
(
uavOrderPayV
O
.
getUavOrderId
());
UavOrderDO
uavOrderDO
=
uavOrderDao
.
detail
(
beforeUavOrderPayD
O
.
getUavOrderId
());
if
(
uavOrderPayVO
.
getCheckStatus
().
equals
(
1
)){
// 第一次审核通过,则要把订单状态改为待发货;意向订单还要生成采购订单
if
(
uavOrderDO
.
getStatusCode
().
equals
(
UavOrderStatus
.
FINISH_PAYING
.
getCode
()))
{
this
.
updateUavOrderStatus
(
uavOrderPayV
O
.
getUavOrderId
(),
UavOrderStatus
.
FINISH_PAYING
);
//
TODO
生成采购订单
this
.
updateUavOrderStatus
(
beforeUavOrderPayD
O
.
getUavOrderId
(),
UavOrderStatus
.
FINISH_PAYING
);
// 生成采购订单
UavPurchaseOrderDO
uavPurchaseOrderDO
=
new
UavPurchaseOrderDO
();
uavPurchaseOrderDO
.
setBackUserAccountId
(
1
);
uavPurchaseOrderDO
.
setThirdUserAccountId
(
uavOrderDO
.
getThirdBackUserAccountId
());
uavPurchaseOrderDO
.
setOrderAmount
(
uavOrderDO
.
getOrderTotalAmount
());
uavPurchaseOrderDO
.
setOrderNo
(
CodeUtil
.
uavPOrderCode
());
uavPurchaseOrderDO
.
setUavOrderId
(
uavOrderDO
.
get
Id
());
uavPurchaseOrderDO
.
setUavOrderId
(
beforeUavOrderPayDO
.
getUavOrder
Id
());
uavPurchaseOrderDO
.
setStatusCode
(
UavOrderStatus
.
CONFIRM
.
getCode
());
uavPODao
.
addPurchaseOrder
(
uavPurchaseOrderDO
);
}
...
...
@@ -513,7 +528,7 @@ public class UavOrderServiceImpl implements UavOrderService {
if
(
uavOrderDO
==
null
)
{
throw
new
RuntimeException
();
}
//
TODO
有问题
// 有问题
this
.
updateUavOrderStatus
(
uavOrderDO
.
getId
(),
UavOrderStatus
.
PAYING
);
// 修改订单信息
uavOrderDO
.
setPayType
(
"wechatpay"
);
...
...
@@ -545,7 +560,7 @@ public class UavOrderServiceImpl implements UavOrderService {
}
// 意向订单扣除云享金
if
(
uavOrderDO
.
getOrderType
().
equals
(
UavOrderType
.
SIGN
.
getCode
()))
{
ResultBody
<
PayWalletDTO
>
payResInfo
=
userAppApi
.
get
CurrentUserPayWalletInfo
(
currentAccount
.
getToken
());
ResultBody
<
PayWalletDTO
>
payResInfo
=
userAppApi
.
get
PayWalletInfo
(
uavOrderDO
.
getUserAccountId
(),
currentAccount
.
getToken
());
PayWalletDTO
payWalletDTO
=
payResInfo
.
getResult
();
if
(!
payResInfo
.
getCode
().
equals
(
ResultEnum
.
SUCCESS
.
getResultCode
())
||
payWalletDTO
==
null
){
return
payResInfo
;
...
...
src/main/resources/mapper/uav/UavOrderDao.xml
浏览文件 @
1d912593
...
...
@@ -38,6 +38,10 @@
pay_time, confirm_receipt_time, version, remark_status, update_time
</sql>
<sql
id=
"uav_order_pay_column"
>
id, uav_order_id, pay_type, pay_img_list, check_status, pay_remark, refuse_reason, create_time, check_time
</sql>
<insert
id=
"addOrder"
parameterType=
"com.mmc.oms.entity.uav.UavOrderDO"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into uav_order(order_no, status_code, user_account_id, third_back_user_account_id, company_name, order_total_amount,
salary_amount, share_amount, other_amount, pay_type, order_type, user_address_id, user_remark, seller_remark, create_time
...
...
@@ -134,21 +138,17 @@
where id = #{id}
</update>
<update
id=
"updateUavOrderProportion"
>
update uav_order set proportion = #{proportion} where id = #{id}
</update>
<select
id=
"detail"
resultType=
"com.mmc.oms.entity.uav.UavOrderDO"
>
select
<include
refid=
"uav_order_column"
/>
from uav_order where id = #{id}
</select>
<select
id=
"listUavOrderPay"
resultType=
"com.mmc.oms.entity.uav.UavOrderPayDO"
>
select
id,
uav_order_id,
pay_type,
pay_img_list,
check_status,
pay_remark,
refuse_reason,
create_time,
check_time
<include
refid=
"uav_order_pay_column"
/>
from uav_order_pay
where uav_order_id = #{uavOrderId} and pay_type = 2
</select>
...
...
@@ -239,4 +239,10 @@
select
<include
refid=
"uav_order_column"
/>
from uav_order where order_no = #{orderNo}
</select>
<select
id=
"getUavOrderPayById"
resultType=
"com.mmc.oms.entity.uav.UavOrderPayDO"
>
select
<include
refid=
"uav_order_pay_column"
/>
from uav_order_pay
where id = #{id} and pay_type = 2
</select>
</mapper>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论