cb/server/laf-cloud/functions/passCheck.ts
2026-07-02 11:22:24 +08:00

53 lines
1.9 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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;
if (!action) {
return { code: 0, data: null, msg: "未获取到action" };
}
if (!uid) {
return { code: 0, data: null, msg: "未获取到uid" };
}
let dbname = "users";
const gameName = ctx.body.gameName;
if (gameName == "iaa") {
dbname = "usersAd";
}
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校验失败" };
}
}
switch (action) {
case 'save':
let passCheck =ctx.body.passCheck;
//console.log(passCheck);
if (!passCheck) {
return { code: 0, data: null, msg: "未获取到coinAmount" };
}
let ret = await db.collection(dbname).where({ _id: uid }).update({passCheck:passCheck});
return { code: 1, data: {passCheck:passCheck}, msg: "用户数据更新成功" }
case 'read':
let passCheck1 = res.data?.passCheck||null;
let time = await db.collection("idcount").where({ _id: "690c786db30b6944c56be7aa" }).getOne();
let t = time.data.passcheckTime;
if (Date.now() >t+ 30*24*3600000) {
const endOfDay: any = new Date();
endOfDay.setHours(16, 0, 0, 0); // 设置为明天的0点等同于今天的24点
t =endOfDay.getTime();
await db.collection("idcount").where({ _id: "690c786db30b6944c56be7aa" }).update({ passcheckTime: t });
}
return { code: 1, data: {passCheck:passCheck1,time:t}, msg: "成功" }
default:
return {
code: 400,
message: '无效的操作类型,请使用 save 或 read'
}
}
}