1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- <?php namespace App\Http\Controllers\Admin;
- use App\Models\Custom;
- use App\Models\Video\LearnRecord as Model;
- use App\Models\Video\Course as VideoCourse;
- /**
- * 学习记录
- *
- * @author 刘相欣
- *
- */
- class VideoLearnRecord extends Auth{
-
- protected function _initialize(){
- parent::_initialize();
- $this->assign('breadcrumb1','课程关联');
- $this->assign('breadcrumb2','学习记录');
- }
- /**
- * 列表页
- *
- * */
- public function index(Model $Model,VideoCourse $VideoCourse,Custom $Custom){
- // 接收参数
- $courseId = request('course_id',0);
- $customCode = request('custom_code','');
- $customName = request('custom_name','');
- // 转码
- $customCode = $Custom->codeToId($customCode);
- // 查询条件
- $map = [];
- // 组合条件
- if( $courseId ) $map[] = ['video_course.id','=',$courseId];
- if( $customCode ) $map[] = ['custom.uid','=',$customCode];
- if( $customName ) $map[] = ['custom.username','LIKE','%'.$customName.'%'];
- // 查询数据
- $list = $Model->query()
- ->join('video_course','video_course.id','=','video_learn_record.course_id')
- ->join('custom','custom.uid','=','video_learn_record.custom_uid')
- ->where($map)->select(['video_learn_record.*','video_course.name as course_name','custom.username as custom_name'])
- ->orderByDesc('id')->paginate(config('page_num',10));
- // 循环处理数据
- foreach ($list as $key => $value) {
- // 时间
- $value['custom_code'] = $Custom->idToCode($value['custom_uid']);
- $value['right_ratio'] = $value['question_total'] ? number_format(($value['isanswer_total'] / $value['question_total'])*100 ,2) : 0;
- $value['video_inittime'] = str_pad((floor($value['video_inittime'] / 60)),2, '0', STR_PAD_LEFT) .':'. str_pad(($value['video_inittime'] % 60),2, '0', STR_PAD_LEFT);
- $value['video_lasttime'] = str_pad((floor($value['video_lasttime'] / 60)),2, '0', STR_PAD_LEFT) .':'. str_pad(($value['video_lasttime'] % 60),2, '0', STR_PAD_LEFT);
- // 重组
- $list[$key] = $value;
- }
- // 查询数据
- $courseList = $VideoCourse->query()->orderByDesc('id')->get(['id','name']);
- // 分配数据
- $this->assign('list',$list);
- $this->assign('courseList',$courseList);
- $this->assign('empty', '<tr><td colspan="20">~~暂无数据</td></tr>');
- // 加载模板
- return $this->fetch();
- }
- }
|