Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
O
oms-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
oms-ci-test
Commits
1d77c6b5
提交
1d77c6b5
authored
10月 07, 2023
作者:
zhenjie
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
订单优化、购物车缺陷修复
上级
71c0169a
显示空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
51 行增加
和
25 行删除
+51
-25
UavCartDao.java
src/main/java/com/mmc/oms/dao/uav/UavCartDao.java
+2
-0
UavCartServiceImpl.java
...java/com/mmc/oms/service/uav/impl/UavCartServiceImpl.java
+7
-0
UavOrderServiceImpl.java
...ava/com/mmc/oms/service/uav/impl/UavOrderServiceImpl.java
+34
-25
UavCartDao.xml
src/main/resources/mapper/uav/UavCartDao.xml
+8
-0
没有找到文件。
src/main/java/com/mmc/oms/dao/uav/UavCartDao.java
浏览文件 @
1d77c6b5
...
...
@@ -23,4 +23,6 @@ public interface UavCartDao {
List
<
Integer
>
countList
(
Integer
userAccountId
);
List
<
UavCartCompanyDO
>
list
(
Integer
begin
,
Integer
pageSize
,
Integer
userAccountId
);
UavCartDO
countMallGoodsSku
(
UavCartDO
uavCartDO
);
}
src/main/java/com/mmc/oms/service/uav/impl/UavCartServiceImpl.java
浏览文件 @
1d77c6b5
...
...
@@ -41,6 +41,13 @@ public class UavCartServiceImpl implements UavCartService {
@Override
public
ResultBody
addCart
(
UavCartVO
uavCartVO
)
{
UavCartDO
uavCartDO
=
new
UavCartDO
(
uavCartVO
);
// 查询购物车中是否有一样的商品规格,有则数量+1,无则直接添加数据。
UavCartDO
uavCartDO1
=
uavCartDao
.
countMallGoodsSku
(
uavCartDO
);
if
(
uavCartDO1
!=
null
)
{
uavCartDO1
.
setOrderNum
(
uavCartDO1
.
getOrderNum
()
+
1
);
uavCartDao
.
updateUavCart
(
uavCartDO1
);
return
ResultBody
.
success
();
}
uavCartDao
.
addCart
(
uavCartDO
);
return
ResultBody
.
success
();
}
...
...
src/main/java/com/mmc/oms/service/uav/impl/UavOrderServiceImpl.java
浏览文件 @
1d77c6b5
...
...
@@ -93,32 +93,11 @@ public class UavOrderServiceImpl implements UavOrderService {
if
(
CollectionUtils
.
isEmpty
(
param
.
getSkuVOS
())){
return
ResultBody
.
error
(
"至少选择一个规格!"
);
}
MallGoodsVO
mallGoodsVO
=
null
;
try
{
mallGoodsVO
=
pmsClient
.
mallGoodsDetails
(
param
.
getMallGoodsId
());
// 检验商品是否在卖
if
(
mallGoodsVO
==
null
||
!
mallGoodsVO
.
getShelfStatus
().
equals
(
1
)){
return
ResultBody
.
error
(
"商品已下架"
);
}
// 找到对应的规格
for
(
UavOrderSkuVO
skuVO
:
param
.
getSkuVOS
())
{
Boolean
flag
=
false
;
for
(
PriceStockVO
priceStockVO
:
mallGoodsVO
.
getPriceStock
())
{
if
(
skuVO
.
getProductSpec
().
equals
(
priceStockVO
.
getProductSpec
()))
{
// 获取最新的规格单价
skuVO
.
setUnitPrice
(
priceStockVO
.
getSalePrice
());
flag
=
true
;
break
;
}
}
if
(!
flag
){
return
ResultBody
.
error
(
"选择规格不存在"
);
}
}
}
catch
(
Exception
e
){
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
e
.
printStackTrace
();
ResultBody
<
MallGoodsVO
>
checkRes
=
this
.
verifyMallGoods
(
param
);
if
(!
checkRes
.
getCode
().
equals
(
ResultEnum
.
SUCCESS
.
getResultCode
()))
{
return
checkRes
;
}
MallGoodsVO
mallGoodsVO
=
checkRes
.
getResult
();
String
orderNo
=
CodeUtil
.
uavOrderCode
();
BigDecimal
orderTotalAmount
=
BigDecimal
.
ZERO
;
BigDecimal
otherAmount
=
BigDecimal
.
ZERO
;
...
...
@@ -214,6 +193,36 @@ public class UavOrderServiceImpl implements UavOrderService {
return
ResultBody
.
success
(
uavOrderDO
.
buildUavOrderDTO
());
}
private
ResultBody
<
MallGoodsVO
>
verifyMallGoods
(
AddUavOrderVO
param
)
{
MallGoodsVO
mallGoodsVO
=
null
;
try
{
mallGoodsVO
=
pmsClient
.
mallGoodsDetails
(
param
.
getMallGoodsId
());
// 检验商品是否在卖
if
(
mallGoodsVO
==
null
||
!
mallGoodsVO
.
getShelfStatus
().
equals
(
1
)){
return
ResultBody
.
error
(
"商品已下架"
);
}
// 找到对应的规格
for
(
UavOrderSkuVO
skuVO
:
param
.
getSkuVOS
())
{
Boolean
flag
=
false
;
for
(
PriceStockVO
priceStockVO
:
mallGoodsVO
.
getPriceStock
())
{
if
(
skuVO
.
getProductSpec
().
equals
(
priceStockVO
.
getProductSpec
()))
{
// 获取最新的规格单价
skuVO
.
setUnitPrice
(
priceStockVO
.
getSalePrice
());
flag
=
true
;
break
;
}
}
if
(!
flag
){
return
ResultBody
.
error
(
"选择规格不存在"
);
}
}
}
catch
(
Exception
e
){
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
e
.
printStackTrace
();
}
return
ResultBody
.
success
(
mallGoodsVO
);
}
@Override
public
ResultBody
detail
(
Integer
id
,
BaseAccountDTO
baseAccountDTO
)
throws
Exception
{
UavOrderDO
uavOrderDO
=
uavOrderDao
.
detail
(
id
);
...
...
src/main/resources/mapper/uav/UavCartDao.xml
浏览文件 @
1d77c6b5
...
...
@@ -79,4 +79,11 @@
group by third_back_user_account_id
limit #{begin}, #{pageSize}
</select>
<select
id=
"countMallGoodsSku"
resultType=
"com.mmc.oms.entity.uav.UavCartDO"
parameterType=
"com.mmc.oms.entity.uav.UavCartDO"
>
select
<include
refid=
"cart_column"
/>
from uav_cart
where third_back_user_account_id = #{thirdBackUserAccountId} and user_account_id = #{userAccountId} and is_deleted = 0
and mall_goods_id = #{mallGoodsId} and product_spec = #{productSpec}
</select>
</mapper>
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论