From c664a477a4ec14f842b81319da47ef960fcfaa59 Mon Sep 17 00:00:00 2001 From: cody <648753004@qq.com> Date: Fri, 28 Nov 2025 13:39:59 +0800 Subject: [PATCH] update --- .../Controllers/Admin/OtherController.php | 96 +++++++------------ 1 file changed, 35 insertions(+), 61 deletions(-) diff --git a/app/Http/Controllers/Admin/OtherController.php b/app/Http/Controllers/Admin/OtherController.php index f7de921..f61d1f9 100755 --- a/app/Http/Controllers/Admin/OtherController.php +++ b/app/Http/Controllers/Admin/OtherController.php @@ -590,75 +590,49 @@ class OtherController extends CommonController $data[] = array_merge($companyInfo, [ 'user_name' => '', 'course_name' => '', + 'course_type' => '', ]); } else { - // 每个学员的每个课程一行,格式为"课程名称-课程体系" + // 每个学员一行,多个课程合并显示 $isFirstRow = true; foreach ($users as $userInfo) { $courses = $userInfo['courses'] ?? []; - 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' => '', - ]; + // 合并同一学员的多个课程:格式为"课程体系-课程名称,课程体系-课程名称" + $courseList = []; + foreach ($courses as $courseInfo) { + $courseType = $courseInfo['course_type'] ?? ''; + $courseName = $courseInfo['course_name'] ?? ''; + if ($courseType && $courseName) { + $courseList[] = $courseType . '-' . $courseName; + } elseif ($courseName) { + $courseList[] = $courseName; } + } + $courseDisplay = implode("\r\n", $courseList); + + if ($isFirstRow) { + // 第一行:显示公司信息 + $data[] = array_merge($companyInfo, [ + 'user_name' => $userInfo['user_name'] ?? '', + 'course_name' => $courseDisplay, + 'course_type' => '', // 课程类型已合并到课程名称中 + ]); + $isFirstRow = false; } else { - // 每个课程一行,格式为"课程名称-课程体系" - 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, - ]; - } - } + // 后续行:公司信息为空 + $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, + ]; } } }