belongsTo('AuthGroupAccess', 'id','uid')->setEagerlyType(0); } public function adminExtend() { return $this->belongsTo('AdminExtend', 'id','admin_id')->setEagerlyType(0); } /** * 重置用户密码 * @author baiyouwen */ public function resetPassword($uid, $NewPassword) { $passwd = $this->encryptPassword($NewPassword); $ret = $this->where(['id' => $uid])->update(['password' => $passwd]); return $ret; } // 密码加密 protected function encryptPassword($password, $salt = '', $encrypt = 'md5') { return $encrypt($password . $salt); } /** * 获取对应权限组下的所有用户 * * @author liues@dianzhong.com * @date 2018-08-23 11:59:11 * @param array|string $group_ids * @param array $where * @return false|\PDOStatement|string|\think\Collection */ public function getListByGroup($group_ids, array $where=[], $fields=null){ $fields = $fields ?? 'admin.*,auth_group.id as group_id,auth_group.name as group_name,auth_group.status as group_status'; $group_ids = is_array($group_ids) ? $group_ids : explode(',', $group_ids); $where = array_merge(['auth_group_access.group_id'=>['in',$group_ids]], $where); $result = $this->field($fields) ->join('auth_group_access','auth_group_access.uid= admin.id', "LEFT") ->join('auth_group','auth_group.id=auth_group_access.group_id','LEFT') ->where($where) ->select(); return $result; } public function getIds($vipid){ $opratorids = $this->alias("a") ->join("admin_extend ae","a.id = ae.admin_id") ->join("auth_group_access ag","a.id = ag.uid") ->where("ae.create_by = {$vipid}") ->where("ag.group_id = 8") ->column("a.id"); return $opratorids; } /** * 通过vipid获取其管辖的vip运营用户id * @param $vipId * @param string $status 状态。空:所有; normal:正常;hidden:隐藏 * @return array */ public function getOperatorIdsByVipId($vipId, $status = '') { $fetchObj = $this->alias("a") ->join("admin_extend ae", "a.id = ae.admin_id") ->join("auth_group_access ag", "a.id = ag.uid") ->where("ae.create_by = {$vipId}") ->where("ag.group_id = 8"); if (!empty($status)) { $fetchObj->where('status', $status); } $opratorIds = $fetchObj->column("a.id"); return $opratorIds; } }