Browse Source

修改忽略文件

master
王泽彦 9 months ago
parent
commit
63e8e35966
  1. 42
      niucloud/app/service/api/apiService/PersonCourseScheduleService.php
  2. 24
      uniapp/pages/market/clue/clue_info.vue

42
niucloud/app/service/api/apiService/PersonCourseScheduleService.php

@ -19,6 +19,7 @@ use app\model\student_course_usage\StudentCourseUsage;
use app\model\student_courses\StudentCourses; use app\model\student_courses\StudentCourses;
use app\model\student\Student; use app\model\student\Student;
use app\model\customer_resources\CustomerResources; use app\model\customer_resources\CustomerResources;
use app\model\campus_person_role\CampusPersonRole;
use app\model\venue\Venue; use app\model\venue\Venue;
use core\base\BaseApiService; use core\base\BaseApiService;
use think\facade\Db; use think\facade\Db;
@ -462,12 +463,47 @@ class PersonCourseScheduleService extends BaseApiService
]; ];
try { try {
// 获取所有人员,可以通过角色或者其他字段来区分角色类型 // 先从校区人员角色关系表查询dept_id=2的所有人员ID
$personnel = Personnel::field('id,name,role_type,role_name') $personIds = CampusPersonRole::where('dept_id', 2)
->where('status', 1) // 假设1表示正常状态 ->where('deleted_at', 0) // 未删除
->distinct(true)
->column('person_id');
if (empty($personIds)) {
$res['msg'] = '暂无相关人员';
return $res;
}
// 根据获取到的人员ID查询人员详情,并关联角色信息
$personnel = Personnel::whereIn('id', $personIds)
->field('id,name')
->where('status', 1) // 正常状态
->select() ->select()
->toArray(); ->toArray();
// 为每个人员获取角色信息
foreach ($personnel as &$person) {
$roles = CampusPersonRole::where('person_id', $person['id'])
->where('dept_id', 2)
->where('deleted_at', 0)
->with(['sysRole' => function($query) {
$query->field('role_id,role_name');
}])
->select()
->toArray();
// 提取角色名称
$roleNames = [];
foreach ($roles as $role) {
if (!empty($role['sys_role']['role_name'])) {
$roleNames[] = $role['sys_role']['role_name'];
}
}
$person['role_name'] = implode(',', $roleNames);
$person['roles'] = $roleNames; // 保留数组格式便于前端判断
}
$res = [ $res = [
'code' => 1, 'code' => 1,
'msg' => '获取成功', 'msg' => '获取成功',

24
uniapp/pages/market/clue/clue_info.vue

@ -857,9 +857,27 @@
const personnel = res.data || []; const personnel = res.data || [];
// - // -
this.coachList = personnel.filter(p => p.role_name === '教练' || p.role_type === 'coach' || p.role_name === '教师'); this.coachList = personnel.filter(p => {
this.educationList = personnel.filter(p => p.role_name === '教务' || p.role_type === 'education'); return p.role_name && (
this.assistantList = personnel.filter(p => p.role_name === '助教' || p.role_type === 'assistant'); p.role_name.includes('教练') ||
p.role_name.includes('教师') ||
(p.roles && p.roles.some(role => role.includes('教练') || role.includes('教师')))
);
});
this.educationList = personnel.filter(p => {
return p.role_name && (
p.role_name.includes('教务') ||
(p.roles && p.roles.some(role => role.includes('教务')))
);
});
this.assistantList = personnel.filter(p => {
return p.role_name && (
p.role_name.includes('助教') ||
(p.roles && p.roles.some(role => role.includes('助教')))
);
});
console.log('getPersonnelList - 人员列表获取成功'); console.log('getPersonnelList - 人员列表获取成功');
console.log('教练列表:', this.coachList); console.log('教练列表:', this.coachList);

Loading…
Cancel
Save