HEX
Server: nginx/1.28.1
System: Linux 10-41-63-61 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024 x86_64
User: www (1001)
PHP: 7.4.33
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/wwwroot/douyin.dsfnj.com/application/admin/model/Admin.php
<?php
// +----------------------------------------------------------------------
// | Description: 系统基础公共
// +----------------------------------------------------------------------
// | Author:  ming | 1006941410@qq.com
// +----------------------------------------------------------------------

namespace app\admin\model;

use app\admin\model\Common;
use think\Db;

class Admin extends Common 
{
	/**
     * 统计筛选条件
     * @author ming
     * @param  $merge 1 user,structure 合并查询,0 user_id 优先级高
     * @param  $perUserIds 权限范围
     * @return 
     */
    public function getWhere($param, $merge = '', $perUserIds = [])
    {
        $userModel = new \app\admin\model\User();
        //员工IDS
        $user_ids = [];      
        if ($param['user_id']) {
            $user_ids = is_array($param['user_id']) ? $param['user_id'] : array($param['user_id']);
        } 
		if ($merge == 1) {
			if ($param['structure_id']) {
	            $str_user_ids = $userModel->getSubUserByStr($param['structure_id'], 2);
	        }
	        //合并
	        if ($user_ids && $str_user_ids) {
	        	$user_ids = array_unique(array_merge($user_ids,$str_user_ids));
	        } elseif ($str_user_ids) {
	        	$user_ids = $str_user_ids;
	        }        		
    	} else {
    		if (!$user_ids) {
				if ($param['structure_id']) {
		            $user_ids = $userModel->getSubUserByStr($param['structure_id'], 2);
		        }    			
    		}
    	}
        if (!$user_ids) $user_ids = getSubUserId(true);
        $perUserIds = $perUserIds ? : getSubUserId(); //权限范围内userIds
        $userIds = [];
        if ($user_ids) {
            $userIds = $perUserIds ? array_intersect($user_ids, $perUserIds) : $perUserIds; //数组交集
        }
        $where['userIds'] = array_map('intval', $userIds);      
        if (!empty($param['type'])) {
            $between_time = getTimeByType($param['type']);
        } else {
            //自定义时间
            if (!empty($param['start_time'])) {
                $between_time = array($param['start_time'],$param['end_time']);
            }
        }
        $where['between_time'] = $between_time;
        return $where ? : [];      
    }   		
}