import cloud from '@lafjs/cloud' const db = cloud.database(); import Utils from "@/Utils"; export default async function (ctx: FunctionContext) { const action = ctx.body.action; const uid = ctx.body.uid; let dbname = "users"; const gameName = ctx.body.gameName; if (gameName == "iaa") { dbname = "usersAd"; } if (!action) { return { code: 0, data: null, msg: "未获取到action" }; } if (!uid) { return { code: 0, data: null, msg: "未获取到uid" }; } let res = await db.collection(dbname).where({ _id: uid }).getOne(); const token1 = ctx.body.token; if (res.data && res.data.token) { let istoken = Utils.checkToken(token1, res.data.token); if (!istoken) { return { code: 0, data: null, msg: "token校验失败" }; } } let endLevelNum1 = res.data?.endLevelNum; switch (action) { case 'save': let userLevel = ctx.body.userLevel; if (!userLevel) { return { code: 0, data: null, msg: "未获取到userLevel" }; }; userLevel=Number(userLevel); let endLevelNum=ctx.body.endLevelNum; if(!endLevelNum){ endLevelNum=0; } if(endLevelNum10){ console.error((endLevelNum-Number(endLevelNum1))+" 有作弊嫌疑 :"+uid); return; } let totalLevel=userLevel+(endLevelNum/10000) await db.collection(dbname).where({ _id: uid }).update({ userLevel:userLevel,endLevelNum:endLevelNum,totalLevel:totalLevel}); return { code: 1, data: { userLevel: userLevel, endLevelNum: endLevelNum }, msg: "用户数据更新成功" } case 'read': let userLevel1 = res.data?.userLevel; //let endLevelNum1=res.data?.endLevelNum; return { code: 1, data: { userLevel: userLevel1, endLevelNum: endLevelNum1 }, msg: "成功" } default: return { code: 400, message: '无效的操作类型,请使用 save 或 read' } } }