| | |
| | | use think\Db; |
| | | use app\common\model\User as ModelUser; |
| | | use app\api\logic\SettlementRecord as LogicSettlementRecord; |
| | | use app\api\logic\UserBrowse as LogicUserBrowse; |
| | | |
| | | class ActivityInfo extends BasicLogic |
| | | { |
| | | |
| | |
| | | try{ |
| | | //查询进行中的招募活动 |
| | | $nowTime= date("Y-m-d H:i:s", time()); |
| | | $actList=Db::query('select id from t_activity_manage where act_status=1 and start_time<=? and end_time>=? and act_type=0 limit 1',[$nowTime,$nowTime]); |
| | | $actList=Db::query('select id,end_time from t_activity_manage where act_status=1 and start_time<=? and end_time>=? and act_type=0 limit 1',[$nowTime,$nowTime]); |
| | | if(empty($actList)) |
| | | {//没有进行中的活动,不用处理 |
| | | return true; |
| | | } |
| | | |
| | | //查询是否参加了招募活动 |
| | | $recruitid=$actList[0]['id'].'u'.$userid; |
| | | $actReinfo=Db::query('select id from t_recruit_act where id=? and settlement_status=0',[$recruitid]); |
| | | $actReinfo=Db::query('select id,create_time from t_recruit_act where id=? and user_t=0 and settlement_status=0',[$recruitid]); |
| | | if(empty($actReinfo)) |
| | | {//没有参加活动,不用处理 |
| | | return true; |
| | | } |
| | | //获取已邀请人数 |
| | | $actEndTime=strtotime($actList[0]['end_time']);//活动结束时间 |
| | | $yqCount=Db::query('select count(DISTINCT(login_deviceid)) as count from t_user where invitation_id=? and status=? and invite_bind_time>=? and invite_bind_time<=?',[$userid,'normal',$actReinfo[0]['create_time'],$actEndTime]); |
| | | $count=0; |
| | | if(!empty($yqCount)) |
| | | { |
| | | $count=$yqCount[0]['count']; |
| | | } |
| | | //增加count |
| | | $countres=Db::execute('update t_recruit_act set recruit_count=recruit_count+1 where id=?',[$recruitid]); |
| | | $countres=Db::execute('update t_recruit_act set recruit_count=? where id=?',[$count,$recruitid]); |
| | | return $countres==1; |
| | | } |
| | | catch(\Exception $e) |
| | | { |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | /** |
| | |
| | | $count=Db::query('select recruit_count from t_recruit_act where id=?',[$recruitid]); |
| | | if(empty($count)) |
| | | { |
| | | return 0; |
| | | return [ |
| | | 'membercount'=>0, |
| | | 'award'=>0 |
| | | ]; |
| | | } |
| | | return $count[0]['recruit_count']; |
| | | //获取金额信息 |
| | | $actList=Db::query('select * from t_activity_manage where id=? and count_status=0 and act_type=0 and act_status=1',[$actid]); |
| | | $rewardRule=json_decode($actList[0]['act_json']); |
| | | $award=$this->stepAllRule($rewardRule->rule,$count[0]['recruit_count']); |
| | | return [ |
| | | 'membercount'=>$count[0]['recruit_count'], |
| | | 'award'=>$award |
| | | ]; |
| | | } |
| | | |
| | | /** |
| | |
| | | */ |
| | | public function getRankingList($actid,$userid) |
| | | { |
| | | $rList=Db::query(' SELECT a.id,a.nickname,a.avatar,b.recruit_count from t_recruit_act b left join t_user a on a.id =b.user_id where b.act_id=? and b.recruit_count>0 order by b.recruit_count desc limit 7',[$actid]); |
| | | $rList=Db::query('SELECT a.id,a.nickname,a.avatar,b.recruit_count from t_recruit_act b left join t_user a on a.id =b.user_id where b.act_id=? and b.recruit_count>0 order by b.recruit_count desc limit 7',[$actid]); |
| | | if(empty($rList)) |
| | | { |
| | | return []; |
| | |
| | | foreach($cusList as $cus) |
| | | {//循环参与活动的会员 |
| | | $tradeId=$act['id'].'u'.$cus['user_id']; |
| | | $yqCount=Db::query('select count(1) as count from t_user where invitation_id=? and status=? and invite_bind_time>=? and invite_bind_time<=?',[$cus['user_id'],'normal',$cus['create_time'],$actEndTime]); |
| | | $yqCount=Db::query('select count(DISTINCT(login_deviceid)) as count from t_user where invitation_id=? and status=? and invite_bind_time>=? and invite_bind_time<=?',[$cus['user_id'],'normal',$cus['create_time'],$actEndTime]); |
| | | if(empty($yqCount)) |
| | | { |
| | | Db::execute('update t_recruit_act set settlement_status=?,settlement_time=?,act_count=0,act_award=0 where id=?',[1, date("Y-m-d H:i:s", time()),$tradeId]); |
| | |
| | | return $maxReward; |
| | | } |
| | | |
| | | /** |
| | | * 自定义弹窗-0元购 |
| | | */ |
| | | public function popupcus_freebuy($userInfo) |
| | | { |
| | | $LogicUserBrowse = new LogicUserBrowse(); |
| | | $res = $LogicUserBrowse->checkIsFirstFree($userInfo->id); |
| | | if($res === false) |
| | | { |
| | | return false; |
| | | } |
| | | if(empty($res)) |
| | | { |
| | | return true; |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | } |