diff --git a/app.json b/app.json
index 8b5c5c9..d6658cb 100644
--- a/app.json
+++ b/app.json
@@ -20,7 +20,9 @@
"pages/store/info",
"pages/order/index",
"pages/knowlage/index",
- "pages/knowlage/info"
+ "pages/knowlage/info",
+ "pages/badge/more",
+ "pages/badge/info"
],
"window": {
"navigationBarTextStyle": "black",
diff --git a/pages/badge/index.js b/pages/badge/index.js
index 015f4bb..a3c7d36 100644
--- a/pages/badge/index.js
+++ b/pages/badge/index.js
@@ -1,3 +1,5 @@
+const { api } = require("../../utils/api")
+
// pages/badge/index.js
Page({
@@ -5,44 +7,15 @@ Page({
* 页面的初始数据
*/
data: {
- pics: [
- 'https://tdesign.gtimg.com/mobile/demos/avatar1.png',
- 'https://tdesign.gtimg.com/mobile/demos/avatar2.png',
- 'https://tdesign.gtimg.com/mobile/demos/avatar3.png',
- 'https://tdesign.gtimg.com/mobile/demos/avatar4.png',
- 'https://tdesign.gtimg.com/mobile/demos/avatar5.png',
- 'https://tdesign.gtimg.com/mobile/demos/avatar1.png',
- ],
-
- list:[
- {
- title:'养护徽章',
- badge:'勤劳小园丁',
- tips:'累计浇水 10 次'
- },
- {
- title:'成长徽章',
- badge:'花开有时',
- tips:'第一次开花'
- },
- {
- title:'收藏徽章',
- badge:'花园掌柜',
- tips:'添加 20 株'
- },
- {
- title:'挑战徽章',
- badge:'人气花匠',
- tips:'帖子获得 10 个赞'
- }
- ]
+ myList: [],
+ list:[]
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
-
+
},
/**
@@ -56,9 +29,31 @@ Page({
* 生命周期函数--监听页面显示
*/
onShow() {
+ this.fetchList()
+ },
+ fetchList(){
+ api('/badge/my/list','POST',{current:0, pageSize:999},'json').then(res => {
+ if (res.code === 200) {
+ const tmps = res.data.list
+ this.setData({myList:tmps})
+ }
+ })
+ api('/badge/all','GET',{current:0, pageSize:999},'json').then(res => {
+ if (res.code === 200) {
+ const tmps = res.data
+ this.setData({list:tmps})
+ }
+ })
},
+ goMore(e){
+ const list = e.currentTarget.dataset.list
+ wx.setStorageSync('badges', JSON.stringify(list))
+ wx.navigateTo({
+ url: '../badge/more',
+ })
+ },
/**
* 生命周期函数--监听页面隐藏
*/
diff --git a/pages/badge/index.wxml b/pages/badge/index.wxml
index 373d51a..1d1ea23 100644
--- a/pages/badge/index.wxml
+++ b/pages/badge/index.wxml
@@ -1,62 +1,51 @@
-
-
-
-
- Nov
-
-
- 1
-
-
-
-
-
-
-
+
+ 我的徽章
+
+
+
+ {{myList[0].name}}
+ {{myList[0].desc}}
+ {{myList[0].createdAtStr}}
+
+
+
+
+ 已经获取{{myList.length}} 个
+ 查看全部
+
- 已有100名参与月度挑战
-
-
-
-
-
-
-
- 多肉收割者挑战赛
-
- 我的徽章
-
+
+ 全部徽章
{{item.title}}
-
+
- {{item.badge}}
+ {{item.categoryName}}
{{item.tips}}
-
-
-
-
+
+
+
- 查看更多
+ 查看更多
diff --git a/pages/badge/index.wxss b/pages/badge/index.wxss
index 025e744..93d72e7 100644
--- a/pages/badge/index.wxss
+++ b/pages/badge/index.wxss
@@ -3,7 +3,7 @@
height: 380rpx;
width: 100%;
border-radius: 16rpx;
- background-image: url("https://res.catter.cn/pub/2025/11/18/20251118170102998.jpeg");
+
background-repeat: no-repeat;
background-position: center center;
diff --git a/pages/badge/info.js b/pages/badge/info.js
new file mode 100644
index 0000000..8b865d7
--- /dev/null
+++ b/pages/badge/info.js
@@ -0,0 +1,77 @@
+const { api } = require("../../utils/api")
+
+// pages/badge/info.js
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ id:'',
+ info:null
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(options) {
+ this.data.id = options.id
+ },
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+ this.fetchInfo()
+ },
+
+ fetchInfo(){
+ api("/badge/detail",'GET',{id:this.data.id}).then(res => {
+ if (res.code === 200){
+ this.setData({info:res.data})
+ }
+ })
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {
+
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {
+
+ }
+})
\ No newline at end of file
diff --git a/pages/badge/info.json b/pages/badge/info.json
new file mode 100644
index 0000000..8bb90cf
--- /dev/null
+++ b/pages/badge/info.json
@@ -0,0 +1,6 @@
+{
+ "navigationBarBackgroundColor": "#000",
+ "navigationBarTextStyle":"white",
+ "navigationBarTitleText": "徽章",
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/pages/badge/info.wxml b/pages/badge/info.wxml
new file mode 100644
index 0000000..fc98f3c
--- /dev/null
+++ b/pages/badge/info.wxml
@@ -0,0 +1,15 @@
+
+
+
+
+
+ {{info.name}}
+
+
+ {{info.desc}}
+
+
+ 返回
+
+
+
\ No newline at end of file
diff --git a/pages/badge/info.wxss b/pages/badge/info.wxss
new file mode 100644
index 0000000..cc92cd9
--- /dev/null
+++ b/pages/badge/info.wxss
@@ -0,0 +1,9 @@
+/* pages/badge/info.wxss */
+page {
+ background-color: black;
+}
+
+.pic {
+ width: 320rpx;
+ height: 320rpx;
+}
\ No newline at end of file
diff --git a/pages/badge/more.js b/pages/badge/more.js
new file mode 100644
index 0000000..799e8f3
--- /dev/null
+++ b/pages/badge/more.js
@@ -0,0 +1,81 @@
+// pages/badge/more.js
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ list:[]
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(options) {
+ this.init()
+ },
+ init(){
+ const tmps = wx.getStorageSync('badges')
+ if (tmps){
+ this.setData({list: JSON.parse(tmps)})
+ }
+ },
+
+ goInfo(e){
+ const id = e.currentTarget.dataset.id
+ wx.navigateTo({
+ url: '../badge/info?id='+ id,
+ })
+ },
+
+
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {
+
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {
+
+ }
+})
\ No newline at end of file
diff --git a/pages/badge/more.json b/pages/badge/more.json
new file mode 100644
index 0000000..8bb90cf
--- /dev/null
+++ b/pages/badge/more.json
@@ -0,0 +1,6 @@
+{
+ "navigationBarBackgroundColor": "#000",
+ "navigationBarTextStyle":"white",
+ "navigationBarTitleText": "徽章",
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/pages/badge/more.wxml b/pages/badge/more.wxml
new file mode 100644
index 0000000..9e8ed30
--- /dev/null
+++ b/pages/badge/more.wxml
@@ -0,0 +1,9 @@
+
+
+
+
+
+ {{item.name}}
+
+
+
\ No newline at end of file
diff --git a/pages/badge/more.wxss b/pages/badge/more.wxss
new file mode 100644
index 0000000..9c7504f
--- /dev/null
+++ b/pages/badge/more.wxss
@@ -0,0 +1,16 @@
+/* pages/badge/more.wxss */
+page {
+ background-color: black;
+}
+.grid {
+ display: grid;
+ grid-template-columns: auto auto auto;
+ grid-row-gap: 38px;
+ grid-column-gap: 38px;
+}
+
+.badge {
+ width: 150rpx;
+ height: 150rpx;
+ border-radius: 150rpx;
+}
\ No newline at end of file
diff --git a/pages/community/index.wxml b/pages/community/index.wxml
index 8281b83..1d95ac8 100644
--- a/pages/community/index.wxml
+++ b/pages/community/index.wxml
@@ -12,7 +12,7 @@
{{item.user.name}}
- {{item.createdAt}}
+ {{item.createdAtStr}}
diff --git a/pages/community/info.wxml b/pages/community/info.wxml
index 0be6586..dd1cd87 100644
--- a/pages/community/info.wxml
+++ b/pages/community/info.wxml
@@ -6,7 +6,7 @@
{{info.user.name}}
- {{info.createdAt}}
+ {{info.createdAtStr}}
@@ -45,7 +45,7 @@
{{item.user.name}}
- {{item.createdAt}}
+ {{item.createdAtStr}}
diff --git a/pages/garden/components/growth.js b/pages/garden/components/growth.js
new file mode 100644
index 0000000..883975b
--- /dev/null
+++ b/pages/garden/components/growth.js
@@ -0,0 +1,28 @@
+// pages/garden/components/growth.js
+Component({
+
+ /**
+ * 组件的属性列表
+ */
+ properties: {
+
+ },
+
+ /**
+ * 组件的初始数据
+ */
+ data: {
+ visible:false
+ },
+
+ /**
+ * 组件的方法列表
+ */
+ methods: {
+ change(){
+ const tmp = !this.data.visible
+ console.log(tmp);
+ this.setData({visible:tmp})
+ }
+ }
+})
\ No newline at end of file
diff --git a/pages/garden/components/growth.json b/pages/garden/components/growth.json
new file mode 100644
index 0000000..f070a60
--- /dev/null
+++ b/pages/garden/components/growth.json
@@ -0,0 +1,8 @@
+{
+ "component": true,
+ "styleIsolation": "apply-shared",
+ "usingComponents": {
+ "t-popup": "tdesign-miniprogram/popup/popup",
+ "t-textarea": "tdesign-miniprogram/textarea/textarea"
+ }
+}
\ No newline at end of file
diff --git a/pages/garden/components/growth.wxml b/pages/garden/components/growth.wxml
new file mode 100644
index 0000000..27f9df3
--- /dev/null
+++ b/pages/garden/components/growth.wxml
@@ -0,0 +1,32 @@
+
+
+
+
+
+ 记录生长瞬间
+
+
+
+
+
+ 点击上传或拍摄植物照片
+ 支持JPG、PNG 格式,最大 5MB
+
+
+
+
+ 日常
+ 发芽
+ 开花
+ 结果
+
+
+
+
+
+
+ 保存记录
+
+
+
+
\ No newline at end of file
diff --git a/pages/garden/components/growth.wxss b/pages/garden/components/growth.wxss
new file mode 100644
index 0000000..d8bfb1a
--- /dev/null
+++ b/pages/garden/components/growth.wxss
@@ -0,0 +1,24 @@
+/* pages/garden/components/growth.wxss */
+.camera{
+ background-color: #4fab5e3d;
+ width: 100rpx;
+ height: 100rpx;
+ border-radius: 50rpx;
+}
+
+.border {
+ border: #4fab5e 1rpx dotted;
+ border-radius: 16rpx;
+ height: 400rpx;
+}
+
+.custom-label {
+ display: inline-flex;
+}
+
+.custom-label::after {
+ content: '*';
+ color: red;
+ font-size: 32rpx;
+ margin-left: 4rpx;
+}
\ No newline at end of file
diff --git a/pages/garden/info.js b/pages/garden/info.js
index 8a87aa1..050bf73 100644
--- a/pages/garden/info.js
+++ b/pages/garden/info.js
@@ -38,16 +38,18 @@ Page({
}
tmp.todayCares.map(e => e.period = tmp.carePlans.find(sub => sub.name === e.name).period)
this.setData({info:res.data})
- console.log(this.data.info.todayCares);
}
})
},
goPreview(e){
- const url = e.currentTarget.dataset.url
- wx.navigateTo({
- url: '../preview/index?url=' + url,
+ const index = e.detail.index
+ const currentUrl = this.data.info.picList[index]
+ const list = this.data.info.picList
+ wx.previewImage({
+ current: currentUrl, // 当前显示图片的http链接
+ urls: list// 需要预览的图片http链接列表
})
},
diff --git a/pages/garden/info.json b/pages/garden/info.json
index a89b33f..82b5170 100644
--- a/pages/garden/info.json
+++ b/pages/garden/info.json
@@ -2,6 +2,7 @@
"navigationStyle": "custom",
"usingComponents": {
"t-swiper": "tdesign-miniprogram/swiper/swiper",
- "t-swiper-nav": "tdesign-miniprogram/swiper-nav/swiper-nav"
+ "t-swiper-nav": "tdesign-miniprogram/swiper-nav/swiper-nav",
+ "growth":"./components/growth"
}
}
\ No newline at end of file
diff --git a/pages/garden/info.wxml b/pages/garden/info.wxml
index 8b317a6..0e14c5f 100644
--- a/pages/garden/info.wxml
+++ b/pages/garden/info.wxml
@@ -2,7 +2,7 @@
-
+
@@ -20,7 +20,7 @@
{{info.name}}
- 陪伴你第 {{info.plantDays}} 天 · 种植于 {{info.plantTimeStr}}
+ 陪伴你第 {{info.plantDays}} 日夜 · 种植于 {{info.plantTimeStr}}
@@ -40,7 +40,7 @@
- 记录此刻
+
@@ -75,7 +75,12 @@
-
+
+ 成长日记
+
+
+
+
养护记录
@@ -106,4 +111,6 @@
+
+
\ No newline at end of file
diff --git a/pages/user/index.wxml b/pages/user/index.wxml
index 076426a..3f4f1e5 100644
--- a/pages/user/index.wxml
+++ b/pages/user/index.wxml
@@ -19,12 +19,6 @@
我的徽章 已解锁 {{badgeList.length}} 个
-
-
-
-
-
-
diff --git a/project.private.config.json b/project.private.config.json
index ef914ba..2feefa4 100644
--- a/project.private.config.json
+++ b/project.private.config.json
@@ -24,23 +24,16 @@
"miniprogram": {
"list": [
{
- "name": "pages/order/index",
- "pathName": "pages/order/index",
- "query": "id=355fad80-d403-11f0-883c-bc2411e64a23",
+ "name": "pages/badge/info",
+ "pathName": "pages/badge/info",
+ "query": "id=49a35d4a-d70c-11f0-b37c-bc2411e64a23",
"scene": null,
"launchMode": "default"
},
{
- "name": "pages/store/info",
- "pathName": "pages/store/info",
- "query": "id=355fad80-d403-11f0-883c-bc2411e64a23",
- "launchMode": "default",
- "scene": null
- },
- {
- "name": "pages/knowlage/info",
- "pathName": "pages/knowlage/info",
- "query": "id=8e3af6f8-ce61-11f0-bb28-bc2411e64a23",
+ "name": "pages/badge/more",
+ "pathName": "pages/badge/more",
+ "query": "",
"launchMode": "default",
"scene": null
}