用户成长体系
创建集合
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/72764a6936629b75b5e8cc8ff6a490ef.jpeg)
更新deswerundata云函数
// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init({
env:'test-2ozid'
})
const db=cloud.database()
// 云函数入口函数
exports.main = async (event, context) => {
//根据用户提交的cloudid获取对应的运动数据
let weRunData=event.weRunData
//同步运动数据
let res=await GrowthValue(weRunData.data.stepInfoList)
return res
}
//创建函数,用于同步微信运动数据
//当函数中有对数据库的操作的话,需要加上await配合async使用
function GrowthValue(weRunData){
const context = cloud.getWXContext()
weRunData.forEach(async item=>{
/**\
* 首先根据timestamp(微信运动日期)查询用户成长记录
* 如果不存在,则添加新记录
* 如果存在,则根据情况不处理或者更新成长值*/
//查询用户的成长值
let queryInfo=await db.collection('user_growth_value').where({
timestamp:item.timestamp,
_openid:context.OPENID
}).get()
if(queryInfo.data.length<=0){
//如果不存在则添加
await db.collection('user_growth_value').add({
data:{
_openid:context.OPENID,
date:db.serverDate(),
changeGrowthValue:item.step,
operation:'微信运动',
timestamp:item.timestamp,
orderId:'',
noteId:''
}
})
}else{
//如果存在则比较之后更新
if(item.step>queryInfo.data[0].changeGrowthValue){
//更新数据
await db.collection('user_growth_value').doc(queryInfo.data[0]._id).update({
data:{
changeGrowthValue:item.step,
date:db.serverDate()
}
})
}
}
})
}
持续更新中。。。。。