| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 | 
							- <?php
 
- /**
 
-  * CommentModel.php UTF-8
 
-  * 评论
 
-  *
 
-  * @date    : 2017/11/24 16:21
 
-  *
 
-  * @license 这不是一个自由软件,未经授权不许任何使用和传播。
 
-  * @author  : wuyonghong <wyh@huosdk.com>
 
-  * @version : HUOSDK 8.0
 
-  */
 
- namespace huo\model\user;
 
- use huo\model\common\CommonModel;
 
- use huolib\constant\AgentConst;
 
- use huolib\constant\CommonConst;
 
- use think\Cache;
 
- class RoleModel extends CommonModel {
 
-     protected $name      = 'role';
 
-     protected $cache_tag = 'role_id_key';
 
-     public function getRoleLevelAttr($value) {
 
-     }
 
-     /**
 
-      * 获取角色类型说明
 
-      *
 
-      * @param $value
 
-      *
 
-      * @return string
 
-      */
 
-     public function getRoleTypeTextAttr($value) {
 
-         if (AgentConst::ROLE_TYPE_ADMIN == $value) {
 
-             return '超级管理员';
 
-         } elseif (AgentConst::ROLE_TYPE_MANAGER == $value) {
 
-             return '管理员';
 
-         } elseif (AgentConst::ROLE_TYPE_GROUP == $value) {
 
-             return '一级渠道';
 
-         } elseif (AgentConst::ROLE_TYPE_AGENT == $value) {
 
-             return '二级渠道';
 
-         } elseif (AgentConst::ROLE_TYPE_MEMBER == $value) {
 
-             return '玩家渠道';
 
-         } elseif (AgentConst::ROLE_TYPE_PC == $value) {
 
-             return '渠道专员';
 
-         } elseif (AgentConst::ROLE_TYPE_CP == $value) {
 
-             return 'CP';
 
-         }
 
-         return '';
 
-     }
 
-     /**
 
-      * 获取角色名称
 
-      *
 
-      * @param      $where
 
-      * @param bool $inc_type
 
-      *
 
-      * @return array
 
-      */
 
-     public function getIdNames($where = [], $inc_type = false) {
 
-         $_tag = $this->cache_tag;
 
-         $_cache_key = md5($_tag.json_encode($where));
 
-         $_field = 'name';
 
-         if ($inc_type) {
 
-             $_cache_key = 'inc_type'.$_cache_key;
 
-             $_field = "name,role_type,role_type role_type_text";
 
-         }
 
-         $_roles = $this->where($where)
 
-                        ->cache($_cache_key, CommonConst::CONST_DAY_SECONDS, $_tag)
 
-                        ->column($_field, 'id');
 
-         if ($inc_type) {
 
-             foreach ($_roles as $_k => $_v) {
 
-                 $_roles[$_k]['role_type_text'] = $this->getRoleTypeTextAttr($_v['role_type']);
 
-             }
 
-         }
 
-         return $_roles;
 
-     }
 
-     /**
 
-      *
 
-      * @param $role_id
 
-      *
 
-      * @return bool|mixed
 
-      */
 
-     public function getRoleTypeById($role_id) {
 
-         if (empty($role_id)) {
 
-             return false;
 
-         }
 
-         $_map['id'] = $role_id;
 
-         $_key = 'role_type_'.$role_id;
 
-         $_tag = $this->cache_tag;
 
-         $_role_type = $this->where($_map)->cache($_key, CommonConst::CONST_DAY_SECONDS, $_tag)->value('role_type');
 
-         if (empty($_role_type)) {
 
-             return false;
 
-         }
 
-         return intval($_role_type);
 
-     }
 
-     /**
 
-      * 通过角色类型获取角色ID
 
-      *
 
-      * @param $role_type
 
-      *
 
-      * @return array
 
-      */
 
-     public function getIdsByRoleType($role_type) {
 
-         $_map = [];
 
-         $_role_type = $role_type;
 
-         if (is_numeric($role_type) && !empty($role_type)) {
 
-             $_role_type = [$role_type];
 
-         }
 
-         if (!empty($role_type)) {
 
-             $_map['role_type'] = ['in', $_role_type];
 
-         }
 
-         $_id_arr = $this->where($_map)->column('id');
 
-         return $_id_arr;
 
-     }
 
-     public function addRole($data) {
 
-         $_rs = $this->insert($data);
 
-         if ($_rs != false) {
 
-             Cache::clear($_tag = $this->cache_tag);
 
-         }
 
-         return $_rs;
 
-     }
 
-     public function updateRole($data) {
 
-         $_rs = $this->update($data);
 
-         if ($_rs != false) {
 
-             Cache::clear($_tag = $this->cache_tag);
 
-         }
 
-         return $_rs;
 
-     }
 
-     public function deleteRole($id) {
 
-         $_rs = $this->where(['id' => $id])->delete();
 
-         if ($_rs != false) {
 
-             Cache::clear($_tag = $this->cache_tag);
 
-         }
 
-         return $_rs;
 
-     }
 
- }
 
 
  |