diff --git a/app/Http/Controllers/Admin/OtherController.php b/app/Http/Controllers/Admin/OtherController.php index 863ade8..f7de921 100755 --- a/app/Http/Controllers/Admin/OtherController.php +++ b/app/Http/Controllers/Admin/OtherController.php @@ -590,50 +590,75 @@ class OtherController extends CommonController $data[] = array_merge($companyInfo, [ 'user_name' => '', 'course_name' => '', - 'course_type' => '', ]); } else { - // 每个学员一行,多个课程合并显示 + // 每个学员的每个课程一行,格式为"课程名称-课程体系" $isFirstRow = true; foreach ($users as $userInfo) { $courses = $userInfo['courses'] ?? []; - // 合并同一学员的多个课程:格式为"课程体系-课程名称,课程体系-课程名称" - $courseList = []; - foreach ($courses as $courseInfo) { - $courseType = $courseInfo['course_type'] ?? ''; - $courseName = $courseInfo['course_name'] ?? ''; - if ($courseType && $courseName) { - $courseList[] = $courseType . '-' . $courseName; - } elseif ($courseName) { - $courseList[] = $courseName; + if (empty($courses)) { + // 如果学员没有课程,仍然导出学员基本信息 + if ($isFirstRow) { + // 第一行:显示公司信息 + $data[] = array_merge($companyInfo, [ + 'user_name' => $userInfo['user_name'] ?? '', + 'course_name' => '', + ]); + $isFirstRow = false; + } else { + // 后续行:公司信息为空 + $data[] = [ + 'company_name' => '', + 'company_legal_representative' => '', + 'company_date' => '', + 'stock_date' => '', + 'company_address' => '', + 'company_city' => '', + 'company_area' => '', + 'company_tag' => '', + 'user_name' => $userInfo['user_name'] ?? '', + 'course_name' => '', + ]; } - } - $courseDisplay = implode(',', $courseList); - - if ($isFirstRow) { - // 第一行:显示公司信息 - $data[] = array_merge($companyInfo, [ - 'user_name' => $userInfo['user_name'] ?? '', - 'course_name' => $courseDisplay, - 'course_type' => '', // 课程类型已合并到课程名称中 - ]); - $isFirstRow = false; } else { - // 后续行:公司信息为空 - $data[] = [ - 'company_name' => '', - 'company_legal_representative' => '', - 'company_date' => '', - 'stock_date' => '', - 'company_address' => '', - 'company_city' => '', - 'company_area' => '', - 'company_tag' => '', - 'user_name' => $userInfo['user_name'] ?? '', - 'course_name' => $courseDisplay, - 'course_type' => '', // 课程类型已合并到课程名称中 - ]; + // 每个课程一行,格式为"课程名称-课程体系" + foreach ($courses as $courseIndex => $courseInfo) { + $courseName = $courseInfo['course_name'] ?? ''; + $courseType = $courseInfo['course_type'] ?? ''; + + // 格式:课程名称-课程体系 + if ($courseName && $courseType) { + $courseDisplay = $courseName . '-' . $courseType; + } elseif ($courseName) { + $courseDisplay = $courseName; + } else { + $courseDisplay = ''; + } + + if ($isFirstRow && $courseIndex === 0) { + // 第一行:显示公司信息 + $data[] = array_merge($companyInfo, [ + 'user_name' => $userInfo['user_name'] ?? '', + 'course_name' => $courseDisplay, + ]); + $isFirstRow = false; + } else { + // 后续行:公司信息为空 + $data[] = [ + 'company_name' => '', + 'company_legal_representative' => '', + 'company_date' => '', + 'stock_date' => '', + 'company_address' => '', + 'company_city' => '', + 'company_area' => '', + 'company_tag' => '', + 'user_name' => $userInfo['user_name'] ?? '', + 'course_name' => $courseDisplay, + ]; + } + } } } } @@ -649,7 +674,6 @@ class OtherController extends CommonController 'company_tag' => '企业资质', 'user_name' => '学员姓名', 'course_name' => '课程信息', - 'course_type' => '课程类型', ]; $filename = '上市公司明细'; break;