159 lines
3.3 KiB
JavaScript
159 lines
3.3 KiB
JavaScript
// pages/garden/components/growth.js
|
|
const config = require("../../../config/config");
|
|
const {
|
|
api
|
|
} = require("../../../utils/api");
|
|
Component({
|
|
|
|
/**
|
|
* 组件的属性列表
|
|
*/
|
|
properties: {
|
|
plantId: {
|
|
type: String,
|
|
require: true
|
|
},
|
|
},
|
|
observers: {
|
|
// 监听 visible 的变化
|
|
'plantId': function (newVal) {
|
|
console.log(newVal);
|
|
this.setData({
|
|
id: newVal
|
|
})
|
|
}
|
|
},
|
|
/**
|
|
* 组件的初始数据
|
|
*/
|
|
data: {
|
|
visible: false,
|
|
tags: [{
|
|
label: '日常记录',
|
|
checked: true
|
|
},
|
|
{
|
|
label: '🌱 发芽',
|
|
checked: false
|
|
},
|
|
{
|
|
label: '🌼 开花',
|
|
checked: false
|
|
},
|
|
{
|
|
label: '🍒 结果',
|
|
checked: false
|
|
}
|
|
],
|
|
id: '',
|
|
pic: '',
|
|
form: {
|
|
name: '',
|
|
desc: '',
|
|
content: '',
|
|
ossIds: [],
|
|
tag: '日常记录'
|
|
}
|
|
},
|
|
|
|
/**
|
|
* 组件的方法列表
|
|
*/
|
|
methods: {
|
|
change() {
|
|
const tmp = !this.data.visible
|
|
this.setData({visible:tmp})
|
|
if (tmp === false) {
|
|
this.setData({
|
|
pic:'',
|
|
form:{}
|
|
})
|
|
}
|
|
|
|
},
|
|
check(e) {
|
|
const index = e.currentTarget.dataset.index
|
|
const tmps = this.data.tags.map(e => {
|
|
e.checked = false
|
|
return e
|
|
})
|
|
tmps[index].checked = true
|
|
this.setData({
|
|
tags: tmps
|
|
})
|
|
this.data.form.tag = tmps[index].label
|
|
},
|
|
input(e) {
|
|
const value = e.detail.value
|
|
this.data.form.content = value
|
|
},
|
|
upload() {
|
|
const _this = this
|
|
wx.chooseMedia({
|
|
count: 1,
|
|
mediaType: ['image'],
|
|
sourceType: ['album', 'camera'],
|
|
success(res) {
|
|
const avatarUrl = res.tempFiles[0].tempFilePath
|
|
wx.showLoading({
|
|
title: '请稍后...',
|
|
})
|
|
_this.setData({
|
|
pic: avatarUrl
|
|
})
|
|
wx.uploadFile({
|
|
filePath: avatarUrl,
|
|
name: 'file',
|
|
header: {
|
|
'Authorization': 'Bearer ' + wx.getStorageSync('token'),
|
|
},
|
|
url: config.baseUrl + '/oss/upload',
|
|
success: res => {
|
|
wx.hideLoading()
|
|
var data = JSON.parse(res.data);
|
|
if (data.code === 200) {
|
|
const ossIds = [data.data.file.id]
|
|
_this.data.form.ossIds = ossIds
|
|
}
|
|
}
|
|
})
|
|
}
|
|
})
|
|
},
|
|
submit() {
|
|
this.data.form.plantId = this.data.id
|
|
if (this.data.form.ossIds.length === 0) {
|
|
wx.showModal({
|
|
content: '请添加照片'
|
|
})
|
|
return
|
|
}
|
|
wx.showToast({
|
|
icon: 'loading',
|
|
})
|
|
api('/plant/grow/addRecord', 'POST', this.data.form, 'json').then(res => {
|
|
if (res.code === 200) {
|
|
const reset = {
|
|
name: '',
|
|
desc: '',
|
|
content: '',
|
|
ossIds: [],
|
|
tag: '日常记录'
|
|
}
|
|
this.setData({
|
|
visible: false,
|
|
form: reset
|
|
})
|
|
wx.showToast({
|
|
icon: 'success',
|
|
title: res.msg,
|
|
})
|
|
|
|
this.triggerEvent('ok', {
|
|
value: ""
|
|
});
|
|
}
|
|
})
|
|
}
|
|
}
|
|
}) |