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

42 lines
1.3 KiB
TypeScript

import cloud from '@lafjs/cloud'
const db = cloud.database();
import Utils from "@/Utils";
export default async function (ctx: FunctionContext) {
let uid = ctx.body.uid;
if (!uid) {
return { code: 0, data: null, msg: "参数错误" };
}
let dbname = "users";
const gameName = ctx.body.gameName;
if (gameName == "iaa") {
dbname = "usersAd";
}
let res = await db.collection(dbname).where({ _id: uid }).getOne();
if (res.data == null) {
return { code: 0, data: null, msg: "未获取到玩家数据" };
}
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 rebornGiftTime=res.data.rebornGiftTime||0;
let rebornGiftCount=res.data.rebornGiftCount||0;
let times=getTodayStartTimestamp();
if(rebornGiftTime<times){
rebornGiftCount=0;
}
if(rebornGiftCount>=1){
return { code: 0, data: null, msg: "今天购买次数已用完" };
}
db.collection(dbname).where({ _id: uid }).update({ rebornGiftTime:Date.now(),rebornGiftCount:1});
return { code: 1, data: { rebornGiftTime:Date.now(),rebornGiftCount:rebornGiftCount+1},msg:"可以购买"};
}
function getTodayStartTimestamp() {
const date = new Date();
date.setHours(0, 0, 0, 0);
return date.getTime();
}