Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
O
oms
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
oms
Commits
c693b50a
提交
c693b50a
authored
9月 22, 2023
作者:
zhenjie
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
购物车多商家商品下单
上级
bcc350db
隐藏空白字符变更
内嵌
并排
正在显示
16 个修改的文件
包含
239 行增加
和
31 行删除
+239
-31
CodeUtil.java
src/main/java/com/mmc/oms/common/util/CodeUtil.java
+8
-0
UavCartController.java
...in/java/com/mmc/oms/controller/uav/UavCartController.java
+2
-0
UavOrderController.java
...n/java/com/mmc/oms/controller/uav/UavOrderController.java
+4
-3
UavPayWxDao.java
src/main/java/com/mmc/oms/dao/uav/UavPayWxDao.java
+22
-0
UavPayWxDO.java
src/main/java/com/mmc/oms/entity/uav/UavPayWxDO.java
+31
-0
UavPayWxSubDO.java
src/main/java/com/mmc/oms/entity/uav/UavPayWxSubDO.java
+28
-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
MultiUavOrderDTO.java
...main/java/com/mmc/oms/model/dto/uav/MultiUavOrderDTO.java
+25
-0
UavCartDTO.java
src/main/java/com/mmc/oms/model/dto/uav/UavCartDTO.java
+2
-2
UavCartQO.java
src/main/java/com/mmc/oms/model/qo/uav/UavCartQO.java
+0
-2
DemandReleaseOrderServiceImpl.java
...ms/service/demand/Impl/DemandReleaseOrderServiceImpl.java
+35
-8
UavCartService.java
src/main/java/com/mmc/oms/service/uav/UavCartService.java
+1
-1
UavCartServiceImpl.java
...java/com/mmc/oms/service/uav/impl/UavCartServiceImpl.java
+2
-11
UavOrderServiceImpl.java
...ava/com/mmc/oms/service/uav/impl/UavOrderServiceImpl.java
+34
-4
UavPayWxDao.xml
src/main/resources/mapper/uav/UavPayWxDao.xml
+36
-0
没有找到文件。
src/main/java/com/mmc/oms/common/util/CodeUtil.java
浏览文件 @
c693b50a
...
@@ -236,6 +236,14 @@ public class CodeUtil {
...
@@ -236,6 +236,14 @@ public class CodeUtil {
return
sb
.
toString
();
return
sb
.
toString
();
}
}
public
static
String
multiUavOrderPayCode
()
{
StringBuffer
sb
=
new
StringBuffer
();
sb
.
append
(
"m"
);
sb
.
append
(
TDateUtil
.
getCurrentDateByType
(
"yyyyMMddHHmmss"
));
sb
.
append
(
CodeUtil
.
getRandomNum
(
4
));
return
sb
.
toString
();
}
/**
/**
* 活动编号
* 活动编号
*/
*/
...
...
src/main/java/com/mmc/oms/controller/uav/UavCartController.java
浏览文件 @
c693b50a
...
@@ -2,6 +2,7 @@ package com.mmc.oms.controller.uav;
...
@@ -2,6 +2,7 @@ package com.mmc.oms.controller.uav;
import
com.mmc.oms.common.result.ResultBody
;
import
com.mmc.oms.common.result.ResultBody
;
import
com.mmc.oms.controller.BaseController
;
import
com.mmc.oms.controller.BaseController
;
import
com.mmc.oms.feign.UserAppApi
;
import
com.mmc.oms.model.dto.uav.UavCartCompanyDTO
;
import
com.mmc.oms.model.dto.uav.UavCartCompanyDTO
;
import
com.mmc.oms.model.dto.uav.UavCartDTO
;
import
com.mmc.oms.model.dto.uav.UavCartDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderDTO
;
...
@@ -13,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired;
...
@@ -13,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
...
src/main/java/com/mmc/oms/controller/uav/UavOrderController.java
浏览文件 @
c693b50a
...
@@ -3,6 +3,7 @@ package com.mmc.oms.controller.uav;
...
@@ -3,6 +3,7 @@ package com.mmc.oms.controller.uav;
import
com.mmc.oms.common.result.ResultBody
;
import
com.mmc.oms.common.result.ResultBody
;
import
com.mmc.oms.controller.BaseController
;
import
com.mmc.oms.controller.BaseController
;
import
com.mmc.oms.model.dto.ContractInfoDTO
;
import
com.mmc.oms.model.dto.ContractInfoDTO
;
import
com.mmc.oms.model.dto.uav.MultiUavOrderDTO
;
import
com.mmc.oms.model.dto.uav.UavCartCompanyDTO
;
import
com.mmc.oms.model.dto.uav.UavCartCompanyDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderStatusDTO
;
import
com.mmc.oms.model.dto.uav.UavOrderStatusDTO
;
...
@@ -38,10 +39,10 @@ public class UavOrderController extends BaseController {
...
@@ -38,10 +39,10 @@ public class UavOrderController extends BaseController {
}
}
@ApiOperation
(
value
=
"提交订单-购物车"
)
@ApiOperation
(
value
=
"提交订单-购物车"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
UavOrderDTO
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
Multi
UavOrderDTO
.
class
)})
@PostMapping
(
"addOrderByCart"
)
@PostMapping
(
"addOrderByCart"
)
public
ResultBody
<
UavOrderDTO
>
addOrderByCart
(
@RequestBody
AddUavOrderByCartQO
orderByCartQO
,
public
ResultBody
<
Multi
UavOrderDTO
>
addOrderByCart
(
@RequestBody
AddUavOrderByCartQO
orderByCartQO
,
HttpServletRequest
request
)
{
HttpServletRequest
request
)
{
return
uavOrderService
.
addOrderByCart
(
orderByCartQO
,
this
.
getCurrentAccount
(
request
));
return
uavOrderService
.
addOrderByCart
(
orderByCartQO
,
this
.
getCurrentAccount
(
request
));
}
}
...
...
src/main/java/com/mmc/oms/dao/uav/UavPayWxDao.java
0 → 100644
浏览文件 @
c693b50a
package
com
.
mmc
.
oms
.
dao
.
uav
;
import
com.mmc.oms.entity.uav.UavPayWxDO
;
import
com.mmc.oms.entity.uav.UavPayWxSubDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
/**
* @author: zj
* @Date: 2023/9/21 19:36
*/
@Mapper
public
interface
UavPayWxDao
{
UavPayWxDO
getUavPayWx
(
String
payNo
);
void
addUavPayWx
(
UavPayWxDO
uavPayWx
);
void
batchAddUavPayWxSub
(
List
<
UavPayWxSubDO
>
payWxSubDOS
);
List
<
UavPayWxSubDO
>
listUavPayWxSub
(
Integer
uavPayWxId
);
}
src/main/java/com/mmc/oms/entity/uav/UavPayWxDO.java
0 → 100644
浏览文件 @
c693b50a
package
com
.
mmc
.
oms
.
entity
.
uav
;
import
io.swagger.annotations.ApiModel
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author: zj
* @Date: 2023/9/21 16:59
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
"多订单支付总记录"
)
public
class
UavPayWxDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
3003931182943391633L
;
private
Integer
id
;
private
String
payNo
;
private
BigDecimal
amount
;
private
String
tradeState
;
private
Date
createTime
;
private
List
<
UavPayWxSubDO
>
payWxSubDOS
;
}
src/main/java/com/mmc/oms/entity/uav/UavPayWxSubDO.java
0 → 100644
浏览文件 @
c693b50a
package
com
.
mmc
.
oms
.
entity
.
uav
;
import
io.swagger.annotations.ApiModel
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* @author: zj
* @Date: 2023/9/21 19:27
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
"订单微信支付记录"
)
public
class
UavPayWxSubDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
1446318972494082705L
;
private
Integer
id
;
private
Integer
uavPayWxId
;
private
Integer
uavOrderId
;
private
BigDecimal
amount
;
private
Date
createTime
;
}
src/main/java/com/mmc/oms/feign/UserAppApi.java
浏览文件 @
c693b50a
...
@@ -38,6 +38,9 @@ public interface UserAppApi {
...
@@ -38,6 +38,9 @@ public interface UserAppApi {
@GetMapping
(
"company/getManagerIdByBackUserId"
)
@GetMapping
(
"company/getManagerIdByBackUserId"
)
public
ResultBody
getManagerIdByBackUserId
(
@RequestParam
Integer
backUserAccountId
,
@RequestHeader
String
token
);
public
ResultBody
getManagerIdByBackUserId
(
@RequestParam
Integer
backUserAccountId
,
@RequestHeader
String
token
);
@PostMapping
(
"user-account/feignListUserAccountByIds"
)
List
<
UserAccountSimpleDTO
>
feignListUserAccountByIds
(
@RequestBody
List
<
Integer
>
ids
,
@RequestHeader
(
"token"
)
String
token
);
/**
/**
* 获取小程序用户集合列表页面
* 获取小程序用户集合列表页面
*
*
...
...
src/main/java/com/mmc/oms/feign/hystrix/UserAppApiHystrix.java
浏览文件 @
c693b50a
...
@@ -52,6 +52,12 @@ public class UserAppApiHystrix implements UserAppApi {
...
@@ -52,6 +52,12 @@ public class UserAppApiHystrix implements UserAppApi {
}
}
@Override
@Override
public
List
<
UserAccountSimpleDTO
>
feignListUserAccountByIds
(
List
<
Integer
>
ids
,
String
token
)
{
log
.
error
(
"熔断:UserAppApiHystrix.feignListUserAccountByIds:{}"
,
ids
);
return
null
;
}
@Override
public
List
<
UserAccountSimpleDTO
>
feignListAppUserAccount
(
UserAccountQO
userAccountQO
,
String
token
)
{
public
List
<
UserAccountSimpleDTO
>
feignListAppUserAccount
(
UserAccountQO
userAccountQO
,
String
token
)
{
log
.
error
(
"熔断:UserAppApiHystrix.feignListAppUserAccount:{}"
,
userAccountQO
);
log
.
error
(
"熔断:UserAppApiHystrix.feignListAppUserAccount:{}"
,
userAccountQO
);
return
null
;
return
null
;
...
...
src/main/java/com/mmc/oms/model/dto/uav/MultiUavOrderDTO.java
0 → 100644
浏览文件 @
c693b50a
package
com
.
mmc
.
oms
.
model
.
dto
.
uav
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
* @author: zj
* @Date: 2023/9/21 16:11
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
MultiUavOrderDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
935420087357754202L
;
private
BigDecimal
allOtherAmount
;
private
String
payNo
;
private
List
<
UavOrderDTO
>
uavOrderDTOS
;
}
src/main/java/com/mmc/oms/model/dto/uav/UavCartDTO.java
浏览文件 @
c693b50a
...
@@ -24,9 +24,9 @@ public class UavCartDTO implements Serializable {
...
@@ -24,9 +24,9 @@ public class UavCartDTO implements Serializable {
private
Integer
id
;
private
Integer
id
;
@ApiModelProperty
(
value
=
"用户ID"
)
@ApiModelProperty
(
value
=
"用户ID"
)
private
Integer
userAccountId
;
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"商家id"
)
@ApiModelProperty
(
value
=
"商家id"
,
hidden
=
true
)
private
Integer
thirdBackUserAccountId
;
private
Integer
thirdBackUserAccountId
;
@ApiModelProperty
(
value
=
"商家名称"
)
@ApiModelProperty
(
value
=
"商家名称"
,
hidden
=
true
)
private
String
companyName
;
private
String
companyName
;
@ApiModelProperty
(
value
=
"商品id"
)
@ApiModelProperty
(
value
=
"商品id"
)
private
Integer
mallGoodsId
;
private
Integer
mallGoodsId
;
...
...
src/main/java/com/mmc/oms/model/qo/uav/UavCartQO.java
浏览文件 @
c693b50a
...
@@ -19,8 +19,6 @@ import java.io.Serializable;
...
@@ -19,8 +19,6 @@ import java.io.Serializable;
@AllArgsConstructor
@AllArgsConstructor
public
class
UavCartQO
implements
Serializable
{
public
class
UavCartQO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"订单类型,0正常订单,1意向订单"
,
required
=
true
)
private
Integer
orderType
;
@ApiModelProperty
(
value
=
"页码"
,
required
=
true
)
@ApiModelProperty
(
value
=
"页码"
,
required
=
true
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
Page
.
class
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
Page
.
class
)
...
...
src/main/java/com/mmc/oms/service/demand/Impl/DemandReleaseOrderServiceImpl.java
浏览文件 @
c693b50a
...
@@ -11,12 +11,14 @@ import com.mmc.oms.dao.demand.DemandReleaseOrderDao;
...
@@ -11,12 +11,14 @@ import com.mmc.oms.dao.demand.DemandReleaseOrderDao;
import
com.mmc.oms.dao.demand.PublishServiceOrderDao
;
import
com.mmc.oms.dao.demand.PublishServiceOrderDao
;
import
com.mmc.oms.dao.topup.TopUpOrderDao
;
import
com.mmc.oms.dao.topup.TopUpOrderDao
;
import
com.mmc.oms.dao.uav.UavOrderDao
;
import
com.mmc.oms.dao.uav.UavOrderDao
;
import
com.mmc.oms.dao.uav.UavPayWxDao
;
import
com.mmc.oms.entity.demand.DemandReleaseOrderDO
;
import
com.mmc.oms.entity.demand.DemandReleaseOrderDO
;
import
com.mmc.oms.entity.demand.GetOrderNumberDO
;
import
com.mmc.oms.entity.demand.GetOrderNumberDO
;
import
com.mmc.oms.entity.demand.GetOrderNumberDTO
;
import
com.mmc.oms.entity.demand.GetOrderNumberDTO
;
import
com.mmc.oms.entity.demand.ServiceRequirementsDO
;
import
com.mmc.oms.entity.demand.ServiceRequirementsDO
;
import
com.mmc.oms.entity.topup.TopUpOrderDO
;
import
com.mmc.oms.entity.topup.TopUpOrderDO
;
import
com.mmc.oms.entity.uav.UavOrderDO
;
import
com.mmc.oms.entity.uav.UavOrderDO
;
import
com.mmc.oms.entity.uav.UavPayWxDO
;
import
com.mmc.oms.enums.UavOrderStatus
;
import
com.mmc.oms.enums.UavOrderStatus
;
import
com.mmc.oms.feign.UserAppApi
;
import
com.mmc.oms.feign.UserAppApi
;
import
com.mmc.oms.model.dto.uav.PayWalletDTO
;
import
com.mmc.oms.model.dto.uav.PayWalletDTO
;
...
@@ -81,6 +83,9 @@ public class DemandReleaseOrderServiceImpl implements DemandReleaseOrderService
...
@@ -81,6 +83,9 @@ public class DemandReleaseOrderServiceImpl implements DemandReleaseOrderService
private
TopUpOrderDao
topUpOrderDao
;
private
TopUpOrderDao
topUpOrderDao
;
@Autowired
@Autowired
private
UavPayWxDao
uavPayWxDao
;
@Autowired
private
UserAppApi
userAppApi
;
private
UserAppApi
userAppApi
;
@Override
@Override
...
@@ -109,17 +114,25 @@ public class DemandReleaseOrderServiceImpl implements DemandReleaseOrderService
...
@@ -109,17 +114,25 @@ public class DemandReleaseOrderServiceImpl implements DemandReleaseOrderService
}
}
}
}
public
ResultBody
payUavOrder
(
CommonPaymentVO
commonPaymentVO
,
String
token
)
{
private
ResultBody
multiUavOrderPay
(
OrderRequestParamsVO
orderRequestParamsVO
,
String
token
)
{
UavOrderDO
uavOrderDO
=
uavOrderDao
.
detailByNo
(
commonPaymentVO
.
getOrderNumber
());
UavPayWxDO
uavPayWxDO
=
uavPayWxDao
.
getUavPayWx
(
orderRequestParamsVO
.
getOrderNo
());
if
(
uavOrderDO
.
getOtherAmount
().
multiply
(
BigDecimal
.
valueOf
(
100
)).
compareTo
(
BigDecimal
.
valueOf
(
commonPaymentVO
.
getAmount
()))
!=
0
){
if
(
uavPayWxDO
.
getAmount
().
multiply
(
BigDecimal
.
valueOf
(
100
)).
compareTo
(
BigDecimal
.
valueOf
(
orderRequestParamsVO
.
getAmount
()))
!=
0
){
return
ResultBody
.
error
(
"发起支付金额不正确"
);
}
orderRequestParamsVO
.
setDescription
(
"商城多订单"
+
orderRequestParamsVO
.
getOrderNo
());
ResultBody
resultBody
=
releaseOrder
(
orderRequestParamsVO
,
token
);
if
(!
"200"
.
equals
(
resultBody
.
getCode
()))
{
throw
new
RuntimeException
(
"调用微信支付方法失败!"
);
}
return
resultBody
;
}
private
ResultBody
singleUavOrderPay
(
OrderRequestParamsVO
orderRequestParamsVO
,
String
token
)
{
UavOrderDO
uavOrderDO
=
uavOrderDao
.
detailByNo
(
orderRequestParamsVO
.
getOrderNo
());
if
(
uavOrderDO
.
getOtherAmount
().
multiply
(
BigDecimal
.
valueOf
(
100
)).
compareTo
(
BigDecimal
.
valueOf
(
orderRequestParamsVO
.
getAmount
()))
!=
0
){
return
ResultBody
.
error
(
"发起支付金额不正确"
);
return
ResultBody
.
error
(
"发起支付金额不正确"
);
}
}
OrderRequestParamsVO
orderRequestParamsVO
=
new
OrderRequestParamsVO
();
orderRequestParamsVO
.
setOrderNo
(
commonPaymentVO
.
getOrderNumber
());
orderRequestParamsVO
.
setAmount
(
commonPaymentVO
.
getAmount
());
orderRequestParamsVO
.
setAttach
(
"PAY_UAV_ORDER"
);
orderRequestParamsVO
.
setDescription
(
"商城订单"
+
uavOrderDO
.
getOrderNo
());
orderRequestParamsVO
.
setDescription
(
"商城订单"
+
uavOrderDO
.
getOrderNo
());
orderRequestParamsVO
.
setOrderPort
(
commonPaymentVO
.
getOrderPort
());
ResultBody
resultBody
=
releaseOrder
(
orderRequestParamsVO
,
token
);
ResultBody
resultBody
=
releaseOrder
(
orderRequestParamsVO
,
token
);
if
(!
"200"
.
equals
(
resultBody
.
getCode
()))
{
if
(!
"200"
.
equals
(
resultBody
.
getCode
()))
{
throw
new
RuntimeException
(
"调用微信支付方法失败!"
);
throw
new
RuntimeException
(
"调用微信支付方法失败!"
);
...
@@ -127,6 +140,20 @@ public class DemandReleaseOrderServiceImpl implements DemandReleaseOrderService
...
@@ -127,6 +140,20 @@ public class DemandReleaseOrderServiceImpl implements DemandReleaseOrderService
return
resultBody
;
return
resultBody
;
}
}
public
ResultBody
payUavOrder
(
CommonPaymentVO
commonPaymentVO
,
String
token
)
{
OrderRequestParamsVO
orderRequestParamsVO
=
new
OrderRequestParamsVO
();
orderRequestParamsVO
.
setOrderNo
(
commonPaymentVO
.
getOrderNumber
());
orderRequestParamsVO
.
setAmount
(
commonPaymentVO
.
getAmount
());
orderRequestParamsVO
.
setAttach
(
"PAY_UAV_ORDER"
);
orderRequestParamsVO
.
setOrderPort
(
commonPaymentVO
.
getOrderPort
());
// 购物车下单涉及多订单
if
(
commonPaymentVO
.
getOrderNumber
().
startsWith
(
"m"
))
{
return
multiUavOrderPay
(
orderRequestParamsVO
,
token
);
}
else
{
return
singleUavOrderPay
(
orderRequestParamsVO
,
token
);
}
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResultBody
topUpOrder
(
CommonPaymentVO
commonPaymentVO
,
String
token
,
Integer
userAccountId
)
{
public
ResultBody
topUpOrder
(
CommonPaymentVO
commonPaymentVO
,
String
token
,
Integer
userAccountId
)
{
// 生成充值订单编号 规则T加时间戳加用户id加随机数4位
// 生成充值订单编号 规则T加时间戳加用户id加随机数4位
...
...
src/main/java/com/mmc/oms/service/uav/UavCartService.java
浏览文件 @
c693b50a
...
@@ -21,5 +21,5 @@ public interface UavCartService {
...
@@ -21,5 +21,5 @@ public interface UavCartService {
ResultBody
list
(
UavCartQO
uavCartQO
,
BaseAccountDTO
currentAccount
);
ResultBody
list
(
UavCartQO
uavCartQO
,
BaseAccountDTO
currentAccount
);
void
buildUavCartCompany
(
Integer
orderType
,
List
<
UavCartCompanyDTO
>
uavCartCompanyDTOS
);
void
buildUavCartCompany
(
List
<
UavCartCompanyDTO
>
uavCartCompanyDTOS
);
}
}
src/main/java/com/mmc/oms/service/uav/impl/UavCartServiceImpl.java
浏览文件 @
c693b50a
...
@@ -80,13 +80,13 @@ public class UavCartServiceImpl implements UavCartService {
...
@@ -80,13 +80,13 @@ public class UavCartServiceImpl implements UavCartService {
List
<
UavCartCompanyDTO
>
uavCartCompanyDTOS
=
uavCartCompanyDOS
.
stream
().
map
(
UavCartCompanyDO:
:
buildUavCartCompanyDTO
).
collect
(
Collectors
.
toList
());
List
<
UavCartCompanyDTO
>
uavCartCompanyDTOS
=
uavCartCompanyDOS
.
stream
().
map
(
UavCartCompanyDO:
:
buildUavCartCompanyDTO
).
collect
(
Collectors
.
toList
());
// 同步商品信息,价格及是否展示
// 同步商品信息,价格及是否展示
// 根据规格查询商品信息
// 根据规格查询商品信息
buildUavCartCompany
(
uavCart
QO
.
getOrderType
(),
uavCart
CompanyDTOS
);
buildUavCartCompany
(
uavCartCompanyDTOS
);
uavCartCompanyDTOS
.
removeIf
(
i
->
CollectionUtils
.
isEmpty
(
i
.
getUavCartDOS
()));
uavCartCompanyDTOS
.
removeIf
(
i
->
CollectionUtils
.
isEmpty
(
i
.
getUavCartDOS
()));
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
uavCartQO
.
getPageSize
(),
list
.
size
(),
uavCartCompanyDTOS
));
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
uavCartQO
.
getPageSize
(),
list
.
size
(),
uavCartCompanyDTOS
));
}
}
@Override
@Override
public
void
buildUavCartCompany
(
Integer
orderType
,
List
<
UavCartCompanyDTO
>
uavCartCompanyDTOS
){
public
void
buildUavCartCompany
(
List
<
UavCartCompanyDTO
>
uavCartCompanyDTOS
){
List
<
PriceStockQO
>
priceStockQOS
=
new
ArrayList
<>();
List
<
PriceStockQO
>
priceStockQOS
=
new
ArrayList
<>();
for
(
UavCartCompanyDTO
uavCartCompanyDTO
:
uavCartCompanyDTOS
)
{
for
(
UavCartCompanyDTO
uavCartCompanyDTO
:
uavCartCompanyDTOS
)
{
for
(
UavCartDTO
uavCartDO
:
uavCartCompanyDTO
.
getUavCartDOS
())
{
for
(
UavCartDTO
uavCartDO
:
uavCartCompanyDTO
.
getUavCartDOS
())
{
...
@@ -96,7 +96,6 @@ public class UavCartServiceImpl implements UavCartService {
...
@@ -96,7 +96,6 @@ public class UavCartServiceImpl implements UavCartService {
}
}
// 最新规格信息
// 最新规格信息
List
<
UavCartDTO
>
uavCartDTOS
=
pmsAppApi
.
listPriceStock
(
priceStockQOS
);
List
<
UavCartDTO
>
uavCartDTOS
=
pmsAppApi
.
listPriceStock
(
priceStockQOS
);
// 更新最新的规格信息
// 更新最新的规格信息
for
(
UavCartCompanyDTO
uavCartCompanyDTO
:
uavCartCompanyDTOS
)
{
for
(
UavCartCompanyDTO
uavCartCompanyDTO
:
uavCartCompanyDTOS
)
{
uavCartCompanyDTO
.
setCompanyName
(
uavCartCompanyDTO
.
getUavCartDOS
().
get
(
0
).
getCompanyName
());
uavCartCompanyDTO
.
setCompanyName
(
uavCartCompanyDTO
.
getUavCartDOS
().
get
(
0
).
getCompanyName
());
...
@@ -121,14 +120,6 @@ public class UavCartServiceImpl implements UavCartService {
...
@@ -121,14 +120,6 @@ public class UavCartServiceImpl implements UavCartService {
uavCartDTO
.
setDeleted
(
1
);
uavCartDTO
.
setDeleted
(
1
);
}
}
}
}
// for (UavCartCompanyDTO cartCompanyDTO : uavCartCompanyDTOS) {
// List<UavCartDTO> cartDOS = cartCompanyDTO.getUavCartDOS();
// if (UavOrderType.PAY.getCode().equals(orderType)) {
// cartDOS.removeIf(i -> i.getPriceShow() != null && i.getPriceShow().equals(0));
// }else {
// cartDOS.removeIf(i -> i.getPriceShow() != null && i.getPriceShow().equals(1));
// }
// }
}
}
}
}
}
}
src/main/java/com/mmc/oms/service/uav/impl/UavOrderServiceImpl.java
浏览文件 @
c693b50a
...
@@ -14,6 +14,7 @@ import com.mmc.oms.dao.UserAddressDao;
...
@@ -14,6 +14,7 @@ import com.mmc.oms.dao.UserAddressDao;
import
com.mmc.oms.dao.uav.UavOrderDao
;
import
com.mmc.oms.dao.uav.UavOrderDao
;
import
com.mmc.oms.dao.uav.UavOrderExpressDao
;
import
com.mmc.oms.dao.uav.UavOrderExpressDao
;
import
com.mmc.oms.dao.uav.UavPODao
;
import
com.mmc.oms.dao.uav.UavPODao
;
import
com.mmc.oms.dao.uav.UavPayWxDao
;
import
com.mmc.oms.entity.mall.UserAddressDO
;
import
com.mmc.oms.entity.mall.UserAddressDO
;
import
com.mmc.oms.entity.uav.*
;
import
com.mmc.oms.entity.uav.*
;
import
com.mmc.oms.enums.UavOrderStatus
;
import
com.mmc.oms.enums.UavOrderStatus
;
...
@@ -68,6 +69,9 @@ public class UavOrderServiceImpl implements UavOrderService {
...
@@ -68,6 +69,9 @@ public class UavOrderServiceImpl implements UavOrderService {
private
UavPODao
uavPODao
;
private
UavPODao
uavPODao
;
@Autowired
@Autowired
private
UavPayWxDao
uavPayWxDao
;
@Autowired
private
DemandReleaseOrderService
demandReleaseOrderService
;
private
DemandReleaseOrderService
demandReleaseOrderService
;
@Autowired
@Autowired
...
@@ -654,7 +658,7 @@ public class UavOrderServiceImpl implements UavOrderService {
...
@@ -654,7 +658,7 @@ public class UavOrderServiceImpl implements UavOrderService {
@Transactional
@Transactional
@Override
@Override
public
ResultBody
addOrderByCart
(
AddUavOrderByCartQO
orderByCartQO
,
BaseAccountDTO
currentAccount
)
{
public
ResultBody
addOrderByCart
(
AddUavOrderByCartQO
orderByCartQO
,
BaseAccountDTO
currentAccount
)
{
uavCartService
.
buildUavCartCompany
(
orderByCartQO
.
get
OrderType
(),
orderByCartQO
.
get
CartCompanyDTOS
());
uavCartService
.
buildUavCartCompany
(
orderByCartQO
.
getCartCompanyDTOS
());
// 意向订单只能下一个商家的
// 意向订单只能下一个商家的
if
(
orderByCartQO
.
getOrderType
().
equals
(
UavOrderType
.
SIGN
.
getCode
())
&&
orderByCartQO
.
getCartCompanyDTOS
().
size
()
>
1
)
{
if
(
orderByCartQO
.
getOrderType
().
equals
(
UavOrderType
.
SIGN
.
getCode
())
&&
orderByCartQO
.
getCartCompanyDTOS
().
size
()
>
1
)
{
return
ResultBody
.
error
(
"意向订单仅限下单个商家的商品"
);
return
ResultBody
.
error
(
"意向订单仅限下单个商家的商品"
);
...
@@ -693,7 +697,7 @@ public class UavOrderServiceImpl implements UavOrderService {
...
@@ -693,7 +697,7 @@ public class UavOrderServiceImpl implements UavOrderService {
skuDOS
.
add
(
uavOrderSkuDO
);
skuDOS
.
add
(
uavOrderSkuDO
);
orderAmount
=
orderAmount
.
add
(
uavCartDTO
.
getSalePrice
().
multiply
(
BigDecimal
.
valueOf
(
uavCartDTO
.
getOrderNum
())));
orderAmount
=
orderAmount
.
add
(
uavCartDTO
.
getSalePrice
().
multiply
(
BigDecimal
.
valueOf
(
uavCartDTO
.
getOrderNum
())));
if
(
uavCartDTO
.
getShelfStatus
().
equals
(
0
))
{
if
(
uavCartDTO
.
getShelfStatus
().
equals
(
0
))
{
return
ResultBody
.
error
(
"所选规格无效
"
);
return
ResultBody
.
error
(
uavCartDTO
.
getTradeName
()
+
" 已下架,请重新选择
"
);
}
}
}
}
}
else
{
}
else
{
...
@@ -764,7 +768,6 @@ public class UavOrderServiceImpl implements UavOrderService {
...
@@ -764,7 +768,6 @@ public class UavOrderServiceImpl implements UavOrderService {
allSkuDOS
.
add
(
skuDO
);
allSkuDOS
.
add
(
skuDO
);
}
}
}
}
log
.
info
(
"allSkuDOS:{}"
,
JSONObject
.
toJSONString
(
allSkuDOS
));
// 批量添加规格
// 批量添加规格
uavOrderDao
.
addOrderSku
(
allSkuDOS
);
uavOrderDao
.
addOrderSku
(
allSkuDOS
);
// 多个添加收货地址
// 多个添加收货地址
...
@@ -779,7 +782,34 @@ public class UavOrderServiceImpl implements UavOrderService {
...
@@ -779,7 +782,34 @@ public class UavOrderServiceImpl implements UavOrderService {
uavOrderExpressDao
.
batchAddOrderExpress
(
expressDOS
);
uavOrderExpressDao
.
batchAddOrderExpress
(
expressDOS
);
// 批量标识购物车
// 批量标识购物车
uavCartService
.
batchRemove
(
cartIds
);
uavCartService
.
batchRemove
(
cartIds
);
return
ResultBody
.
success
();
List
<
UavOrderDTO
>
collect
=
orders
.
stream
().
map
(
UavOrderDO:
:
buildUavOrderDTO
).
collect
(
Collectors
.
toList
());
long
unFinishPay
=
collect
.
stream
().
filter
(
i
->
i
.
getStatusCode
().
equals
(
UavOrderStatus
.
PAYING
.
getCode
())).
count
();
MultiUavOrderDTO
multiUavOrderDTO
=
new
MultiUavOrderDTO
();
multiUavOrderDTO
.
setAllOtherAmount
(
allOtherAmount
);
multiUavOrderDTO
.
setUavOrderDTOS
(
collect
);
// 待订单个数大于1
if
(
unFinishPay
>
1
)
{
String
payNo
=
CodeUtil
.
multiUavOrderPayCode
();
multiUavOrderDTO
.
setPayNo
(
payNo
);
UavPayWxDO
uavPayWx
=
new
UavPayWxDO
();
uavPayWx
.
setPayNo
(
payNo
);
uavPayWx
.
setAmount
(
allOtherAmount
);
uavPayWx
.
setTradeState
(
"WAIT"
);
List
<
UavPayWxSubDO
>
payWxSubDOS
=
new
ArrayList
<>();
uavPayWxDao
.
addUavPayWx
(
uavPayWx
);
collect
.
stream
().
forEach
(
i
->
{
if
(
i
.
getStatusCode
().
equals
(
UavOrderStatus
.
PAYING
.
getCode
()))
{
UavPayWxSubDO
uavPayWxSubDO
=
new
UavPayWxSubDO
();
uavPayWxSubDO
.
setUavPayWxId
(
uavPayWx
.
getId
());
uavPayWxSubDO
.
setUavOrderId
(
i
.
getId
());
uavPayWxSubDO
.
setAmount
(
i
.
getOtherAmount
());
payWxSubDOS
.
add
(
uavPayWxSubDO
);
}
});
uavPayWxDao
.
batchAddUavPayWxSub
(
payWxSubDOS
);
}
return
ResultBody
.
success
(
multiUavOrderDTO
);
}
}
public
ResultBody
deductWallet
(
BigDecimal
allShareAmount
,
BigDecimal
allSalaryAmount
,
BaseAccountDTO
currentAccount
){
public
ResultBody
deductWallet
(
BigDecimal
allShareAmount
,
BigDecimal
allSalaryAmount
,
BaseAccountDTO
currentAccount
){
...
...
src/main/resources/mapper/uav/UavPayWxDao.xml
0 → 100644
浏览文件 @
c693b50a
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.oms.dao.uav.UavPayWxDao"
>
<sql
id=
"UAV_PAY_WX_COLUMN"
>
id, pay_no, amount, trade_state, create_time
</sql>
<sql
id=
"UAV_PAY_WX_SUB_COLUMN"
>
id, uav_pay_wx_id, uav_order_id, amount, create_time
</sql>
<insert
id=
"addUavPayWx"
parameterType=
"com.mmc.oms.entity.uav.UavPayWxDO"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into uav_pay_wx (pay_no, amount, trade_state, create_time)
values (#{payNo}, #{amount}, #{tradeState}, NOW())
</insert>
<insert
id=
"batchAddUavPayWxSub"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into uav_pay_wx_sub( uav_pay_wx_id, uav_order_id, amount, create_time)
values
<foreach
item=
"item"
collection=
"list"
separator=
","
>
(#{item.uavPayWxId}, #{item.uavOrderId}, #{item.amount}, NOW())
</foreach>
</insert>
<select
id=
"getUavPayWx"
resultType=
"com.mmc.oms.entity.uav.UavPayWxDO"
>
select
<include
refid=
"UAV_PAY_WX_COLUMN"
/>
from uav_pay_wx where pay_no = #{payNo}
</select>
<select
id=
"listUavPayWxSub"
resultType=
"com.mmc.oms.entity.uav.UavPayWxSubDO"
>
select
<include
refid=
"UAV_PAY_WX_SUB_COLUMN"
/>
from uav_pay_wx_sub where uav_pay_wx_id = #{uavPayWxId}
</select>
</mapper>
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论