master
cody 2 weeks ago
parent d8ad2306b4
commit 58eace66f5

@ -176,7 +176,7 @@ class CourseSign extends SoftDeletesModel
* @param array|null $course_ids 课程ID仅在自定义时间时生效 * @param array|null $course_ids 课程ID仅在自定义时间时生效
* @param bool $retList 是否返回列表 * @param bool $retList 是否返回列表
*/ */
public static function yhInvestedTotal($start_date, $end_date = null, $retList = false) public static function yhInvestedTotal($start_date = null, $end_date = null, $retList = false)
{ {
// 默认时间:获取所有学员,不限制课程 // 默认时间:获取所有学员,不限制课程
$userIds = self::getStudentList($start_date, $end_date, 1, null)->get()->pluck('user_id'); $userIds = self::getStudentList($start_date, $end_date, 1, null)->get()->pluck('user_id');
@ -190,14 +190,26 @@ class CourseSign extends SoftDeletesModel
$filteredCompanies = []; $filteredCompanies = [];
foreach ($companies as $company) { foreach ($companies as $company) {
$projectUsers = $company->project_users ?? []; $projectUsers = $company->project_users ?? [];
$hasValidInvestDate = false;
$allInvestDatesNull = true;
foreach ($projectUsers as $item) { foreach ($projectUsers as $item) {
$investDate = $item['investDate'] ?? null; $investDate = $item['investDate'] ?? null;
// 检查被投时间是否在范围内 // 检查是否有有效的被投时间
if ($investDate && $investDate <= $end_date) { if ($investDate) {
$filteredCompanies[] = $company; $allInvestDatesNull = false;
break; // 只要有一条满足就加入 // 检查被投时间是否在范围内
if ($investDate <= $end_date) {
$hasValidInvestDate = true;
break; // 只要有一条满足就加入
}
} }
} }
// 如果有有效的被投时间在范围内或者所有被投时间都是null则加入结果
if ($hasValidInvestDate || $allInvestDatesNull) {
$filteredCompanies[] = $company;
}
} }
$companies = collect($filteredCompanies); $companies = collect($filteredCompanies);

Loading…
Cancel
Save