|
|
@@ -2,6 +2,7 @@
|
|
|
|
|
|
namespace app\models\system;
|
|
|
|
|
|
+use app\admin\model\user\UserReincarnation;
|
|
|
use app\api\controller\user\UserController;
|
|
|
use app\models\store\StoreOrder;
|
|
|
use app\models\user\User;
|
|
|
@@ -13,6 +14,7 @@ use crmeb\basic\BaseModel;
|
|
|
use think\db\exception\DataNotFoundException;
|
|
|
use think\db\exception\DbException;
|
|
|
use think\db\exception\ModelNotFoundException;
|
|
|
+use think\db\Where;
|
|
|
|
|
|
/**
|
|
|
* TODO 设置等级任务Model
|
|
|
@@ -146,18 +148,20 @@ class SystemUserTask extends BaseModel
|
|
|
* */
|
|
|
public static function ConsumptionAmount($task_id, $uid = 0, $start_time = 0, $number = 0)
|
|
|
{
|
|
|
- @file_put_contents('quanju.txt', "-第八步\r\n", 8);
|
|
|
$isComplete = false;
|
|
|
// $SumPayPrice = StoreOrder::where('paid', 1)->where('refund_status', 0)->where('is_del', 0)->where('uid', $uid)->where('add_time', '>', $start_time)->sum('pay_price');
|
|
|
- $directSubordinateUids = User::where('spread_uid', $uid)->column('uid');
|
|
|
- $personal_achievement = 0;
|
|
|
- if (!empty($directSubordinateUids)) {
|
|
|
- $personal_achievement = User::whereIn('uid', $directSubordinateUids)
|
|
|
- ->sum('achievement');
|
|
|
+ $reincarnation = User::where('user',$uid)->value('reincarnation');
|
|
|
+ if ($reincarnation == 1){
|
|
|
+ $SumPayPrice = UserReincarnation::where('uid', $uid)->value('achievement');
|
|
|
+ }else{
|
|
|
+ $directSubordinateUids = User::where('spread_uid', $uid)->column('uid');
|
|
|
+ $personal_achievement = 0;
|
|
|
+ if (!empty($directSubordinateUids)) {
|
|
|
+ $personal_achievement = User::whereIn('uid', $directSubordinateUids)
|
|
|
+ ->sum('achievement');
|
|
|
+ }
|
|
|
+ $SumPayPrice =$personal_achievement;
|
|
|
}
|
|
|
- @file_put_contents('quanju.txt', $personal_achievement . "-直推下级消费金额\r\n", 8);
|
|
|
- @file_put_contents('quanju.txt', $number . "-直推下级消费金额要求\r\n", 8);
|
|
|
- $SumPayPrice =$personal_achievement;
|
|
|
if ($SumPayPrice >= $number) $isComplete = UserTaskFinish::setFinish($uid, $task_id) ? true : false;
|
|
|
return ['还需消费{$num}元', $SumPayPrice, $isComplete];
|
|
|
}
|
|
|
@@ -173,14 +177,12 @@ class SystemUserTask extends BaseModel
|
|
|
{
|
|
|
$isComplete = false;
|
|
|
// $SumPayPrice = StoreOrder::where('paid', 1)->where('refund_status', 0)->where('is_del', 0)->where('uid', $uid)->where('add_time', '>', $start_time)->sum('pay_price');
|
|
|
- @file_put_contents('quanju.txt', "-第九步\r\n", 8);
|
|
|
$teamUids = UserController::getAllTeamMembers($uid); //获取团队所有成员
|
|
|
$team_achievement = 0;
|
|
|
if (!empty($teamUids)) {
|
|
|
$team_achievement = User::whereIn('uid', $teamUids)
|
|
|
->sum('achievement');
|
|
|
}
|
|
|
- @file_put_contents('quanju.txt', $team_achievement . "-总消费金额\r\n", 8);
|
|
|
$SumPayPrice =$team_achievement;
|
|
|
if ($SumPayPrice >= $number) $isComplete = UserTaskFinish::setFinish($uid, $task_id) ? true : false;
|
|
|
return ['还需消费{$num}元', $SumPayPrice, $isComplete];
|
|
|
@@ -195,7 +197,6 @@ class SystemUserTask extends BaseModel
|
|
|
* */
|
|
|
public static function CommunityConsumptionAmount($task_id, $uid = 0, $start_time = 0, $number = 0)
|
|
|
{
|
|
|
- @file_put_contents('quanju.txt', "-第十步\r\n", 8);
|
|
|
$isComplete = false;
|
|
|
// $SumPayPrice = StoreOrder::where('paid', 1)->where('refund_status', 0)->where('is_del', 0)->where('uid', $uid)->where('add_time', '>', $start_time)->sum('pay_price');
|
|
|
$directSubordinateUids = User::where('spread_uid', $uid)->column('uid');
|
|
|
@@ -203,7 +204,6 @@ class SystemUserTask extends BaseModel
|
|
|
$max = 0;
|
|
|
$team_achievement=0;
|
|
|
$teamUids = UserController::getAllTeamMembers($uid); //获取团队所有成员
|
|
|
- @file_put_contents('quanju.txt', json_encode($teamUids) . "-团队直属下级uid\r\n", 8);
|
|
|
$team_achievement = 0;
|
|
|
if (!empty($teamUids)) {
|
|
|
$team_achievement = User::whereIn('uid', $teamUids)
|
|
|
@@ -212,16 +212,12 @@ class SystemUserTask extends BaseModel
|
|
|
if (!empty($directSubordinateUids)) {
|
|
|
// $directSubordinateUids = array_unique($directSubordinateUids);
|
|
|
$directSubordinateUids = array_values($directSubordinateUids);
|
|
|
- @file_put_contents('quanju.txt', json_encode($directSubordinateUids) . "-直属下级uid\r\n", 8);
|
|
|
foreach ($directSubordinateUids as $value){
|
|
|
$personal_achievement =0;
|
|
|
- @file_put_contents('quanju.txt', $value . "-这谁的uid啊\r\n", 8);
|
|
|
$teamUids2 = UserController::getAllTeamMembers($value); //获取直推下级的团队所有成员
|
|
|
- @file_put_contents('quanju.txt', json_encode($teamUids2) . "-你直属下级呢\r\n", 8);
|
|
|
if (!empty($teamUids2)) {
|
|
|
// $teamUids2=array_unique($teamUids2);
|
|
|
$teamUids2=array_values($teamUids2);
|
|
|
- @file_put_contents('quanju.txt', json_encode($teamUids2) . "-各直属下级团队uid\r\n", 8);
|
|
|
$personal_achievement = User::whereIn('uid', $teamUids2)
|
|
|
->sum('achievement');
|
|
|
// $team_achievement += $personal_achievement;
|
|
|
@@ -229,21 +225,15 @@ class SystemUserTask extends BaseModel
|
|
|
}
|
|
|
$user_achievement = User::where('uid', $value)->value('achievement');
|
|
|
$personal_achievement = bcadd($personal_achievement, $user_achievement, 2); //团队累计消费
|
|
|
- @file_put_contents('quanju.txt', $personal_achievement. "-小团体消费\r\n", 8);
|
|
|
|
|
|
if ($personal_achievement > $max){ //获取最高消费团队
|
|
|
$max = $personal_achievement;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- @file_put_contents('quanju.txt', $max . "-大区业绩\r\n", 8);
|
|
|
|
|
|
$community_achievement = bcsub($team_achievement, $max, 2); //小区消费
|
|
|
- @file_put_contents('quanju.txt', $team_achievement . "-总消费\r\n", 8);
|
|
|
- @file_put_contents('quanju.txt', $max . "-大区消费\r\n", 8);
|
|
|
- @file_put_contents('quanju.txt', $community_achievement . "-小区消费\r\n", 8);
|
|
|
$SumPayPrice =$community_achievement;
|
|
|
- @file_put_contents('quanju.txt', $number . "-小区消费指标\r\n", 8);
|
|
|
if ($SumPayPrice >= $number) $isComplete = UserTaskFinish::setFinish($uid, $task_id) ? true : false;
|
|
|
return ['还需消费{$num}元', $SumPayPrice, $isComplete];
|
|
|
}
|
|
|
@@ -398,8 +388,6 @@ class SystemUserTask extends BaseModel
|
|
|
$level_id = is_string($level_id) ? (int)$level_id : $level_id;
|
|
|
$list = self::visibleWhere()->where('level_id', $level_id)->field('name,real_name,task_type,illustrate,number,id')->order('sort desc')->select();
|
|
|
$list = count($list) ? $list->toArray() : [];
|
|
|
- @file_put_contents('quanju.txt', $level_id."-第四步这是什么id\r\n", 8);
|
|
|
- @file_put_contents('quanju.txt', $uid."-第四步这uid不可能等于零吧\r\n", 8);
|
|
|
if ($uid == 0) return $list;
|
|
|
if ($level === null) $level = SystemUserLevel::getLevelInfo($uid);
|
|
|
//获取下一个vip的id
|
|
|
@@ -407,7 +395,6 @@ class SystemUserTask extends BaseModel
|
|
|
$is_clear = SystemUserLevel::getClear($level['id']);
|
|
|
if ($is_clear == false && $LeveId == $level_id) $is_clear = true;
|
|
|
$reach_count = self::getTaskComplete($level_id, $uid, true);
|
|
|
- @file_put_contents('quanju.txt', "-第四步\r\n", 8);
|
|
|
return [
|
|
|
'list' => $list,
|
|
|
'reach_count' => $reach_count,
|
|
|
@@ -424,7 +411,6 @@ class SystemUserTask extends BaseModel
|
|
|
* */
|
|
|
protected static function set_task_type($item, $uid, $startTime = 0)
|
|
|
{
|
|
|
- @file_put_contents('quanju.txt', "-第七步\r\n", 8);
|
|
|
$task = ['task_type_title' => '', 'new_number' => 0, 'speed' => 0, 'finish' => 0];
|
|
|
$task_type = $item['task_type'];
|
|
|
switch ($task_type) {
|
|
|
@@ -509,11 +495,8 @@ class SystemUserTask extends BaseModel
|
|
|
* */
|
|
|
public static function tidyTask($task, $uid, $is_clear, $startTime)
|
|
|
{
|
|
|
- @file_put_contents('quanju.txt', json_encode($task)."-第五步\r\n", 8);
|
|
|
if (!is_array($task)) return $task;
|
|
|
foreach ($task as &$item) {
|
|
|
- @file_put_contents('quanju.txt', json_encode($item)."-这是什么东西\r\n", 8);
|
|
|
- @file_put_contents('quanju.txt', UserTaskFinish::where('uid', $uid)->where('task_id', $item['id'])->count()."-这是什么\r\n", 8);
|
|
|
//如果已完成该任务进度直接为100
|
|
|
if (UserTaskFinish::where('uid', $uid)->where('task_id', $item['id'])->count()) {
|
|
|
$item['new_number'] = $item['number'];
|
|
|
@@ -521,7 +504,6 @@ class SystemUserTask extends BaseModel
|
|
|
$item['finish'] = 1;
|
|
|
$item['task_type_title'] = '';
|
|
|
} else {
|
|
|
- @file_put_contents('quanju.txt', "-第六步\r\n", 8);
|
|
|
// if($is_clear){
|
|
|
list($new_number, $speed, $task_type_title, $finish) = self::set_task_type($item, $uid, $startTime);
|
|
|
$item['new_number'] = $new_number;
|