Skip to content

Commit 737ca18

Browse files
committed
[update]增加我的发布功能,我的收藏功能
- 增加我的发布 - 我的发布长按删除事件 - 我的收藏逻辑实现 - item detail页面新增收藏按钮 - 修复了user功能按钮 - 修复了部分页面样式 - 删除冗余代码
1 parent b385488 commit 737ca18

File tree

10 files changed

+174
-151
lines changed

10 files changed

+174
-151
lines changed

config/mp-sdk.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ export const colorUISdk = new ColorUISdk({
44
//当前环境,produce,dev,host
55
env: 'dev',
66
//实际项目版本
7-
version: '0.8.0',
7+
version: '0.8.2',
88
api: {
99
//生产环境
1010
produce: {

pages/collect/collect.js

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,29 @@
11
// pages/collect/index.js
2+
var global = getApp().globalData;
23
Page({
34
/**
45
* 页面的初始数据
56
*/
67
data: {
8+
userid:"",
79
item : [],
810
},
911

1012
/**
1113
* 生命周期函数--监听页面加载
1214
*/
1315
onLoad: function (options) {
14-
this.getCollectInfo();
16+
console.log(global)
17+
this.setData({
18+
userId: global.userid
19+
})
20+
this.getCollectInfo(global.userid);
1521
},
16-
getCollectInfo: function () {
22+
getCollectInfo: function (option) {
1723
console.log("[findplatform-web] func getCollectInfo start.")
1824
var that = this;
1925
wx.request({
20-
url: 'https://api.foocode.cn/collect/v1/allItem',
26+
url: 'https://api.foocode.cn/collect/v2/queryItem/uid?uid='+option,
2127
header: {
2228
'content-type': 'application/json'
2329
},
@@ -27,7 +33,7 @@ Page({
2733
success(res) {
2834
console.log(res.data);
2935
var baseId = "img-" + (+new Date());
30-
var images = res.data;
36+
var images = res.data.data;
3137
for (let i = 0; i < images.length; i++) {
3238
images[i].id = baseId + "-" + i;
3339
}

pages/collect/collect.wxml

Lines changed: 18 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,28 @@
11
<!--pages/collect/collect.wxml-->
22
<ui-sys tabbar title="我的收藏" loading>
33
<!-- 标题 -->
4-
<view class="ui-BG radius mt-3 px-3 border">
4+
<view class="ui-BG radius px-3 border">
55
<ui-title title="我的收藏" titleColor="text-blue" descUi="text-cyan" desc="Carefully chosen" tpl="center-column" hasDot/>
66
</view>
77
<!-- 列表 -->
8-
<view class="ui-container">
9-
8+
<view class="mb-3" wx:for="{{item}}" wx:key="itemId">
9+
<ui-card ui="shadow m-2 radius" style="width: 750rpx;">
10+
<view class="ui-grid">
11+
<ui-img preview ui="radius border m-3" src="{{item.imgUrl}}" height="160rpx" width="160rpx"/>
12+
<!-- 物品简要信息 -->
13+
<navigator url='/pages/item/item_details?url={{item.itemId}}'>
14+
<view class="item-info" style="width: 500rpx;">
15+
<view class="ui-grid">
16+
<ui-title class="text-nowrap ml-2" title="{{item.itemName}}" hasLine/>
17+
<ui-tag bg="bg-{{item.state? 'green' : 'red'}}-thin" ui=" mt-3 radius sm" style="text-align: end;" info="{{item.state? '已找回' : '未找回'}}"/>
18+
</view>
19+
<view class="text-cut">{{item.pickLocation}}</view>
20+
<view class="text-grey" style="text-align: end;">{{item.pickTime}}</view>
21+
</view>
22+
</navigator>
23+
</view>
24+
</ui-card>
1025
</view>
11-
<view class="cu-list card-menu menu-avatar margin-top">
12-
<navigator class="cu-item cur margin-bottom-ls radius" wx:for="{{item}}" wx:key="itemId" url='/pages/item/item_details?url={{item.itemId}}'>
13-
<view class="cu-avatar radius lg" style="background-image:url({{item.imgUrl}});">
14-
</view>
15-
<view class="content">
16-
<view>
17-
<text class="text-cut">{{item.itemName}}</text>
18-
<view class="cu-tag round {{item.state ? 'bg-green' : 'bg-red'}} sm">{{item.state? '已找回' : '未找回'}}</view>
19-
</view>
20-
<view class="text-gray text-sm flex">
21-
<text class="text-cut"> {{item.itemInfo}}<text class="cuIcon-locationfill text-orange margin-right-xs"></text>{{item.pickLocation}}</text>
22-
</view>
23-
</view>
24-
<view class="action">
25-
<view class="text-grey text-xs">{{item.pickTime}}</view>
26-
</view>
27-
</navigator>
28-
</view>
2926
<!-- footer -->
3027
<find-footer></find-footer>
3128
</ui-sys>

pages/item/item_details.js

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
// pages/item/item_details.js
2+
var global = getApp().globalData;
23
Page({
34
/**
45
* 页面的初始数据
@@ -104,6 +105,35 @@ Page({
104105
userCardShow: true
105106
})
106107
},
108+
109+
btnItemCollect: function() {
110+
// /collect/v2/addCollect
111+
var that = this;
112+
wx.request({
113+
url: 'https://api.foocode.cn/collect/v2/addCollect',
114+
header: {
115+
'content-type': 'application/json'
116+
},
117+
method: "POST",
118+
data: {
119+
"collectUid": global.userid,
120+
"itemId": that.data.itemId,
121+
},
122+
success(res) {
123+
that.$success({
124+
title : '收藏成功'
125+
})
126+
console.log("[findplatform-web] func getUserInfo done.")
127+
},
128+
fail(res) {
129+
console.log("function getUserInfo fail.");
130+
},
131+
complete(res) {
132+
console.log("function getUserInfo complete.");
133+
}
134+
})
135+
},
136+
107137
// 删除物品按钮绑定事件
108138
itemDelete: function (options) {
109139

pages/item/item_details.wxml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
<!-- 物品类别 -->
4444
<ui-menu-item title="物品类别" icon="cicon-tag ui-TC-Main" isAction>
4545
<view slot="action">
46-
<ui-tag bg="bg-blue-thin" info="{{item.tag}}" ui="round"/>
46+
<ui-tag bg="bg-blue-thin" info="{{item.tagId}}" ui="round"/>
4747
</view>
4848
</ui-menu-item>
4949

@@ -88,6 +88,11 @@
8888
</ui-menu>
8989

9090
<!-- 操作域 -->
91+
92+
<view wx:if="{{mode === 'search'}}" class="ui-container p-5">
93+
<button class="ui-btn block bg-pink-gradient shadow shadow-pink" bindtap="btnItemCollect">收藏</button>
94+
</view>
95+
9196
<view wx:if="{{mode === 'collect'}}" class="ui-container p-5">
9297
<button class="ui-btn block bg-green shadow shadow-green my-3">保存</button>
9398
<button class="ui-btn block bg-blue shadow shadow-blue my-3">提交</button>

pages/publish/publish.js

Lines changed: 74 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,29 @@ Page({
44
* 页面的初始数据
55
*/
66
data: {
7+
userid: "",
78
item : [],
9+
// 触摸开始时间
10+
touchStartTime: 0,
11+
// 触摸结束时间
12+
touchEndTime: 0,
813
},
914

1015
/**
1116
* 生命周期函数--监听页面加载
1217
*/
1318
onLoad: function (options) {
14-
this.getCollectInfo();
19+
this.setData({
20+
userid: options.user_id,
21+
})
22+
this.getPublishInfo(options.user_id);
1523
},
16-
getCollectInfo: function () {
17-
console.log("[findplatform-web] func getCollectInfo start.")
24+
25+
getPublishInfo: function (option) {
26+
console.log("[findplatform-web] func getPublishInfo start.")
1827
var that = this;
1928
wx.request({
20-
url: 'https://api.foocode.cn/collect/v1/allItem',
29+
url: 'https://api.foocode.cn/publish/v2/getUserPublish?user_id=' + option,
2130
header: {
2231
'content-type': 'application/json'
2332
},
@@ -27,18 +36,75 @@ Page({
2736
success(res) {
2837
console.log(res.data);
2938
var baseId = "img-" + (+new Date());
30-
var images = res.data;
39+
var images = res.data.data;
3140
for (let i = 0; i < images.length; i++) {
3241
images[i].id = baseId + "-" + i;
3342
}
3443
that.setData({
3544
item: images
3645
});
37-
console.log("[findplatform-web] func getCollectInfo done.")
46+
console.log("[findplatform-web] func getPublishInfo done.")
3847
},
3948
fail(res) {
40-
console.log("!!! [findplatform-web] func getCollectInfo fail.")
49+
console.warn("!!! [findplatform-web] func getPublishInfo fail.")
50+
}
51+
})
52+
},
53+
54+
itemLongTap: function (option) {
55+
this.$showDialog({
56+
title : '删除物品',
57+
content: '您是否要删除已发布的物品?注意:删除后无法找回',
58+
success: res => {
59+
console.log(res)
60+
if(res.confirm){
61+
// 请求删除物品
62+
wx.request({
63+
url: 'https://api.foocode.cn/item/v1/deleteItem/' + option.currentTarget.dataset.id,
64+
header: {
65+
'content-type': 'application/json'
66+
},
67+
method: "POST",
68+
data: {},
69+
70+
success(res) {
71+
console.info("[findplatform-web] func delete done.")
72+
},
73+
fail(res) {
74+
console.warn("!!! [findplatform-web] func delete fail.")
75+
}
76+
})
77+
this.$success({
78+
title : '确定'
79+
})
80+
}
81+
else{
82+
wx.showToast({
83+
title: '已取消',
84+
icon : 'none'
85+
})
86+
}
4187
}
4288
})
43-
}
89+
},
90+
91+
// 按钮触摸开始触发的事件
92+
touchStart: function(e) {
93+
this.touchStartTime = e.timeStamp
94+
},
95+
96+
// 按钮触摸结束触发的事件
97+
touchEnd: function(e) {
98+
this.touchEndTime = e.timeStamp
99+
},
100+
101+
tapToUrl(e) {
102+
var that = this
103+
// 控制点击事件在350ms内触发,加这层判断是为了防止长按时会触发点击事件
104+
if (that.touchEndTime - that.touchStartTime < 350) {
105+
wx.navigateTo({
106+
url: e.currentTarget.dataset.url
107+
})
108+
}
109+
},
44110
})

pages/publish/publish.wxml

Lines changed: 27 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,30 @@
11
<!--pages/publish/publish.wxml-->
2-
<view class="cu-list card-menu menu-avatar">
3-
<view class="cu-bar justify-left bg-white">
4-
<view class="action sub-title">
5-
<text class="text-xl text-bold text-green">我的发布</text>
6-
<text class="bg-green" style="width:2rem"></text>
2+
<ui-sys title="我的发布" loading>
3+
<!-- 标题 -->
4+
<view class="ui-BG radius px-3 border">
5+
<ui-title title="我的发布" titleColor="text-blue" descUi="text-cyan" desc="Carefully chosen" tpl="center-column" hasDot/>
6+
</view>
7+
<!-- 列表 -->
8+
9+
<view class="mb-3" wx:for="{{item}}" wx:key="itemId">
10+
<ui-card ui="shadow m-2 radius" style="width: 750rpx;">
11+
<view class="ui-grid">
12+
<ui-img preview ui="radius border m-3" src="{{item.imgUrl}}" height="160rpx" width="160rpx"/>
13+
<!-- 物品简要信息 -->
14+
<view data-id="{{item.itemId}}" data-url='/pages/item/item_details?url={{item.itemId}}' bindtouchstart="touchStart" bindtouchend="touchEnd" bindtap="tapToUrl" bindlongtap="itemLongTap">
15+
<view class="item-info" style="width: 500rpx;">
16+
<view class="ui-grid">
17+
<ui-title class="text-nowrap ml-2" title="{{item.itemName}}" hasLine/>
18+
<ui-tag bg="bg-{{item.state? 'green' : 'red'}}-thin" ui=" mt-3 radius sm" style="text-align: end;" info="{{item.state? '已找回' : '未找回'}}"/>
19+
</view>
20+
<view class="text-cut">{{item.pickLocation}}</view>
21+
<view class="text-grey" style="text-align: end;">{{item.pickTime}}</view>
22+
</view>
23+
</view>
724
</view>
25+
</ui-card>
826
</view>
9-
<navigator class="cu-item cur margin-bottom-ls radius" wx:for="{{item}}" wx:key="itemId" url='/pages/item/item_details?url={{item.itemId}}'>
10-
<view class="cu-avatar radius lg" style="background-image:url({{item.imgUrl}});">
11-
</view>
12-
<view class="content">
13-
<view>
14-
<text class="text-cut">{{item.itemName}}</text>
15-
<view class="cu-tag round {{item.state ? 'bg-green' : 'bg-red'}} sm">{{item.state? '已找回' : '未找回'}}</view>
16-
</view>
17-
<view class="text-gray text-sm flex">
18-
<text class="text-cut"> {{item.itemInfo}}<text class="cuIcon-locationfill text-orange margin-right-xs"></text>{{item.pickLocation}}</text>
19-
</view>
20-
</view>
21-
<view class="action">
22-
<view class="text-grey text-xs">{{item.pickTime}}</view>
23-
</view>
24-
</navigator>
25-
</view>
27+
28+
<!-- footer -->
29+
<find-footer></find-footer>
30+
</ui-sys>

0 commit comments

Comments
 (0)