Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Y
yudao-cloud
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
hblj
yudao-cloud
Commits
83d8bc4f
提交
83d8bc4f
authored
7月 09, 2019
作者:
xiaofeng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
1.前端页面接入商品收藏接口,
2.暂时使用alert弹出框提示收藏和取消收藏,回头改成颜色显示效果
上级
1fa68d07
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
85 行增加
和
5 行删除
+85
-5
product.js
mobile-web/src/api/product.js
+7
-0
user.js
mobile-web/src/api/user.js
+9
-0
detail.vue
mobile-web/src/page/product/detail.vue
+33
-2
UserFavoriteController.java
.../application/controller/users/UserFavoriteController.java
+9
-1
UserProductSpuCollectionsService.java
...coder/mall/user/api/UserProductSpuCollectionsService.java
+10
-0
UserProductSpuCollectionsServiceImpl.java
...ser/biz/service/UserProductSpuCollectionsServiceImpl.java
+17
-2
没有找到文件。
mobile-web/src/api/product.js
浏览文件 @
83d8bc4f
...
...
@@ -31,3 +31,10 @@ export function getProductSpuInfo(id) {
}
});
}
export
function
collectionSpu
(
spuId
,
hasCollectionType
)
{
return
request
({
url
:
'/product-api/users/spu/collection/'
+
spuId
+
'/'
+
hasCollectionType
,
method
:
'post'
});
}
mobile-web/src/api/user.js
浏览文件 @
83d8bc4f
...
...
@@ -16,6 +16,15 @@ export function DelFavorite(id){
})
}
export
function
hasUserSpuFavorite
(
spuId
){
return
request
({
url
:
'/user-api/users/favorite/hasUserFavorite'
,
method
:
'get'
,
params
:
{
spuId
}
})
}
export
function
GetCoupon
(
data
){
return
request
({
url
:
'/User/GetCoupon'
,
...
...
mobile-web/src/page/product/detail.vue
浏览文件 @
83d8bc4f
...
...
@@ -98,7 +98,7 @@
</div>
<van-goods-action>
<van-goods-action-mini-btn
icon=
"like-o"
@
click=
"
sorry
"
>
<van-goods-action-mini-btn
icon=
"like-o"
@
click=
"
onFavoriteClicked
"
>
收藏
</van-goods-action-mini-btn>
<van-goods-action-mini-btn
icon=
"cart"
:info=
"cartCount > 0 ? cartCount : undefined"
@
click=
"onClickCart"
>
...
...
@@ -171,8 +171,9 @@
<
script
>
// import skuData from '../../data/sku';
import
{
getProductSpuInfo
}
from
'../../api/product'
;
import
{
getProductSpuInfo
,
collectionSpu
}
from
'../../api/product'
;
import
{
addCart
,
countCart
,
getCartCalcSkuPrice
}
from
'../../api/order'
;
import
{
hasUserSpuFavorite
}
from
'../../api/user'
;
import
{
Dialog
}
from
'vant'
;
import
{
checkLogin
}
from
"../../utils/cache"
;
...
...
@@ -290,6 +291,7 @@
}
});
},
onClickCart
()
{
this
.
$router
.
push
(
'/cart'
);
},
...
...
@@ -305,6 +307,35 @@
onClickShowTag
()
{
this
.
showTag
=
true
;
},
onFavoriteClicked
(){
if
(
!
checkLogin
())
{
Dialog
.
alert
({
title
:
'系统提示'
,
message
:
'未登陆用户,暂时不支持使用购物车'
,
});
return
;
}
let
id
=
this
.
$route
.
params
.
id
;
// 商品编号
let
hasCollectionType
=
1
;
// 收藏类型 默认收藏
hasUserSpuFavorite
(
id
).
then
(
data
=>
{
let
hasCollection
=
data
;
// alert("是否收藏==" + hasCollection);
if
(
hasCollection
){
hasCollectionType
=
2
;
}
// alert("hasCollectionType==" + hasCollectionType);
collectionSpu
(
id
,
hasCollectionType
).
then
(
data
=>
{
let
v
=
data
;
if
(
hasCollectionType
==
1
&&
v
){
alert
(
"商品已收藏"
);
}
else
if
(
hasCollectionType
==
2
&&
v
){
alert
(
"商品已取消"
);
}
})
});
},
onBuyClicked
(
data
)
{
const
{
selectedNum
}
=
data
;
this
.
$router
.
push
({
...
...
user/user-application/src/main/java/cn/iocoder/mall/user/application/controller/users/UserFavoriteController.java
浏览文件 @
83d8bc4f
...
...
@@ -39,8 +39,16 @@ public class UserFavoriteController {
@DeleteMapping
(
"remove"
)
@RequiresLogin
@ApiOperation
(
value
=
"用户商品收藏-删除"
)
public
CommonResult
<
Boolean
>
removeFavorite
(
@RequestParam
(
"spuId"
)
final
Integer
spuId
)
{
public
CommonResult
<
Boolean
>
remove
User
Favorite
(
@RequestParam
(
"spuId"
)
final
Integer
spuId
)
{
final
Integer
userId
=
UserSecurityContextHolder
.
getContext
().
getUserId
();
return
userProductSpuCollectionsService
.
deleteUserProductSpuCollections
(
userId
,
spuId
);
}
@GetMapping
(
"hasUserFavorite"
)
@RequiresLogin
@ApiOperation
(
value
=
"用户商品收藏-是否收藏"
)
public
CommonResult
<
Boolean
>
hasUserSpuFavorite
(
@RequestParam
(
"spuId"
)
final
Integer
spuId
)
{
final
Integer
userId
=
UserSecurityContextHolder
.
getContext
().
getUserId
();
return
userProductSpuCollectionsService
.
hasUserSpuFavorite
(
spuId
,
userId
);
}
}
user/user-service-api/src/main/java/cn/iocoder/mall/user/api/UserProductSpuCollectionsService.java
浏览文件 @
83d8bc4f
...
...
@@ -51,4 +51,14 @@ public interface UserProductSpuCollectionsService {
* @return
*/
CommonResult
<
Boolean
>
deleteUserProductSpuCollections
(
Integer
userId
,
Integer
spuId
);
/**
* 检验用户商品是否收藏
* @param spuId
* @param userId
* @return
*/
CommonResult
<
Boolean
>
hasUserSpuFavorite
(
Integer
spuId
,
Integer
userId
);
}
user/user-service-impl/src/main/java/cn/iocoder/mall/user/biz/service/UserProductSpuCollectionsServiceImpl.java
浏览文件 @
83d8bc4f
...
...
@@ -96,11 +96,26 @@ public class UserProductSpuCollectionsServiceImpl implements UserProductSpuColle
if
(
userProductSpuCollectionsBO
!=
null
)
{
// 未取消收藏的数据
if
(
userProductSpuCollectionsBO
.
getDeleted
().
equals
(
DeletedStatusEnum
.
DELETED_NO
.
getValue
()))
{
UserProductSpuCollectionsUpdateDTO
userProductSpuCollectionsUpdateDTO
=
new
UserProductSpuCollectionsUpdateDTO
().
setId
(
userProductSpuCollectionsBO
.
getId
())
.
setUpdateTime
(
new
Date
()).
setDeleted
(
DeletedStatusEnum
.
DELETED_YES
.
getValue
());
UserProductSpuCollectionsUpdateDTO
userProductSpuCollectionsUpdateDTO
=
new
UserProductSpuCollectionsUpdateDTO
()
.
setId
(
userProductSpuCollectionsBO
.
getId
()).
setUpdateTime
(
new
Date
())
.
setDeleted
(
DeletedStatusEnum
.
DELETED_YES
.
getValue
());
result
=
this
.
updateUserProductSpuCollections
(
userProductSpuCollectionsUpdateDTO
);
}
}
return
CommonResult
.
success
(
result
>
0
?
Boolean
.
TRUE
:
Boolean
.
FALSE
);
}
@Override
public
CommonResult
<
Boolean
>
hasUserSpuFavorite
(
final
Integer
spuId
,
final
Integer
userId
)
{
UserProductSpuCollectionsBO
userProductSpuCollectionsBO
=
this
.
getUserSpuCollectionsByUserIdAndSpuId
(
userId
,
spuId
);
if
(
userProductSpuCollectionsBO
!=
null
)
{
// 收藏
final
boolean
hasCollect
=
userProductSpuCollectionsBO
.
getDeleted
()
.
equals
(
DeletedStatusEnum
.
DELETED_NO
.
getValue
());
return
CommonResult
.
success
(
hasCollect
);
}
return
CommonResult
.
success
(
Boolean
.
FALSE
);
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论