// 进阶分类 $upClass = [ [900, 1400, 600], [100, 200, 1100, 500, 800, 1000, 700, 300], [400, 1200, 1300, 1500], ]; // 进阶条件 $upWhere = [ [2, 4, 8], [3, 5, 10, 20 ,40 , 60], [2, 4, 7], ]; // 设置虚拟参与人数 $data['partCount'] = 1850; // 开始、结束时间 $data['startTime'] = strtotime('2018-01-28'); $data['endTime'] = strtotime('2018-07-31'); // 累计任务数 $data['taskSum'] = 0; // 任务分类 $cateClass = $this->conf->get_cate_abbr_list(); // 任务状态 $cateState = $this->conf->get_status_list(); // 活动期间发布任务统计 $sql_1 = "SELECT COUNT(*) as count FROM `sk_trade_info` WHERE trade_type = 8 AND check_time >= {$data['startTime']} AND check_time <= {$data['endTime']}"; $activityCount = $this->showDb->queryMoreArr($sql_1); $data['partCount'] += $activityCount['0']['count']; // 当前用户活动期间任务总计 $sql_2 = "SELECT COUNT(*) as count FROM `sk_trade_info` WHERE user_id = {$user_id} AND trade_type = 8 AND trade_status IN (2,3,4,6,7,8) AND check_time >= {$data['startTime']} AND check_time <= {$data['endTime']}"; $uActivityCount = $this->showDb->queryMoreArr($sql_2); $data['activityCount'] = $uActivityCount['0']['count']; // 获取活动期间第一条成功任务分类ID $cate_id = 300; // 用户升级条件 foreach ($upClass as $key => $val) { if (in_array($cate_id, $val)) { $cateUp = $upWhere[$key]; break; } } // 优惠活动文案 $hint = 0; if ($data['activityCount'] < $cateUp['0']) { $hint = 0; } elseif ($data['activityCount'] >= end($cateUp)) { $hint = end(array_keys($cateUp)) + 1; } else { foreach ($cateUp as $key => $val) { if ($data['activityCount'] >= $val && $data['activityCount'] < $cateUp[$key+1]) { $hint = $key+1; } } } switch ($hint) { case 0: $data['hint'] = '活动期间您已累计发布任务:'. $data['activityCount'] .'次,再发布' . ($cateUp['0']-$data['activityCount']) . '次,即可享受第一阶段优惠!'; break; case 1: $data['hint'] = '活动期间您已累计发布任务:'. $data['activityCount'] .'次,再发布' . ($cateUp['1']-$data['activityCount']) . '次,即可享受第二阶段优惠!'; break; case 2: $data['hint'] = '活动期间您已累计发布任务:'. $data['activityCount'] .'次,再发布' . ($cateUp['2']-$data['activityCount']) . '次,即可享受第三阶段优惠!'; break; case 3: $data['hint'] = '活动期间您已累计发布任务:'. $data['activityCount'] .'次,现在发布任务享受第三阶段优惠'; break; }