(int)$userId]; if($type!=-1)$where['scoreType'] = $type; $page = $this->where($where)->order('scoreId desc')->paginate()->toArray(); foreach ($page['Rows'] as $key => $v){ $page['Rows'][$key]['dataSrc'] = WSTLangScore($v['dataSrc']); } return $page; } /** * 新增记录 */ public function add($score,$isAddTotal = false){ $score['createTime'] = date('Y-m-d H:i:s'); $this->create($score); $user = model('common/users')->get($score['userId']); if($score['scoreType']==1){//收入 $user->userScore = $user->userScore + $score['score']; if($isAddTotal)$user->userTotalScore = $user->userTotalScore+$score['score']; }else{ $user->userScore = $user->userScore - $score['score']; } $userinfo = session('WST_USER'); $userinfo['userScore'] = $user->userScore; session('WST_USER',$userinfo); $user->save(); } /** *签到获得惠宝 */ public function signScore($userId){ $time = date('Y-m-d'); $frontTime = date("Y-m-d",strtotime("-1 day")); if(WSTConf('CONF.signScoreSwitch')==0)return WSTReturn("签到失败"); $userscores = $this->where(["userId"=>$userId,"dataSrc"=>5,])->order('createTime desc')->find(); if(!$userscores || date("Y-m-d",strtotime($userscores['createTime']))!=$time){//没签过或最后一次签到不是今天 $rs = Db::name('users')->where(["userId"=>$userId])->field('userScore')->find(); $days = $score = 0; $days = (date("Y-m-d",strtotime($userscores['createTime']))==$frontTime)?($userscores['dataId']==30)?$userscores['dataId']:$userscores['dataId']+1:1;//是昨天签到的,第30天,返回天数,不然返回天数+1,不是昨天签到的,返回第一天 $signScore = explode(",",WSTConf('CONF.signScore'));//返回天数每天的惠宝 if($signScore[0]!=0){ $score = $signScore[$days-1];//天数对应的惠宝 } $data['totalScore'] = $rs['userScore'] + $score;//用户惠宝+签到送的分 $data['score'] = $score; if($score>0){ //添加 $userinfo = session('WST_USER'); $userinfo['signScoreTime'] = $time; session('WST_USER',$userinfo); $uscore = []; $uscore['userId'] = $userId; $uscore['score'] = $score; $uscore['dataSrc'] = 5; $uscore['dataId'] = $days; $uscore['dataRemarks'] = "连续".$days."天签到,获得惠宝".$score."个"; $uscore['scoreType'] = 1; $this->add($uscore,true); return WSTReturn("签到第".$days."天,获得".$score."个惠宝",1,$data); }else{ return WSTReturn("签到失败"); } }else{ return WSTReturn("已签到,明天再来"); } } }