From 77b974780aea89a73a9e1ae5e58f52511a919898 Mon Sep 17 00:00:00 2001 From: scorpio Date: Thu, 9 Oct 2025 07:26:35 +0800 Subject: [PATCH] =?UTF-8?q?=E9=99=90=E6=97=B6=E6=8A=A2=E8=B4=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app.json | 3 +- pages/add/index.js | 37 +++++++++++++++-- pages/add/index.wxml | 35 +++++++++++----- pages/add/index.wxss | 10 +++-- pages/add/info.js | 33 ++++++++++++++- pages/add/info.wxml | 33 +++++++++------ pages/index/index.js | 24 +++++++++++ pages/index/index.wxml | 27 ++++++++++-- pages/index/index.wxss | 10 +++++ pages/index/info.js | 83 +++++++++++++++++++++++++++++++++++++ pages/index/info.json | 4 ++ pages/index/info.wxml | 60 +++++++++++++++++++++++++++ pages/index/info.wxss | 4 ++ project.private.config.json | 18 +++++++- 14 files changed, 344 insertions(+), 37 deletions(-) create mode 100644 pages/index/info.js create mode 100644 pages/index/info.json create mode 100644 pages/index/info.wxml create mode 100644 pages/index/info.wxss diff --git a/app.json b/app.json index 1562836..fc8c7b5 100644 --- a/app.json +++ b/app.json @@ -4,7 +4,8 @@ "pages/add/index", "pages/add/edit", "pages/login/index", - "pages/add/info" + "pages/add/info", + "pages/index/info" ], "window": { "navigationBarTextStyle": "black", diff --git a/pages/add/index.js b/pages/add/index.js index 1f533e6..843410d 100644 --- a/pages/add/index.js +++ b/pages/add/index.js @@ -1,12 +1,14 @@ // pages/add/index.js - +const { api } = require("../../utils/api") Page({ /** * 页面的初始数据 */ data: { - list:[ + timer:null, + list:[], + hotList:[ {url:'https://res.catter.cn/pub/2025/09/30/20250930143920286.png',name:'金鱼吊兰'}, {url:'https://res.catter.cn/pub/2025/09/30/20250930145312611.png',name:'月季'}, {url:'https://res.catter.cn/pub/2025/09/30/20250930150006852.png',name:'多肉'} @@ -20,11 +22,38 @@ Page({ }, + search(e){ + if (this.data.timer) { + clearTimeout(this.data.timer) + this.data.timer = null; + } + const key = e.detail.value + this.data.timer = setTimeout(() => { + if (key.length === 0){ + this.setData({list:[]}) + return + } + this.fetchList(key) + + }, 1000) + }, + + fetchList(key){ + console.log(key); + const data ={ current:1,pageSize:20,name:key} + api('/library/list','POST',data,'json').then(res => { + if (res.code === 200){ + const list = res.data.list + this.setData({list:list}) + } + }) + }, - goInfo(){ + goInfo(e){ + const id = e.currentTarget.dataset.id wx.navigateTo({ - url: '../add/info', + url: '../add/info?id=' + id, }) } }) \ No newline at end of file diff --git a/pages/add/index.wxml b/pages/add/index.wxml index 8f2b776..f45b33a 100644 --- a/pages/add/index.wxml +++ b/pages/add/index.wxml @@ -1,20 +1,33 @@ - + - 热门植物 - - - - - - + + 热门植物 + + + + + + + {{item.name}} - {{item.name}} - - + + + + + + + + + {{item.name}} + {{item.aliases}} + + + + \ No newline at end of file diff --git a/pages/add/index.wxss b/pages/add/index.wxss index 53d5fc8..547657c 100644 --- a/pages/add/index.wxss +++ b/pages/add/index.wxss @@ -1,10 +1,8 @@ /* pages/add/index.wxss */ -.card { +.card { margin: 16rpx; border-radius: 16rpx; - background-color: #F6F8FE; - } .bg { @@ -40,4 +38,10 @@ object-fit: cover; /* 小程序等效是 mode="aspectFill" */ border-top-left-radius: 16rpx; border-top-right-radius: 16rpx; +} + +.pic1{ + width: 100rpx; + height: 100rpx; + border-radius: 16rpx; } \ No newline at end of file diff --git a/pages/add/info.js b/pages/add/info.js index bbbe7b7..829a62e 100644 --- a/pages/add/info.js +++ b/pages/add/info.js @@ -1,3 +1,5 @@ +const { api } = require("../../utils/api") + // pages/add/info.js Page({ @@ -5,7 +7,8 @@ Page({ * 页面的初始数据 */ data: { - + id:'', + info:null }, goBack(){ @@ -16,7 +19,35 @@ Page({ * 生命周期函数--监听页面加载 */ onLoad(options) { + this.setData({id:options.id}) + this.fetchInfo() + }, + fetchInfo(){ + const data ={id:this.data.id} + api('/library/detail','GET',data,'json').then(res => { + if (res.code === 200) { + const data = res.data + data.pestsList = data.pestsDiseases.split(',') + this.setData({info:data}) + } + }) + }, + add(){ + const user = wx.getStorageSync('user') + console.log(user); + wx.showLoading({ + title: '请稍后', + }) + const data ={libraryId: this.data.info.id,userId:user.id} + api('/plant/plantByLibrary','POST',data,'json').then(res => { + if (res.code === 200){ + wx.showToast({ + title: res.msg, + icon:'success' + }) + } + }) }, /** diff --git a/pages/add/info.wxml b/pages/add/info.wxml index ceed698..37165b1 100644 --- a/pages/add/info.wxml +++ b/pages/add/info.wxml @@ -1,7 +1,6 @@ - - + @@ -10,22 +9,25 @@ - - - + - 多肉 - 石榴属 + {{info.name}} + {{info.genus}} + {{info.latinName}} - - 多肉植物也叫多水植物、肉质植物,是指植物器官的茎或叶或根具有发达的薄壁组织用以贮藏水分,在外形上显得肥厚多汁的一类植物 + + + 常用名: + {{info.aliases}} + + {{info.growthHabit}} @@ -76,15 +78,22 @@ 光照 - 喜阳、全日照 + {{info.lightIntensity}}、{{info.lightType}} + + + + + + 病害 + + {{item}} - 多肉 喜阳,最好每天晒够6小时 - 获取养护日程 + 获取养护日程 立即拥有 diff --git a/pages/index/index.js b/pages/index/index.js index 242a55a..c2a7bd3 100644 --- a/pages/index/index.js +++ b/pages/index/index.js @@ -1,8 +1,32 @@ +const { api } = require("../../utils/api") + // index.js Page({ data: { list:[] }, + onLoad(options) { + + }, + onShow(){ + this.fetchList() + }, + goInfo(e){ + const id = e.currentTarget.dataset.id + wx.navigateTo({ + url: '../index/info?id=' + id, + }) + }, + fetchList(){ + const user = wx.getStorageSync('user') + const data = {userId: user.id,current:1,pageSize:20} + api('/plant/getList','POST',data,'json').then(res => { + if (res.code === 200){ + const tmps = res.data.list + this.setData({list:tmps}) + } + }) + }, goAdd(){ wx.navigateTo({ url: '../add/index', diff --git a/pages/index/index.wxml b/pages/index/index.wxml index 4243765..43f28e2 100644 --- a/pages/index/index.wxml +++ b/pages/index/index.wxml @@ -1,8 +1,7 @@ - + - 暂无植物 @@ -13,7 +12,29 @@ - + + + + + + + + {{item.name}} + {{item.latinName}} + + + + + + + + + + + + 您添加的植物将全部显示在这里 + + diff --git a/pages/index/index.wxss b/pages/index/index.wxss index 768b294..e267556 100644 --- a/pages/index/index.wxss +++ b/pages/index/index.wxss @@ -12,4 +12,14 @@ .bottom{ position: fixed; bottom: 68rpx; +} + +.pic{ + width: 150rpx; + height: 150rpx; + border-radius: 16rpx; +} + +.row { + background-color: #F6F8FE; } \ No newline at end of file diff --git a/pages/index/info.js b/pages/index/info.js new file mode 100644 index 0000000..6045f89 --- /dev/null +++ b/pages/index/info.js @@ -0,0 +1,83 @@ +const { api } = require("../../utils/api") + +// pages/index/info.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + id:'' + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + this.setData({id:options.id}) + this.fetchInfo() + }, + + fetchInfo(){ + api('/plant/detail','GET',{id: this.data.id}).then(res => { + if (res.code === 200){ + const tmp = res.data + tmp.farms.suitableFertilizer = tmp.farms.suitableFertilizer.split(',') + this.setData({info:res.data}) + console.log(tmp); + } + }) + }, + + goBack(){ + wx.navigateBack() + }, + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/pages/index/info.json b/pages/index/info.json new file mode 100644 index 0000000..ced5b27 --- /dev/null +++ b/pages/index/info.json @@ -0,0 +1,4 @@ +{ + "navigationStyle": "custom", + "usingComponents": {} +} \ No newline at end of file diff --git a/pages/index/info.wxml b/pages/index/info.wxml new file mode 100644 index 0000000..3605d8f --- /dev/null +++ b/pages/index/info.wxml @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + {{info.name}} + {{info.genus}} + + {{info.latinName}} + + + + + + 今日任务 + + + + 浇水 + + + 完成 + + + + + + 施肥 + + + 未完成 + + + + + + 养护计划信息 + + + {{info.farms.desc}} + + + + {{item}} + + + + + \ No newline at end of file diff --git a/pages/index/info.wxss b/pages/index/info.wxss new file mode 100644 index 0000000..6f6cc23 --- /dev/null +++ b/pages/index/info.wxss @@ -0,0 +1,4 @@ +/* pages/index/info.wxss */ +page { + background-color: #F6F6F6; +} \ No newline at end of file diff --git a/project.private.config.json b/project.private.config.json index 097d059..da04a1c 100644 --- a/project.private.config.json +++ b/project.private.config.json @@ -23,12 +23,26 @@ "condition": { "miniprogram": { "list": [ + { + "name": "pages/index/info", + "pathName": "pages/index/info", + "query": "id=a42344e7-a370-11f0-a562-bc2411e64a23", + "launchMode": "default", + "scene": null + }, + { + "name": "pages/add/info", + "pathName": "pages/add/info", + "query": "id=d98921aa-a358-11f0-bb61-bc2411e64a23", + "launchMode": "default", + "scene": null + }, { "name": "pages/add/edit", "pathName": "pages/add/edit", "query": "", - "scene": null, - "launchMode": "default" + "launchMode": "default", + "scene": null } ] }