|
|
|
|
@ -72,6 +72,7 @@ class Company extends SoftDeletesModel
|
|
|
|
|
// 自定义时间:需要按被投时间筛选
|
|
|
|
|
// 筛选出被投时间在范围内的企业
|
|
|
|
|
$filteredCompanies = [];
|
|
|
|
|
$filteredOutCompanies = []; // 被筛选掉的企业
|
|
|
|
|
foreach ($companies as $company) {
|
|
|
|
|
$projectUsers = $company->project_users ?? [];
|
|
|
|
|
$hasValidInvestDate = false;
|
|
|
|
|
@ -93,8 +94,24 @@ class Company extends SoftDeletesModel
|
|
|
|
|
// 如果有有效的被投时间在范围内,或者所有被投时间都是null,则加入结果
|
|
|
|
|
if ($hasValidInvestDate || $allInvestDatesNull) {
|
|
|
|
|
$filteredCompanies[] = $company;
|
|
|
|
|
} else {
|
|
|
|
|
// 记录被筛选掉的企业
|
|
|
|
|
$filteredOutCompanies[] = [
|
|
|
|
|
'id' => $company->id,
|
|
|
|
|
'company_name' => $company->company_name,
|
|
|
|
|
'project_users' => $projectUsers,
|
|
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 打印被筛选掉的企业信息
|
|
|
|
|
if (!empty($filteredOutCompanies)) {
|
|
|
|
|
dd([
|
|
|
|
|
'filtered_out_count' => count($filteredOutCompanies),
|
|
|
|
|
'filtered_out_companies' => $filteredOutCompanies,
|
|
|
|
|
'end_date' => $end_date,
|
|
|
|
|
]);
|
|
|
|
|
}
|
|
|
|
|
$companies = collect($filteredCompanies);
|
|
|
|
|
|
|
|
|
|
// 返回结果
|
|
|
|
|
@ -119,15 +136,15 @@ class Company extends SoftDeletesModel
|
|
|
|
|
$years = [];
|
|
|
|
|
if ($start_date && $end_date) {
|
|
|
|
|
// 从开始和结束日期中提取年份范围
|
|
|
|
|
$startYear = (int)date('Y', strtotime($start_date));
|
|
|
|
|
$endYear = (int)date('Y', strtotime($end_date));
|
|
|
|
|
$startYear = (int) date('Y', strtotime($start_date));
|
|
|
|
|
$endYear = (int) date('Y', strtotime($end_date));
|
|
|
|
|
// 生成所有年份的数组
|
|
|
|
|
for ($year = $startYear; $year <= $endYear; $year++) {
|
|
|
|
|
$years[] = $year;
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
// 如果没有提供日期,使用当前年份
|
|
|
|
|
$years[] = (int)date('Y');
|
|
|
|
|
$years[] = (int) date('Y');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 获取这些公司中标记为被投的公司
|
|
|
|
|
@ -140,7 +157,7 @@ class Company extends SoftDeletesModel
|
|
|
|
|
foreach ($projectUsers as $item) {
|
|
|
|
|
$investDate = $item['investDate'] ?? null;
|
|
|
|
|
if ($investDate) {
|
|
|
|
|
$investYear = (int)date('Y', strtotime($investDate));
|
|
|
|
|
$investYear = (int) date('Y', strtotime($investDate));
|
|
|
|
|
if (in_array($investYear, $years)) {
|
|
|
|
|
$hasInvestInYears = true;
|
|
|
|
|
break;
|
|
|
|
|
|