123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250 |
- <?php
- namespace Home\Controller;
- use Think\Controller;
- class TestController extends Controller {
- var $arrt='1,';
- public function index(){
- // $this->show('aaaaaaaaaaaaaaaaaaaaa');
- /* import("Org.Util_it.PHPExcel");
- //import("Org.excel.PHPExcel/Classes/PHPExcel/Writer/Excel5.php"); // 用于其他低版本xls
- //import("Org.excel.PHPExcel.Classes.PHPExcel.Writer.Excel2007.php"); // 用于 excel-2007 格式
- $objPHPExcel = new \PHPExcel(); */
- //echo '<div class="bjui-pageContent">';
- //echo '<div class="panel panel-default">
- //test控制器
- //</div>
- //';
- ////dump( ini_get('upload_max_filesize'));//上传最大限制
- //dump(ini_get_all());
- //echo '内存:'.memory_get_usage();
- //echo '</div>';
- $Auth = new \Think\Auth();
- $ruleName =MODULE_NAME.'/'.CONTROLLER_NAME.'/'.ACTION_NAME; //规则唯一标识
- $userId = 1; //用户ID
- $type = 1; //分类-具体是什么没搞懂,默认为1
- $mode='url'; //执行check的模式
- $relation = 'or'; //'or' 表示满足任一条规则即通过验证; 'and'则表示需满足所有规则才能通过验证
- $ccc=$Auth->check($ruleName,$userId,$type,$mode,$relation);
- if (is_string($ruleName)) {
- $name = strtolower($ruleName);
- $REQUEST = unserialize( strtolower(serialize($_REQUEST)) );
- if (strpos($name, ',') !== false) {
- $name = explode(',', $name);
- } else {
- $name = array($name);
- }
- }
- if($ccc){
- $dietxt = '认证:通过';
- }else{
- $dietxt = '认证:失败';
- }
- $user_groups=M('auth_group_access');
- $condition['uid'] =$userId;
- $condition['`status`']=1;
- $listxx = $user_groups->join('sp_auth_group on group_id=id')->where($condition)->field("uid,group_id,title,rules")->select();
- $ids = array();//保存用户所属用户组设置的所有权限规则id
- foreach ($listxx as $g) {
- $ids = array_merge($ids, explode(',', trim($g['rules'], ',')));
- }
- $ids = array_unique($ids);
- $map=array(
- 'id'=>array('in',$ids),
- 'type'=>$type,
- 'status'=>1,
-
- );
- $rules = M('auth_rule')->where($map)->select();
- // $this->assign('dietxt',$dietxt);
- $authList = array(); //
- foreach ($rules as $rule) {
- if (!empty($rule['condition'])) { //根据condition进行验证
- $user = $this->getUserInfo($uid);//获取用户信息,一维数组
- $command = preg_replace('/\{(\w*?)\}/', '$user[\'\\1\']', $rule['condition']);
- //dump($command);//debug
- @(eval('$condition=(' . $command . ');'));
- if ($condition) {
- $authList[] = strtolower($rule['name']);
- }
- } else {
- //只要存在就记录
- $authList[] = strtolower($rule['name']);
- }
- }
- $t = implode(',',(array)$type);
- foreach ( $authList as $auth ) {
- $query = preg_replace('/^.+\?/U','',$auth);
- if ($mode=='url' && $query!=$auth ) {
- parse_str($query,$param); //解析规则中的param
- $intersect = array_intersect_assoc($REQUEST,$param);
- $auth = preg_replace('/\?.*$/U','',$auth);
- if ( in_array($auth,$name) && $intersect==$param ) { //如果节点相符且url参数满足
- $list[] = $auth ;
- }
- }else if (in_array($auth , $name)){
- $list[] = $auth ;
- }
- }
- //if ($relation == 'or' and !empty($list)) {
- // return true;
- // }
- // $diff = array_diff($name, $list);
- // if ($relation == 'and' and empty($diff)) {
- // return true;
- // }
- $menu = M('menu');
- $menulv1 = $menu->query("SELECT
- sp_menu.ID,sp_menu.menuname,sp_menu.pageurl,sp_menu.pid,sp_menu.Lv,
- (SELECT COUNT(ID) FROM sp_menu b WHERE b.pid= sp_menu.ID ) as clicn
- FROM
- sp_menu WHERE Lv=1");
- $phone='012345068';
- $frist = substr( $phone,0,1 );
- // $delete_last = substr(base_url(),0,-1);
- $rest1=preg_match('/^0.*/',$phone);
- // $rest1=preg_replace('/^0.*/', '', $phone);
- $work=M('v_customer');
- //$Map['_string']='agent=1002';
- // $Map['agent']=array('in','2000');
- $InfoData=array(
- 'U',
- $Data['start_date'],
- $Data['end_date'],
- '5454',
- date('Y-m-d H:i:s',time()),
- $Data['title'],
- '12345646546546546',
- '',
- '',
- 0,
- 1,
- );
- $QcscoreVIew=M('v_tasklist');
- $Count= $QcscoreVIew->where($Map)->count();// 查询满足要求的总记录数
- $List = $QcscoreVIew->field("id,taskname,taskdescr,taskstatus,tasktable,createtime,createman")->where($Map)
- ->limit(1,20)->order('createtime desc')->select();
- $ListData = array();
- foreach($List as $key => $Value){
- $tables=$List[$key]['tasktable'];
- $ListValue=M('')->query("select IFNULL((round((SELECT COUNT(*) FROM asteriskcdrdb.%s where data1!='')/COUNT(*)*100,0)),0) as num FROM asteriskcdrdb.%s",$tables,$tables);
- $ListData[$key]=array_merge($List[$key],$ListValue[0]);
- }
- //$DataList=M()->query("SELECT * FROM sp_gonggao WHERE title ='%s' AND ID=56",$InfoData2);
- // $DataList2=M()->query("select @countss");
- $model = M("");
- $sql = "call PROC_AGENT_REPOR('C','','','3000','','','')";
- //echo $sql;
- $ref = $model -> procedure($sql);
- //var_dump($ref);
- $this->show('vvvvv'.$_SERVER['SERVER_ADDR'].' vvvv'.print_r($DataList2).' ss'.dump($ref));
- //$this->display();
-
- }
- public function test($p,$cc){
-
- return '1='.$aa.' 2='.$p.' 3='.$cc;
- }
-
-
- protected function permdata() {
- $ModelUser=M('v_user');
- $Uid=21;
- $PermData=3;
- if($Uid!=1)
- {
- $ListData=$ModelUser->where(array('id' => $Uid))->Field("dataperm,agentid,depnameid")->select();
- $PermData =$ListData[0]['dataperm'];
- }
- if($PermData==1)
- {
- $Data =$ListData[0]['agentid'];
- }
- else if($PermData==2)
- {
- $ListId=$this->groupdata($ListData[0]['depnameid']).$ListData[0]['depnameid'];
- $DepData=explode(',',$ListId);
- $Map['depname']=array('in',$DepData);
- $List = M('user')->where($Map)->field("agentid")->select();
- $Ids=array();
- foreach ($List as $g) {
- $Ids = array_merge($Ids, explode(',', trim($g['agentid'], ',')));
- }
- $Data =array('in',array_unique($Ids));
- }
- else{
- $Data='';
- }
- return $Data;
- }
-
- protected function groupdata($DepPid){
- $ModelGroup=M('auth_group');
- $ListPid=$ModelGroup->where(array('pid' => $DepPid,'type'=> 0))->Field('id')->select();
- if(!empty($ListPid)){//如果有子类
- $i=0;
- foreach($ListPid as $g){
- $Arrt.=$g['id'].',';
- $Arrt.=$this->groupdata($g['id']);
- }
- return $Arrt;
- }
- }
-
- public function ini(){
- echo '<div class="bjui-pageContent">';
- echo '<div class="panel panel-default">
- test控制器
- </div>
- ';
- dump( ini_get('upload_max_filesize'));//上传最大限制
- dump( ini_get('mssql.textsize'));
- dump(ini_get_all());
- //echo '内存:'.memory_get_usage();
- echo '</div>';
- }
- //事务
- public function shiwu(){
- $Model = M(); // 实例化一个空对象
- $Model->startTrans(); // 开启事务
- $res=$Model->execute("update b set userid='9' where id='9'");
- $res2=$Model->execute("update b set userid='9' where id='8'");
- if ($res && $res2) {
- $Model->commit(); // 成功则提交事务
- echo '成功';
- } else {
- $Model->rollback(); // 否则将事务回滚
- echo '失败';
-
- }
- }
- //返回多值
- public function calls(){
- $res=M()->procedure('select * from a;select * from b');
- dump($res);
- }
- public function getip(){
- $iipp=$_SERVER["REMOTE_ADDR"];
- $port = $_SERVER['REMOTE_PORT'];
- echo $iipp.':'.$port;
- }
- public function gettianqi(){
- $ch = curl_init();
- // curl_setopt($ch, CURLOPT_URL, "https://www.sojson.com/open/api/weather/json.shtml?city=上海");
- curl_setopt($ch, CURLOPT_URL, "http://tj.nineton.cn/Heart/index/all?city=CHSH000000");
- curl_setopt($ch, CURLOPT_HEADER, false);
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //如果把这行注释掉的话,就会直接输出
- $result=curl_exec($ch);
- $res=json_decode($result,true);
- dump($res['weather'][0]['city_name']);
- dump($res['weather'][0]['now']['text']);
- dump($res['weather'][0]['now']['temperature']);
- dump($res['weather'][0]['now']['wind_direction']);
- dump($res['weather'][0]['now']['wind_scale']);
- dump($res['weather'][0]['now']['air_quality']['city']['quality']);
- dump($res['weather'][0]['now']);
- curl_close($ch);
- }
- }
|