zoukankan      html  css  js  c++  java
  • 在线考试系统基础模块开发(RBAC)

     

       今天算是正式开始码代码了,采用的后台UI模板是layui. PHP的后台框架是laravel。

    今日完成任务

      基础模块RBAC完成。

      附上系统的截图

      

    核心源码

        因为是最基本的列表,系统中以后可能会有很多的这样的列表。就先把公共的JS写一下。后续的话,这样普通的规范的列表,采用配置化开发。

                 

    public static function reqIndex($condition){
        $query = DB::table('users')->join('class_info','class_info.id','=','class_id');
        if (!empty($condition['keyword'])) {
            $query = $query->where(function ($query) use ($condition) {
                $query->where('name', 'like', '%' . $condition['keyword'] . '%')
                    ->orwhere('email', 'like', '%' . $condition['keyword'] . '%');
            });
        }
        if (strlen($condition['user_status']) > 0) {
            if ($condition['user_status'] != -1) {
                $query = $query->where('status', '=', $condition['user_status']);
            }
        }
        $data['count'] = $query->count();
        if ($condition['page'] && $condition['limit']) {
            $query = $query->skip(($condition['page'] - 1) * $condition['limit'])->take($condition['limit']);
        } else {
            $query = $query->limit($condition['limit']);
        }

        $res = $query->select('users.id', 'email', 'name','class_name', 'users.status','is_super')->get()->toArray();
        $data['data'] = $res;
        return $data;
    }

      配置文件
      

    return [
        'list_url' => 'admin_setting',
        'is_page' => 'true',
        'limit' => 15,
        'limits' => '15,25,50,100',
        'width' => '98%',
        'list_fields' => [
            [
                'field' => 'email',
                'field_desc' => '登录邮箱',
                'width' => '20%',
            ],
            [
                'field' => 'name',
                'field_desc' => '用户名称',
                'width' => '20%',
            ],
            [
                'field' => 'class_name',
                'field_desc' => '班级',
                'width' => '15%',
            ],
            [
                'field' => 'status',
                'field_desc' => '状态',
                'width' => '15%',
                'templet' => '#templet_status',
            ],
            [
                'field' => 'is_super',
                'field_desc' => '是否是超级管理员',
                'width' => '15%',
                'templet' => '#templet_super',
            ],
            [
                'field_type' => 'toolbar',
                'field' => '#barFilter',
                'field_desc' => '操作',
                'width' => '15%',
                'fixed'=>'right',
            ],
        ]

    ];

    遇到问题

    1. layui的使用

    解决问题

    1. 参考官方文档

    项目燃尽图

  • 相关阅读:
    新闻发布项目——接口类(newsTbDao)
    新闻发布项目——接口类(commentDao)
    新闻发布项目——接口类(newsTbDao)
    新闻发布项目——接口类(UserDao)
    新闻发布项目——接口类(UserDao)
    新闻发布项目——接口类(UserDao)
    新闻发布项目——实体类(categoryTB)
    新闻发布项目——实体类(categoryTB)
    新闻发布项目——实体类(categoryTB)
    新闻发布项目——实体类(comment)
  • 原文地址:https://www.cnblogs.com/sofic/p/13280566.html
Copyright © 2011-2022 走看看