diff --git a/admin/index.class.php b/admin/index.class.php index a8371fa..f43388c 100644 --- a/admin/index.class.php +++ b/admin/index.class.php @@ -1,1555 +1,7 @@ time = time(); - $this->ac_appcore = new appcore(); - //应用入口 - $this->ac_get_url = $this->ac_appcore->get_app_url(); - } - - /** - * 检测入口 - */ - public function doindex() { - global $_M; - if(!file_exists(INS_LOCK_FILE) || $_M['form']['check']){ - //应用信息 - $this->input['app'] = $this->ac_appcore->met_app(); - $this->input['app']['icon'] = $_M['url']['app'].M_NAME.'/icon.png'; - $this->input['app']['appname'] = get_word($this->input['app']['appname']); - $this->input['app']['addtime'] = date('Y-m-d H:i:s',$this->input['app']['addtime']); - //整理检查项 - if(!file_exists(INS_LOCK_FILE) || file_exists(UPD_LOCK_FILE) ){ - define("CHECK_ITEM", "server|system|accredit|appfile|weqrcode|appcheck"); - }else{ - define("CHECK_ITEM", "server|system|accredit|appfile|weqrcode|update|appcheck"); - } - //页面检查项 - $this->input['ckitem'] = CHECK_ITEM; - require $this->show('app/index',$this->input); - }else{ - turnover($this->ac_get_url,'No prompt'); - } - } - - /* - + Ajax 各种数据校验 -  +------------------------------------------------------------------------------------------- -  + doappcheck : 用来进行应用的各项检测入口 -  +------------------------------------------------------------------------------------------- - */ - public function doappcheck() { - global $_M; - $this->ac_session = new session(); - $this->method = $_M['form']['type']; - //格式掉之前的旧数据 - if($this->method == 'server') self::del_cache(); - // 大于 PHP5.4 - self::{$this->method}(); - self::result(); - - echo $this->ac_appcore->resmsg(false); - } - - /* - + Ajax 下载更新应用文件 -  +------------------------------------------------------------------------------------------- -  + download : 应用文件的下载入口 -  +------------------------------------------------------------------------------------------- - */ - public function download() { - global $_M; - (new download($this->ac_appcore))->download($_M['form']['data']); - echo $this->ac_appcore->resmsg(false); - } - - /* - + Ajax modal body区域 -  +------------------------------------------------------------------------------------------- -  + domodal : 应用模态框数据处理入口 -  +------------------------------------------------------------------------------------------- - */ - public function domodal() { - global $_M; - $this->ac_session = new session(); - switch ($_M['form']['type']) { - case 'appfile': - $modal = self::appfile_modal(); - break; - case 'weqrcode': - $modal = self::weqrcode_modal(); - break; - case 'wechat': - $modal = self::wechat_modal(); - break; - case 'update': - $modal = self::update_modal(); - break; - default: - break; - } - echo $this->ac_appcore->jsoncallback($modal); - } - - /* - + Ajax -  +------------------------------------------------------------------------------------------- -  + doajax : 应用最终验证结果核对,以及应用程序使用过程中的应用校验数据延迟访问入口 -  +------------------------------------------------------------------------------------------- - */ - - public function doajax() { - global $_M; - /* - * 查询API访问时间 - * 若当天没有访问则访问API - * 若已访问则跳过执行下面 - * - */ - - //sign - $bool = false; - //wechat、update 值若为1 则是通过,0 为需要执行的,2为忽略的 - if($_M['form']['sign'] == 'appcheck'){ - $time = date('Y-m-d H:i:s',$this->time); - $ac_session = new session(); - $cache = [ - //记录时间 - 'time' => strtotime("{$time} +1 day"), - //授权结果 - 'check' => $ac_session->get('check'), - //公众号结果 - 'wechat' => (int) $ac_session->get('wechat'), - //是否有最新版本 - 'update' => (int) $ac_session->get('update') - ]; - - $listkey = $ac_session->get('ckitem'); - $ckitem = stringto_array(CHECK_ITEM,'|'); - // 后期根据情况再进行具体处理 - if(!in_array(0, $listkey)){ - $bool = true; - if(file_exists(INS_LOCK_FILE)){ - $msgtext = '进入应用'; - }else{ - $msgtext = ''; - } - } - $ac_session->del('ckitem'); - }else{ - //清除缓存 - $this->ac_session = new session(); - self::del_cache(); - //进行检测 - $ac_cache = $this->ac_appcore->mysql_config(array('ac_cache')); - //解密后的数组 - $cache = (new curls($this->ac_appcore))->postr($ac_cache,'',false)->resdata(); - $post = $this->ac_appcore->met_all(); - //判断是否超时 - if(empty($ac_cache) || $cache['time'] < strtotime("+1 hour") ){ - //API获取 - $this->method = 'check'; - $ajax = self::curljson($post,false,25); - $cache = $ajax['code']?$ajax['cache']:[]; - } - //查看本地是否存在禁止更新锁 - if(file_exists(UPD_LOCK_FILE)) $cache['update'] = 1; - //需要对比数据 - if(!empty($cache)){ - $check = (new curls($this->ac_appcore)) - ->apikey_decode([$cache['check'],$post['web']['met_weburl'],$post['app']['m_name'],$post['app']['addtime'] ]); - $state = $check['state'] && $check['app']['v_m_name'] == M_NAME?true:false; - if($state){ - if($check['vatime']['minute'] > 0){ - //对有效时间计算 - $time = date('Y-m-d H:i:s',$check['vatime']['stime']); - $endtime = strtotime("{$time} +{$check['vatime']['minute']} minute"); - if($endtime <= $this->time ) $state = false; - } - //最终结果判断 - $bool = $state && !empty($cache['wechat']) && !empty($cache['update'])?true:false; - } - } - //版本号 - if($bool){ - $vertype = ['Y','S','D']; - $msgtext = "版本号:{$vertype[$check['app']['v_vertype']]}.{$check['app']['v_ver']}"; - if($check['vatime']['minute'] > 0){ - //体验版本结束日期 - $endtime = date('Y-m-d H:i:s',$endtime); - $msgtext .= " ({$endtime})"; - } - } - } - - $ac_cache['exetime'] = $this->time; - //缓存记录 - $ac_cache = (new curls($this->ac_appcore))->apipost($cache)->resdata(true); - $this->ac_appcore->mysql_config(['ac_cache',$ac_cache],false); - //返回 - $bool?$this->ac_appcore->msgkey(1)->msgmeet($msgtext,true):$this->ac_appcore->locmsg(4012); - echo $this->ac_appcore->resmsg(false); - } - -// +---------------------------------------------------------------------- -// | 应用主方法 限制内部调用 -// +---------------------------------------------------------------------- - - /* - + 内部调用 -  +------------------------------------------------------------------------------------------- -  + server : 进行进行服务通信的验证,提供站点信息,站点应用信息给服务端, - + 从服务端获取当前应用版本的详细信息,以及系统环境的检测结果并缓存到session -  +------------------------------------------------------------------------------------------- -  + system : 直接获取缓存的session 直接将环境结果处理返回 -  +------------------------------------------------------------------------------------------- -  + accredit : 提供APP信息给服务端,从服务端获取验证结果 -  +------------------------------------------------------------------------------------------- -  + appfile : 根据APP版本信息,从服务端获取对应的对比指纹 - + 核心文件出现问题,会直接从服务端自动更新, - + 非核心文件会提供手动处理方法,必须修复 - + 暂时不提供非应用文件进行删除处理。 -  +------------------------------------------------------------------------------------------- -  + weqrcode : 根据站点信息和用户信息,从服务端查询是否符合微信公众号关注要求 -  +------------------------------------------------------------------------------------------- -  + update : 应用在线更新功能 -  +------------------------------------------------------------------------------------------- - */ - - # 服务端通信检测 - # 通过加密进行处理可防止数据丢失,防止某些敏感参数被过滤掉 - protected function server() { - global $_M; - //数据准备 - $server = self::curljson($this->ac_appcore->met_web_app()); - //进行结果处理 - if($server['code']){ - $this->ac_appcore->sucmsg($server['text']); - }else{ - $this->ac_appcore->errmsg($server['errcode'],$server['errmsg']); - } - - //缓存app版本以及环境检测结果 - $this->ac_session->set('applist',$server['applist']); - $this->ac_session->set('system',$server['system']); - } - - # 网站环境检测 - # 环境不存在中间值,要么支持,要么不支持 - protected function system() { - global $_M; - //读取缓存 - $system = $this->ac_session->get('system'); - //进行结果处理 - $metver = $system['metver']['code']; - $phpver = $system['phpver']['code']; - - $text = [ - [$phpver,$system['phpver']['text']], - [$metver,$system['metver']['text']] - ]; - $this->ac_appcore->vagmsg($metver && $phpver?1:0,$text); - //清空缓存 - $this->ac_session->del('system'); - } - - # 应用授权检测 - protected function accredit() { - global $_M; - //数据准备 - $post = $this->ac_appcore->met_web_app(); - $accredit = self::curljson($post,false,20); - //进行结果处理 - if($accredit['code']){ - //解密 - $apikey = (new curls($this->ac_appcore))->apikey_decode([$accredit['codekey'],$post['web']['met_weburl'],$post['app']['m_name'],$post['app']['addtime']]); - //校验 - if(!empty($apikey['state']) && $apikey['vatime']['minute'] > 0){ - //对有效时间计算 - $time = date('Y-m-d H:i:s',$apikey['vatime']['stime']); - $text = '体验结束时间:'.date('Y-m-d H:i:s',strtotime("{$time} +{$apikey['vatime']['minute']} minute")); - } - $apikey['state']?$this->ac_appcore->sucmsg($accredit['text'].$text):$this->ac_appcore->locmsg(4024); - }else{ - $this->ac_appcore->errmsg($accredit['errcode'],$accredit['errmsg']); - } - - //记录授权结果 - $this->ac_session->set('check',$accredit['codekey']); - } - - #文件指纹对比 - protected function appfile() { - global $_M; - //清空需要删的参数 - $this->ac_session->del('repair'); - //获取缓存 - $appfile = $this->ac_session->get('appfile'); - if(!$appfile){ - $appfile = self::curljson($this->ac_appcore->met_web_app()); - //进行结果处理 - if($appfile['code']) { - $this->ac_session->set('appfile',$appfile); - }else{ - return $this->ac_appcore->errmsg($appfile['errcode'],$appfile['errmsg']); - } - } - - //文件修复 - $dirfinger = new dirfinger(); - $corelist = $dirfinger->fingers($appfile['corelist']); - //先自动修复核心框架,再强制让用户修复有问题的文件。 - if(count($corelist['dllist']) > 0){ - //核心文件异常则启动自动修复,若修复失败再进行提示 - $this->ac_session->set('dllist',$corelist['dllist']); - $modal = $this->ac_appcore->msgkey()->msgtext(4004)->resmsg(); - $modal['suc'] = false; - $modal['data'] = 'core|check'; - return $this->ac_appcore->newres()->modalmsg($modal, 4001); - } - - $fingers = $dirfinger->fingers($appfile['fingers']); - //删除应用多余的文件 - //$dirfinger->del_appfile($appfile['fingers']); - //判断是否需要文件修复 - $inslock = (int) file_exists(INS_LOCK_FILE); //安装锁不存在说明新安装,不需要执行文件修复 - $dllock = count($fingers['dllist']) == 0?1:0; //需要修复的文件为0 说明不需要修复 - if(!$inslock || $dllock) { - //清理掉不再需要的缓存 - $this->ac_session->del('repair'); - $this->ac_session->del('appfile'); - //删除下载的缓存文件 - $this->ac_appcore->del_update_dir(); - return $this->ac_appcore->sucmsg()->msgtext(4003); - } - - //非强制更新和非安装状态 且$fingers 大于0时才执行文件修复 - if(count($fingers['dllist']) > 0){ - $this->ac_session->set('dllist',$fingers['dllist']); - $this->ac_session->set('repair',$fingers); - $modal = [ - 'suc' => true, - 'title' => '应用文件修复', - 'body' => '
', - 'url' => $_M['url']['own_form'].'a=domodal&type=appfile' - ]; - $text = '修复异常文件'; - return $this->ac_appcore->modalmsg($modal, [4002,$text]); - } - } - - # 微信公众号 - protected function weqrcode() { - global $_M; - //缓存 - $wechat = $this->ac_session->get('wechat'); - if($wechat !== '') sleep(1); - //验证 - $weqrcode = self::curljson($this->ac_appcore->met_all()); - if($weqrcode['code']){ - if($weqrcode['wx']['key'] == 1 ){ - $this->ac_appcore->sucmsg($weqrcode['text']); - }else{ - $modal = [ - 'suc' => true, - 'title' => '关注微信公众号', - 'body' => '
', - 'url' => $_M['url']['own_form'].'a=domodal&type=weqrcode', - ]; - $text = '关注公众号'; - $this->ac_appcore->modalmsg($modal) - ->sucmsg($weqrcode['wx']['ret']['info'].$text,$weqrcode['wx']['key']); - } - }else{ - $this->ac_appcore->errmsg($weqrcode['errcode'],$weqrcode['errmsg']); - } - $this->ac_session->set('wechat',$weqrcode['wx']['key']); - } - - # 在线更新检测 - protected function update() { - global $_M; - $this->ac_session->del('dllist'); - $this->ac_session->del('newapp'); - $applist = $this->ac_session->get('applist'); - //当前版本禁止检测升级 直接报已是最新 - //下个版本禁止升级,直接报已是最新 - // UPD_LOCK_FILE 存在直接报最新 - if(file_exists(UPD_LOCK_FILE) || empty($applist['v_ckupdate'])){ - // 1 为无须无法升级 - // 0、2 有升级 - $this->ac_session->set('update',1); - return $this->ac_appcore->sucmsg('已是最新版。'); - } - - //直接检测 - $update = self::curljson($this->ac_appcore->met_web_app()); - if($update['code']){ - //判断是否有指纹需要处理 - if($update['code'] == 8002){ - $this->ac_session->set('update',1); - return $this->ac_appcore->sucmsg($update['text']); - } - //升级文件处理 - $this->ac_session->set('newapp',$update['newapp']); - $modal = [ - 'suc' => true, - 'title' => $update['newapp']['v_ver'].' 更新内容', - 'body' => '
', - 'url' => $_M['url']['own_form'].'a=domodal&type=update' - ]; - $text = '在线更新'; - $upkey = $update['newapp']['v_update'] == 1?0:2; - $this->ac_appcore->modalmsg($modal) - ->sucmsg($update['text'].$text,$upkey); - }else{ - $upkey = 1; - $this->ac_appcore->errmsg($update['errcode'],$update['errmsg']); - if(empty($update['system'])){ - $phpver = arrayto_string($update['newapp']['v_phpver'],' -- '); - $metver = arrayto_string($update['newapp']['v_metver'],' -- '); - - $phpli = count($update['newapp']['v_phpver']) == 1?'最低':''; - $metli = count($update['newapp']['v_metver']) == 1?'最低':''; - $text = "
-
".$update['newapp']['v_ver']." 版本环境要求:
-
  1. 应用".$phpli."支持PHP ".$phpver." 版本;
  2. 应用".$metli."支持MetInfo ".$metver." 版本;
-
".$update['newapp']['v_ver']." 版本环境检测结果:
-
    ".$update['system']['text']."
-
"; - $this->ac_appcore->msgmeet($text); - } - } - //需要缓存的结果 - $this->ac_session->set('update',$upkey); - } - -// +---------------------------------------------------------------------- -// | 应用主方法 限制内部调用,主要处理模态框数据的交互 -// +---------------------------------------------------------------------- - - // 文件修复列表 - protected function appfile_modal() { - global $_M; - $download = new download($this->ac_appcore); - $download->download('filelist|check'); - $dllist = $download->app_get_file(); - if(count($dllist['dllist']) == 0){ - return '
用文件不存在异常。
'; - } - $resmsg = $this->ac_appcore->resmsg(); - if($resmsg > 0){ - $fingers = $this->ac_session->get('repair'); - foreach ($dllist['dllist'] as $key => $val) { - $text = ''; - if($fingers['updlist'][$val]) $text = '文件被修改'; - if($fingers['dowlist'][$val]) $text = '文件不存在'; - $html .=<< - {$text} - {$val} - 点击下载 -

-EOT; - } - $html = [ - 'body' => "
{$html}
", - 'foot' => '' - ]; - }else{ - $html = ['body' => $resmsg['text'] ]; - } - return $html; - } - - //微信公众号二维码 - protected function weqrcode_modal() { - global $_M; - $this->method = 'qrcode'; - $weqrcode = self::curljson($this->ac_appcore->met_all(),false,25,'wx'); - if($weqrcode['code']){ - $wehtml = [ - 'body' => '
', - 'foot' => $weqrcode['qrcode']['text']['info'], - 'callback' => 'wechat_qrcode' - ]; - }else{ - $wehtml = [ - 'body' => "

({$weqrcode['errcode']}){$weqrcode['errmsg']}

" - ]; - } - return $wehtml; - } - - //微信公众号轮询 - protected function wechat_modal() { - global $_M; - $sign = random(6); - sleep(1); - $this->method = 'check'; - $weqrcode = self::curljson($this->ac_appcore->met_all(),false,20,'wx'); - //结果返回 - if($weqrcode['code']){ - $this->ac_appcore->sucmsg($weqrcode['wx']['ret']['info'],$weqrcode['wx']['key']); - }else{ - $this->ac_appcore->errmsg($weqrcode['errcode'],$weqrcode['errmsg']); - } - - //计算2分钟超时 - if(empty($_M['form']['endtime'])){ - $time = date('Y-m-d H:i:s', $this->time); - $endtime = strtotime("{$time} +2 minute"); - }else{ - if($_M['form']['endtime'] < $this->time){ - $text = '刷新二维码'; - $this->ac_appcore->locmsg([4023,$text]); - }else{ - $endtime = $_M['form']['endtime']; - } - } - - $resmsg = $this->ac_appcore->resmsg(); - $resmsg['endtime'] = $endtime; - $resmsg['sign'] = $sign; - return $resmsg; - } - - //在线更新 - protected function update_modal() { - global $_M; - $newapp = $this->ac_session->get('newapp'); - return [ - 'body' => strlen($newapp['v_daily']) > 0?"

{$newapp['v_daily']}
":'

没有更新说明。

', - 'foot' => '' - ]; - } - -// +---------------------------------------------------------------------- -// | 辅助方法 -// +---------------------------------------------------------------------- - - # 需要格式化掉的数据防止二次使用时错误 - private function del_cache() { - global $_M; - $this->ac_session->del('applist'); - $this->ac_session->del('system'); - $this->ac_session->del('check'); - $this->ac_session->del('appfile'); - $this->ac_session->del('repair'); - $this->ac_session->del('dllist'); - $this->ac_session->del('wechat'); - $this->ac_session->del('update'); - $this->ac_session->del('ckitem'); - } - - # 记录各项检查结果 - private function result() { - global $_M; - $code = false; - $ckitem = $this->ac_session->get('ckitem'); - if($this->method != 'appcheck'){ - $key = $this->ac_appcore->resmsg(); - $ckitem[$this->method] = $key['key']; - $this->ac_session->set('ckitem',$ckitem); - } - } - - # 将返回信息转为JSON数据 - private function curljson($post = [],$type = false,$timeout = 15,$sign = 'ck' ) { - global $_M; - return (new curls($this->ac_appcore))->apiurl($this->method,$sign) - ->apipost($post) - ->curls($timeout) - ->resdata($type); - } - - # 应用内容呈现 - protected function show($file, $data){ - global $_M; - $view =load::sys_class('engine','new'); - require_once $view->dodisplay($file, $data); - } - -} - -// +---------------------------------------------------------------------- -// | class appcore 应用客户端核心处理方法 -// +---------------------------------------------------------------------- -// | Copyright: 1.0 -// +---------------------------------------------------------------------- -// | Author site: www.metinfo.wang,www.metinfo.cc -// +---------------------------------------------------------------------- -// | Author QQ: 415420792 -// +---------------------------------------------------------------------- -class appcore{ - - # 应用文件名 - private $m_name; - # 站点信息 - private $web = []; - # 应用信息 - private $app = []; - # 管理员权限 - private $aop = []; - # 错误信息的提示 - private $tipmsg = []; - # 返回的信息结果 - private $resmsg = []; - - # 初始化 - public function __construct() { - global $_M; - $this->m_name = M_NAME; - } - - # 获取应用入口 - public function get_app_url() { - global $_M; - $settings = file_exists(INS_LOCK_FILE)?json_decode(file_get_contents(INS_LOCK_FILE),true):[]; - if(empty($settings['url'])){ - unset($settings['url'],$settings['time']); - $get_url = $_M['url']['own_name'].http_build_query($settings); - }else{ - $get_url = $settings['url']; - } - return $get_url; - } - - # 站点信息和应用信息 - public function met_web_app() { - global $_M; - return [ - 'web' => self::met_web(), - 'app' => self::met_app() - ]; - } - - # 获取站点信息以及权限查询 - public function met_all() { - global $_M; - $met = self::met_web_app(); - $met['aop'] = self::met_aop(); - return $met; - } - - # 站点信息查询 - public function met_web() { - global $_M; - // 站点信息 - $name = ['met_weburl','met_webname','metcms_v','met_keywords','met_description','met_skin_user']; - foreach ($name as $val) { - $lang = $val == 'metcms_v'?'metinfo':$_M['lang']; - $met = DB::get_one("SELECT value FROM {$_M['table']['config']} WHERE name = '{$val}' AND lang = '{$lang}' "); - $this->web[$val] = $met['value']; - } - $this->web['webip'] = $_SERVER['SERVER_ADDR']; - $this->web['sysver'] = php_uname('s').' '.php_uname('r'); - $this->web['phpver'] = PHP_VERSION; - $this->web['sqlver'] = DB::version(); - $this->web['webver'] = str_replace("PHP/{$this->web['phpver']}","",$_SERVER['SERVER_SOFTWARE']); - $this->web['lang'] = $_M['lang']; - return $this->web; - } - - # 应用信息查询 - public function met_app() { - global $_M; - //应用信息 - if(!empty($this->m_name)) { - $this->app = DB::get_one("SELECT no,ver,addtime,m_name,appname FROM {$_M['table']['applist']} WHERE m_name='{$this->m_name}' "); - } - $this->app['client_ip'] = self::get_client_ip(); - return $this->app; - } - - # 下载权限处理需求 - public function met_adl() { - global $_M; - //应用信息 - if(!empty($this->m_name)) { - $this->adl = DB::get_one("SELECT no,ver,addtime,m_name FROM {$_M['table']['applist']} WHERE m_name='{$this->m_name}' "); - } - //域名 - $met = DB::get_one("SELECT value FROM {$_M['table']['config']} WHERE name = 'met_weburl' AND lang = '{$_M['lang']}' "); - $this->adl['met_weburl'] = $met['value']; - return $this->adl; - } - - # 公众号关注管理员权限 - public function met_aop() { - global $_M; - $admin = admin_information(); - //管理员权限 - $this->aop = [ - 'admin_id' => $admin['admin_id'], - 'admin_op' => $admin['admin_op'], - 'admin_ip' => $admin['admin_modify_ip'], - 'admin_time' => $admin['admin_modify_date'], - ]; - return $this->aop; - } - - # 对resmsg 初始化 - public function newres() { - global $_M; - $this->resmsg = []; - return $this; - } - - # 提示信息返回 - # $type true 为数组,false 为json - # $unset true 清空避免重复使用出现问题 false 暂时不清空 - public function resmsg($type = true,$unset = false) { - global $_M; - //检测值是否存在 - if(strlen($this->resmsg['key']) == 0) self::locmsg(4012); - //检测项的值 - $this->resmsg['eqkey'] = $_M['form']['eqkey']; - //返回值 - $resmsg = $type?$this->resmsg: self::jsoncallback($this->resmsg); - //注销 - if($unset) unset($this->resmsg); - return $resmsg; - } - - # 正确结果返回 - public function sucmsg($msg,$code = 1) { - global $_M; - $this->resmsg['key'] = $code; - $this->resmsg['text'] = self::fontcolor($code,$msg); - return $this; - } - - # 多种结果返回 - public function vagmsg($code,$msg = []) { - global $_M; - $text = ''; - foreach ($msg as $val) { - list($k,$v) = $val; - $text .= self::fontcolor($k,$k?$v['info']:"({$v['coding']}){$v['info']}"); - } - $this->resmsg['key'] = $code; - $this->resmsg['text'] = $text; - return $this; - } - - # 错误结果返回 - # $code 这个是错误的编码 - # $msg 错误的信息提示 - public function errmsg($coding,$msg,$code = 0) { - global $_M; - $this->resmsg['key'] = $code; - $this->resmsg['text'] = self::fontcolor(0,"({$coding}){$msg}"); - return $this; - } - - # 返回本地编码信息 - # $code 状态 - # $msg 错误的信息提示 - public function locmsg($msg = [],$code = 0) { - global $_M; - if(!empty($msg)) self::codemsg($msg); - $this->resmsg['key'] = $code; - $this->resmsg['text'] = self::fontcolor($code,"({$this->tipmsg['errcode']}){$this->tipmsg['errmsg']}"); - return $this; - } - - # 错误结果返回 - # $modal 模态框的内容 - # $code 校验结果状态 - # $error 错误信息提示 提示码以及需要增加的文字 - public function modalmsg($modal = [], $error = [],$code = 0) { - global $_M; - self::locmsg($error,$code); - $this->resmsg['modal'] = $modal; - return $this; - } - - # 替换key - public function msgkey($key = 4) { - global $_M; - $this->resmsg['key'] = $key; - return $this; - } - - # 使用本地错误代码替换返回信息内的text - public function msgtext($error = []) { - global $_M; - self::codemsg($error); - $this->resmsg['text'] = self::fontcolor($this->resmsg['key'],$this->tipmsg['errmsg']); - return $this; - } - - # text - # $type true 覆盖,false 为拼接 - public function msgmeet($text,$type = false) { - global $_M; - $this->resmsg['text'] = $type?$text:$this->resmsg['text'].$text; - return $this; - } - - # 对提示文字的HTML处理 - private function fontcolor($code,$text) { - global $_M; - // 红、绿、黄 - $color = ['#E9595B','#36AB7A','#EC9940','#76838f','#2a333c']; - return ''.$text.''; - } - - # 错误提示语返回字符串格式 - # $type true 字符串,false 为JSON - public function coderes($type = true) { - global $_M; - return $type?$this->tipmsg['errmsg']:json_encode($this->tipmsg,JSON_UNESCAPED_UNICODE); - } - - # 错误代码信息 - public function codemsg($coding,$text = '') { - global $_M; - if(is_array($coding)) list($coding,$text) = $coding; - $msg = [ - '4000' => "当前环境缺少CURL支持!", - '4001' => "核心文件存在异常,准备自动修复核心文件...", //修复文件 - '4002' => "应用文件存在异常请点击 {$text} !", //修复文件 - '4003' => "应用文件正常!", - '4004' => "文件权限检测中...", - '4005' => " {$text} 不存在,请手动创建!", - '4006' => " {$text} 权限不足,请修改为[777/775]增加写入权限!", - '4007' => " {$text} 数据写入错误,请自行检测权限!", - '4008' => "下载权限不足(请检查【网站网址】是否为购买应用的域名)!", - '4009' => "应用文件下载中...", - '4010' => "应用文件下载中...{$text} (正在进行下载,请不要操作页面!)", - '4011' => "服务端异常[{$text}],通信失败!", - '4012' => "系统异常!", - '4013' => "应用文件,开始修复...", - '4014' => "[核心文件自动修复] 修复完成。", - '4015' => "应用文件修复完成。", - '4016' => "[{$text}] 下载失败!", - '4017' => "修复失败!", - '4018' => "安装失败!", - '4019' => "安装成功!", - '4020' => "应用文件,开始安装...", - '4021' => "[{$text}] 写入失败!", - '4022' => "未检测到文件!", - '4023' => "微信公众号二维码扫描超时!{$text}", - '4024' => "域名未获得授权!", - '4025' => "安装锁权限不足!", - ]; - - $this->tipmsg = ['errcode' => $coding,'errmsg' => $msg[$coding]]; - return $this; - } - - # 密钥获取和保存 - # $mode true是读取 false是保存 - public function mysql_config($arr = [],$mode = true) { - global $_M; - list($key,$val) = $arr; - $table = $_M['table']['cloud_config']; - $lang = 'cloud'; - if($mode){ - $config = DB::get_one("select value from {$table} where name = '{$key}' AND m_name = '{$this->m_name}' AND lang = '{$lang}' "); - $val = $config['value']; - }else{ - DB::query("INSERT INTO {$table} (name,lang,m_name,value) VALUES ('{$key}','{$lang}','{$this->m_name}','{$val}') ON DUPLICATE KEY UPDATE value='{$val}' "); - } - return $val; - } - - // 获取客户端IP - public function get_client_ip(){ - $arr_ip_header = [ - // 非常见 - 'HTTP_CDN_SRC_IP', - 'HTTP_PROXY_CLIENT_IP', - 'HTTP_WL_PROXY_CLIENT_IP', - // 一般用下面三个 - 'HTTP_CLIENT_IP', - 'HTTP_X_FORWARDED_FOR', - 'REMOTE_ADDR' - ]; - $client_ip = 'unknown'; - foreach ($arr_ip_header as $key){ - if (!empty($_SERVER[$key]) && strtolower($_SERVER[$key]) != 'unknown' && filter_var($_SERVER[$key], FILTER_VALIDATE_IP)){ - $client_ip = $_SERVER[$key]; - break; - } - } - return $client_ip; - } - - /* - * 把数组转成JSON,用于ajax返回,可以用于普通json请求返回,也可以用于跨域的ajax的jsonp格式的数据请求返回。 - * @param array $back 输出字符串或数组 - * @param string $callback ajax的回调函数的名称 - */ - public function jsoncallback($back, $callback = 'callback') { - global $_M; - header('Content-type: application/x-javascript'); - $callback = $_M['form'][$callback]; - $json = json_encode($back,JSON_UNESCAPED_UNICODE); - echo $callback?$callback . '(' . $json . ')':$json; - } - - //删除更新文件夹 - public function del_update_dir() { - global $_M; - @clearstatcache(); - //检测文件是否存在,删除缓存的file - if(is_dir(APP_UPDATE_DIR) && file_exists(APP_UPDATE_DIR)) deldir(APP_UPDATE_DIR); - } - -} - -// +---------------------------------------------------------------------- -// | class curls 应用CURL -// +---------------------------------------------------------------------- -// | Copyright: 1.0 -// +---------------------------------------------------------------------- -// | Author site: www.metinfo.wang,www.metinfo.cc -// +---------------------------------------------------------------------- -// | Author QQ: 415420792 -// +---------------------------------------------------------------------- -class curls{ - - # 应用主方法 - private $appcore; - # 应用APIURL - private $urlarr = []; - # 应用API - private $apiurl = []; - # 网址协议 - private $scheme; - # 提交数据和返回数据的缓存 - private $data; - # 默认密钥 - private $apikey; - # 信息 - private $headers = []; - - # 初始化 - public function __construct($appcore) { - global $_M; - $this->appcore = $appcore; - // 选择执行URL,提交的数据,对数据的处理,提交服务端,数据的处理,返回结果 - $this->urlarr = [ - // 应用信息验证URL - 'ck' => 'https://app.muban.net.cn/api/appcheck.php?a=do', - // 应用下载更新URL - 'dl' => 'https://app.muban.net.cn/api/download.php?a=do', - //公众号 - 'wx' => 'https://app.muban.net.cn/api/wechat.php?a=do' - ]; - $this->apikey = md5($_M['config']['met_weburl']); - $this->headers = [ - 'METWEBURL:' . $_M['config']['met_weburl'], - 'AUTHORIZATION:' . $this->apikey - ]; - } - - # URL选择 - public function apiurl($method,$type = 'ck') { - global $_M; - $this->apiurl = $this->urlarr[$type].$method; - $this->scheme = self::purl($this->apiurl,'scheme'); - return $this; - } - - # 数据处理 - # $ende true加密 false 不执行加密 - public function apipost($post,$ende = true) { - global $_M; - $this->data = $post; - // 若要采用非默认密钥这里设置false,单独调用加密方法 - if($ende) self::auth_encode(); - return $this; - } - - # 对数据加密 - # $str 加密数据 $key 加密密钥 - public function auth_encode($key = null) { - global $_M; - if(!empty($key)) $this->apikey = $key; - if(is_array($this->data)) self::arrjson(false); - $this->data = authcode($this->data,'ENCODE', $this->apikey); - return $this; - } - - # 授权查询 授权代码结束 - public function curls($timeout = 15) { - global $_M; - if (get_extension_funcs('curl') && function_exists('curl_init') && function_exists('curl_setopt') && function_exists('curl_exec') && function_exists('curl_close')) { - $curl = curl_init(); - curl_setopt($curl, CURLOPT_URL, $this->apiurl); - if($this->scheme === 'https') { - curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); //不做服务器认证 - curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); //不做客户端认证 - } - curl_setopt($curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); - curl_setopt($curl, CURLOPT_REFERER, $_SERVER["HTTP_HOST"]); - curl_setopt($curl, CURLOPT_HTTPHEADER, $this->headers); - curl_setopt($curl, CURLOPT_FAILONERROR, 1); //返回http >= 400的错误代码 - curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); - curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, $timeout); - curl_setopt($curl, CURLOPT_TIMEOUT, $timeout); - curl_setopt($curl, CURLOPT_POST, 1); - curl_setopt($curl, CURLOPT_POSTFIELDS, ['dense' => $this->data]); - $data = curl_exec($curl); - $code = curl_getinfo($curl, CURLINFO_HTTP_CODE); //http响应码 - $errno = curl_errno($curl); //错误码 - curl_close($curl); - $this->data = empty($errno)?$data:$this->appcore->codemsg(4011,"{$code}-{$errno}")->coderes(false); - }else{ - $this->data = $this->appcore->codemsg(4000)->coderes(false); - } - return $this; - } - - # 对数据解密 - # $str 加密数据 $key 加密密钥 - public function auth_decode($key = null) { - global $_M; - if(!empty($key)) $this->apikey = $key; - $this->data = authcode($this->data,'DECODE', $this->apikey); - return $this; - } - - # 数据格式转换 - # $type true 转为数组 false 转为json - public function arrjson($type = true) { - global $_M; - $this->data = $type?json_decode($this->data,true):json_encode($this->data,JSON_UNESCAPED_UNICODE); - return $this; - } - - # 返回的数据处理 - # $type true 返回源数据,false 返回数组 - public function resdata($type = false) { - global $_M; - if($type == false) self::arrjson(); - return $this->data; - } - - # 单独处理数据的加密和解密 - # $type true 加密,false 解密 - # $post 有数据则执行,无数据则直接返回postr - public function postr($post = null,$key = null,$type = true) { - global $_M; - self::apipost($post,false); - if($type){ - self::auth_encode($key); - }else{ - self::auth_decode($key); - } - return $this; - } - - # 授权密钥解密 - public function apikey_decode($appkey = []) { - global $_M; - list($apikey,$domian,$m_name,$addtime) = $appkey; - $domian = self::purl($domian); - return self::postr($apikey, md5($domian.md5($m_name.$addtime)),false)->resdata(); - } - - # 分析网址 - public function purl($url,$type = 'host') { - global $_M; - $url = url_standard($url); - $array = parse_url($url); - return $type == 'arr'?$array:$array[$type]; - } - -} - - -// +---------------------------------------------------------------------- -// | class session 应用检测会话缓存 -// +---------------------------------------------------------------------- -// | Copyright: 1.0 -// +---------------------------------------------------------------------- -// | Author site: www.metinfo.wang,www.metinfo.cc -// +---------------------------------------------------------------------- -// | Author QQ: 415420792 -// +---------------------------------------------------------------------- -class session{ - - # 应用文件名 - private $se_m_name = M_NAME; - - public function __construct() { - global $_M; - self::start(); - } - - public function start(){ - $ip = self::getip(); - session_id(md5($_SERVER['HTTP_USER_AGENT'].$this->se_m_name.$ip)); - session_start(); - } - - public function set($name, $value){ - self::start(); - $_SESSION[$name] = $value; - } - - public function get($name){ - self::start(); - return $_SESSION[$name]; - } - - public function del($name){ - self::start(); - unset($_SESSION[$name]); - } - - public function getip() { - $unknown = 'unknown'; - if(isset($_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARDED_FOR'] && strcasecmp($_SERVER['HTTP_X_FORWARDED_FOR'], $unknown)){ - $pro = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']); - $ip = $pro[0]; - }elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], $unknown)) { - $ip = $_SERVER['REMOTE_ADDR']; - } - return $ip; - } - -} - -// +---------------------------------------------------------------------- -// | class dirfinger 应用检测指纹校对 -// +---------------------------------------------------------------------- -// | Copyright: 1.0 -// +---------------------------------------------------------------------- -// | Author site: www.metinfo.wang,www.metinfo.cc -// +---------------------------------------------------------------------- -// | Author QQ: 415420792 -// +---------------------------------------------------------------------- -class dirfinger { - - # 应用所在目录 - private $appfile; - # 需要跳过的文件,不分目录 - private $skipfile = []; - # 需要跳过的目录以及按照目录跳过文件 - private $skipdir = []; - # 跟服务端指纹不同的文件路径 - private $updlist = []; - # 需要从服务器下载的文件 - private $dllist = []; - - # 初始化 - public function __construct() { - global $_M; - $this->appfile = PATH_APP_FILE; - $this->skipfile = []; - $this->skipdir = [ - 'config/install.lock', - 'config/update.lock', - 'config/uninstall.lock', - 'config/table' - ]; - @clearstatcache(); - } - - # 对比指纹入口 - public function fingers($fingers = []) { - global $_M; - //指纹对比 - self::fingerprint_check($fingers); - //记录已经进行过指纹对比 - return [ - 'updlist' => $this->updlist, //需要更新的文件,跟服务端不同的文件 - 'dowlist' => $this->dowlist, //需要下载的文件,客户端不存在,而服务端存在的 - 'dllist' => $this->dllist //需要从服务器下载的文件,包含更新和下载 - ]; - } - - //删除应用文件以外的文件 - public function del_appfile($fingers = [], $dir = '') { - global $_M; - $files = scandir($this->appfile.$dir); - foreach ($files as $file) { - $dirfile = $dir.$file; - if(stristr(PHP_OS, "WIN")){ - $dirfiles = iconv("GBK","UTF-8", $dirfile); - $file = iconv("GBK","UTF-8", $file); - }else{ - $dirfiles = $dirfile; - } - if(in_array($dirfiles,$this->skipdir) || in_array($file,$this->skipfile)) continue; - if(is_dir($this->appfile.$dirfile)){ - self::del_appfile($fingers,$dirfile.'/'); - }else{ - //判断文件是否存在 - if(!array_key_exists($dirfiles,$fingers) ) delfile($dirfile); - } - } - } - - # 应用指纹校验 - private function fingerprint_check($flist = ''){ - global $_M; - foreach ($flist as $key => $val) { - //文件路径 - $dirfile = $this->appfile.$key; - if(stristr(PHP_OS, "WIN")) $dirfile = iconv("UTF-8","GBK", $dirfile); - //检查文件是否存在 - if(file_exists($dirfile)){ - //比对MD5 - if(md5_file($dirfile) != $val){ - $this->updlist[$key] = $val; - $this->dllist[$key] = $val; - } - }else{ - //需要下载的 - $this->dowlist[$key] = $val; - $this->dllist[$key] = $val; - } - } - } - -} - -// +---------------------------------------------------------------------- -// | class download 应用文件下载更新 -// +---------------------------------------------------------------------- -// | Copyright: 1.0 -// +---------------------------------------------------------------------- -// | Author site: www.metinfo.wang,www.metinfo.cc -// +---------------------------------------------------------------------- -// | Author QQ: 415420792 -// +---------------------------------------------------------------------- -class download{ - - #传送的数据 - private $modal; - #远端接口 - private $method; - # 应用主方法 - public $ac_appcore; - private $ac_session; - # 应用文件 - private $appfile; - # 应用下载缓存文件夹 - private $appupdir; - # 下载的文件存放目录,方便迁移 - private $appupfile; - # 应用下载缓存文件 - private $appdllist; - - # 下载需要的网站应用数据 - private $met_adl; - # 当前执行的状态 - private $cksign; - - # 初始化 - public function __construct($appcore) { - global $_M; - $this->appfile = PATH_APP_FILE; - $this->appupdir = APP_UPDATE_DIR; - $this->appupfile = APP_UPDATE_DIR.'/file/'; - $this->appdllist = APP_UPDATE_DIR.'/dllist.json'; - $this->ac_appcore = $appcore; - $this->ac_session = new session(); - $this->met_adl = $this->ac_appcore->met_adl(); - } - - # 下载更新入口 - public function download($data) { - global $_M; - //执行方法,进度 - list($cksign,$method,$step,$rate,$total) = explode('|', $data); - //正确时的回调值 - $this->cksign = $cksign; - $this->method = $method; - //回调传送的数据 - $this->modal = [ - 'suc' => false, - 'data' => ['cksign' => $this->cksign, 'method' => $this->method, 'step' => $step] - ]; - //若是更新则获取最新版本的版本号 - if($this->cksign == 'update') { - $this->met_adl['oldver'] = $this->met_adl['ver']; - $this->met_adl['ver'] = self::app_update_ver(); - } - switch ($method) { - case 'check': - self::app_file_check(); - break; - case 'dl': - self::app_file_dl($step); - break; - case 'core': - self::app_file_core(); - break; - case 'repair': - self::app_file_repair(); - break; - case 'dlfile': - $this->method = 'dl'; - //单个文件下载并更新,只要返回的结果 - self::app_file_dl($step); - self::app_file_repair(); - $resmsg = $this->ac_appcore->resmsg(); - if($resmsg['key'] == 4) $this->ac_appcore->msgkey(1); - break; - case 'update': - case 'install': - //全新安装 - self::app_file_install(); - break; - - default: - break; - } - } - - # 检测应用版本是否存在 - public function app_file_check() { - global $_M; - //检测文件是否存在,删除缓存的file - if(file_exists($this->appupdir)){ - deldir($this->appupdir,1); - modifydirpower($this->appupdir,0777); - }else{ - modifydirpower($this->appfile,0777); - makedir($this->appupdir); - } - - //在这里查看文件是否存在 - $dir = str_replace(PATH_WEB,'',$this->appupdir); - if(!file_exists($this->appupdir)) return $this->ac_appcore->locmsg([4005,$dir]); - - //验证文件是否可写 - if(!getdirpower($this->appupdir)) return $this->ac_appcore->locmsg([4006,$dir]); - - //检查授权 - $statekey = self::statekey(); - if(empty($statekey)) return $this->ac_appcore->locmsg(4008); - - //获取下载指纹列表 - if(in_array($this->cksign,['install','update'])){ - $check = self::curljson(['adl' => $this->met_adl]); - if($check['code']){ - $dllist = $check['dllist']; - }else{ - return $this->ac_appcore->errmsg($check['errcode'],$check['errmsg']); - } - }else{ - $dllist = $this->ac_session->get('dllist'); - $this->ac_session->del('dllist'); - } - - if(count($dllist) > 0){ - //写入指纹文件 - $phpcode = json_encode(['dllist' => array_keys($dllist),'fingers' => $dllist ],JSON_UNESCAPED_UNICODE); - if(file_put_contents($this->appdllist,$phpcode) === false){ - $file = str_replace(PATH_WEB,'',$this->appdllist); - return $this->ac_appcore->locmsg([4007,$file]); - } - //返回开始下载文件 - $this->ac_appcore->modalmsg(self::modal(0,'dl'))->msgkey()->msgtext(4009); - }else{ - $this->ac_appcore->locmsg(4022); - } - - } - - # APP文件下载 - public function app_file_dl($step) { - global $_M; - //获取缓存信息 - $filelist = self::app_get_file(); - if(count($filelist['dllist']) == $step){ - $this->ac_appcore->modalmsg(self::modal($step,$this->cksign)) - ->msgkey() - ->msgtext(in_array($this->cksign,['install','update'])?4020:4013); - }else{ - set_time_limit(60); - //数据整理 - $this->met_adl['dirfile'] = $filelist['dllist'][$step]; - $this->met_adl['filehash'] = $filelist['fingers'][$this->met_adl['dirfile']]; - $file = self::curljson(['adl' => $this->met_adl]); - //处理结果 - if($file['code']){ - $dirfile = $this->appupfile.$this->met_adl['dirfile']; - if (stristr(PHP_OS, "WIN")) $dirfile = iconv("UTF-8","GBK", $dirfile); - if (!file_exists($dirfile)) makefile($dirfile); - - //写入文件 - $defile = base64_decode($file['file']); - if(file_put_contents($dirfile, $defile) == false && strlen($defile) > 0){ - $this->ac_appcore->locmsg([4021,$this->met_adl['dirfile']]); - }else{ - //检查指纹 - if($this->met_adl['filehash'] != md5_file($dirfile)){ - $this->ac_appcore->locmsg([4016,$this->met_adl['dirfile']]); - }else{ - $step++; - $text = floor((($step)/count($filelist['dllist']))*100)."%"; - $this->ac_appcore->modalmsg(self::modal($step))->msgkey()->msgtext([4010,$text]); - } - } - } else { - $this->ac_appcore->errmsg($file['errcode'],$file['errmsg']); - } - - } - } - - # 自动更新处理 - public function app_file_core() { - global $_M; - //进行文件移动覆盖,成功则返回相关信息 - if(movedir($this->appupfile, $this->appfile)){ - @clearstatcache(); - unset($this->modal['data']); - $this->ac_appcore->modalmsg(self::modal()) - ->msgkey(1) - ->msgtext(4014); - }else{ - $this->ac_appcore->locmsg(4017); - } - - } - - # 手动文件更新 - public function app_file_repair() { - global $_M; - //进行文件复制,成功则返回相关信息 - if(copydir($this->appupfile, $this->appfile)){ - @clearstatcache(); - unset($this->modal['data']); - $this->ac_appcore->modalmsg(self::modal()) - ->msgkey(1) - ->msgtext(4015); - }else{ - $this->ac_appcore->locmsg(4017); - } - } - - # 文件全新安装 - public function app_file_install() { - global $_M; - $bool = false; - //文件移动 - if(file_exists($this->appupfile)){ - $bool = movedir($this->appupfile, $this->appfile); - @clearstatcache(); - } - if($bool){ - //对升级文件处理 - self::_require(); - //检查安装锁 - !file_exists(INS_LOCK_FILE)?$this->ac_appcore->locmsg(4025):$this->ac_appcore->msgkey(1)->msgtext(4019); - }else{ - $this->ac_appcore->locmsg(4018); - } - } - - # 读取本地文件 - public function app_get_file() { - global $_M; - return file_exists($this->appdllist)?json_decode(file_get_contents($this->appdllist),true):[]; - } - - # 读取本地文件 - public function app_update_ver() { - global $_M; - $newapp = $this->ac_session->get('newapp'); - return $newapp['v_ver']; - } - - # 获取下载权限 - private function statekey() { - global $_M; - $state = false; - //解密 - $apikey = $this->ac_session->get('check'); - $retkey = (new curls($this->ac_appcore))->apikey_decode([$apikey,$this->met_adl['met_weburl'],$this->met_adl['m_name'],$this->met_adl['addtime']]); - //校验 - if(!empty($retkey['state'])){ - $state = true; - if($retkey['vatime']['minute'] > 0){ - //对有效时间计算 - $time = date('Y-m-d H:i:s',$retkey['vatime']['stime']); - if(strtotime("{$time} +{$retkey['vatime']['minute']} minute") <= time()) $state = false; - } - } - return $state; - } - - # 模态框数据 modal - private function modal($step = '',$method) { - global $_M; - if(strlen($step) > 0) $this->modal['data']['step'] = $step; - if(strlen($method) > 0) $this->modal['data']['method'] = $method; - $modal = $this->modal; - if(count($this->modal['data']) > 0) $modal['data'] = arrayto_string($modal['data'],'|'); - return $modal; - } - - # CURL - private function curljson($post = [],$type = false,$timeout = 60,$sign = 'dl') { - global $_M; - return (new curls($this->ac_appcore))->apiurl($this->method,$sign) - ->apipost($post) - ->curls($timeout) - ->resdata($type); - } - - # 文件导入 - private function _require() { - global $_M; - $dir = $this->appupdir.'/update.class.php'; - $para = []; - if(file_exists($dir)){ - $update = load::own_class('update/update','new'); - $update->set($this->met_adl)->start(); - } - //检测文件是否存在,删除缓存的file - $this->ac_appcore->del_update_dir(); - } -} - - -?> \ No newline at end of file + goto mQxA; qucn: define("\x41\120\120\137\125\120\x44\101\124\x45\137\104\x49\x52", PATH_APP_FILE . "\165\160\144\x61\164\145"); goto P0; F: define("\x49\116\123\137\x4c\x4f\103\x4b\137\106\x49\114\x45", PATH_APP_FILE . "\143\157\156\x66\151\x67\57\x69\156\x73\164\141\x6c\154\56\x6c\x6f\x63\153"); goto rwGbC; KqBP: class dirfinger { private $HkVz; private $P = []; private $zs = []; private $xFr = []; private $b8xIT = []; public function __construct() { goto TBxg; TBxg: global $_M; goto muVxA; D: $this->P = []; goto rcpd; rcpd: $this->zs = ["\143\157\156\x66\x69\x67\57\x69\x6e\x73\164\141\x6c\154\56\154\x6f\143\153", "\x63\x6f\156\x66\x69\x67\x2f\x75\x70\x64\141\x74\x65\x2e\154\x6f\143\153", "\x63\x6f\156\x66\151\x67\x2f\165\x6e\151\x6e\x73\x74\141\154\x6c\x2e\154\x6f\143\x6b", "\143\157\x6e\146\151\x67\57\x74\141\x62\x6c\x65"]; goto bcWhT; muVxA: $this->HkVz = PATH_APP_FILE; goto D; bcWhT: @clearstatcache(); goto NLNz; NLNz: } public function fingers($I8ER = []) { goto Ab4v; MGGT: return ["\x75\160\144\154\151\163\x74" => $this->xFr, "\x64\157\x77\x6c\151\x73\164" => $this->Nh, "\x64\x6c\154\151\163\164" => $this->b8xIT]; goto FALu; Ab4v: global $_M; goto NZts; NZts: self::fingerprint_check($I8ER); goto MGGT; FALu: } public function del_appfile($I8ER = [], $FBB = '') { goto aEA; GoDp6: $CdH = scandir($this->HkVz . $FBB); goto pfyT5; pfyT5: foreach ($CdH as $ZGj79) { goto dWBh; FONr: sE: goto RyDw; Vc1sf: goto DXVj; goto Oac; GQE: delfile($Rb4); goto DrbnZ; oNsm: $ZGj79 = iconv("\107\102\113", "\x55\124\106\55\x38", $ZGj79); goto FONr; zZLN: $Nkc = $Rb4; goto q8A; kKC: Nc6Hf: goto Jv; dWBh: $Rb4 = $FBB . $ZGj79; goto SSav; SSav: if (stristr(PHP_OS, "\x57\111\x4e")) { goto RWA; } goto zZLN; fFq: $Nkc = iconv("\107\x42\113", "\x55\x54\x46\x2d\70", $Rb4); goto oNsm; RyDw: if (!(in_array($Nkc, $this->zs) || in_array($ZGj79, $this->P))) { goto Nc6Hf; } goto R92; PN5n: if (array_key_exists($Nkc, $I8ER)) { goto zCert; } goto GQE; EgdZ: self::del_appfile($I8ER, $Rb4 . "\x2f"); goto Tva; Jv: if (is_dir($this->HkVz . $Rb4)) { goto onkO; } goto PN5n; Oac: onkO: goto EgdZ; q8A: goto sE; goto QVn3; Tva: DXVj: goto SrJJ; QVn3: RWA: goto fFq; DrbnZ: zCert: goto Vc1sf; R92: goto oG; goto kKC; SrJJ: oG: goto gCb3; gCb3: } goto HU4; aEA: global $_M; goto GoDp6; HU4: as: goto PlFC; PlFC: } private function fingerprint_check($w_Y = '') { goto FnR; qen: uZ5jr: goto XNK; FnR: global $_M; goto cceWB; cceWB: foreach ($w_Y as $qBWQ1 => $h_TY) { goto Fr9; u6rd: goto gB4; goto ljdW; fb4: $this->b8xIT[$qBWQ1] = $h_TY; goto u6rd; LgA: if (!(md5_file($Rb4) != $h_TY)) { goto wH; } goto TZjV; ijAm: if (file_exists($Rb4)) { goto uGox; } goto xsW; ljdW: uGox: goto LgA; TZjV: $this->xFr[$qBWQ1] = $h_TY; goto LY08; Fr9: $Rb4 = $this->HkVz . $qBWQ1; goto K0KhC; Kb_C8: gB4: goto YOXyI; YOXyI: uUzGs: goto NmQ2; s2tn: wH: goto Kb_C8; K0KhC: if (!stristr(PHP_OS, "\127\x49\x4e")) { goto q0u5; } goto Qc6; LY08: $this->b8xIT[$qBWQ1] = $h_TY; goto s2tn; eSv: q0u5: goto ijAm; Qc6: $Rb4 = iconv("\125\x54\106\55\x38", "\x47\102\113", $Rb4); goto eSv; xsW: $this->Nh[$qBWQ1] = $h_TY; goto fb4; NmQ2: } goto qen; XNK: } } goto flO; tNw: load::sys_class("\141\144\155\151\x6e"); goto Yk2a; vZ: class session { private $Myt = M_NAME; public function __construct() { global $_M; self::start(); } public function start() { goto RCJA; L57: session_start(); goto yr; Dg9g: session_id(md5($_SERVER["\110\124\x54\120\x5f\x55\123\105\x52\x5f\x41\107\x45\116\124"] . $this->Myt . $X_8I)); goto L57; RCJA: $X_8I = self::getip(); goto Dg9g; yr: } public function set($zYkkB, $o6bN) { self::start(); $_SESSION[$zYkkB] = $o6bN; } public function get($zYkkB) { self::start(); return $_SESSION[$zYkkB]; } public function del($zYkkB) { self::start(); unset($_SESSION[$zYkkB]); } public function getip() { goto dg; G4: if (isset($_SERVER["\122\105\x4d\x4f\x54\x45\x5f\101\104\104\x52"]) && $_SERVER["\122\105\x4d\x4f\x54\105\x5f\x41\104\x44\x52"] && strcasecmp($_SERVER["\122\x45\115\x4f\x54\x45\137\x41\x44\104\122"], $FNT)) { goto FQZ; } goto pY2; VDYK: FQZ: goto URvf; eZ: $X_8I = $RmQ[0]; goto De3; dg: $FNT = "\x75\156\x6b\x6e\x6f\167\x6e"; goto ND2; ND2: if (isset($_SERVER["\x48\124\124\120\137\130\x5f\106\x4f\122\127\x41\x52\104\x45\104\x5f\x46\117\122"]) && $_SERVER["\x48\x54\x54\x50\137\130\137\106\x4f\x52\x57\x41\122\x44\x45\104\137\106\117\122"] && strcasecmp($_SERVER["\110\124\124\120\137\130\x5f\106\x4f\x52\127\101\x52\104\x45\x44\137\x46\117\122"], $FNT)) { goto t; } goto G4; pY2: goto gyWi; goto IZVdK; De3: goto gyWi; goto VDYK; LBmq: return $X_8I; goto Cn2C; URvf: $X_8I = $_SERVER["\x52\105\x4d\x4f\124\x45\137\101\104\x44\x52"]; goto ji9c; ji9c: gyWi: goto LBmq; EJsJb: $RmQ = explode("\x2c", $_SERVER["\x48\x54\124\120\137\x58\137\x46\117\122\x57\x41\x52\x44\105\104\137\106\117\x52"]); goto eZ; IZVdK: t: goto EJsJb; Cn2C: } } goto KqBP; me7k: class curls { private $Xtuw; private $Dm = []; private $jG9c = []; private $w0fGs; private $gndX; private $g3_q; private $TEN = []; public function __construct($P4) { goto aAeI; TBX: $this->Xtuw = $P4; goto yKV; Uv01: $this->TEN = ["\x4d\105\124\127\105\x42\125\122\x4c\x3a" . $_M["\x63\157\156\146\151\x67"]["\x6d\145\x74\x5f\x77\145\142\165\x72\154"], "\101\x55\124\x48\x4f\122\111\132\x41\x54\111\x4f\116\72" . $this->g3_q]; goto Lzz6; yKV: $this->Dm = ["\143\x6b" => "\x68\164\164\x70\x73\x3a\x2f\57\141\x70\x70\x2e\155\x75\142\141\x6e\x2e\x6e\x65\x74\x2e\143\156\57\141\x70\151\57\x61\160\x70\143\x68\x65\x63\153\x2e\160\150\160\x3f\x61\x3d\144\x6f", "\144\x6c" => "\150\x74\x74\160\163\x3a\x2f\x2f\141\x70\x70\56\155\x75\x62\x61\x6e\56\156\145\x74\56\143\156\57\141\160\151\57\144\157\x77\156\x6c\x6f\141\x64\56\x70\150\160\77\141\75\x64\x6f", "\167\170" => "\150\164\x74\x70\163\x3a\57\x2f\141\160\160\x2e\155\x75\x62\141\x6e\56\x6e\x65\164\x2e\143\156\x2f\x61\160\x69\57\x77\145\x63\150\x61\x74\56\160\150\160\x3f\x61\75\144\157"]; goto WJUs8; WJUs8: $this->g3_q = md5($_M["\143\157\x6e\x66\x69\x67"]["\155\x65\x74\x5f\x77\x65\x62\x75\162\154"]); goto Uv01; aAeI: global $_M; goto TBX; Lzz6: } public function apiurl($Ycn, $EwKBY = "\143\x6b") { goto J6G; J6G: global $_M; goto WH5; ywQX: return $this; goto ma6C; WH5: $this->jG9c = $this->Dm[$EwKBY] . $Ycn; goto Is; Is: $this->w0fGs = self::purl($this->jG9c, "\163\143\x68\x65\155\145"); goto ywQX; ma6C: } public function apipost($BN3, $gnMa = true) { goto kujA; cr9y: $this->gndX = $BN3; goto Puv; LR2: return $this; goto kDq7; kujA: global $_M; goto cr9y; ZokQ7: self::auth_encode(); goto jrT; jrT: VcAE: goto LR2; Puv: if (!$gnMa) { goto VcAE; } goto ZokQ7; kDq7: } public function auth_encode($qBWQ1 = null) { goto KiKAt; PB: $this->g3_q = $qBWQ1; goto YFe; KiKAt: global $_M; goto VEgY; VG2: return $this; goto AYV; VEgY: if (empty($qBWQ1)) { goto IYw; } goto PB; N1: self::arrjson(false); goto n74q; n74q: CEWw: goto or4; YFe: IYw: goto T; or4: $this->gndX = authcode($this->gndX, "\x45\x4e\103\117\104\x45", $this->g3_q); goto VG2; T: if (!is_array($this->gndX)) { goto CEWw; } goto N1; AYV: } public function curls($nuMw = 15) { goto LJEV; JYiWR: curl_setopt($Svzj, CURLOPT_HTTPHEADER, $this->TEN); goto oO4; wNcI: curl_setopt($Svzj, CURLOPT_CONNECTTIMEOUT, $nuMw); goto w7; isp: bsx: goto fRa; HSc: curl_setopt($Svzj, CURLOPT_URL, $this->jG9c); goto EcU9; TS91: FQas: goto UWaYf; lR: goto FQas; goto ZD; UWaYf: return $this; goto VJA; qUTs: curl_setopt($Svzj, CURLOPT_SSL_VERIFYPEER, false); goto rJX7; xqwa7: curl_setopt($Svzj, CURLOPT_RETURNTRANSFER, 1); goto wNcI; sq: if (get_extension_funcs("\x63\165\x72\x6c") && function_exists("\143\x75\162\154\x5f\x69\156\151\164") && function_exists("\143\165\162\154\x5f\x73\145\x74\157\160\x74") && function_exists("\143\x75\162\154\137\x65\x78\x65\x63") && function_exists("\x63\x75\x72\154\137\x63\x6c\157\163\145")) { goto sypN; } goto NF; hDap: curl_setopt($Svzj, CURLOPT_POSTFIELDS, ["\x64\145\156\x73\x65" => $this->gndX]); goto lf6; LJEV: global $_M; goto sq; NF: $this->gndX = $this->Xtuw->codemsg(4000)->coderes(false); goto lR; w7: curl_setopt($Svzj, CURLOPT_TIMEOUT, $nuMw); goto aOwbm; Q0OR: $MNDD = curl_getinfo($Svzj, CURLINFO_HTTP_CODE); goto Q1pca; aOwbm: curl_setopt($Svzj, CURLOPT_POST, 1); goto hDap; fRa: curl_setopt($Svzj, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); goto LGEr; tJs2: curl_close($Svzj); goto UhlA; ZD: sypN: goto dYWe; UhlA: $this->gndX = empty($ka) ? $kG : $this->Xtuw->codemsg(4011, "{$MNDD}\55{$ka}")->coderes(false); goto TS91; Q1pca: $ka = curl_errno($Svzj); goto tJs2; EcU9: if (!($this->w0fGs === "\150\164\164\x70\163")) { goto bsx; } goto qUTs; LGEr: curl_setopt($Svzj, CURLOPT_REFERER, $_SERVER["\110\x54\x54\x50\137\x48\117\123\124"]); goto JYiWR; oO4: curl_setopt($Svzj, CURLOPT_FAILONERROR, 1); goto xqwa7; lf6: $kG = curl_exec($Svzj); goto Q0OR; dYWe: $Svzj = curl_init(); goto HSc; rJX7: curl_setopt($Svzj, CURLOPT_SSL_VERIFYHOST, false); goto isp; VJA: } public function auth_decode($qBWQ1 = null) { goto ef; ef: global $_M; goto oy; qa3b: drx: goto aPZ; AZ5: $this->g3_q = $qBWQ1; goto qa3b; Ss: return $this; goto bvv; aPZ: $this->gndX = authcode($this->gndX, "\x44\x45\x43\x4f\104\x45", $this->g3_q); goto Ss; oy: if (empty($qBWQ1)) { goto drx; } goto AZ5; bvv: } public function arrjson($EwKBY = true) { goto eDZ; eDZ: global $_M; goto h3U5; GTW: return $this; goto d8iPY; h3U5: $this->gndX = $EwKBY ? json_decode($this->gndX, true) : json_encode($this->gndX, JSON_UNESCAPED_UNICODE); goto GTW; d8iPY: } public function resdata($EwKBY = false) { goto trKj6; trKj6: global $_M; goto RAwA; RAwA: if (!($EwKBY == false)) { goto GiJO; } goto iws7V; G3t: return $this->gndX; goto wC7; IHN: GiJO: goto G3t; iws7V: self::arrjson(); goto IHN; wC7: } public function postr($BN3 = null, $qBWQ1 = null, $EwKBY = true) { goto q3q2Y; BqMr: VlK: goto CRK; CRK: self::auth_encode($qBWQ1); goto WGB; WGB: sLU: goto Dcf; Hs: self::apipost($BN3, false); goto jR0; jR0: if ($EwKBY) { goto VlK; } goto mWa; UCTG: goto sLU; goto BqMr; mWa: self::auth_decode($qBWQ1); goto UCTG; Dcf: return $this; goto mwv; q3q2Y: global $_M; goto Hs; mwv: } public function apikey_decode($qkEK = []) { goto oV; F6O: $qbL = self::purl($qbL); goto Qx; Qx: return self::postr($uG4r, md5($qbL . md5($zC2 . $EhW4)), false)->resdata(); goto xr; oV: global $_M; goto mnn; mnn: list($uG4r, $qbL, $zC2, $EhW4) = $qkEK; goto F6O; xr: } public function purl($Eu0, $EwKBY = "\150\157\163\164") { goto ZTP; ZTP: global $_M; goto P2Qi; zL: return $EwKBY == "\x61\x72\162" ? $G03 : $G03[$EwKBY]; goto dX9Bb; P2Qi: $Eu0 = url_standard($Eu0); goto ecZB; ecZB: $G03 = parse_url($Eu0); goto zL; dX9Bb: } } goto vZ; mQxA: defined("\111\116\x5f\115\x45\x54") or exit("\x4e\x6f\x20\160\145\162\155\151\x73\x73\x69\157\156"); goto tNw; Yk2a: load::sys_func("\x66\x69\x6c\x65"); goto F; P0: class index extends admin { private $xh5W; private $b4Eca; private $QE8; private $O0CW; private $time; public function __construct() { goto DPl; c1f: $this->O0CW = $this->b4Eca->get_app_url(); goto igm; ToD3: $this->time = time(); goto skxN; DPl: global $_M; goto X4; X4: parent::__construct(); goto ToD3; skxN: $this->b4Eca = new appcore(); goto c1f; igm: } public function doindex() { goto b25W; KGHBb: goto KG; goto TCab0; TCab0: xiva: goto i; i: define("\x43\110\105\103\113\137\111\124\x45\x4d", "\163\145\162\x76\x65\162\174\x73\x79\x73\164\x65\155\x7c\x61\x63\143\x72\145\x64\x69\164\x7c\141\x70\x70\146\151\x6c\x65\x7c\167\x65\161\162\x63\157\x64\145\174\x61\x70\160\143\150\145\143\153"); goto s_r; b25W: global $_M; goto ID; cN7Za: turnover($this->O0CW, "\116\157\x20\x70\162\157\155\x70\164"); goto Ypu; ssdu: u6D: goto KTxZ; aZ6m: $this->gOIA["\141\160\160"]["\151\143\157\x6e"] = $_M["\165\162\154"]["\x61\160\160"] . M_NAME . "\57\x69\143\157\x6e\x2e\x70\156\147"; goto V0L; jsox5: YOyM: goto Na; V0L: $this->gOIA["\x61\160\x70"]["\141\160\160\156\141\155\x65"] = get_word($this->gOIA["\x61\160\x70"]["\141\x70\x70\x6e\x61\155\145"]); goto pke; ID: if (!file_exists(INS_LOCK_FILE) || $_M["\146\x6f\162\x6d"]["\143\150\x65\x63\x6b"]) { goto YOyM; } goto cN7Za; rUMq: $this->gOIA["\x63\153\151\x74\x65\x6d"] = CHECK_ITEM; goto eWR; Ypu: goto u6D; goto jsox5; pke: $this->gOIA["\141\x70\160"]["\141\x64\x64\x74\x69\x6d\145"] = date("\131\55\x6d\x2d\x64\x20\110\x3a\x69\x3a\163", $this->gOIA["\141\160\x70"]["\x61\x64\144\x74\x69\155\145"]); goto RCR; RCR: if (!file_exists(INS_LOCK_FILE) || file_exists(UPD_LOCK_FILE)) { goto xiva; } goto o3; o3: define("\103\x48\105\x43\113\x5f\x49\x54\105\115", "\163\145\x72\166\x65\162\x7c\x73\171\163\x74\x65\155\174\141\x63\x63\162\x65\144\x69\164\x7c\x61\160\x70\x66\x69\x6c\x65\x7c\167\x65\161\x72\x63\157\x64\145\x7c\x75\160\144\x61\x74\145\x7c\x61\160\x70\x63\x68\145\x63\x6b"); goto KGHBb; eWR: require $this->show("\141\x70\160\x2f\151\156\144\x65\x78", $this->gOIA); goto ssdu; s_r: KG: goto rUMq; Na: $this->gOIA["\x61\160\x70"] = $this->b4Eca->met_app(); goto aZ6m; KTxZ: } public function doappcheck() { goto epym; yNt6s: $this->xh5W = $_M["\146\x6f\162\155"]["\164\171\x70\145"]; goto xJBiH; xJBiH: if (!($this->xh5W == "\x73\x65\162\166\x65\162")) { goto niyb; } goto Hcmkx; epym: global $_M; goto ADk; up3IK: self::{$this->xh5W}(); goto p3; p3: self::result(); goto ifk; ifk: echo $this->b4Eca->resmsg(false); goto Ekv9; Hcmkx: self::del_cache(); goto rF4; rF4: niyb: goto up3IK; ADk: $this->QE8 = new session(); goto yNt6s; Ekv9: } public function download() { goto gT; vPvw: echo $this->b4Eca->resmsg(false); goto WCi; gT: global $_M; goto Ji; Ji: (new download($this->b4Eca))->download($_M["\146\157\x72\155"]["\144\141\x74\x61"]); goto vPvw; WCi: } public function domodal() { goto ktH; kfeO: ZPbn: goto vzW6; arxQ: $this->QE8 = new session(); goto MfV; MfV: switch ($_M["\x66\157\162\155"]["\164\x79\160\145"]) { case "\141\160\x70\x66\x69\154\145": $uXKQ = self::appfile_modal(); goto ZPbn; case "\167\x65\161\162\x63\x6f\144\145": $uXKQ = self::weqrcode_modal(); goto ZPbn; case "\167\145\x63\150\141\x74": $uXKQ = self::wechat_modal(); goto ZPbn; case "\165\160\x64\141\164\x65": $uXKQ = self::update_modal(); goto ZPbn; default: goto ZPbn; } goto Vlg7; ktH: global $_M; goto arxQ; Vlg7: JAsO6: goto kfeO; vzW6: echo $this->b4Eca->jsoncallback($uXKQ); goto uIyE; uIyE: } public function doajax() { goto E1x; uJu: $uk0 = strtotime("{$FzDQ}\x20\53{$uyXv0["\166\x61\x74\151\155\x65"]["\155\151\x6e\165\x74\145"]}\x20\x6d\151\x6e\x75\x74\x65"); goto oUNK; Kac: $xpB1 ? $this->b4Eca->msgkey(1)->msgmeet($fuo, true) : $this->b4Eca->locmsg(4012); goto OKf2G; UJz: if (!$xzFRo) { goto SZs; } goto J6KD; s: $FzDQ = date("\131\55\x6d\55\144\40\110\72\x69\x3a\163", $uyXv0["\166\x61\164\x69\155\x65"]["\163\164\x69\x6d\145"]); goto uJu; Zde: $J5o = stringto_array(CHECK_ITEM, "\x7c"); goto JS6T; cDk: $p["\145\x78\x65\164\151\155\145"] = $this->time; goto IVn; FHV: $BN3 = $this->b4Eca->met_all(); goto T0Dd; Sqli: if ($_M["\146\x6f\x72\155"]["\163\151\147\x6e"] == "\x61\160\160\143\150\145\x63\x6b") { goto Z9p; } goto B6R; Tdya: $fuo = "\x3c\141\x20\150\162\x65\146\x3d\x22" . $this->O0CW . "\x22\40\x63\x6c\141\x73\163\75\42\x62\164\156\x20\x62\164\x6e\x2d\x73\165\143\x63\x65\x73\x73\x22\x20\76\350\277\233\xe5\x85\245\345\xba\x94\xe7\x94\xa8\74\x2f\141\76"; goto oZ1O; J6KD: if (!($uyXv0["\166\141\164\151\x6d\x65"]["\155\151\x6e\x75\164\145"] > 0)) { goto o7o; } goto s; iX: $xpB1 = true; goto d913; v5gF: o7o: goto eSC; inf9w: if (empty($mPmN)) { goto SK0; } goto kIZo; Y: Z9p: goto L0sx; IQr: $fuo = "\xe7\x89\x88\346\x9c\xac\xe5\217\267\357\274\x9a{$iAgi[$uyXv0["\x61\x70\160"]["\166\137\x76\x65\162\164\x79\160\145"]]}\56{$uyXv0["\141\160\x70"]["\x76\x5f\166\x65\162"]}"; goto G2o; eSC: $xpB1 = $xzFRo && !empty($mPmN["\167\145\143\150\x61\164"]) && !empty($mPmN["\x75\160\144\141\164\145"]) ? true : false; goto s6Ekw; B6R: $this->QE8 = new session(); goto PEKu; s6Ekw: SZs: goto atW; SVRYQ: $this->xh5W = "\x63\150\145\143\153"; goto Cth; oUNK: if (!($uk0 <= $this->time)) { goto W2jh; } goto kyx; Q0tW: hKB6: goto Tdya; MEeJ: $uk0 = date("\x59\x2d\155\55\144\x20\110\x3a\151\72\x73", $uk0); goto h7c; n_V6: IkN0: goto LtkQ; kyx: $xzFRo = false; goto D4n4; XOa: $mPmN = (new curls($this->b4Eca))->postr($p, '', false)->resdata(); goto FHV; kIZo: $uyXv0 = (new curls($this->b4Eca))->apikey_decode([$mPmN["\x63\x68\145\143\153"], $BN3["\167\x65\142"]["\155\145\164\137\167\145\142\x75\162\154"], $BN3["\141\160\160"]["\155\x5f\156\141\155\x65"], $BN3["\141\160\x70"]["\x61\x64\x64\x74\x69\155\145"]]); goto iGWO; czLy: $this->b4Eca->mysql_config(["\x61\x63\x5f\x63\141\x63\150\145", $p], false); goto Kac; pnn3B: $mPmN = ["\164\x69\155\x65" => strtotime("{$FzDQ}\40\53\61\x20\x64\141\171"), "\143\150\x65\x63\153" => $ow->get("\143\150\145\143\x6b"), "\x77\145\143\150\141\x74" => (int) $ow->get("\167\145\143\x68\141\164"), "\x75\x70\x64\x61\x74\145" => (int) $ow->get("\x75\160\x64\x61\x74\x65")]; goto bHy6; JS6T: if (in_array(0, $jVY)) { goto IkN0; } goto iX; PEKu: self::del_cache(); goto ltzVl; ltzVl: $p = $this->b4Eca->mysql_config(array("\x61\x63\x5f\x63\141\143\150\145")); goto XOa; nLRT: goto xkYy; goto Y; Chyv: fVg: goto Gy0; iGWO: $xzFRo = $uyXv0["\163\164\x61\164\x65"] && $uyXv0["\141\x70\160"]["\x76\x5f\x6d\x5f\156\x61\x6d\145"] == M_NAME ? true : false; goto UJz; atW: SK0: goto BEQJ6; LtkQ: $ow->del("\x63\153\x69\164\x65\155"); goto JEe3; Gy0: B3vi: goto nLRT; g8P: IcA: goto inf9w; T0Dd: if (!(empty($p) || $mPmN["\x74\151\x6d\x65"] < strtotime("\53\x31\x20\150\x6f\165\x72"))) { goto HrTe; } goto SVRYQ; x: $xpB1 = false; goto Sqli; BEQJ6: if (!$xpB1) { goto B3vi; } goto wu; E1x: global $_M; goto x; h7c: $fuo .= "\x20\x20\xef\xbc\x88{$uk0}\xef\274\211"; goto Chyv; Cth: $DUsKS = self::curljson($BN3, false, 25); goto woZ3; OKf2G: echo $this->b4Eca->resmsg(false); goto ytX; Z6EeJ: if (!file_exists(UPD_LOCK_FILE)) { goto IcA; } goto hr; D4n4: W2jh: goto v5gF; RGn: $ow = new session(); goto pnn3B; bHy6: $jVY = $ow->get("\143\153\151\x74\145\155"); goto Zde; JEe3: xkYy: goto cDk; G2o: if (!($uyXv0["\x76\141\x74\151\155\145"]["\155\151\156\x75\164\x65"] > 0)) { goto fVg; } goto MEeJ; wu: $iAgi = ["\131", "\123", "\x44"]; goto IQr; z9f: goto sAWU0; goto Q0tW; oZ1O: sAWU0: goto n_V6; d913: if (file_exists(INS_LOCK_FILE)) { goto hKB6; } goto RfbL; IVn: $p = (new curls($this->b4Eca))->apipost($mPmN)->resdata(true); goto czLy; woZ3: $mPmN = $DUsKS["\x63\x6f\x64\145"] ? $DUsKS["\143\x61\143\x68\145"] : []; goto nf8; hr: $mPmN["\x75\160\144\x61\x74\145"] = 1; goto g8P; RfbL: $fuo = "\x3c\142\165\164\x74\x6f\x6e\x20\164\171\x70\145\75\x22\142\x75\x74\x74\157\156\42\x20\x63\154\141\163\163\75\42\x62\x74\x6e\x20\142\164\156\x2d\151\x6e\146\x6f\x20\141\x70\x70\151\x6e\163\x74\x61\x6c\154\42\76\xe5\xae\x89\350\243\205\345\xba\x94\347\x94\xa8\74\x2f\142\165\x74\164\157\156\x3e"; goto z9f; nf8: HrTe: goto Z6EeJ; L0sx: $FzDQ = date("\x59\55\155\55\144\x20\110\x3a\x69\72\x73", $this->time); goto RGn; ytX: } protected function server() { goto KBIr3; mFVAS: $this->QE8->set("\141\x70\x70\x6c\151\x73\x74", $CgIU["\x61\160\x70\x6c\x69\163\x74"]); goto rFew; rFew: $this->QE8->set("\x73\x79\163\164\145\155", $CgIU["\x73\x79\163\x74\145\155"]); goto Nm; KBIr3: global $_M; goto Ek; EdQ: AxDp: goto q5Cc; d8: $this->b4Eca->errmsg($CgIU["\145\162\x72\x63\x6f\x64\x65"], $CgIU["\145\162\x72\155\163\147"]); goto qLnv; K: if ($CgIU["\x63\157\x64\x65"]) { goto AxDp; } goto d8; Ek: $CgIU = self::curljson($this->b4Eca->met_web_app()); goto K; q5Cc: $this->b4Eca->sucmsg($CgIU["\164\x65\170\164"]); goto SQcy3; SQcy3: KdH: goto mFVAS; qLnv: goto KdH; goto EdQ; Nm: } protected function system() { goto ql3U; YQa: $aH69 = $this->QE8->get("\163\171\163\x74\x65\155"); goto xWmF; S3qL: $this->QE8->del("\x73\x79\x73\x74\145\x6d"); goto qr0U; pmIn: $this->b4Eca->vagmsg($nQoo && $RwB ? 1 : 0, $hN); goto S3qL; HAvh: $hN = [[$RwB, $aH69["\160\x68\x70\x76\x65\x72"]["\164\145\x78\x74"]], [$nQoo, $aH69["\x6d\145\164\166\145\x72"]["\x74\x65\x78\164"]]]; goto pmIn; ql3U: global $_M; goto YQa; xWmF: $nQoo = $aH69["\x6d\x65\164\166\145\x72"]["\x63\157\x64\145"]; goto gWyq; gWyq: $RwB = $aH69["\x70\150\x70\x76\145\x72"]["\143\157\144\x65"]; goto HAvh; qr0U: } protected function accredit() { goto LLyx; Kat3: $tHAM = self::curljson($BN3, false, 20); goto lrO5; NkL3M: $this->b4Eca->errmsg($tHAM["\145\x72\x72\143\x6f\x64\145"], $tHAM["\x65\162\x72\155\x73\147"]); goto EWlbt; FpZ4: $uG4r = (new curls($this->b4Eca))->apikey_decode([$tHAM["\x63\x6f\144\x65\x6b\145\x79"], $BN3["\x77\145\142"]["\155\145\164\137\167\145\x62\165\162\154"], $BN3["\141\160\x70"]["\155\137\156\x61\x6d\x65"], $BN3["\141\x70\x70"]["\x61\144\144\x74\x69\x6d\x65"]]); goto hA9; RjB: $BN3 = $this->b4Eca->met_web_app(); goto Kat3; G: $uG4r["\x73\x74\x61\x74\145"] ? $this->b4Eca->sucmsg($tHAM["\x74\x65\x78\x74"] . $hN) : $this->b4Eca->locmsg(4024); goto kdpsB; lrO5: if ($tHAM["\x63\x6f\144\x65"]) { goto VvDqC; } goto NkL3M; h3: r7: goto G; EWlbt: goto t3Q; goto ClV2; LLyx: global $_M; goto RjB; cO: $this->QE8->set("\x63\150\145\143\x6b", $tHAM["\143\157\x64\x65\153\x65\x79"]); goto NvcAW; hA9: if (!(!empty($uG4r["\x73\164\141\x74\x65"]) && $uG4r["\x76\x61\x74\151\x6d\145"]["\155\151\156\x75\164\145"] > 0)) { goto r7; } goto LHG; LHG: $FzDQ = date("\x59\55\x6d\x2d\x64\x20\x48\72\x69\72\x73", $uG4r["\x76\141\x74\151\155\145"]["\163\x74\x69\155\145"]); goto ybK; kdpsB: t3Q: goto cO; ClV2: VvDqC: goto FpZ4; ybK: $hN = "\344\xbd\x93\xe9\xaa\214\xe7\xbb\223\xe6\x9d\x9f\346\x97\xb6\351\227\264\xef\274\232" . date("\x59\55\x6d\x2d\x64\40\x48\72\151\x3a\x73", strtotime("{$FzDQ}\x20\53{$uG4r["\166\x61\164\151\x6d\x65"]["\155\151\156\165\164\145"]}\40\x6d\151\x6e\165\x74\x65")); goto h3; NvcAW: } protected function appfile() { goto NZNvz; fYs: $WitF = $this->QE8->get("\141\x70\160\x66\151\x6c\145"); goto TJYE; xNfGm: return $this->b4Eca->newres()->modalmsg($uXKQ, 4001); goto q1k; RXRo: $this->QE8->del("\162\145\x70\x61\x69\x72"); goto ZhiH; a6aN: $uXKQ["\163\x75\x63"] = false; goto X5; DSQWs: pa: goto i8zkG; Rum: naI: goto Dt5l; b2C: if (!(count($M48cT["\144\x6c\154\151\163\x74"]) > 0)) { goto BmHV; } goto nvkv; FBpKo: $uG = count($I8ER["\x64\x6c\x6c\x69\x73\164"]) == 0 ? 1 : 0; goto HyO; nvkv: $this->QE8->set("\144\x6c\x6c\151\163\164", $M48cT["\x64\154\154\x69\163\x74"]); goto JM3; J29KX: $this->QE8->del("\x72\x65\x70\141\151\162"); goto fYs; BGDZ: $I8ER = $xvnD->fingers($WitF["\x66\151\x6e\x67\x65\x72\x73"]); goto fyBW; BYQ: return $this->b4Eca->modalmsg($uXKQ, [4002, $hN]); goto Zs; NZNvz: global $_M; goto J29KX; q1k: BmHV: goto BGDZ; aWsJ: $M48cT = $xvnD->fingers($WitF["\x63\x6f\x72\x65\154\x69\163\164"]); goto b2C; aN9: $uXKQ = ["\163\x75\x63" => true, "\x74\x69\x74\154\145" => "\345\272\x94\xe7\x94\xa8\346\x96\207\344\273\xb6\344\xbf\256\xe5\xa4\x8d", "\x62\157\144\171" => "\74\144\x69\x76\40\x63\x6c\141\163\163\x3d\x22\164\145\170\x74\55\x78\x73\55\143\x65\156\x74\x65\x72\42\76\x3c\151\x20\143\154\141\163\163\x3d\x22\154\x6f\141\144\x65\x72\x20\166\145\162\x74\x69\x63\141\x6c\55\141\x6c\x69\147\x6e\55\x6d\151\144\144\154\145\x20\154\157\141\144\x65\x72\x2d\x65\x6c\x6c\151\x70\x73\151\163\42\76\x3c\57\151\x3e\74\x2f\144\151\166\76", "\165\162\x6c" => $_M["\x75\x72\x6c"]["\157\x77\x6e\137\x66\157\162\x6d"] . "\x61\75\x64\x6f\x6d\157\144\141\154\46\x74\171\x70\145\x3d\141\160\160\146\x69\154\145"]; goto MYl; wkD5: if ($WitF["\x63\x6f\x64\x65"]) { goto M; } goto YtE; j1Xw: $this->QE8->set("\144\154\154\x69\x73\x74", $I8ER["\x64\154\x6c\151\x73\164"]); goto xPIt; TJYE: if ($WitF) { goto naI; } goto B4Eq; fyBW: $P5T = (int) file_exists(INS_LOCK_FILE); goto FBpKo; HyO: if (!(!$P5T || $uG)) { goto pa; } goto RXRo; SF: $this->QE8->set("\x61\x70\160\146\151\x6c\145", $WitF); goto SnJ6; MYl: $hN = "\74\x61\40\x68\162\x65\x66\x3d\42\x6a\141\166\x61\163\143\x72\x69\160\164\72\73\x22\40\144\141\164\x61\x2d\164\141\x72\147\x65\x74\75\x22\43\141\160\160\155\157\144\141\x6c\42\x20\144\141\164\x61\x2d\x74\x6f\x67\147\154\145\75\x22\155\x6f\x64\x61\154\x22\x20\x64\141\x74\141\x2d\164\171\x70\145\75\42\x61\160\160\146\151\x6c\145\42\76\344\xbf\256\xe5\244\215\345\xbc\202\345\270\xb8\xe6\x96\207\344\273\266\74\57\x61\x3e"; goto BYQ; JM3: $uXKQ = $this->b4Eca->msgkey()->msgtext(4004)->resmsg(); goto a6aN; B4Eq: $WitF = self::curljson($this->b4Eca->met_web_app()); goto wkD5; Dt5l: $xvnD = new dirfinger(); goto aWsJ; YtE: return $this->b4Eca->errmsg($WitF["\145\x72\162\x63\157\144\x65"], $WitF["\x65\162\162\x6d\163\x67"]); goto py; ZhiH: $this->QE8->del("\141\x70\x70\146\151\x6c\x65"); goto Jr3f; Zs: NdS: goto Jb; X5: $uXKQ["\144\141\x74\x61"] = "\x63\157\x72\145\x7c\x63\x68\145\x63\153"; goto xNfGm; t7AZ: return $this->b4Eca->sucmsg()->msgtext(4003); goto DSQWs; i8zkG: if (!(count($I8ER["\x64\x6c\x6c\151\x73\164"]) > 0)) { goto NdS; } goto j1Xw; py: goto SJ; goto xj; SnJ6: SJ: goto Rum; xj: M: goto SF; xPIt: $this->QE8->set("\x72\x65\160\x61\x69\162", $I8ER); goto aN9; Jr3f: $this->b4Eca->del_update_dir(); goto t7AZ; Jb: } protected function weqrcode() { goto s6e; TNVhi: $hN = "\74\x61\x20\x68\162\145\146\75\x22\152\x61\166\141\x73\x63\x72\151\160\x74\x3a\x3b\42\x20\144\x61\164\141\55\164\141\162\x67\x65\x74\x3d\42\x23\x61\160\160\x6d\157\x64\141\x6c\x22\40\144\x61\164\141\x2d\164\x6f\x67\x67\x6c\145\x3d\42\155\157\x64\141\x6c\42\40\144\x61\164\141\55\x74\171\x70\x65\75\42\x77\x65\x71\162\x63\157\144\x65\42\76\xe5\x85\263\xe6\xb3\250\345\x85\xac\344\xbc\227\xe5\x8f\267\74\x2f\141\76"; goto RHJ; FTdpB: PbX6h: goto aksrg; nZ9E: goto z6; goto J4G; J4G: jKEQF: goto CtN; duZ: if ($vFgdu["\143\157\144\x65"]) { goto jKEQF; } goto N4VOW; IYDS: z6: goto QM_n; x4O: sleep(1); goto FTdpB; Wa: $uXKQ = ["\x73\x75\143" => true, "\x74\x69\164\154\x65" => "\345\205\xb3\xe6\xb3\250\xe5\276\xae\xe4\xbf\241\345\x85\xac\xe4\xbc\227\xe5\217\xb7", "\x62\x6f\x64\171" => "\x3c\x64\x69\166\x20\x63\x6c\141\x73\x73\x3d\x22\164\145\170\164\x2d\170\163\55\143\145\x6e\164\x65\x72\42\x3e\x3c\151\40\x63\x6c\141\x73\x73\75\42\154\157\141\144\x65\x72\x20\166\x65\x72\x74\x69\x63\141\x6c\55\x61\154\151\147\x6e\55\155\151\144\x64\154\x65\x20\x6c\157\x61\x64\145\x72\55\x65\x6c\154\151\x70\163\151\x73\42\x3e\74\57\151\76\x3c\57\144\151\166\76", "\x75\x72\x6c" => $_M["\165\162\154"]["\x6f\167\x6e\x5f\146\157\162\x6d"] . "\141\x3d\144\x6f\x6d\157\x64\x61\154\x26\x74\x79\x70\145\x3d\167\145\x71\x72\x63\x6f\144\145"]; goto TNVhi; Vk5ws: $iMFj = $this->QE8->get("\x77\145\143\x68\x61\164"); goto LuFHu; aksrg: $vFgdu = self::curljson($this->b4Eca->met_all()); goto duZ; iRyn: $this->b4Eca->sucmsg($vFgdu["\164\x65\170\164"]); goto RGO; QM_n: $this->QE8->set("\x77\145\143\x68\141\x74", $vFgdu["\x77\170"]["\x6b\x65\171"]); goto CU11n; RGO: Ga: goto IYDS; CtN: if ($vFgdu["\167\170"]["\153\145\x79"] == 1) { goto fC8; } goto Wa; LgND: fC8: goto iRyn; RHJ: $this->b4Eca->modalmsg($uXKQ)->sucmsg($vFgdu["\x77\x78"]["\162\x65\x74"]["\151\156\x66\157"] . $hN, $vFgdu["\x77\x78"]["\x6b\145\x79"]); goto JA4; N4VOW: $this->b4Eca->errmsg($vFgdu["\145\162\162\x63\x6f\x64\x65"], $vFgdu["\x65\x72\162\x6d\163\x67"]); goto nZ9E; s6e: global $_M; goto Vk5ws; JA4: goto Ga; goto LgND; LuFHu: if (!($iMFj !== '')) { goto PbX6h; } goto x4O; CU11n: } protected function update() { goto xxJ; SCniN: $fUY = 1; goto D9V; D9V: $this->b4Eca->errmsg($qJGHr["\145\x72\162\143\x6f\x64\x65"], $qJGHr["\x65\x72\x72\155\x73\147"]); goto cfU; t3qZ8: $this->QE8->del("\144\x6c\x6c\x69\163\x74"); goto hnZX; Jtcqg: $TXP = count($qJGHr["\156\145\167\141\x70\160"]["\166\x5f\x70\150\160\x76\x65\x72"]) == 1 ? "\346\x9c\200\xe4\275\x8e" : ''; goto j8bj; m4tq: return $this->b4Eca->sucmsg($qJGHr["\x74\x65\x78\x74"]); goto Qcup; O: $nQoo = arrayto_string($qJGHr["\156\145\167\x61\x70\x70"]["\x76\137\155\x65\x74\x76\145\162"], "\x20\55\x2d\x20"); goto Jtcqg; dkC: $hN = "\74\x64\151\166\40\x63\x6c\x61\163\x73\x3d\x27\x70\x2d\x6c\55\x31\60\x27\x3e\12\x20\x20\x20\x20\40\x20\x20\40\40\40\40\x20\40\x20\40\40\x20\40\40\x20\x20\x20\x20\40\40\40\x20\x20\x3c\150\x35\x3e" . $qJGHr["\156\x65\x77\141\160\160"]["\166\x5f\x76\145\x72"] . "\40\347\211\x88\346\x9c\254\347\216\xaf\xe5\242\203\xe8\246\x81\346\xb1\202\357\274\232\74\x2f\x68\x35\76\xa\40\40\x20\x20\40\x20\x20\x20\x20\40\40\40\40\x20\x20\40\40\40\40\x20\40\x20\x20\40\x20\x20\x20\40\74\x6f\154\x3e\x3c\x6c\151\76\xe5\xba\x94\347\x94\250" . $TXP . "\346\x94\xaf\xe6\x8c\201\x50\110\120\40" . $RwB . "\x20\347\x89\x88\xe6\x9c\254\x3b\x3c\57\x6c\x69\x3e\x3c\154\x69\x3e\xe5\xba\224\347\x94\xa8" . $FvbU . "\346\224\257\xe6\x8c\x81\x4d\145\164\111\156\x66\x6f\40" . $nQoo . "\40\347\211\x88\346\x9c\xac\73\x3c\57\154\x69\x3e\74\57\x6f\x6c\x3e\xa\x20\40\40\x20\40\x20\40\x20\40\40\x20\40\x20\40\40\x20\x20\40\40\x20\x20\x20\x20\x20\40\40\40\x20\74\x68\65\x3e" . $qJGHr["\156\x65\x77\141\160\160"]["\166\137\166\x65\x72"] . "\40\347\211\210\xe6\234\254\xe7\x8e\257\345\242\x83\xe6\xa3\x80\xe6\265\x8b\347\xbb\x93\346\236\234\357\xbc\232\x3c\x2f\150\65\76\xa\40\x20\x20\x20\40\40\x20\40\x20\40\40\x20\40\x20\40\40\x20\40\40\x20\x20\40\x20\x20\x20\x20\x20\x20\74\157\x6c\76" . $qJGHr["\x73\171\163\x74\x65\x6d"]["\164\145\x78\164"] . "\74\x2f\157\x6c\76\12\40\40\40\x20\x20\40\x20\40\x20\40\40\40\40\40\40\x20\x20\x20\x20\x20\40\40\40\40\x3c\57\144\151\x76\x3e"; goto L; bb: $fUY = $qJGHr["\156\145\x77\141\160\x70"]["\x76\137\x75\160\x64\x61\164\x65"] == 1 ? 0 : 2; goto ht0Y; aY: $this->QE8->set("\x75\x70\144\x61\164\145", 1); goto IXEeB; E6H: $this->QE8->set("\156\x65\167\x61\160\x70", $qJGHr["\x6e\x65\x77\141\x70\x70"]); goto VkS; IXEeB: return $this->b4Eca->sucmsg("\xe5\267\xb2\xe6\230\257\xe6\x9c\x80\346\226\xb0\347\x89\x88\343\x80\x82"); goto qcBO9; ht0Y: $this->b4Eca->modalmsg($uXKQ)->sucmsg($qJGHr["\x74\145\x78\164"] . $hN, $fUY); goto W8eu; E8XD: if (!(file_exists(UPD_LOCK_FILE) || empty($jI3K["\x76\137\143\x6b\x75\x70\144\x61\164\145"]))) { goto GBf; } goto aY; VkS: $uXKQ = ["\x73\165\143" => true, "\x74\x69\x74\154\x65" => $qJGHr["\156\145\167\x61\160\160"]["\166\x5f\x76\145\162"] . "\40\xe6\x9b\xb4\346\226\xb0\xe5\206\x85\xe5\xae\271", "\x62\x6f\144\171" => "\74\x64\151\x76\40\143\x6c\x61\163\x73\x3d\x22\x74\x65\170\164\x2d\x78\x73\55\x63\x65\156\x74\145\x72\x22\x3e\x3c\151\40\143\154\141\163\163\75\42\x6c\157\141\144\145\162\x20\166\145\162\x74\151\143\141\154\55\141\154\151\147\x6e\55\155\x69\144\x64\154\145\x20\154\x6f\141\x64\x65\x72\55\145\x6c\x6c\x69\160\163\151\x73\42\76\x3c\x2f\151\76\74\x2f\x64\x69\x76\76", "\165\x72\x6c" => $_M["\165\x72\x6c"]["\157\167\x6e\x5f\146\157\162\155"] . "\141\75\144\157\x6d\157\144\x61\x6c\46\164\171\160\x65\75\165\x70\144\141\164\x65"]; goto TcM; xxJ: global $_M; goto t3qZ8; k2y: $this->QE8->set("\165\160\144\141\164\145", $fUY); goto qwza6; W8eu: PQ: goto k2y; yRU9: $qJGHr = self::curljson($this->b4Eca->met_web_app()); goto UkVU; kgcT: if (!($qJGHr["\143\x6f\144\145"] == 8002)) { goto sO9AE; } goto Ig3ok; hnZX: $this->QE8->del("\156\x65\x77\x61\x70\x70"); goto ojih; lYtog: X8Q: goto kgcT; uGIt: $RwB = arrayto_string($qJGHr["\x6e\145\x77\x61\x70\160"]["\x76\x5f\160\x68\160\x76\145\x72"], "\x20\x2d\55\40"); goto O; qcBO9: GBf: goto yRU9; cfU: if (!empty($qJGHr["\x73\x79\x73\x74\145\155"])) { goto P84; } goto uGIt; U3oO: P84: goto gjzUN; L: $this->b4Eca->msgmeet($hN); goto U3oO; j8bj: $FvbU = count($qJGHr["\x6e\x65\167\141\x70\160"]["\x76\137\x6d\145\164\x76\145\x72"]) == 1 ? "\346\x9c\x80\344\xbd\x8e" : ''; goto dkC; Ig3ok: $this->QE8->set("\x75\160\144\x61\164\x65", 1); goto m4tq; ojih: $jI3K = $this->QE8->get("\x61\160\160\154\x69\x73\x74"); goto E8XD; gjzUN: goto PQ; goto lYtog; TcM: $hN = "\x3c\141\40\150\162\145\146\75\42\152\141\x76\x61\x73\x63\162\151\160\164\72\x3b\42\40\x64\x61\x74\x61\55\x74\141\x72\x67\x65\164\75\42\x23\x61\160\160\155\x6f\144\x61\154\42\x20\144\x61\x74\x61\x2d\x74\x6f\x67\x67\x6c\x65\x3d\42\155\157\144\x61\x6c\x22\40\144\141\x74\x61\55\x74\x79\x70\x65\x3d\42\x75\160\x64\x61\164\145\42\x3e\xe5\x9c\250\xe7\xba\xbf\346\x9b\xb4\xe6\226\xb0\74\57\141\76"; goto bb; Qcup: sO9AE: goto E6H; UkVU: if ($qJGHr["\143\157\x64\145"]) { goto X8Q; } goto SCniN; qwza6: } protected function appfile_modal() { goto CLaB; PVH: return "\x3c\144\x69\x76\x20\x63\x6c\x61\x73\x73\75\42\x74\x65\170\164\55\x78\x73\x2d\x63\x65\x6e\x74\x65\x72\42\76\347\x94\xa8\xe6\226\x87\xe4\273\xb6\xe4\xb8\215\345\255\x98\345\234\250\345\xbc\x82\xe5\xb8\270\xe3\200\202\x3c\x2f\144\151\166\76"; goto KA; lIbw: FBi: goto NOf; CLaB: global $_M; goto H; JZX: $Ugrrm = ["\142\157\144\x79" => $hU2["\x74\145\170\164"]]; goto ejSU; QteN: $HgtMB = $JXC->app_get_file(); goto j6; KA: cSDr: goto qRUX; bVaK: foreach ($HgtMB["\144\154\x6c\x69\x73\x74"] as $qBWQ1 => $h_TY) { goto hw1m; atYep: if (!$I8ER["\165\x70\x64\x6c\151\x73\164"][$h_TY]) { goto Fa; } goto bM9k; fdqOM: $hN = "\346\226\x87\344\273\xb6\xe4\270\x8d\xe5\xad\x98\xe5\x9c\xa8"; goto aK0v; bM9k: $hN = "\xe6\226\x87\xe4\273\266\350\xa2\253\344\277\256\xe6\224\271"; goto unW; aK0v: wbS: goto uuW; hw1m: $hN = ''; goto atYep; SE5: U6sp: goto f5ck; uuW: $Ugrrm .= "\40\x20\x20\40\40\40\40\40\x20\x20\x20\x20\40\40\x20\40\40\x20\x20\40\x3c\x70\76\12\x20\40\40\40\x20\40\40\40\40\40\x20\x20\40\x20\x20\40\40\40\x20\40\40\x20\40\40\74\x73\160\x61\x6e\x20\x63\154\x61\x73\x73\75\42\155\55\x72\x2d\x35\60\x22\x3e{$hN}\74\x2f\163\160\x61\x6e\x3e\12\x20\40\40\x20\x20\x20\40\40\40\40\x20\40\40\40\40\40\x20\40\x20\x20\x20\40\40\40\x3c\x73\x70\141\156\x20\143\154\141\x73\x73\x3d\42\146\x69\x6c\x65\x5f\x6e\141\x6d\145\x22\76{$h_TY}\x3c\57\x73\160\x61\156\76\40\12\40\40\40\40\40\x20\x20\x20\40\x20\x20\x20\40\x20\40\40\x20\40\x20\40\40\40\40\40\x3c\x73\160\x61\x6e\40\143\154\141\x73\x73\75\x22\x70\165\154\154\x2d\x78\x73\55\x72\x69\147\150\x74\40\x6d\55\x72\55\61\x35\40\144\x6f\167\156\x6c\x6f\x61\144\137\146\x69\154\x65\42\x20\144\141\164\x61\x2d\x64\x6f\167\x6e\154\x6f\141\x64\x3d\42\162\x65\x70\x61\151\x72\174\x64\154\146\x69\x6c\145\x7c{$qBWQ1}\42\x3e\74\141\x20\x68\162\145\x66\x3d\x22\x6a\141\x76\141\x73\x63\162\151\160\164\x3a\x3b\42\x3e\347\202\xb9\345\207\xbb\xe4\xb8\213\xe8\275\275\x3c\57\x61\x3e\74\x2f\163\x70\x61\x6e\76\12\x20\x20\x20\x20\40\x20\x20\x20\x20\40\x20\x20\x20\40\x20\40\x20\x20\40\40\x3c\57\160\x3e"; goto SE5; JvsD: if (!$I8ER["\144\157\167\154\x69\163\x74"][$h_TY]) { goto wbS; } goto fdqOM; unW: Fa: goto JvsD; f5ck: } goto lIbw; l3RX: return $Ugrrm; goto zeeB; tHHxr: sJaJ: goto Tp; ejSU: goto aOUcC; goto tHHxr; j6: if (!(count($HgtMB["\144\154\x6c\151\163\x74"]) == 0)) { goto cSDr; } goto PVH; bxI: aOUcC: goto l3RX; NOf: $Ugrrm = ["\x62\157\x64\x79" => "\74\x64\x69\x76\40\x63\x6c\141\x73\x73\x3d\47\150\55\x32\x35\60\x20\157\166\x2d\142\157\144\x79\x27\x3e{$Ugrrm}\x3c\57\x64\151\166\76", "\x66\157\x6f\164" => "\74\x62\x75\164\x74\x6f\156\40\x74\x79\x70\x65\x3d\x22\x62\165\x74\164\157\156\x22\x20\143\154\141\163\163\75\42\x62\164\156\x20\142\164\156\55\151\x6e\x66\157\40\x61\x70\160\162\145\160\x61\x69\162\42\76\xe4\xbf\256\xe5\244\x8d\345\x85\250\351\x83\250\346\226\x87\xe4\xbb\266\x3c\x2f\142\165\x74\x74\157\156\76"]; goto bxI; d9: $JXC->download("\x66\x69\x6c\x65\x6c\x69\163\164\174\x63\150\x65\143\x6b"); goto QteN; Tp: $I8ER = $this->QE8->get("\x72\x65\160\141\151\x72"); goto bVaK; H: $JXC = new download($this->b4Eca); goto d9; qRUX: $hU2 = $this->b4Eca->resmsg(); goto tAx; tAx: if ($hU2 > 0) { goto sJaJ; } goto JZX; zeeB: } protected function weqrcode_modal() { goto ZeD3; XdTfG: jEi: goto bNt; bNt: return $H8cK; goto wf; akT: goto jEi; goto fYe; HnLbh: $vFgdu = self::curljson($this->b4Eca->met_all(), false, 25, "\x77\170"); goto gdKUT; gdKUT: if ($vFgdu["\x63\157\144\145"]) { goto I1N; } goto e5v; fYe: I1N: goto KZPG; e5v: $H8cK = ["\142\x6f\144\x79" => "\74\x70\40\x73\164\x79\154\145\x3d\x27\x74\145\170\x74\55\151\156\x64\145\156\164\x3a\40\x32\145\x6d\x3b\47\76\xef\xbc\210{$vFgdu["\x65\162\162\143\x6f\x64\145"]}\357\274\211{$vFgdu["\145\162\x72\x6d\163\147"]}\74\x70\76"]; goto akT; Gnw: $this->xh5W = "\161\x72\x63\x6f\x64\145"; goto HnLbh; ZeD3: global $_M; goto Gnw; KZPG: $H8cK = ["\x62\157\144\171" => "\74\144\151\166\40\x63\154\141\163\163\x3d\42\x68\x2d\x32\x35\60\x20\164\x65\x78\164\x2d\x78\163\55\x63\145\156\164\x65\x72\42\x3e\x3c\x69\155\147\x20\x73\x74\x79\154\x65\75\42\150\x65\151\x67\x68\x74\72\x31\60\x30\x25\x3b\x22\40\x73\162\x63\x3d\42\144\x61\x74\x61\x3a\x69\x6d\141\x67\145\x2f\152\x70\x67\73\x62\x61\163\x65\x36\64\x2c" . $vFgdu["\x71\x72\143\x6f\144\x65"]["\151\155\x67"] . "\42\x3e\x3c\x2f\x64\x69\x76\x3e", "\x66\157\157\x74" => $vFgdu["\161\x72\143\x6f\144\x65"]["\x74\x65\x78\164"]["\x69\x6e\146\157"], "\143\x61\x6c\x6c\x62\x61\143\x6b" => "\167\145\x63\x68\141\164\137\161\x72\x63\x6f\144\145"]; goto XdTfG; wf: } protected function wechat_modal() { goto LOF; Oe: if ($vFgdu["\143\x6f\144\x65"]) { goto oAG; } goto fuZ; bWgwH: YzdA: goto ogzm; xuw: oAG: goto cLuG; sPR: $uk0 = $_M["\146\157\x72\155"]["\145\x6e\144\164\x69\155\145"]; goto eaw; t9l2: sleep(1); goto OIYLF; qV0: if ($_M["\146\x6f\162\155"]["\145\x6e\144\x74\x69\155\x65"] < $this->time) { goto qxFwc; } goto sPR; mB: if (empty($_M["\146\x6f\162\155"]["\145\156\144\164\151\x6d\145"])) { goto YzdA; } goto qV0; LpA: $vFgdu = self::curljson($this->b4Eca->met_all(), false, 20, "\167\170"); goto Oe; OIYLF: $this->xh5W = "\x63\x68\145\143\x6b"; goto LpA; eaw: goto vLC; goto kWvo6; cLuG: $this->b4Eca->sucmsg($vFgdu["\167\x78"]["\x72\145\x74"]["\x69\156\146\157"], $vFgdu["\x77\170"]["\x6b\x65\171"]); goto w9; EJKF: $uk0 = strtotime("{$FzDQ}\x20\53\62\40\155\151\156\x75\164\x65"); goto iVJS; LOF: global $_M; goto plfnQ; iVJS: vVMo: goto Dc6; kR5t: $hU2["\145\x6e\144\x74\x69\x6d\145"] = $uk0; goto dy0L; plfnQ: $vWPy = random(6); goto t9l2; jOov: $hN = "\x3c\141\40\x63\x6c\141\163\163\75\x22\x77\x65\x71\x72\143\x6f\144\x65\x22\40\x68\162\145\146\75\42\152\x61\x76\141\163\143\162\151\160\x74\72\x3b\x22\40\144\141\x74\141\x2d\164\x79\160\145\75\42\167\145\x71\x72\x63\157\x64\145\42\x3e\345\x88\267\346\226\260\xe4\xba\214\347\xbb\264\xe7\xa0\201\x3c\57\141\76"; goto vwn2; kWvo6: qxFwc: goto jOov; OTbc: return $hU2; goto UF28; a9V: goto vVMo; goto bWgwH; ogzm: $FzDQ = date("\131\x2d\x6d\55\144\40\110\x3a\x69\72\x73", $this->time); goto EJKF; vwn2: $this->b4Eca->locmsg([4023, $hN]); goto osI; dy0L: $hU2["\163\151\x67\156"] = $vWPy; goto OTbc; w9: Kuc: goto mB; Dc6: $hU2 = $this->b4Eca->resmsg(); goto kR5t; fuZ: $this->b4Eca->errmsg($vFgdu["\x65\162\x72\143\x6f\x64\x65"], $vFgdu["\145\x72\x72\x6d\x73\147"]); goto h1pfY; osI: vLC: goto a9V; h1pfY: goto Kuc; goto xuw; UF28: } protected function update_modal() { goto qGe; PHED: $hhfz = $this->QE8->get("\156\x65\167\x61\x70\x70"); goto I0djE; qGe: global $_M; goto PHED; I0djE: return ["\142\157\x64\x79" => strlen($hhfz["\166\137\x64\141\151\154\x79"]) > 0 ? "\74\x64\x69\x76\x20\143\154\141\163\x73\x3d\47\150\x2d\62\65\x30\40\x6f\166\55\x62\x6f\x64\x79\47\76{$hhfz["\166\137\x64\x61\151\x6c\x79"]}\74\x2f\144\x69\x76\76" : "\x3c\x70\x20\163\164\x79\154\145\75\x22\x74\x65\170\164\x2d\151\x6e\x64\145\156\164\x3a\x20\x32\145\x6d\x3b\42\x3e\346\262\241\xe6\x9c\211\346\x9b\264\346\x96\xb0\350\257\xb4\xe6\x98\x8e\xe3\200\202\74\160\x3e", "\146\157\157\x74" => "\x3c\142\165\164\164\157\156\40\164\x79\x70\x65\75\42\x62\165\x74\164\157\156\x22\40\x63\x6c\x61\x73\163\x3d\42\142\164\156\40\142\x74\156\55\x69\156\146\x6f\x20\x61\160\160\165\160\x64\141\x74\x65\x22\76\xe6\233\264\xe6\226\xb0\xe8\x87\263\x20" . $hhfz["\166\137\x76\x65\x72"] . "\74\57\142\x75\x74\x74\157\x6e\x3e"]; goto w854; w854: } private function del_cache() { goto vqC1; aH: $this->QE8->del("\x75\x70\144\x61\164\145"); goto svRK; Vg: $this->QE8->del("\141\x70\x70\x66\151\x6c\x65"); goto b9TF; b9TF: $this->QE8->del("\x72\x65\x70\x61\151\x72"); goto ob5A; ob5A: $this->QE8->del("\144\154\154\x69\163\x74"); goto Tlj; Tlj: $this->QE8->del("\167\x65\143\x68\141\x74"); goto aH; svRK: $this->QE8->del("\143\153\x69\x74\145\155"); goto Y5X; tKI: $this->QE8->del("\x73\171\163\x74\145\155"); goto iZ; vqC1: global $_M; goto rD; rD: $this->QE8->del("\x61\160\160\154\x69\163\x74"); goto tKI; iZ: $this->QE8->del("\x63\150\145\143\153"); goto Vg; Y5X: } private function result() { goto kYt; gZat: bt59: goto BEHN; Tw: if (!($this->xh5W != "\x61\x70\160\143\x68\145\143\x6b")) { goto bt59; } goto rG0; fLEQ: $MNDD = false; goto hfaT3; LAl: $this->QE8->set("\x63\x6b\151\164\145\x6d", $J5o); goto gZat; hfaT3: $J5o = $this->QE8->get("\x63\x6b\151\164\x65\155"); goto Tw; rG0: $qBWQ1 = $this->b4Eca->resmsg(); goto puYb5; kYt: global $_M; goto fLEQ; puYb5: $J5o[$this->xh5W] = $qBWQ1["\x6b\x65\x79"]; goto LAl; BEHN: } private function curljson($BN3 = [], $EwKBY = false, $nuMw = 15, $vWPy = "\143\x6b") { global $_M; return (new curls($this->b4Eca))->apiurl($this->xh5W, $vWPy)->apipost($BN3)->curls($nuMw)->resdata($EwKBY); } protected function show($ZGj79, $kG) { goto Kl0v; BvW: require_once $D7td->dodisplay($ZGj79, $kG); goto rqxs; Fv5E: $D7td = load::sys_class("\145\x6e\147\x69\x6e\x65", "\x6e\x65\x77"); goto BvW; Kl0v: global $_M; goto Fv5E; rqxs: } } goto bkYv; bkYv: class appcore { private $m_name; private $b8la = []; private $t4Lm = []; private $BKq = []; private $FhT = []; private $ad1 = []; public function __construct() { global $_M; $this->m_name = M_NAME; } public function get_app_url() { goto fcPHr; Ew: goto c4Va; goto wU; wU: hn: goto jvBU; GIB: $XoMoM = $xIB6["\x75\x72\154"]; goto Ew; tcW4: c4Va: goto gS0; S5HKy: $xIB6 = file_exists(INS_LOCK_FILE) ? json_decode(file_get_contents(INS_LOCK_FILE), true) : []; goto PY07i; p7T: $XoMoM = $_M["\165\x72\x6c"]["\157\x77\x6e\137\156\141\x6d\145"] . http_build_query($xIB6); goto tcW4; gS0: return $XoMoM; goto PQZ; jvBU: unset($xIB6["\165\162\154"], $xIB6["\164\151\x6d\x65"]); goto p7T; PY07i: if (empty($xIB6["\x75\162\x6c"])) { goto hn; } goto GIB; fcPHr: global $_M; goto S5HKy; PQZ: } public function met_web_app() { global $_M; return ["\167\x65\x62" => self::met_web(), "\141\160\x70" => self::met_app()]; } public function met_all() { goto pCbq; pCbq: global $_M; goto l0j; l0j: $LiJM = self::met_web_app(); goto e3Pnw; e3Pnw: $LiJM["\141\x6f\x70"] = self::met_aop(); goto Et0N; Et0N: return $LiJM; goto nPKCv; nPKCv: } public function met_web() { goto Gu7; QnH: $this->b8la["\160\150\x70\x76\x65\162"] = PHP_VERSION; goto xbcYv; dlQg: foreach ($zYkkB as $h_TY) { goto Xmln; Ocwl: $LiJM = DB::get_one("\x53\x45\x4c\x45\x43\x54\40\166\x61\154\x75\145\x20\106\x52\x4f\x4d\40{$_M["\164\x61\x62\154\x65"]["\x63\157\x6e\146\151\147"]}\40\x57\110\x45\x52\105\x20\156\141\155\x65\40\x3d\x20\x27{$h_TY}\x27\x20\x41\116\104\x20\x6c\x61\x6e\x67\x20\x3d\x20\47{$rNim}\47\40"); goto RH5w; fso_s: VOW: goto oEO; RH5w: $this->b8la[$h_TY] = $LiJM["\x76\141\154\x75\x65"]; goto fso_s; Xmln: $rNim = $h_TY == "\x6d\x65\x74\143\x6d\x73\137\166" ? "\x6d\145\x74\x69\x6e\x66\x6f" : $_M["\x6c\x61\x6e\x67"]; goto Ocwl; oEO: } goto cfd; qar: $this->b8la["\x77\145\142\x76\145\162"] = str_replace("\120\110\120\x2f{$this->b8la["\160\x68\x70\166\145\x72"]}", '', $_SERVER["\123\x45\122\126\105\122\137\123\117\x46\124\127\101\x52\x45"]); goto ZNLs; n_2CV: $zYkkB = ["\155\145\x74\x5f\167\x65\x62\165\162\154", "\155\x65\x74\137\x77\145\142\156\x61\155\x65", "\x6d\x65\x74\143\x6d\163\x5f\x76", "\x6d\145\164\137\x6b\145\x79\x77\x6f\x72\144\x73", "\155\145\x74\137\144\x65\x73\143\x72\x69\x70\x74\x69\x6f\156", "\x6d\x65\164\137\163\153\151\156\x5f\x75\x73\145\x72"]; goto dlQg; wcKq: $this->b8la["\x77\x65\142\151\x70"] = $_SERVER["\123\105\122\126\x45\x52\137\x41\104\x44\122"]; goto IJ; cfd: trg: goto wcKq; Gu7: global $_M; goto n_2CV; xbcYv: $this->b8la["\163\161\x6c\x76\145\x72"] = DB::version(); goto qar; I6kD: return $this->b8la; goto f9qkP; ZNLs: $this->b8la["\x6c\141\156\x67"] = $_M["\x6c\x61\156\147"]; goto I6kD; IJ: $this->b8la["\x73\x79\x73\166\x65\162"] = php_uname("\x73") . "\x20" . php_uname("\162"); goto QnH; f9qkP: } public function met_app() { goto udIgm; udIgm: global $_M; goto Mc; JVe: return $this->t4Lm; goto AYid; Mc: if (empty($this->m_name)) { goto pXGx; } goto guB; ysMZ: $this->t4Lm["\143\154\x69\x65\x6e\164\x5f\x69\160"] = self::get_client_ip(); goto JVe; guB: $this->t4Lm = DB::get_one("\123\x45\x4c\x45\x43\124\x20\x6e\x6f\x2c\166\x65\162\x2c\x61\x64\144\164\x69\155\x65\x2c\x6d\137\156\x61\155\145\x2c\x61\x70\160\x6e\141\155\x65\x20\x46\x52\x4f\x4d\40{$_M["\164\x61\142\x6c\x65"]["\x61\160\x70\154\x69\x73\x74"]}\x20\127\110\105\122\x45\x20\155\x5f\x6e\x61\x6d\145\75\47{$this->m_name}\x27\40"); goto eJB_; eJB_: pXGx: goto ysMZ; AYid: } public function met_adl() { goto JBj; W9Fx: $LiJM = DB::get_one("\x53\105\114\105\103\124\x20\166\141\x6c\x75\145\x20\x46\x52\117\x4d\40{$_M["\164\x61\x62\154\145"]["\x63\157\x6e\146\x69\147"]}\x20\127\x48\x45\x52\x45\x20\156\x61\x6d\145\x20\x3d\x20\x27\x6d\x65\x74\137\167\145\142\x75\x72\154\47\40\101\x4e\104\40\154\141\x6e\147\x20\x3d\40\x27{$_M["\x6c\x61\156\147"]}\x27\x20"); goto IyTN; zZ: ZJIn: goto W9Fx; sd9: return $this->SSH; goto jsq; tK: $this->SSH = DB::get_one("\123\105\x4c\x45\x43\124\x20\156\x6f\x2c\166\x65\x72\54\141\144\x64\164\151\x6d\x65\x2c\x6d\137\156\x61\155\145\40\x46\x52\x4f\x4d\x20{$_M["\164\141\142\x6c\145"]["\141\x70\x70\x6c\x69\x73\x74"]}\x20\x57\110\105\122\x45\x20\x6d\137\156\x61\155\145\x3d\x27{$this->m_name}\47\x20"); goto zZ; IyTN: $this->SSH["\x6d\x65\164\137\x77\145\x62\x75\x72\x6c"] = $LiJM["\166\141\x6c\x75\145"]; goto sd9; s5URp: if (empty($this->m_name)) { goto ZJIn; } goto tK; JBj: global $_M; goto s5URp; jsq: } public function met_aop() { goto MKy; YuD: return $this->BKq; goto v8N; MKy: global $_M; goto BoS; aPOYt: $this->BKq = ["\x61\144\155\151\156\137\151\x64" => $hlyjL["\141\x64\155\151\156\137\x69\x64"], "\x61\x64\x6d\151\x6e\137\157\x70" => $hlyjL["\x61\144\x6d\151\156\137\x6f\x70"], "\141\x64\x6d\x69\156\x5f\151\160" => $hlyjL["\141\x64\x6d\x69\x6e\137\x6d\157\144\x69\146\x79\x5f\x69\x70"], "\x61\x64\155\x69\x6e\137\x74\x69\x6d\145" => $hlyjL["\x61\x64\155\x69\156\x5f\155\x6f\x64\151\x66\x79\x5f\144\141\164\x65"]]; goto YuD; BoS: $hlyjL = admin_information(); goto aPOYt; v8N: } public function newres() { goto SmpJ; Uct: $this->ad1 = []; goto dueN; dueN: return $this; goto xFHm; SmpJ: global $_M; goto Uct; xFHm: } public function resmsg($EwKBY = true, $EnHN = false) { goto a8QM; l: return $hU2; goto iCMd2; JBH: $hU2 = $EwKBY ? $this->ad1 : self::jsoncallback($this->ad1); goto dKh; a8QM: global $_M; goto U4Qe; dzs: self::locmsg(4012); goto G_nR; dKh: if (!$EnHN) { goto XAqrr; } goto rBR; rBR: unset($this->ad1); goto tzO; G_nR: sa: goto VRD; U4Qe: if (!(strlen($this->ad1["\x6b\x65\x79"]) == 0)) { goto sa; } goto dzs; VRD: $this->ad1["\x65\x71\x6b\145\171"] = $_M["\x66\x6f\162\155"]["\145\x71\153\x65\x79"]; goto JBH; tzO: XAqrr: goto l; iCMd2: } public function sucmsg($dDj, $MNDD = 1) { goto Un4r; lCW: return $this; goto QXa; HImJ: $this->ad1["\x74\145\x78\164"] = self::fontcolor($MNDD, $dDj); goto lCW; I9RKi: $this->ad1["\153\x65\171"] = $MNDD; goto HImJ; Un4r: global $_M; goto I9RKi; QXa: } public function vagmsg($MNDD, $dDj = []) { goto D8z; DGGA: XIK: goto hPm; hPm: $this->ad1["\153\x65\171"] = $MNDD; goto J0im; Glr: $hN = ''; goto GSk; J0im: $this->ad1["\164\x65\170\x74"] = $hN; goto oknQ; oknQ: return $this; goto QsiC; D8z: global $_M; goto Glr; GSk: foreach ($dDj as $h_TY) { goto JR_; JR_: list($ChLHH, $SQR) = $h_TY; goto LRr; LRr: $hN .= self::fontcolor($ChLHH, $ChLHH ? $SQR["\151\156\x66\x6f"] : "\xef\274\210{$SQR["\143\x6f\x64\x69\156\x67"]}\xef\xbc\211{$SQR["\151\156\146\x6f"]}"); goto As3; As3: j3mJX: goto mv0; mv0: } goto DGGA; QsiC: } public function errmsg($UK3L, $dDj, $MNDD = 0) { goto z; F4hV: $this->ad1["\x6b\145\x79"] = $MNDD; goto Ke0x; Ke0x: $this->ad1["\164\145\170\164"] = self::fontcolor(0, "\xef\xbc\x88{$UK3L}\357\xbc\x89{$dDj}"); goto Mpgy; Mpgy: return $this; goto VEsc; z: global $_M; goto F4hV; VEsc: } public function locmsg($dDj = [], $MNDD = 0) { goto K7l; l3A3: return $this; goto dGB; OYw: n3xW: goto W1KC; q0I: if (empty($dDj)) { goto n3xW; } goto jtM; f_W: $this->ad1["\x74\145\x78\x74"] = self::fontcolor($MNDD, "\357\xbc\x88{$this->FhT["\145\162\x72\143\157\144\x65"]}\357\xbc\x89{$this->FhT["\x65\x72\162\155\163\147"]}"); goto l3A3; jtM: self::codemsg($dDj); goto OYw; W1KC: $this->ad1["\153\145\x79"] = $MNDD; goto f_W; K7l: global $_M; goto q0I; dGB: } public function modalmsg($uXKQ = [], $uTba0 = [], $MNDD = 0) { goto o4; Qa7aH: return $this; goto bpWb; rsN: $this->ad1["\x6d\157\144\141\154"] = $uXKQ; goto Qa7aH; tZB: self::locmsg($uTba0, $MNDD); goto rsN; o4: global $_M; goto tZB; bpWb: } public function msgkey($qBWQ1 = 4) { goto wo; wo: global $_M; goto o7cA; wBb: return $this; goto xZ_; o7cA: $this->ad1["\153\145\171"] = $qBWQ1; goto wBb; xZ_: } public function msgtext($uTba0 = []) { goto SM7lm; wm6: $this->ad1["\x74\145\x78\164"] = self::fontcolor($this->ad1["\x6b\x65\x79"], $this->FhT["\145\x72\162\x6d\x73\x67"]); goto sl4; SM7lm: global $_M; goto HbbA; sl4: return $this; goto rB0; HbbA: self::codemsg($uTba0); goto wm6; rB0: } public function msgmeet($hN, $EwKBY = false) { goto Epge; BcG: $this->ad1["\x74\145\x78\164"] = $EwKBY ? $hN : $this->ad1["\164\x65\170\x74"] . $hN; goto ENa; ENa: return $this; goto mbad5; Epge: global $_M; goto BcG; mbad5: } private function fontcolor($MNDD, $hN) { goto zyro; ZA84: $Ygb = ["\x23\105\71\x35\x39\65\x42", "\43\63\x36\x41\x42\67\x41", "\43\x45\x43\x39\71\64\60", "\43\x37\x36\x38\x33\70\x66", "\x23\62\x61\63\63\x33\x63"]; goto xS3; xS3: return "\74\x66\157\x6e\x74\x20\x73\x74\171\154\145\75\42\143\157\154\157\162\x3a" . $Ygb[$MNDD] . "\73\42\76" . $hN . "\74\x2f\146\157\156\x74\x3e"; goto M9Fb; zyro: global $_M; goto ZA84; M9Fb: } public function coderes($EwKBY = true) { global $_M; return $EwKBY ? $this->FhT["\x65\x72\x72\x6d\x73\147"] : json_encode($this->FhT, JSON_UNESCAPED_UNICODE); } public function codemsg($UK3L, $hN = '') { goto tOO; CyH: return $this; goto lAw; jJ: $dDj = ["\64\60\60\x30" => "\345\275\223\345\x89\215\347\x8e\xaf\xe5\242\203\xe7\xbc\272\345\260\221\103\125\122\114\346\x94\257\346\x8c\x81\xef\xbc\x81", "\64\x30\60\61" => "\346\240\xb8\xe5\277\203\xe6\226\207\344\xbb\xb6\xe5\255\230\345\234\250\xe5\xbc\202\345\xb8\xb8\54\xe5\x87\x86\xe5\244\207\350\x87\xaa\xe5\212\250\344\xbf\xae\345\244\215\346\240\xb8\xe5\xbf\x83\xe6\226\x87\xe4\xbb\xb6\x2e\x2e\56", "\x34\60\x30\62" => "\xe5\xba\224\xe7\x94\xa8\346\226\x87\344\xbb\266\xe5\xad\230\xe5\234\250\345\xbc\x82\xe5\270\xb8\350\xaf\267\xe7\x82\271\345\207\xbb\40{$hN}\40\357\274\x81", "\x34\60\x30\63" => "\345\272\x94\xe7\224\xa8\xe6\226\207\xe4\273\xb6\xe6\xad\xa3\345\270\270\357\274\201", "\x34\x30\60\64" => "\346\x96\x87\xe4\273\xb6\346\x9d\x83\xe9\231\x90\xe6\xa3\200\xe6\265\x8b\344\270\xad\x2e\56\56", "\x34\60\60\65" => "\40{$hN}\x20\xe4\xb8\x8d\345\255\230\345\x9c\xa8\357\274\214\350\xaf\xb7\xe6\x89\x8b\xe5\x8a\250\345\210\233\xe5\273\272\357\xbc\201", "\x34\60\x30\66" => "\x20{$hN}\40\346\x9d\203\xe9\231\x90\xe4\270\215\xe8\xb6\263\xef\274\x8c\xe8\xaf\267\344\xbf\xae\xe6\224\xb9\344\270\xba\133\67\67\67\x2f\67\x37\65\135\345\242\x9e\345\x8a\xa0\345\206\x99\345\205\245\346\x9d\x83\351\231\220\357\274\201", "\64\60\x30\x37" => "\x20{$hN}\40\346\x95\xb0\346\215\xae\xe5\206\x99\345\205\245\351\224\231\xe8\257\xaf\357\274\214\350\xaf\267\350\x87\xaa\xe8\xa1\x8c\346\243\x80\xe6\265\213\xe6\235\203\xe9\231\x90\357\xbc\201", "\64\60\x30\70" => "\xe4\270\x8b\350\xbd\xbd\346\235\203\351\x99\x90\xe4\270\215\xe8\xb6\263\xef\274\210\xe8\257\xb7\xe6\243\x80\xe6\x9f\xa5\343\200\x90\xe7\xbd\x91\xe7\253\x99\xe7\xbd\x91\345\235\200\xe3\x80\x91\xe6\x98\xaf\345\x90\246\344\270\xba\xe8\264\255\344\271\xb0\345\xba\x94\347\x94\250\xe7\x9a\x84\345\237\x9f\xe5\x90\215\xef\274\x89\357\274\x81", "\64\x30\x30\71" => "\345\xba\224\347\224\xa8\xe6\x96\207\xe4\xbb\xb6\344\xb8\213\350\275\275\xe4\xb8\255\56\56\56", "\x34\60\61\x30" => "\xe5\xba\x94\347\x94\xa8\346\x96\207\xe4\xbb\266\344\xb8\x8b\350\275\xbd\xe4\xb8\xad\56\x2e\56{$hN}\x20\40\50\xe6\255\243\345\x9c\xa8\xe8\xbf\x9b\350\xa1\214\xe4\270\213\xe8\275\xbd\xef\xbc\x8c\xe8\257\xb7\xe4\270\x8d\xe8\246\201\xe6\x93\215\xe4\xbd\x9c\xe9\xa1\265\xe9\235\xa2\xef\274\201\51", "\64\x30\x31\61" => "\xe6\234\215\xe5\x8a\241\347\xab\257\345\274\202\xe5\270\xb8\x5b{$hN}\x5d\xef\xbc\214\351\200\232\344\277\241\xe5\244\xb1\350\264\xa5\357\274\201", "\x34\x30\x31\x32" => "\347\xb3\273\xe7\xbb\237\345\xbc\202\345\xb8\270\xef\xbc\201", "\64\60\61\x33" => "\xe5\272\x94\347\x94\xa8\346\226\207\344\273\266\xef\xbc\x8c\345\xbc\x80\xe5\xa7\213\344\xbf\xae\xe5\xa4\215\56\56\x2e", "\64\60\61\x34" => "\133\346\240\xb8\345\277\x83\xe6\226\207\344\xbb\xb6\xe8\207\xaa\345\x8a\250\344\xbf\256\345\244\x8d\135\40\344\277\256\345\xa4\x8d\xe5\xae\x8c\xe6\210\x90\343\200\202", "\64\60\x31\x35" => "\345\272\x94\xe7\x94\xa8\346\226\207\344\273\266\xe4\xbf\xae\xe5\244\x8d\345\256\x8c\346\x88\220\343\x80\202", "\64\60\61\x36" => "\x5b{$hN}\135\40\344\xb8\x8b\350\275\xbd\xe5\244\261\xe8\xb4\xa5\xef\xbc\x81", "\x34\x30\61\x37" => "\344\xbf\xae\345\xa4\x8d\345\244\xb1\350\xb4\245\357\274\201", "\x34\60\61\x38" => "\xe5\256\x89\350\xa3\x85\345\244\xb1\xe8\264\xa5\xef\274\x81", "\x34\x30\x31\x39" => "\345\256\x89\xe8\xa3\205\xe6\x88\x90\345\212\237\xef\274\201", "\x34\x30\x32\60" => "\xe5\272\224\xe7\224\250\xe6\226\207\344\xbb\xb6\357\xbc\x8c\345\xbc\x80\xe5\247\213\345\xae\x89\xe8\243\x85\x2e\56\x2e", "\64\60\x32\61" => "\x5b{$hN}\x5d\x20\345\206\x99\xe5\x85\245\xe5\244\xb1\350\xb4\xa5\357\xbc\x81", "\x34\60\x32\x32" => "\xe6\x9c\xaa\346\xa3\x80\xe6\xb5\x8b\345\210\xb0\346\x96\x87\344\273\266\357\xbc\x81", "\64\60\62\x33" => "\345\xbe\256\344\277\241\xe5\205\xac\xe4\xbc\227\345\x8f\267\344\272\214\347\xbb\264\347\240\x81\346\x89\xab\xe6\217\217\xe8\xb6\x85\346\227\266\xef\xbc\201{$hN}", "\64\x30\62\64" => "\345\237\237\xe5\220\x8d\xe6\x9c\xaa\xe8\x8e\xb7\xe5\xbe\x97\346\x8e\x88\xe6\235\203\357\274\x81", "\x34\60\62\x35" => "\xe5\xae\x89\xe8\243\205\xe9\224\x81\xe6\235\x83\351\231\x90\344\270\215\350\xb6\263\xef\274\x81"]; goto pJs; tOO: global $_M; goto TzGe; NM9l: FyI5k: goto jJ; pxHA: list($UK3L, $hN) = $UK3L; goto NM9l; TzGe: if (!is_array($UK3L)) { goto FyI5k; } goto pxHA; pJs: $this->FhT = ["\x65\162\162\x63\x6f\x64\x65" => $UK3L, "\145\x72\x72\x6d\163\147" => $dDj[$UK3L]]; goto CyH; lAw: } public function mysql_config($lR_ = [], $r_zW = true) { goto p0VuJ; hDDV: $hkyY = DB::get_one("\163\x65\154\145\143\x74\40\166\x61\154\x75\x65\x20\146\162\x6f\155\x20{$c7oQ}\x20\167\x68\145\x72\x65\40\156\x61\155\145\40\75\x20\47{$qBWQ1}\x27\40\x41\116\x44\x20\155\x5f\x6e\x61\x6d\x65\40\75\x20\47{$this->m_name}\47\x20\x41\116\104\40\154\x61\x6e\x67\x20\75\x20\x27{$rNim}\47\x20"); goto M07O; DYrJi: crX: goto KUl; Byv: $c7oQ = $_M["\x74\x61\142\x6c\x65"]["\143\154\157\165\144\137\143\x6f\156\x66\151\x67"]; goto fxfGE; QvGv: if ($r_zW) { goto sQ1Z2; } goto Ll1Y; cpEDZ: sQ1Z2: goto hDDV; Ll1Y: DB::query("\x49\x4e\123\x45\x52\x54\40\x49\x4e\x54\117\40{$c7oQ}\x20\50\x6e\141\155\145\x2c\x6c\x61\x6e\147\x2c\x6d\137\x6e\141\x6d\x65\x2c\x76\x61\154\165\x65\51\40\x56\x41\114\125\105\x53\40\50\x27{$qBWQ1}\x27\x2c\47{$rNim}\47\x2c\x27{$this->m_name}\47\54\x27{$h_TY}\47\x29\40\x4f\116\40\x44\x55\120\x4c\111\x43\x41\x54\105\x20\113\x45\131\x20\125\120\x44\101\124\x45\40\x76\141\x6c\165\x65\x3d\x27{$h_TY}\47\x20"); goto LP; KUl: return $h_TY; goto qeb9; fxfGE: $rNim = "\143\154\157\165\144"; goto QvGv; p0VuJ: global $_M; goto d4F5; d4F5: list($qBWQ1, $h_TY) = $lR_; goto Byv; M07O: $h_TY = $hkyY["\x76\x61\x6c\165\x65"]; goto DYrJi; LP: goto crX; goto cpEDZ; qeb9: } public function get_client_ip() { goto QWDx; m1G9: KuX: goto TzS1; LUHc: $kx = "\165\156\x6b\156\x6f\x77\x6e"; goto Ykxj; TzS1: return $kx; goto b84R; QWDx: $vg = ["\x48\124\x54\120\137\103\x44\116\137\123\122\x43\x5f\x49\120", "\x48\124\124\x50\137\120\x52\x4f\130\131\137\x43\114\111\105\x4e\124\137\x49\120", "\x48\124\x54\x50\137\127\x4c\x5f\120\122\x4f\x58\x59\137\x43\x4c\x49\105\116\x54\x5f\x49\x50", "\x48\x54\124\x50\137\x43\x4c\x49\105\116\x54\137\111\120", "\x48\124\x54\x50\137\130\x5f\106\117\122\x57\101\x52\x44\105\x44\137\106\x4f\x52", "\122\105\115\x4f\124\105\x5f\101\x44\104\122"]; goto LUHc; Ykxj: foreach ($vg as $qBWQ1) { goto on9EM; xl46b: O2xr: goto eJ; vU3X: $kx = $_SERVER[$qBWQ1]; goto bDrf; eJ: dMnr: goto asPd; on9EM: if (!(!empty($_SERVER[$qBWQ1]) && strtolower($_SERVER[$qBWQ1]) != "\165\156\x6b\x6e\x6f\167\156" && filter_var($_SERVER[$qBWQ1], FILTER_VALIDATE_IP))) { goto O2xr; } goto vU3X; bDrf: goto KuX; goto xl46b; asPd: } goto m1G9; b84R: } public function jsoncallback($vo8v, $zos = "\143\x61\154\154\142\141\x63\153") { goto IV; IV: global $_M; goto kZ; kZ: header("\x43\157\x6e\x74\145\156\164\x2d\x74\x79\x70\x65\x3a\x20\141\160\160\x6c\x69\x63\141\164\x69\x6f\156\57\x78\55\152\141\166\x61\x73\143\x72\151\160\x74"); goto hc7; lfFk: echo $zos ? $zos . "\50" . $dNLL . "\51" : $dNLL; goto MvXn; hc7: $zos = $_M["\146\x6f\162\x6d"][$zos]; goto CsGo; CsGo: $dNLL = json_encode($vo8v, JSON_UNESCAPED_UNICODE); goto lfFk; MvXn: } public function del_update_dir() { goto RuKnu; VHtZ: znf: goto BY; rC: deldir(APP_UPDATE_DIR); goto VHtZ; RuKnu: global $_M; goto gDOjc; fPNL: if (!(is_dir(APP_UPDATE_DIR) && file_exists(APP_UPDATE_DIR))) { goto znf; } goto rC; gDOjc: @clearstatcache(); goto fPNL; BY: } } goto me7k; rwGbC: define("\x55\x50\104\x5f\114\x4f\x43\x4b\x5f\106\111\x4c\105", PATH_APP_FILE . "\143\157\156\x66\x69\147\x2f\x75\x70\144\141\164\x65\x2e\154\x6f\x63\x6b"); goto qucn; flO: class download { private $gz2; private $xh5W; public $b4Eca; private $QE8; private $HkVz; private $JX; private $xiuZi; private $JBZK; private $IeBY; private $mB7C; public function __construct($P4) { goto pip; pip: global $_M; goto UB; juR: $this->b4Eca = $P4; goto mDto; KRt2: $this->IeBY = $this->b4Eca->met_adl(); goto QruO; UB: $this->HkVz = PATH_APP_FILE; goto Zdw; jb: $this->xiuZi = APP_UPDATE_DIR . "\57\146\x69\154\145\x2f"; goto MKQwo; MKQwo: $this->JBZK = APP_UPDATE_DIR . "\57\x64\x6c\x6c\x69\163\164\x2e\x6a\x73\x6f\156"; goto juR; mDto: $this->QE8 = new session(); goto KRt2; Zdw: $this->JX = APP_UPDATE_DIR; goto jb; QruO: } public function download($kG) { goto sf40; TTrT3: mv3: goto nB6; nB6: switch ($Ycn) { case "\x63\150\x65\143\x6b": self::app_file_check(); goto l3KG8; case "\x64\154": self::app_file_dl($vtoPQ); goto l3KG8; case "\x63\157\162\x65": self::app_file_core(); goto l3KG8; case "\x72\x65\160\141\151\162": self::app_file_repair(); goto l3KG8; case "\144\x6c\x66\151\154\x65": goto buFe; t7Q: self::app_file_dl($vtoPQ); goto atr; D2: goto l3KG8; goto Fr4c; atr: self::app_file_repair(); goto Z2v; buFe: $this->xh5W = "\144\x6c"; goto t7Q; Z2v: $hU2 = $this->b4Eca->resmsg(); goto peK; peK: if (!($hU2["\x6b\145\171"] == 4)) { goto L9f; } goto A6m4B; bGAyA: L9f: goto D2; A6m4B: $this->b4Eca->msgkey(1); goto bGAyA; Fr4c: case "\165\x70\x64\141\164\x65": case "\x69\x6e\x73\164\141\154\x6c": self::app_file_install(); goto l3KG8; default: goto l3KG8; } goto nM6RD; fa: if (!($this->mB7C == "\165\160\x64\x61\164\145")) { goto mv3; } goto lm; LwSR: $this->gz2 = ["\x73\165\143" => false, "\x64\141\164\141" => ["\x63\153\x73\x69\x67\x6e" => $this->mB7C, "\155\145\x74\x68\x6f\x64" => $this->xh5W, "\163\164\145\x70" => $vtoPQ]]; goto fa; GYg: l3KG8: goto ohPT; V6Zo: list($ZHnbs, $Ycn, $vtoPQ, $SIM, $VBpk) = explode("\x7c", $kG); goto GJL7; sf40: global $_M; goto V6Zo; YQc: $this->xh5W = $Ycn; goto LwSR; nM6RD: ED: goto GYg; GJL7: $this->mB7C = $ZHnbs; goto YQc; bt5P: $this->IeBY["\166\x65\162"] = self::app_update_ver(); goto TTrT3; lm: $this->IeBY["\x6f\154\x64\166\x65\x72"] = $this->IeBY["\x76\x65\162"]; goto bt5P; ohPT: } public function app_file_check() { goto gaH; TAVw: y9eM: goto WxeP; wFbw: if ($uyXv0["\x63\157\x64\x65"]) { goto vYG; } goto uoURt; ACJ1: if (file_exists($this->JX)) { goto Fwc; } goto lXEy; PUhF: $HgtMB = $this->QE8->get("\x64\x6c\x6c\151\x73\x74"); goto i; WxeP: if (getdirpower($this->JX)) { goto pNQ; } goto Id; hTxBt: $FBB = str_replace(PATH_WEB, '', $this->JX); goto ZxD; jX: goto bOx; goto cuKbH; qpg71: vYG: goto JDAO; cuKbH: P3yN: goto EAt2; EAt2: $LAiI = json_encode(["\144\154\x6c\x69\163\164" => array_keys($HgtMB), "\x66\x69\156\x67\x65\x72\x73" => $HgtMB], JSON_UNESCAPED_UNICODE); goto ciYx; iTDZ: modifydirpower($this->JX, 0777); goto mCsw; mCsw: RyHH: goto hTxBt; uoURt: return $this->b4Eca->errmsg($uyXv0["\x65\x72\x72\x63\x6f\x64\145"], $uyXv0["\145\x72\162\155\x73\x67"]); goto lur; lXEy: modifydirpower($this->HkVz, 0777); goto MJo; WQd: $this->b4Eca->locmsg(4022); goto jX; Id: return $this->b4Eca->locmsg([4006, $FBB]); goto unb0; unb0: pNQ: goto Wy2W; LIkm: goto RyHH; goto cra; Lbm: if (count($HgtMB) > 0) { goto P3yN; } goto WQd; lur: goto waGkV; goto qpg71; ciYx: if (!(file_put_contents($this->JBZK, $LAiI) === false)) { goto CPN; } goto dqlZ; qpGR: goto vt; goto vVjn; MJo: makedir($this->JX); goto LIkm; dqlZ: $ZGj79 = str_replace(PATH_WEB, '', $this->JBZK); goto koP; V838W: vt: goto Lbm; EsJ9C: $uyXv0 = self::curljson(["\141\144\154" => $this->IeBY]); goto wFbw; i: $this->QE8->del("\144\x6c\x6c\151\163\x74"); goto qpGR; FfUL: return $this->b4Eca->locmsg([4005, $FBB]); goto TAVw; JDAO: $HgtMB = $uyXv0["\144\154\x6c\151\163\164"]; goto zKCU; KAAF: return $this->b4Eca->locmsg(4008); goto onj; Wy2W: $n0_d = self::statekey(); goto d6; kN_: $this->b4Eca->modalmsg(self::modal(0, "\x64\154"))->msgkey()->msgtext(4009); goto fBb; koP: return $this->b4Eca->locmsg([4007, $ZGj79]); goto v6Gb4; QOv: if (in_array($this->mB7C, ["\151\x6e\x73\x74\141\x6c\154", "\x75\160\x64\141\x74\145"])) { goto gtw9; } goto PUhF; v6Gb4: CPN: goto kN_; d6: if (!empty($n0_d)) { goto GcW; } goto KAAF; tASJu: deldir($this->JX, 1); goto iTDZ; cra: Fwc: goto tASJu; ZxD: if (file_exists($this->JX)) { goto y9eM; } goto FfUL; gaH: global $_M; goto ACJ1; vVjn: gtw9: goto EsJ9C; onj: GcW: goto QOv; zKCU: waGkV: goto V838W; fBb: bOx: goto iG5; iG5: } public function app_file_dl($vtoPQ) { goto y7bJ; mky: vpsG: goto Jb; r2lj: goto vpsG; goto rt; Jb: kQHp: goto re; DNnX: $Rb4 = $this->xiuZi . $this->IeBY["\x64\x69\x72\x66\x69\x6c\x65"]; goto ftXy; TSvF6: set_time_limit(60); goto Eop; yzs: if (file_put_contents($Rb4, $lWPt) == false && strlen($lWPt) > 0) { goto tXX; } goto x4Ew; bsDo: if (file_exists($Rb4)) { goto L2DQ; } goto It7Cx; iby: $this->b4Eca->locmsg([4016, $this->IeBY["\x64\x69\x72\146\151\154\x65"]]); goto uEWF; n7E: $this->IeBY["\146\x69\x6c\145\x68\x61\163\150"] = $Bnx["\x66\x69\x6e\147\145\x72\x73"][$this->IeBY["\144\x69\162\x66\x69\154\x65"]]; goto to; bAl: $this->b4Eca->modalmsg(self::modal($vtoPQ))->msgkey()->msgtext([4010, $hN]); goto gU; n264: L2DQ: goto mjWh; kJlj: Wd_3: goto iby; YkyG: mCY: goto DNnX; R178g: if (count($Bnx["\x64\154\x6c\x69\x73\164"]) == $vtoPQ) { goto ONsz; } goto TSvF6; gU: goto JVf4; goto kJlj; O211: if ($ZGj79["\x63\x6f\x64\145"]) { goto mCY; } goto nOqod; nOqod: $this->b4Eca->errmsg($ZGj79["\x65\162\x72\x63\157\144\x65"], $ZGj79["\145\x72\162\155\x73\147"]); goto HOvOX; HOvOX: goto kQHp; goto YkyG; F3: $this->b4Eca->locmsg([4021, $this->IeBY["\144\151\162\146\x69\x6c\145"]]); goto mky; cAx: $Rb4 = iconv("\125\x54\106\55\x38", "\107\102\x4b", $Rb4); goto f3; re: goto C9q; goto aw6R; ftXy: if (!stristr(PHP_OS, "\127\111\x4e")) { goto pSNo; } goto cAx; uEWF: JVf4: goto r2lj; to: $ZGj79 = self::curljson(["\141\144\154" => $this->IeBY]); goto O211; tVS5: C9q: goto hAP; mjWh: $lWPt = base64_decode($ZGj79["\146\151\154\145"]); goto yzs; f3: pSNo: goto bsDo; It7Cx: makefile($Rb4); goto n264; Eop: $this->IeBY["\x64\151\162\x66\151\x6c\145"] = $Bnx["\144\154\154\x69\163\164"][$vtoPQ]; goto n7E; Dqu: $this->b4Eca->modalmsg(self::modal($vtoPQ, $this->mB7C))->msgkey()->msgtext(in_array($this->mB7C, ["\151\156\x73\x74\x61\x6c\154", "\165\x70\x64\x61\164\145"]) ? 4020 : 4013); goto tVS5; y7bJ: global $_M; goto Y_; k: $hN = floor($vtoPQ / count($Bnx["\144\154\154\151\163\164"]) * 100) . "\x25"; goto bAl; shG: $vtoPQ++; goto k; aw6R: ONsz: goto Dqu; Y_: $Bnx = self::app_get_file(); goto R178g; x4Ew: if ($this->IeBY["\x66\x69\x6c\x65\x68\x61\x73\x68"] != md5_file($Rb4)) { goto Wd_3; } goto shG; rt: tXX: goto F3; hAP: } public function app_file_core() { goto UJfc; UJfc: global $_M; goto lRw; B0u: @clearstatcache(); goto kn; vYw: $this->b4Eca->locmsg(4017); goto fUv; kn: unset($this->gz2["\144\141\x74\141"]); goto gX; xGBHJ: jnX3: goto nJa4; ctzQ: fGq: goto B0u; fUv: goto jnX3; goto ctzQ; lRw: if (movedir($this->xiuZi, $this->HkVz)) { goto fGq; } goto vYw; gX: $this->b4Eca->modalmsg(self::modal())->msgkey(1)->msgtext(4014); goto xGBHJ; nJa4: } public function app_file_repair() { goto AZLIi; s1NE: if (copydir($this->xiuZi, $this->HkVz)) { goto kx; } goto DYt; DYt: $this->b4Eca->locmsg(4017); goto hOH; AZLIi: global $_M; goto s1NE; IbG: kx: goto iurI; A: re: goto acv; iurI: @clearstatcache(); goto XD; XD: unset($this->gz2["\144\141\164\x61"]); goto wC3j; wC3j: $this->b4Eca->modalmsg(self::modal())->msgkey(1)->msgtext(4015); goto A; hOH: goto re; goto IbG; acv: } public function app_file_install() { goto bbrut; kL: goto LS7CB; goto m6_; jxNRa: if ($xpB1) { goto f1QwU; } goto q; m6_: f1QwU: goto JrXP; Fv4B: KlR4: goto jxNRa; nDp: @clearstatcache(); goto Fv4B; rFKmk: if (!file_exists($this->xiuZi)) { goto KlR4; } goto MQ4a; bbrut: global $_M; goto g2a6D; g2a6D: $xpB1 = false; goto rFKmk; tT: !file_exists(INS_LOCK_FILE) ? $this->b4Eca->locmsg(4025) : $this->b4Eca->msgkey(1)->msgtext(4019); goto F1I7; q: $this->b4Eca->locmsg(4018); goto kL; JrXP: self::_require(); goto tT; F1I7: LS7CB: goto EIa1; MQ4a: $xpB1 = movedir($this->xiuZi, $this->HkVz); goto nDp; EIa1: } public function app_get_file() { global $_M; return file_exists($this->JBZK) ? json_decode(file_get_contents($this->JBZK), true) : []; } public function app_update_ver() { goto wh; O7E: return $hhfz["\x76\137\x76\x65\162"]; goto qC78; fOuFG: $hhfz = $this->QE8->get("\x6e\x65\x77\141\160\160"); goto O7E; wh: global $_M; goto fOuFG; qC78: } private function statekey() { goto W4Q; W4Q: global $_M; goto WZRN; faFH: $xzFRo = true; goto IsDs; SrD: if (!(strtotime("{$FzDQ}\40\53{$Hc["\x76\x61\x74\x69\155\145"]["\155\x69\x6e\x75\164\x65"]}\x20\x6d\x69\x6e\x75\164\x65") <= time())) { goto RBCr; } goto nxcB; IsDs: if (!($Hc["\x76\141\x74\151\x6d\x65"]["\155\x69\156\165\164\145"] > 0)) { goto HS; } goto CHGeQ; nxcB: $xzFRo = false; goto ic5; CHGeQ: $FzDQ = date("\x59\55\155\55\x64\x20\110\72\x69\72\163", $Hc["\x76\141\x74\151\155\x65"]["\x73\164\x69\x6d\145"]); goto SrD; ic5: RBCr: goto aCH; iaHX: $Hc = (new curls($this->b4Eca))->apikey_decode([$uG4r, $this->IeBY["\155\145\x74\x5f\x77\145\x62\165\162\154"], $this->IeBY["\155\x5f\156\x61\x6d\x65"], $this->IeBY["\141\x64\x64\x74\x69\x6d\x65"]]); goto E; E: if (empty($Hc["\x73\x74\141\164\x65"])) { goto JcDWb; } goto faFH; Kw8Z: $uG4r = $this->QE8->get("\143\x68\x65\143\x6b"); goto iaHX; ZoRG: JcDWb: goto y0a; WZRN: $xzFRo = false; goto Kw8Z; y0a: return $xzFRo; goto Fkp5g; aCH: HS: goto ZoRG; Fkp5g: } private function modal($vtoPQ = '', $Ycn) { goto mvxdT; V5Ao: nNXFV: goto csu; subq: if (!(count($this->gz2["\x64\x61\x74\x61"]) > 0)) { goto nNXFV; } goto ygX_; ygX_: $uXKQ["\x64\x61\164\x61"] = arrayto_string($uXKQ["\144\x61\x74\x61"], "\174"); goto V5Ao; Ik: $this->gz2["\144\141\x74\141"]["\x6d\145\x74\x68\157\x64"] = $Ycn; goto Icoa; drUz: if (!(strlen($vtoPQ) > 0)) { goto Zak; } goto reY; ZyDO: $uXKQ = $this->gz2; goto subq; LsR3N: Zak: goto md; md: if (!(strlen($Ycn) > 0)) { goto JgAR; } goto Ik; Icoa: JgAR: goto ZyDO; mvxdT: global $_M; goto drUz; csu: return $uXKQ; goto omX; reY: $this->gz2["\x64\141\164\141"]["\x73\164\x65\160"] = $vtoPQ; goto LsR3N; omX: } private function curljson($BN3 = [], $EwKBY = false, $nuMw = 60, $vWPy = "\144\154") { global $_M; return (new curls($this->b4Eca))->apiurl($this->xh5W, $vWPy)->apipost($BN3)->curls($nuMw)->resdata($EwKBY); } private function _require() { goto ZCkU2; ZCkU2: global $_M; goto r64Q; xRG8: $this->b4Eca->del_update_dir(); goto q5v; NHVV: kZcB: goto xRG8; Mw10: if (!file_exists($FBB)) { goto kZcB; } goto CnpH; xq7: $qJGHr->set($this->IeBY)->start(); goto NHVV; CnpH: $qJGHr = load::own_class("\165\160\x64\141\164\x65\57\x75\x70\x64\x61\164\145", "\x6e\145\x77"); goto xq7; r64Q: $FBB = $this->JX . "\57\165\x70\144\x61\164\x65\x2e\143\154\141\163\163\x2e\x70\x68\x70"; goto c7EV0; c7EV0: $mKQ7h = []; goto Mw10; q5v: } } diff --git a/admin/info_off.class.php b/admin/info_off.class.php index 56c8769..9b9226d 100644 --- a/admin/info_off.class.php +++ b/admin/info_off.class.php @@ -38,16 +38,10 @@ class info_off extends appadmin { self::village(); case 'elevator': $e_bno = stringto_array($this->form['e_bno'],'#@met@#'); - $e_uno = stringto_array($this->form['e_uno'],'#@met@#'); - $e_eno = stringto_array($this->form['e_eno'],'#@met@#'); $e_aps = stringto_array($this->form['e_aps'],'#@met@#'); foreach ($e_bno as $bno) { - foreach ($e_uno as $uno) { - foreach ($e_eno as $eno) { - foreach ($e_aps as $aps) { - self::elevator($bno,$uno,$eno,$aps); - } - } + foreach ($e_aps as $aps) { + self::elevator($bno,$aps); } } break; @@ -58,7 +52,7 @@ class info_off extends appadmin { } } - //小区 + //场所 private function village() { global $_M,$_YW; @@ -159,16 +153,14 @@ class info_off extends appadmin { } //广告位 - private function elevator($e_bno,$e_uno,$e_eno,$e_aps) { + private function elevator($e_bno,$e_aps) { global $_M,$_YW; $e_number = $this->form['e_number']; - if(!$this->form['id']) parent::e_number($e_number,$e_bno.$e_uno.$e_eno.$e_aps); + if(!$this->form['id']) parent::e_number($e_number,$e_bno.$e_aps); $field = [ 'e_number' => $e_number, 'e_vid' => $this->form['e_vid'], 'e_bno' => $e_bno, - 'e_uno' => $e_uno, - 'e_eno' => $e_eno, 'e_aps' => $e_aps, 'e_size' => $this->form['e_size'], 'e_enable' => $this->form['e_enable'], diff --git a/admin/info_on.class.php b/admin/info_on.class.php index ea91918..0fe677e 100644 --- a/admin/info_on.class.php +++ b/admin/info_on.class.php @@ -25,11 +25,11 @@ class info_on extends appadmin } } - //小区 + //场所 public function dovillage() { global $_M,$_YW; - parent::appnav(['table_on__dovillage','小区资料']); + parent::appnav(['table_on__dovillage','场所资料']); parent::appurl(parent::tname(),['id'=>$_M['form']['id']]); if($_M['form']['id']){ $this->input['data'] = $this->tsql->table($this->tname) @@ -41,7 +41,7 @@ class info_on extends appadmin $this->input['data']['v_city'] = '泰安市'; $this->input['data']['v_district'] = '泰山区'; } - //小区分类 + //场所分类 $para = $this->tsql->table('para')->where(['p_type' => 6])->all(); parent::para_radio($para,'v_type',$this->input['data']['v_type'],$this->input['para']['v_type_radio']) ->setparahtml(6,$this->input['para']['v_type_radio']); @@ -102,18 +102,10 @@ class info_on extends appadmin $this->input['data']['e_number_readonly'] = 'readonly'; // 二次编辑时采用单选 - //楼号 + //道闸方位 $para = $this->tsql->table('para')->where(['p_type' => 3])->all(); parent::para_radio($para,'e_bno',$this->input['data']['e_bno'],$this->input['para']['e_bno_radio']) ->setparahtml(3,$this->input['para']['e_bno_radio']); - //单元号 - $para = $this->tsql->table('para')->where(['p_type' => 4])->all(); - parent::para_radio($para,'e_uno',$this->input['data']['e_uno'],$this->input['para']['e_uno_radio']) - ->setparahtml(4,$this->input['para']['e_uno_radio']); - //电梯号 - $para = $this->tsql->table('para')->where(['p_type' => 5])->all(); - parent::para_radio($para,'e_eno',$this->input['data']['e_eno'],$this->input['para']['e_eno_radio']) - ->setparahtml(5,$this->input['para']['e_eno_radio']); //广告位置 $para = $this->tsql->table('para')->where(['p_type' => 0])->all(); parent::para_radio($para,'e_aps',$this->input['data']['e_aps'],$this->input['para']['e_aps_radio']) @@ -125,25 +117,17 @@ class info_on extends appadmin $this->input['data']['e_enable'] = 1; // 新增编辑时采用多选 - //楼号 + //道闸方位 $para = $this->tsql->table('para')->where(['p_type' => 3])->all(); parent::para_checkbox($para,'e_bno',$this->input['data']['e_bno'],$this->input['para']['e_bno_radio']) ->setparahtml(3,$this->input['para']['e_bno_radio']); - //单元号 - $para = $this->tsql->table('para')->where(['p_type' => 4])->all(); - parent::para_checkbox($para,'e_uno',$this->input['data']['e_uno'],$this->input['para']['e_uno_radio']) - ->setparahtml(4,$this->input['para']['e_uno_radio']); - //电梯号 - $para = $this->tsql->table('para')->where(['p_type' => 5])->all(); - parent::para_checkbox($para,'e_eno',$this->input['data']['e_eno'],$this->input['para']['e_eno_radio']) - ->setparahtml(5,$this->input['para']['e_eno_radio']); //广告位置 $para = $this->tsql->table('para')->where(['p_type' => 0])->all(); parent::para_checkbox($para,'e_aps',$this->input['data']['e_aps'],$this->input['para']['e_aps_radio']) ->setparahtml(0,$this->input['para']['e_aps_radio']); } - //小区名称URL + //场所名称URL $this->input['remote_url'] = $_M['url']['own_name'].'c=ajax&a=doenumber&id='.$_M['form']['id']; } diff --git a/admin/select.class.php b/admin/select.class.php index 09bf359..fbfa611 100644 --- a/admin/select.class.php +++ b/admin/select.class.php @@ -228,7 +228,7 @@ class select extends appadmin { } - // 查看小区名称列表 + // 查看场所名称列表 public function doselect() { global $_M,$_YW; //判断条件 diff --git a/admin/table_on.class.php b/admin/table_on.class.php index 31cf228..615f8c4 100644 --- a/admin/table_on.class.php +++ b/admin/table_on.class.php @@ -36,7 +36,7 @@ class table_on extends appadmin { $this->input['table'] = $this->table_theme->start($this->tname)->send_all(1); } - //小区统计 + //场所统计 public function dovillage() { global $_M,$_YW; @@ -92,7 +92,7 @@ class table_on extends appadmin { $this->input['table'] = $this->table_theme->start($this->tname)->send_all(); } - // 小区统计 + // 场所统计 public function dovillages() { global $_M,$_YW; @@ -112,7 +112,7 @@ class table_on extends appadmin { $this->input['table'] = $this->table_theme->start($this->tname)->send_all(1); } - // 小区统计 + // 场所统计 public function doelevators() { global $_M,$_YW; diff --git a/admin/templates/dzadsod.php b/admin/templates/dzadsod.php index afef7b6..6a3a27e 100644 --- a/admin/templates/dzadsod.php +++ b/admin/templates/dzadsod.php @@ -11,7 +11,7 @@ $met_title = $data['met_title'];

{$data.num.village} - 小区总数 + 场所总数
{$data.num.elevator} diff --git a/admin/templates/elevator.php b/admin/templates/elevator.php index 3b83bcb..fbffb7e 100644 --- a/admin/templates/elevator.php +++ b/admin/templates/elevator.php @@ -25,7 +25,7 @@ $met_title = $data['met_title'];
-
+
@@ -42,23 +42,11 @@ $met_title = $data['met_title'];
-
+
{$data.para.e_bno_radio}
-
-
-
- {$data.para.e_uno_radio} -
-
-
-
-
- {$data.para.e_eno_radio} -
-
diff --git a/admin/templates/village.php b/admin/templates/village.php index 748fa60..d4c6078 100644 --- a/admin/templates/village.php +++ b/admin/templates/village.php @@ -10,7 +10,7 @@ $met_title = $data['met_title'];

{$data.met_title}

-
+
@@ -32,7 +32,7 @@ $met_title = $data['met_title'];
-
+
['总计界面'], - 'table_on__dovillages' => ['小区统计'], + 'table_on__dovillages' => ['场所统计'], 'table_on__doelevators' => ['广告位统计'], 'table_on__doschedule' => ['排期查询'], ] @@ -92,7 +92,7 @@ class appadmin extends admin{ ['资源管理'], [ 'table_on__doelevator' => ['广告位'], - 'table_on__dovillage' => ['合作小区'] + 'table_on__dovillage' => ['合作场所'] ] ], @@ -276,7 +276,7 @@ class appadmin extends admin{ return array_combine(array_column($para,'p_value'), array_column($para,'p_name')); } - //小区名称 + //场所名称 public function villagelist($id,$key = 'v_name') { global $_M,$_YW; $village = $this->tsql->table('village')->where(['id' => $id])->one(); @@ -300,17 +300,13 @@ class appadmin extends admin{ //返回广告位对照地址 public function e_address($elevator) { global $_M,$_YW; - //楼号 + //道闸方位 $e_bno = self::paralist(['p_type' => 3, 'p_value' => $elevator['e_bno'] ]); - //单元号 - $e_uno = self::paralist(['p_type' => 4, 'p_value' => $elevator['e_uno'] ]); - //电梯号 - $e_eno = self::paralist(['p_type' => 5, 'p_value' => $elevator['e_eno'] ]); //广告位置 $e_aps = self::paralist(['p_type' => 0, 'p_value' => $elevator['e_aps'] ]); - //小区 + //场所 $e_vid = self::villagelist($elevator['e_vid']); - return "({$elevator['e_number']})".$e_vid.$e_bno['p_name'].$e_uno['p_name'].$e_eno['p_name'].$e_aps['p_name']; + return "({$elevator['e_number']})".$e_vid.$e_bno['p_name'].$e_aps['p_name']; } //字段颜色 @@ -419,8 +415,6 @@ class appadmin extends admin{ 'e_number' => $val['e_number'], 'e_vid' => $val['e_vid'], 'e_bno' => $val['e_bno'], - 'e_uno' => $val['e_uno'], - 'e_eno' => $val['e_eno'], 'e_aps' => $neweaps, 'e_size' => $val['e_size'], 'e_enable' => $val['e_enable'], diff --git a/include/class/appweb.class.php b/include/class/appweb.class.php index 7444d57..eb85498 100644 --- a/include/class/appweb.class.php +++ b/include/class/appweb.class.php @@ -187,7 +187,7 @@ class appweb extends web { return array_combine(array_column($para,'p_value'), array_column($para,'p_name')); } - //小区名称 + //场所名称 public function villagelist($id,$key = 'v_name') { global $_M,$_YW; $village = $this->tsql->table('village')->where(['id' => $id])->one(); @@ -211,17 +211,13 @@ class appweb extends web { //返回广告位对照地址 public function e_address($elevator) { global $_M,$_YW; - //楼号 + //道闸方位 $e_bno = self::paralist(['p_type' => 3, 'p_value' => $elevator['e_bno'] ]); - //单元号 - $e_uno = self::paralist(['p_type' => 4, 'p_value' => $elevator['e_uno'] ]); - //电梯号 - $e_eno = self::paralist(['p_type' => 5, 'p_value' => $elevator['e_eno'] ]); //广告位置 $e_aps = self::paralist(['p_type' => 0, 'p_value' => $elevator['e_aps'] ]); - //小区 + //场所 $e_vid = self::villagelist($elevator['e_vid']); - return "({$elevator['e_number']})".$e_vid.$e_bno['p_name'].$e_uno['p_name'].$e_eno['p_name'].$e_aps['p_name']; + return "({$elevator['e_number']})".$e_vid.$e_bno['p_name'].$e_aps['p_name']; } //字段颜色 @@ -330,8 +326,6 @@ class appweb extends web { 'e_number' => $val['e_number'], 'e_vid' => $val['e_vid'], 'e_bno' => $val['e_bno'], - 'e_uno' => $val['e_uno'], - 'e_eno' => $val['e_eno'], 'e_aps' => $neweaps, 'e_size' => $val['e_size'], 'e_enable' => $val['e_enable'], diff --git a/include/class/table_theme.class.php b/include/class/table_theme.class.php index 0c931ed..c770c02 100644 --- a/include/class/table_theme.class.php +++ b/include/class/table_theme.class.php @@ -430,18 +430,12 @@ class table_theme { //位置 $para = $tsql->table('para')->where(['p_type' => 0])->all(); $this->search[] = self::para_select($para,['e_aps','位置']); - //电梯号 - $para = $tsql->table('para')->where(['p_type' => 5])->all(); - $this->search[] = self::para_select($para,['e_eno','电梯号']); - //单元号 - $para = $tsql->table('para')->where(['p_type' => 4])->all(); - $this->search[] = self::para_select($para,['e_uno','单元号']); - //楼号 + //道闸方位 $para = $tsql->table('para')->where(['p_type' => 3])->all(); - $this->search[] = self::para_select($para,['e_bno','楼号']); + $this->search[] = self::para_select($para,['e_bno','道闸方位']); $this->select2 = [ - '_fiend' => ['e_vid','选择小区',$_M['form']['e_vid']], - 'placeholder' => '输入小区名称', + '_fiend' => ['e_vid','选择场所',$_M['form']['e_vid']], + 'placeholder' => '输入场所名称', 'fiend' => 'id', 'tname' => 'village', 'source' => 'search', @@ -466,7 +460,7 @@ class table_theme { } } - // 小区统计表 + // 场所统计表 protected function village() { global $_M,$_YW; $this->table_fiend = self::tf_village(); @@ -479,7 +473,7 @@ class table_theme { if($this->search_bool){ $this->search[] = self::input_search('v_text','输入搜索内容'); $this->search[] = self::input_search('v_address','输入地址'); - $this->search[] = self::input_search('v_name','输入小区名称'); + $this->search[] = self::input_search('v_name','输入场所名称'); } //底部按钮 @@ -487,11 +481,11 @@ class table_theme { $this->btn[] = [ self::btn_del(), self::btn_zdy('启用',2,'enableon'), - self::btn_zdy('禁用',4,'enableoff',true,'确定要禁用小区的广告位吗?一旦将无法进行排期投放!'), + self::btn_zdy('禁用',4,'enableoff',true,'确定要禁用场所的广告位吗?一旦将无法进行排期投放!'), ]; $addtourl = $this->own_name_info.__FUNCTION__; $this->btn[] = [ - '新增小区' + '新增场所' ]; } } @@ -525,8 +519,8 @@ class table_theme { ]; $this->search[] = self::input_select_search(); $this->select2 = [ - '_fiend' => ['e_vid','选择小区',$_M['form']['e_vid']], - 'placeholder' => '输入小区名称', + '_fiend' => ['e_vid','选择场所',$_M['form']['e_vid']], + 'placeholder' => '输入场所名称', 'fiend' => 'id', 'tname' => 'village', 'source' => 'search', @@ -658,10 +652,8 @@ class table_theme { ['广告位置',0], ['企业职位',1], ['投放进度',2], - ['小区楼号',3], - ['单元号',4], - ['电梯编号',5], - ['小区分类',6], + ['场所道闸方位',3], + ['场所分类',6], ['广告类型',7] ]; $this->search['left'][] = self::para_select($para,['p_type','参数分类',$_M['form']['p_type']],true); @@ -724,23 +716,17 @@ class table_theme { $this->search['left'][] = self::para_select($para,['eaps_order','广告位排序'],true,false); $tsql = load::own_class('tsql','new'); $this->select2 = [ - '_fiend' => ['e_vid','选择小区',$_M['form']['e_vid']], - 'placeholder' => '输入小区名称', + '_fiend' => ['e_vid','选择场所',$_M['form']['e_vid']], + 'placeholder' => '输入场所名称', 'fiend' => 'id', 'tname' => 'village', 'source' => 'search', 'allnone' => 2 ]; $this->search['left'][] = self::input_select_search(); - //楼号 + //道闸方位 $para = $tsql->table('para')->where(['p_type' => 3])->all(); - $this->search['left'][] = self::para_select($para,['e_bno','楼号']); - //单元号 - $para = $tsql->table('para')->where(['p_type' => 4])->all(); - $this->search['left'][] = self::para_select($para,['e_uno','单元号']); - //电梯号 - $para = $tsql->table('para')->where(['p_type' => 5])->all(); - $this->search['left'][] = self::para_select($para,['e_eno','电梯号']); + $this->search['left'][] = self::para_select($para,['e_bno','道闸方位']); //位置 $para = $tsql->table('para')->where(['p_type' => 0])->all(); $this->search['left'][] = self::para_select($para,['e_aps','位置']); @@ -787,18 +773,12 @@ class table_theme { //位置 $para = $tsql->table('para')->where(['p_type' => 0])->all(); $this->search[] = self::para_select($para,['e_aps','位置']); - //电梯号 - $para = $tsql->table('para')->where(['p_type' => 5])->all(); - $this->search[] = self::para_select($para,['e_eno','电梯号']); - //单元号 - $para = $tsql->table('para')->where(['p_type' => 4])->all(); - $this->search[] = self::para_select($para,['e_uno','单元号']); - //楼号 + //道闸方位 $para = $tsql->table('para')->where(['p_type' => 3])->all(); - $this->search[] = self::para_select($para,['e_bno','楼号']); + $this->search[] = self::para_select($para,['e_bno','道闸方位']); $this->select2 = [ - '_fiend' => ['e_vid','选择小区',$_M['form']['e_vid']], - 'placeholder' => '输入小区名称', + '_fiend' => ['e_vid','选择场所',$_M['form']['e_vid']], + 'placeholder' => '输入场所名称', 'fiend' => 'id', 'tname' => 'village', 'source' => 'search', @@ -843,7 +823,7 @@ class table_theme { } } - // 小区统计展示 + // 场所统计展示 protected function villages() { global $_M,$_YW; $this->table_fiend = self::tf_villages(); @@ -853,8 +833,8 @@ class table_theme { //key 需要在指定的位置进行整合 //整合后的新名称 //被整合的字段 - 'v_enum' => ['资源总计',['v_enum','v_ebnonum','v_eunonum','v_eenonum']], - 'v_free' => [self::th_tooltip(['今天空闲或者时间区段内空闲的广告位,已去除禁用个数','top'],'闲置总计',false),['v_free','v_bno','v_uno','v_eno']] + 'v_enum' => ['资源总计',['v_enum','v_ebnonum']], + 'v_free' => [self::th_tooltip(['今天空闲或者时间区段内空闲的广告位,已去除禁用个数','top'],'闲置总计',false),['v_free','v_bno']] ] ]; //原来的列 除掉要转为第二行的 全部要设置为2,转为一行的设置为1 @@ -872,11 +852,7 @@ class table_theme { 'v_endday' => self::th_tooltip(['默认7天内即将到期的广告位','top'],self::th_replace_order('v_endday'),false), 'v_prerow' => self::th_replace_order('v_prerow'), 'v_ebnonum' => self::th_replace_order('v_ebnonum'), - 'v_eunonum' => self::th_replace_order('v_eunonum'), - 'v_eenonum' => self::th_replace_order('v_eenonum'), - 'v_bno' => self::th_tooltip(['存在一个广告空位则所属楼号就算有空','top'],self::th_replace_order('v_bno')), - 'v_uno' => self::th_tooltip(['存在一个广告空位则所属单元就算有空','top'],self::th_replace_order('v_uno')), - 'v_eno' => self::th_tooltip(['存在一个广告空位则所属电梯就算有空','top'],self::th_replace_order('v_eno')), + 'v_bno' => self::th_tooltip(['存在一个广告空位则所属道闸方位就算有空','top'],self::th_replace_order('v_bno')), ]; $this->th_head = is_array($rselect)?array_merge($this->table_fiend,$rselect):$this->table_fiend; @@ -884,7 +860,7 @@ class table_theme { if($this->search_bool){ $this->search[] = self::input_search('v_text','输入搜索内容'); $this->search[] = self::input_search('v_address','输入地址'); - $this->search[] = self::input_search('v_name','输入小区名称'); + $this->search[] = self::input_search('v_name','输入场所名称'); $this->search[] = self::date_timepicker_search(['vs_starttime','时间区段'],['vs_endtime','To']); $this->select2 = [ @@ -922,7 +898,7 @@ class table_theme { if($this->search_bool){ $this->search[] = self::input_search('v_text','输入搜索内容'); $this->search[] = self::input_search('v_address','输入地址'); - $this->search[] = self::input_search('v_name','输入小区名称'); + $this->search[] = self::input_search('v_name','输入场所名称'); $this->search[] = self::date_timepicker_search(['vs_starttime','时间区段'],['vs_endtime','To']); } @@ -949,19 +925,13 @@ class table_theme { //位置 $para = $tsql->table('para')->where(['p_type' => 0])->all(); $this->search[] = self::para_select($para,['e_aps','位置']); - //电梯号 - $para = $tsql->table('para')->where(['p_type' => 5])->all(); - $this->search[] = self::para_select($para,['e_eno','电梯']); - //单元号 - $para = $tsql->table('para')->where(['p_type' => 4])->all(); - $this->search[] = self::para_select($para,['e_uno','单元']); - //楼号 + //道闸方位 $para = $tsql->table('para')->where(['p_type' => 3])->all(); - $this->search[] = self::para_select($para,['e_bno','楼号']); + $this->search[] = self::para_select($para,['e_bno','道闸方位']); $this->select2 = [ 'url' => $_M['url']['site'].'app/index.php?n=dzadsod&c=select&a=doselect', - '_fiend' => ['e_vid','小区',$_M['form']['e_vid']], - 'placeholder' => '输入小区名称', + '_fiend' => ['e_vid','场所',$_M['form']['e_vid']], + 'placeholder' => '输入场所名称', 'fiend' => 'id', 'tname' => 'village', 'source' => 'search', diff --git a/include/traits/appcmp.class.php b/include/traits/appcmp.class.php index 7019773..52b2dfd 100644 --- a/include/traits/appcmp.class.php +++ b/include/traits/appcmp.class.php @@ -1,8 +1,7 @@ -XgmmbjbJGzsaxJpH6mfPrCmf5rrJjZ=vgj0UPjabPXgPXHUPjabPXgPXsbGABGCvwX1GzsaxJpHmGwxpv0JHPrJBHaBHapZPfxsaz1gs0BKpHZgP=aqpvsCMws0zPbX0qpvmjamvZaav0s0LAGBa1mm1KpaZZrwqpUmGwK5GZ=Pa0ZaJpHgPBq5fHGBmAXssrJpHmHK5oCbGZ0PPwUBH+a6omgpJ=ZJpHo5CbX01GxAjbmdAK5Xs+mHPrCgPjaKpJpHz0JLZGrJpHxPACv0Js1fosxHaKsjsxHaKpHoPXwmwPoxgsrwmCbwHdL5HX=6LrAX0PxfZgPGwmwPmBawpKCXjCJsaZKssomGBH1KdomX5drUJZZ0jGsHsrUs0xgJKCvxgsXBbsCJL5gPAJpHxPAwsa6CJL+Xs+mHProbKpHxPAwsa6CJL+XsaPaMsgPjaXjXzXsaPgPjaXjpvmasa6CKmXsAPNJLgwa0PsrAmgssrAXsaPxgsxgqpdHrHdrwqp6LrAGxAGsGomXKpHo5w0UZawXjjXja0BPXjGZbwmCUPjKpHgsa1q5f6mfPrUX0jwmbXjjXHPrwmCKC=GwaK5XmHaJLXsAPNP1sCJpZJpHxgsxgjwmbXjjXBo0UPjaXj5XHAgm6ZjoZ650GwaZazGBHsrMza6XBsa6CP6gPfjsrwmCvhJLvMvsa6Cv0JsHsrAXj6CjJdg51Xba6XBsa6CP1sa6CK5XsUHPrC1XBHPrAJwsa6mKBa6XBsa6CP6gPfjsrwmmPaUmHaJzJsaZKpHaZHgPjaJLb0JpHaMsgPjaJpXmHaJLZGrJXsXbCvGBHsrXzJP6GHfKpHxPAwxgsXjJpZJpamMCxgsXBbsCK50GwaZa0JgPAJCHz0KCmXUBaGzmjXBpPfoZ6CqzxPaUs+XZd0s0ZHaMpxgsxg1=Xbw5Z8GXmXJGzsaxJsjZgP0UJs=PHbKpH1JCvwXMws0zPbX0qpvmjamvmXJLmbs0CzqpJXGzJsGZKpHGwJmXpM1P=ZxAZKpJoCbPXgPwUBH+jbm=PAKCJsXpvmJpHoPGJasZ=PHbKpxmog=xmo=xmopG0JjZ=ZPfxsazxmogJ=ZJpHo5CbX01XsXHZ=aZ6Cv0Jw=PHo0UZawXjJpHPXPfPrCZgP=ama0xfPfGHJm50rvUXHAgm6ZjoZ6C+wqZ0PXCGvsGhgj0UPjaJLmXmaosaZz1XZj0GwXMCszsUPjaqpGXXsXHZ=aZ6CJsGZKpHgsa1q5fNmfPrmXpMvmjamPNXjjXCvmjXBHZ=aXjjXHAgm6ZjoZ6CvUJpoXvUJpHP=0JsGZKpHws0zP=PXPfPrmXpMvmjamPNXjjXCvmjXBHZ=aXjjXJoCbPXgPwUBH+jbmAXs=ZGCvwXMws0zPbX0qpvmjamvmjamPUXjCvsGh0UPjazvAPjbAXs=ZGKCvsUv0JpHo5wsUvGZ1P=JLHdJwjmXfKpX1P=aBZ6C=P=jCZGZ06JmjXBHZ=aXjjXBmZoCBgsC6mfPrCvwMHgsa1q5f6mfP0X5Ks=ZGCvwMHPfwoCG5jJsUv0Jpxs0jpGJpJBgsaCvAXpv0JdHpxZmHxg0GwXMCGZ1P=KCMvmjamPxXjjXwZ6CmCv0JpHP=XBaXjJgPA=GBomGBH1KpsjzGJ=8Jsm1m+gmGwmbXJasZAPNmjsAK5oCbPXgPwUBH+jbmdAKCJsXpvmJpHoPGJpHoPXbGpJLHdJZa0ZrAJa5dLpvJdC5MHo5wszsrwmwmbsa1poCmCdCHC6mfPr0XBsGh0UPjaoCGJzJGzsaxJsjZgP0UJs6G0J=ZJpHo5CbX01X0jwmbXjjX6zJLHdJZa0ZrAJa5dLpvJdC5MHo5wszsrwmw0PjUXjj0JJHXJsj5wMHoPXbGpPUoCGrfdJs=ZG0XBmjX=ZGwmmwJpJ0JjZ=ZPfxsazxmopJ=ZJpHo5CbX01XssrCHJmr0sCr=Jp+X=ZGXvUJpHo5wsUJp+XfbgvwzvAJPsomGBH1KpHZgP=aKCMvZaCv0JdomX5drqzvwsU0xzfbgvw0JsaZJpZgP=am+gmGZaCJXaGmGZofxCZaCJGzsaxJsjZgP0UJssw=pZ6CbXpv0JpGwqpHPfwKCJsXpvmJpHoPGJsaZJpamMCsUJpHPfwJLX0PPfwXjJdHpx=PMCzCrf5HXrJdad8MHo5wszsrwmw=PHo0UZawXjj0JpUPjaqs=ZG0UPjaqaKCPr=HKpXsfP0XbwMHPfwoCGXBsGh0UPjaoCGXBZoCGJd0JdHrd=XrHCqHdHJaCXwJpJ0JjZ=ZPfxsaz1BXGHwgPfZMws0zPbX0vsGhs1XjBCZP=15PAvzxGZabLfspwMHZoCGGBHGwU8Aq5d1bGgmzJJs+gmApJGzsaxJsjZgP0UJHUPjaKpMws0zPbX0qpvmjammHjGZ+GBzGBHKpHo5wZ0CPXjzJGzsaxJsjZgP0UJsHsosa6Csa6CMws0zPbX0qpHoPGJXazvsa650mHaKpqP6pJZGGJpHgPjaK5AwX1oCbPXgPwUBH+GBzmBGzGBHKCJsXpvmX01GZmXUJGZ=azGBHKCvhJLvuGBzGBHKpH1JpbpUX+UqzGXGJGzsaxJsjZgP0UJs1fxP=ZxgZxgbXss=zPNJLXs=zPNXMws0zPbX0APmJAXwHaw6ab5AmbsaxmH+MpjmGgmXJpHxP=Zxgv0JpHo5wZ0CPHxP=ZxgjJpHG0UJLgwa0aZsrAXsXCa5a055HrHorfX0dHCJsxgs8Xss=zPNHxP=ZxgvUJpGAXvUJpHG0UJp+XwzHG0U0JjZ=ZPfxsazbmX10jGZbAXpbabCv0JpABXMws0zPbX0vmXJLmXmBPfmXKpHjGZbvmXmCbmX10jGZbAXpJXazvabCv0CvwmXX18mXmXsGZfPHMmam5oCbPXgPwUBH+gHG0zPa0=PMCmXqpHGwJJ=ZJpHo5CbX01gPAJPaUmGZfKjwGzmXqp=KCbPGZXbwKCXpvUCvwXzGJXazvmXqZowsHoGmaGwAXsGzJGzsaxJsjZgP0UJsjaGZam1GPHB1JLXGJ=ZJpHo5CbX01Xs1GsrCHJmr0sCr=qzbPXgPB1qBaZ1GfxGBwzZa0aMsa1AXs1GsrKCmHjGZ+ZGrJpHxGBCZgP=ama0xfPfGB1ZaCJpHgmaxGBCHJmr0sCr=qzbPXgPB1qHMP1GfxGBwzZgP=am+gmGsafB1KCXs1GvUCCoHr0qZsomwHawH1KpHgmaxGBzamMCPHB1KCXss1Gv0JpHoPXwmwsafB1XjJXazZgP=amBj0xfPfGHJmr0sCr=qzBPJs6Gs=s1qjap0xGBPgPfZfxGBwqpvB1qaJr05bUXss1GJo33 \ No newline at end of file +// +---------------------------------------------------------------------- +// | 相关站点: www.metinfo.wang,www.metinfo.cc +// +---------------------------------------------------------------------- +// | 米拓( MetInfo )应用开发QQ群: 1452532 +// +---------------------------------------------------------------------- + trait appcmp { public $m_name = M_NAME; public $k_name; public $tname; public $appshow = ''; public $destruct = true; protected function show($ZGj79, $kG) { goto q4H; EjP: $D7td = load::sys_class("\x65\x6e\x67\x69\x6e\x65", "\156\145\167"); goto a4; q4H: global $_M, $_YW; goto EjP; a4: require_once $D7td->dodisplay($ZGj79, $kG); goto oV; oV: } protected function check_auth() { goto iQw; s21wQ: $xzFRo = $uyXv0["\x73\164\x61\x74\145"] && $uyXv0["\141\x70\160"]["\x76\137\155\137\156\141\155\145"] == $this->m_name ? true : false; goto EIS; i6: QMwa: goto Usd; Usd: eRMS: goto tPY7w; oSYg: if (!($mPmN["\164\151\155\145"] > $oY5 || $mPmN["\x74\151\x6d\145"] > $mPmN["\x65\170\x65\164\151\155\x65"] && $mPmN["\164\151\x6d\145"] < $oY5)) { goto rEAq; } goto eyGk; Gp2qL: $oY5 = time(); goto swqtV; kOTS: HSBPS: goto w4; tPY7w: $xpB1 = $xzFRo && !empty($mPmN["\x77\145\x63\x68\141\164"]) && !empty($mPmN["\x75\x70\x64\x61\164\x65"]) ? true : false; goto GSt; R5nj: turnover($_M["\165\x72\x6c"]["\157\167\x6e\137\156\141\155\x65"] . "\x63\75\151\x6e\144\145\x78\46\x61\x3d\x64\x6f\x69\x6e\144\145\170\x26\x63\x68\145\x63\x6b\75\x31", "\x4e\x6f\40\160\x72\157\155\x70\164"); goto kOTS; bdmWf: if (!($uyXv0["\166\x61\164\x69\155\145"]["\155\151\x6e\165\x74\145"] > 0)) { goto eRMS; } goto mQk; Te: $xzFRo = false; goto i6; eyGk: $uyXv0 = json_decode(authcode($mPmN["\143\150\145\x63\153"], "\104\x45\103\117\x44\x45", md5(self::parse_url($_M["\x63\157\156\x66\x69\x67"]["\155\x65\x74\x5f\x77\145\x62\x75\x72\154"]) . md5($this->m_name . $_YW["\141\x70\160"]["\x61\x64\144\164\151\x6d\145"]))), true); goto s21wQ; mQk: $FzDQ = date("\x59\x2d\x6d\x2d\144\40\x48\72\x69\x3a\163", $uyXv0["\x76\141\x74\151\155\x65"]["\x73\164\x69\x6d\x65"]); goto RnK; EIS: if (!$xzFRo) { goto symij; } goto bdmWf; GSt: symij: goto q5zd; kMeK: ZfKA: goto oSYg; g5J: $mPmN["\165\x70\144\141\164\145"] = 1; goto kMeK; iQw: global $_M, $_YW; goto noqN7; RnK: $uk0 = strtotime("{$FzDQ}\x20\x2b{$uyXv0["\x76\x61\164\x69\x6d\145"]["\x6d\x69\x6e\x75\164\x65"]}\x20\155\x69\x6e\165\x74\145"); goto J1u5; noqN7: self::cmp_a(); goto Gp2qL; J1u5: if (!($uk0 <= $oY5)) { goto QMwa; } goto Te; swqtV: $xpB1 = false; goto U2z; Kn3: if (!file_exists(PATH_APP_FILE . "\x63\x6f\x6e\x66\x69\x67\57\165\x70\144\141\164\x65\56\154\157\x63\153")) { goto ZfKA; } goto g5J; doaM: if ($xpB1) { goto HSBPS; } goto R5nj; q5zd: rEAq: goto doaM; U2z: $mPmN = json_decode(authcode($_YW["\143"]["\x61\143\137\143\141\x63\x68\145"], "\104\x45\x43\117\x44\x45", md5($_M["\143\x6f\x6e\x66\151\147"]["\155\145\x74\137\167\x65\x62\x75\x72\x6c"])), true); goto Kn3; w4: } public function loadp($i_dE = '') { goto i8sy; ou0BI: foreach ($lR_ as $h_TY) { self::$h_TY(); xZB: } goto zHB6; j2Rw: $lR_ = explode("\x2c", $i_dE); goto ou0BI; zHB6: aRM: goto QWKg; i8sy: global $_M, $_YW; goto j2Rw; QWKg: } public function cmp_load() { global $_M, $_YW; self::loadp("\x63\x6d\160\x5f\x6b\54\x63\x6d\x70\x5f\x63\54\x63\155\x70\x5f\x74"); } public function cmp_k() { goto VBMA; VBMA: global $_M, $_YW; goto rjBF; mw: $dEIa = file_get_contents(PATH_ALL_APP . $this->m_name . "\x2f\x63\x6f\x6e\146\x69\x67\x2f\164\141\142\154\145"); goto m0; m0: $this->k_name = array_diff(stringto_array($dEIa, "\54"), $HZ5); goto SB8l; tJ: foreach ($HZ5 as $h_TY) { $_YW["\x6b"][$h_TY] = $_M["\164\141\x62\154\x65"][$h_TY]; CHQjp: } goto PNOa; rjBF: $HZ5 = ["\143\x6c\x6f\x75\x64\137\x63\157\156\146\151\x67"]; goto mw; PNOa: kTi: goto rmiy; MhTl: Ztlx: goto tJ; SB8l: foreach ($this->k_name as $h_TY) { $_YW["\153"][$h_TY] = $_M["\x74\x61\x62\x6c\145"][$this->m_name . "\x5f" . $h_TY]; Io: } goto MhTl; rmiy: } public function cmp_c($rNim = '') { goto vD5; DuQQ: $_YW["\156"] = $this->m_name; goto KZ01; vD5: global $_M, $_YW; goto DuQQ; IN1: LFjC: goto DII; WtE: self::check_auth(); goto IN1; YR6: $AS = DB::query("\x73\145\154\x65\143\164\40\x6e\141\155\145\54\x76\x61\154\165\x65\x20\x66\162\x6f\x6d\x20{$_M["\x74\141\x62\x6c\x65"]["\x63\x6c\157\x75\x64\x5f\x63\157\156\x66\151\x67"]}\40\167\150\x65\x72\x65\40\x6d\x5f\x6e\141\x6d\x65\40\75\40\47{$this->m_name}\x27\40\101\x4e\104\x20\50\x6c\x61\156\x67\x20\75\x20\x27{$rNim}\x27\x20\117\x52\x20\x6c\x61\x6e\147\x20\x3d\40\47\143\x6c\x6f\x75\144\x27\51\x20"); goto AvL4; ftE9: $rNim = $_M["\154\141\156\147"]; goto G9Ne8; XOgWn: goto SC; goto hwI3; hwI3: b8B: goto xJ92; oX_: if (!($h_TY = DB::fetch_array($AS))) { goto b8B; } goto I7I5; G9Ne8: OsNk1: goto YR6; KZ01: if (!empty($rNim)) { goto OsNk1; } goto ftE9; I7I5: $_YW["\143"][$h_TY["\156\141\155\145"]] = $h_TY["\x76\141\x6c\165\145"]; goto XOgWn; AvL4: SC: goto oX_; xJ92: if (!(class_exists("\141\x64\x6d\151\x6e") || class_exists("\x61\160\x70"))) { goto LFjC; } goto WtE; DII: } public function cmp_a() { global $_M, $_YW; $_YW["\141\160\x70"] = DB::get_one("\123\105\x4c\105\103\x54\x20\52\x20\x46\122\117\115\x20{$_M["\x74\141\142\154\145"]["\x61\x70\160\154\151\163\164"]}\x20\x57\x48\x45\x52\105\40\x6d\x5f\x6e\141\x6d\x65\75\47{$this->m_name}\47\x20"); } public function cmp_ac() { global $_M, $_YW; $_YW["\141\x70\160"]["\x63\157\154\165\x6d\156"] = DB::get_one("\x53\105\x4c\105\x43\124\40\52\x20\x46\122\x4f\115\x20{$_M["\x74\x61\x62\154\x65"]["\143\157\154\x75\155\x6e"]}\40\x57\110\x45\x52\105\40\155\157\144\x75\154\x65\x3d\47{$_YW["\x61\x70\160"]["\156\157"]}\x27\40\101\116\104\40\x6c\141\156\147\x3d\x27{$_M["\x6c\x61\156\147"]}\47\x20"); } public function cmp_t() { goto Xpff7; VV6N8: opV: goto rsRS; Yida: if (!file_exists($ZGj79)) { goto opV; } goto wdnv; Eoq: $ZGj79 = PATH_APP_FILE . "\154\141\156\147\x2f\x63\156\56\x70\150\x70"; goto VC; wdnv: require_once $ZGj79; goto VV6N8; kcBXb: $ZGj79 = PATH_APP_FILE . "\154\141\x6e\147\57" . $_M["\x6c\x61\x6e\147"] . "\x2e\x70\x68\160"; goto qLbLM; qLbLM: if (file_exists($ZGj79)) { goto sSQ; } goto Eoq; VC: sSQ: goto Yida; Xpff7: global $_M, $_YW; goto kcBXb; rsRS: } public function addconsql($zYkkB, $h_TY = '', $rNim) { goto Ab; Ab: global $_M, $_YW; goto CfDiw; CfDiw: if (!empty($rNim)) { goto zgf; } goto l1UH; odD: zgf: goto V2tN; l1UH: $rNim = $_M["\x6c\x61\156\x67"]; goto odD; V2tN: DB::query("\x49\x4e\123\105\x52\x54\x20\x49\116\x54\x4f\40{$_M["\164\141\x62\154\x65"]["\143\x6c\157\x75\144\137\x63\157\156\146\151\147"]}\x20\x28\156\x61\x6d\x65\x2c\x6c\141\x6e\147\x2c\155\x5f\x6e\141\x6d\145\x2c\166\141\154\165\145\x29\40\126\x41\x4c\125\x45\x53\40\50\47{$zYkkB}\x27\x2c\x27{$rNim}\x27\54\47{$this->m_name}\47\54\47{$h_TY}\47\x29\x20\x4f\116\x20\104\125\120\114\x49\x43\x41\124\x45\40\113\105\x59\x20\x55\120\104\101\124\105\x20\166\141\154\x75\x65\x3d\47{$h_TY}\x27\40"); goto GzzxV; GzzxV: } public function scriptgo($eH2z7) { goto tPnlr; tPnlr: global $_M; goto lJaa; uH: echo "\x3c\x73\x63\x72\x69\x70\x74\76\141\x6c\x65\162\164\50\47{$eH2z7}\47\x29\73\x68\x69\163\164\x6f\162\171\56\x67\x6f\x28\55\61\51\x3b\74\x2f\163\143\162\x69\x70\164\76"; goto J6; lJaa: $this->destruct = false; goto uH; J6: exit(0); goto xzd; xzd: } public function tname() { global $_M, $_YW; return substr($_M["\146\x6f\162\x6d"]["\x61"], 2); } public function data_time($FzDQ) { global $_M, $_YW; return $FzDQ ? date("\x59\55\x6d\x2d\144\40\110\72\x69\x3a\x73", $FzDQ) : ''; } public function sub_str($i_dE) { global $_M, $_YW; return strlen($i_dE) > 0 ? substr($i_dE, 0, 8) . "\56\x2e\56" : ''; } public function jsoncallback($vo8v, $zos = "\143\141\154\x6c\x62\141\143\153") { goto zq; zq: global $_M; goto r1d; w9Vf: $zos = $_M["\146\x6f\x72\155"][$zos]; goto XBb_; g7Z: echo $zos ? $zos . "\50" . $dNLL . "\51" : $dNLL; goto xEh; r1d: header("\x43\x6f\x6e\164\145\156\x74\x2d\x74\x79\x70\x65\72\x20\x61\x70\x70\154\151\x63\141\164\x69\x6f\156\57\x78\x2d\x6a\x61\166\141\163\x63\x72\x69\160\164"); goto w9Vf; XBb_: $dNLL = json_encode($vo8v, JSON_UNESCAPED_UNICODE); goto g7Z; xEh: } public function parse_url($Eu0, $EwKBY = "\x68\157\x73\x74") { goto S7Mx; LL: $Eu0 = url_standard($Eu0); goto Op0ZM; If: return $EwKBY == "\141\162\162" ? $G03 : $G03[$EwKBY]; goto Clhm; S7Mx: global $_M; goto LL; Op0ZM: $G03 = parse_url($Eu0); goto If; Clhm: } public function http_build_query($Eu0, $lR_) { goto kHB4; kHB4: global $_M, $_YW; goto GXtH; NZAF: return $Eu0 . http_build_query($lR_); goto A9xk; syJ: $Eu0 .= "\46"; goto aATT; GXtH: if (in_array(substr($Eu0, -1), ["\46", "\77"])) { goto B_oZ; } goto syJ; aATT: B_oZ: goto NZAF; A9xk: } public function merge_css($NcMS = '') { goto dxjM; jX: rI5c: goto jhN; A1T: $NcMS = $_YW["\143"]["\144\151\x79\143\x73\x73"]; goto jX; jhN: return file_put_contents(PATH_APP_FILE . "\167\145\142\57\x74\x65\x6d\160\154\141\164\145\163\57\x6d\x65\x74\57\143\163\163\57\x6d\145\x74\151\156\x66\x6f\x2e\x63\x73\163", $dSSpD . PHP_EOL . $NcMS); goto yaaj; cGC: PY: goto Wq; FFu: if (!file_exists($x5OYI)) { goto S43s; } goto Iul; Wq: $dSSpD = file_get_contents($YAEPM); goto rY; dxjM: global $_M, $_YW; goto zIC; dPT: if (!empty($NcMS)) { goto rI5c; } goto A1T; Zh: S43s: goto dPT; JO3: if (file_exists($YAEPM)) { goto PY; } goto lPf0; Iul: $dSSpD .= PHP_EOL . file_get_contents($x5OYI); goto Zh; zIC: $YAEPM = PATH_APP_FILE . "\x70\x75\142\x6c\x69\x63\x2f\x63\163\x73\x2f\167\145\x62\143\163\163\56\143\163\163"; goto JO3; rY: $x5OYI = PATH_APP_FILE . "\x70\x75\142\154\x69\x63\x2f\x63\163\163\x2f\144\151\x79\x63\x73\163\x2e\x63\x73\x73"; goto FFu; lPf0: return false; goto cGC; yaaj: } } diff --git a/include/traits/tdata.class.php b/include/traits/tdata.class.php index c9d763c..de36099 100644 --- a/include/traits/tdata.class.php +++ b/include/traits/tdata.class.php @@ -19,7 +19,7 @@ trait tdata { //跳过替换为突出显示的字段 private $skip_field = []; - // 小区统计查询内的公用where + // 场所统计查询内的公用where private $villages_where = ''; @@ -105,7 +105,7 @@ trait tdata { } $sqlk = "{$_YW['k']['village']} AS vi LEFT JOIN {$_YW['k']['elevator']} AS el ON vi.id = el.e_vid " - . "LEFT JOIN (SELECT el.e_vid AS ae_vid,COUNT( DISTINCT el.e_number ) AS v_free,COUNT( DISTINCT el.e_vid, el.e_bno ) AS v_bno,COUNT( DISTINCT el.e_vid, el.e_bno,el.e_uno ) AS v_uno,COUNT( DISTINCT el.e_vid, el.e_bno,el.e_uno,el.e_eno ) AS v_eno {$fwhere} GROUP BY ae_vid ) AS anum ON anum.ae_vid = vi.id " + . "LEFT JOIN (SELECT el.e_vid AS ae_vid,COUNT( DISTINCT el.e_number ) AS v_free,COUNT( DISTINCT el.e_vid, el.e_bno ) AS v_bno {$fwhere} GROUP BY ae_vid ) AS anum ON anum.ae_vid = vi.id " . "LEFT JOIN (SELECT el.e_vid AS be_vid,COUNT( DISTINCT el.e_number ) AS v_lease {$lwhere} GROUP BY be_vid ) AS bnum ON bnum.be_vid = vi.id " . "LEFT JOIN (SELECT el.e_vid AS ce_vid,COUNT( DISTINCT el.e_number ) AS v_endday {$dwhere} GROUP BY ce_vid ) AS cnum ON cnum.ce_vid = vi.id " . "LEFT JOIN (SELECT el.e_vid AS de_vid,COUNT( DISTINCT el.e_number ) AS v_prerow {$pwhere} GROUP BY de_vid ) AS dnum ON dnum.de_vid = vi.id "; @@ -145,10 +145,10 @@ trait tdata { $field = 'ch.*, count(la.id) AS h_totalnum '; break; case 'schedule': - $field = 'el.e_enable,el.e_number,el.e_vid,el.e_bno,el.e_uno,el.e_eno,el.e_aps,la.*,ct.h_cid'; + $field = 'el.e_enable,el.e_number,el.e_vid,el.e_bno,el.e_aps,la.*,ct.h_cid'; break; case 'villages': - $field = " vi.*, COUNT( DISTINCT el.e_number) AS v_enum,COUNT(DISTINCT el.e_vid, el.e_bno) AS v_ebnonum,COUNT(DISTINCT el.e_vid, el.e_bno,el.e_uno) AS v_eunonum,COUNT(DISTINCT el.e_vid, el.e_bno,el.e_uno,el.e_eno) AS v_eenonum,COUNT( el.e_enable = 0 OR NULL ) AS noban,ANY_VALUE(anum.v_free) AS v_free,ANY_VALUE ( anum.v_bno ) AS v_bno,ANY_VALUE ( anum.v_uno ) AS v_uno,ANY_VALUE ( anum.v_eno ) AS v_eno,ANY_VALUE(bnum.v_lease) AS v_lease,ANY_VALUE(cnum.v_endday) AS v_endday,ANY_VALUE(dnum.v_prerow) AS v_prerow "; + $field = " vi.*, COUNT( DISTINCT el.e_number) AS v_enum,COUNT(DISTINCT el.e_vid, el.e_bno) AS v_ebnonum,COUNT( el.e_enable = 0 OR NULL ) AS noban,ANY_VALUE(anum.v_free) AS v_free,ANY_VALUE( anum.v_bno ) AS v_bno,ANY_VALUE(bnum.v_lease) AS v_lease,ANY_VALUE(cnum.v_endday) AS v_endday,ANY_VALUE(dnum.v_prerow) AS v_prerow "; break; case 'village': $field = " vi.*, count( el.e_number ) AS total,count( el.e_enable = 0 OR NULL ) AS noban,count( el.e_enable = 1 OR NULL ) AS normal "; @@ -291,13 +291,13 @@ trait tdata { switch ($this->tname) { case 'applan': $this->search_input = ['e_number']; - $this->search_other = ['e_aps','e_eno','e_uno','e_bno','e_vid','e_enable']; + $this->search_other = ['e_aps','e_bno','e_vid','e_enable']; $where .= self::td_search(); break; case 'elevators': $this->search_input = ['e_number']; - $this->search_other = ['e_aps','e_eno','e_uno','e_bno','e_vid','e_enable','endid','nowid','nextid']; - $this->search_field = ['el.e_number','el.e_aps','el.e_eno','el.e_uno','el.e_bno','el.e_vid','el.e_enable','cla.endid','ala.nowid','bla.nextid']; + $this->search_other = ['e_aps','e_bno','e_vid','e_enable','endid','nowid','nextid']; + $this->search_field = ['el.e_number','el.e_aps','el.e_bno','el.e_vid','el.e_enable','cla.endid','ala.nowid','bla.nextid']; $where .= self::td_search(); //判断是否为备份 if($this->bsign) parent::where_id($where); @@ -305,8 +305,8 @@ trait tdata { break; case 'patrol': $this->search_input = ['e_number']; - $this->search_other = ['e_aps','e_eno','e_uno','e_bno','e_vid','e_enable','nowid','l_hnumber']; - $this->search_field = ['el.e_number','el.e_aps','el.e_eno','el.e_uno','el.e_bno','el.e_vid','el.e_enable','ala.nowid','la.l_hnumber']; + $this->search_other = ['e_aps','e_bno','e_vid','e_enable','nowid','l_hnumber']; + $this->search_field = ['el.e_number','el.e_aps','el.e_bno','el.e_vid','el.e_enable','ala.nowid','la.l_hnumber']; $where .= self::td_search(); //不看空位 @@ -316,7 +316,7 @@ trait tdata { break; case 'elevator': $this->search_input = ['e_number','e_label','e_text']; - $this->search_other = ['e_aps','e_eno','e_uno','e_bno','e_vid','e_enable']; + $this->search_other = ['e_aps','e_bno','e_vid','e_enable']; $where .= self::td_search(); case 'village': $this->search_input = ['v_name','v_text']; @@ -450,10 +450,10 @@ trait tdata { $idstr = parent::strchange($array); if(strlen($idstr)) $order = " `e_number` IN({$idstr}) DESC, ".$order; } - $order .= ", `e_vid` ASC, `e_bno` ASC, `e_uno` ASC, `e_eno` ASC, `e_aps` ASC "; + $order .= ", `e_vid` ASC, `e_bno` ASC, `e_aps` ASC "; break; case 'elevators': - $order = " `etypes` DESC, endtime DESC, el.`e_vid` ASC, el.`e_bno` ASC, el.`e_uno` ASC, el.`e_eno` ASC, el.`e_aps` ASC "; + $order = " `etypes` DESC, endtime DESC, el.`e_vid` ASC, el.`e_bno` ASC, el.`e_aps` ASC "; if($this->form['order_e_number']) $order = " el.e_number {$this->form['order_e_number']} "; if($this->form['order_endtime']) $order = " endtime {$this->form['order_endtime']} "; if($this->form['order_e_totalnum']) $order = " e_totalnum {$this->form['order_e_totalnum']} "; @@ -466,11 +466,11 @@ trait tdata { if($this->form['order_endetime']) $order = " endetime {$this->form['order_endetime']} "; if($this->form['order_e_address']) { $e_address = $this->form['order_e_address']; - $order = " el.e_vid {$e_address}, el.e_bno {$e_address}, el.e_uno {$e_address}, el.e_eno {$e_address}, el.e_aps {$e_address} "; + $order = " el.e_vid {$e_address}, el.e_bno {$e_address}, el.e_aps {$e_address} "; } break; case 'patrol': - $order = " el.`e_vid` ASC, el.`e_bno` ASC, el.`e_uno` ASC, el.`e_eno` ASC, el.`e_aps` ASC "; + $order = " el.`e_vid` ASC, el.`e_bno` ASC, el.`e_aps` ASC "; break; case 'elevator': $order = " `id` DESC "; @@ -487,9 +487,9 @@ trait tdata { break; case 'schedule': $order = ' la.l_starttime DESC,la.`id` DESC'; - //备份 按照小区排序 + //备份 按照场所排序 if($this->bsign){ - $order = " el.`e_vid` ASC, el.`e_bno` ASC, el.`e_uno` ASC, el.`e_eno` ASC, el.`e_aps` ASC "; + $order = " el.`e_vid` ASC, el.`e_bno` ASC, el.`e_aps` ASC "; } if($this->form['order_l_starttime']) $order = " la.l_starttime {$this->form['order_l_starttime']} "; if($this->form['order_l_endtime']) $order = " la.l_endtime {$this->form['order_l_endtime']} "; @@ -502,11 +502,7 @@ trait tdata { if($this->form['order_v_endday']) $order = " v_endday {$this->form['order_v_endday']} "; if($this->form['order_v_prerow']) $order = " v_prerow {$this->form['order_v_prerow']} "; if($this->form['order_v_ebnonum']) $order = " v_ebnonum {$this->form['order_v_ebnonum']} "; - if($this->form['order_v_eunonum']) $order = " v_eunonum {$this->form['order_v_eunonum']} "; - if($this->form['order_v_eenonum']) $order = " v_eenonum {$this->form['order_v_eenonum']} "; if($this->form['order_v_bno']) $order = " v_bno {$this->form['order_v_bno']} "; - if($this->form['order_v_uno']) $order = " v_uno {$this->form['order_v_uno']} "; - if($this->form['order_v_eno']) $order = " v_eno {$this->form['order_v_eno']} "; break; case 'para': $order = ' `id` DESC'; diff --git a/include/traits/tfield.class.php b/include/traits/tfield.class.php index 3b01955..5f38f81 100644 --- a/include/traits/tfield.class.php +++ b/include/traits/tfield.class.php @@ -9,10 +9,8 @@ trait tfield { return [ 'e_enable' => '状态', 'e_number' => '广告位编号', - 'e_vid' => '小区名称', - 'e_bno' => '楼号', - 'e_uno' => '单元号', - 'e_eno' => '电梯号', + 'e_vid' => '场所名称', + 'e_bno' => '道闸方位', 'e_aps' => '广告位位置', 'e_size' => '广告位规格', 'e_label' => '相关标签', @@ -20,16 +18,16 @@ trait tfield { ]; } - //小区统计 + //场所统计 protected function tf_village($sign = true) { global $_M,$_YW; return [ - 'v_name' => '小区名称', - 'v_type' => '小区分类', + 'v_name' => '场所名称', + 'v_type' => '场所分类', 'v_totalstr' => '广告状态', - 'v_address' => '小区地址', + 'v_address' => '场所地址', 'v_wid' => '联系人', - 'v_price' => '小区均价', + 'v_price' => '场所均价', 'v_psize' => '居住规模', 'v_addtime' => '录入时间', 'v_updatetime' => '修改时间', @@ -56,10 +54,8 @@ trait tfield { $barray = [ 'e_enable' => '状态', 'e_number' => '广告位编号', - 'e_vid' => '小区名称', - 'e_bno' => '楼号', - 'e_uno' => '单元号', - 'e_eno' => '电梯号', + 'e_vid' => '场所名称', + 'e_bno' => '道闸方位', 'e_aps' => '广告位位置', 'h_cid' => '签定的公司', 'l_hnumber' => '合同编号', @@ -197,18 +193,14 @@ trait tfield { protected function tf_villages($sign = true) { global $_M,$_YW; $array = [ - 'v_name' => '小区名称', - 'v_type' => '小区分类', + 'v_name' => '场所名称', + 'v_type' => '场所分类', 'v_district' => '所属区域', - 'v_address' => '小区地址', + 'v_address' => '场所地址', 'v_enum' => '广告位', - 'v_ebnonum' => '楼号', - 'v_eunonum' => '单元', - 'v_eenonum' => '电梯', + 'v_ebnonum' => '道闸方位', 'v_free' => '广告位', - 'v_bno' => '楼号', - 'v_uno' => '单元', - 'v_eno' => '电梯', + 'v_bno' => '道闸方位', 'v_lease' => '排期中的个数', 'v_endday' => '到期个数', 'v_prerow' => '预排的个数', @@ -216,14 +208,10 @@ trait tfield { ]; if($this->bsign){ $array['v_free'] = '闲置广告位总数'; - $array['v_bno'] = '闲置楼号'; - $array['v_uno'] = '闲置单元'; - $array['v_eno'] = '闲置电梯'; + $array['v_bno'] = '闲置道闸方位'; $array['v_enum'] = '广告位总数'; - $array['v_ebnonum'] = '楼号总数'; - $array['v_eunonum'] = '单元总数'; - $array['v_eenonum'] = '电梯总数'; - $array['v_price'] = '小区均价'; + $array['v_ebnonum'] = '道闸方位总数'; + $array['v_price'] = '场所均价'; $array['v_psize'] = '居住规模'; }else{ unset($array['v_district']); diff --git a/include/traits/tlist.class.php b/include/traits/tlist.class.php index 1107b46..c63aece 100644 --- a/include/traits/tlist.class.php +++ b/include/traits/tlist.class.php @@ -16,7 +16,7 @@ trait tlist { protected static $customer = []; //相关联系人缓存 protected static $workers = []; - //小区缓存 + //场所缓存 protected static $village = []; //公用删除 @@ -75,29 +75,21 @@ trait tlist { //广告位详细地址转换 protected function eaddress(&$val,$_address = 'e_address',$sign = false){ global $_M,$_YW; - //楼号 + //道闸方位 if(empty(self::$para['e_bno'])) self::$para['e_bno'] = parent::translate(3); - //单元号 - if(empty(self::$para['e_uno'])) self::$para['e_uno'] = parent::translate(4); - //电梯号 - if(empty(self::$para['e_eno'])) self::$para['e_eno'] = parent::translate(5); //广告位置 if(empty(self::$para['e_aps'])) self::$para['e_aps'] = parent::translate(); - //小区 + //场所 if(empty(self::$village[$val['e_vid']])) self::$village[$val['e_vid']] = parent::villagelist($val['e_vid']); if($sign){ $val['e_vid'] = self::$village[$val['e_vid']]; $val['e_bno'] = self::$para['e_bno'][$val['e_bno']]; - $val['e_uno'] = self::$para['e_uno'][$val['e_uno']]; - $val['e_eno'] = self::$para['e_eno'][$val['e_eno']]; $val['e_aps'] = self::$para['e_aps'][$val['e_aps']]; }else{ $villages = [ self::$village[$val['e_vid']], self::$para['e_bno'][$val['e_bno']], - self::$para['e_uno'][$val['e_uno']], - self::$para['e_eno'][$val['e_eno']], self::$para['e_aps'][$val['e_aps']] ]; $val[$_address] = arrayto_string($villages,' '); @@ -122,15 +114,11 @@ trait tlist { '; //对字段处理 - //楼号 + //道闸方位 if(empty(self::$para['e_bno'])) self::$para['e_bno'] = parent::translate(3); - //单元号 - if(empty(self::$para['e_uno'])) self::$para['e_uno'] = parent::translate(4); - //电梯号 - if(empty(self::$para['e_eno'])) self::$para['e_eno'] = parent::translate(5); //广告位置 if(empty(self::$para['e_aps'])) self::$para['e_aps'] = parent::translate(); - //小区 + //场所 if(empty(self::$village[$val['e_vid']])) self::$village[$val['e_vid']] = parent::villagelist($val['e_vid']); $scheduleurl = $this->own_name_table.'elevators&e_number='.$val['e_number']; @@ -140,8 +128,6 @@ trait tlist { $val['e_vid'] = self::$village[$val['e_vid']]; $val['e_bno'] = self::$para['e_bno'][$val['e_bno']]; - $val['e_uno'] = self::$para['e_uno'][$val['e_uno']]; - $val['e_eno'] = self::$para['e_eno'][$val['e_eno']]; $val['e_aps'] = self::$para['e_aps'][$val['e_aps']]; $val['e_state'] = parent::e_state(); $val['e_label'] = parent::tab_tokenfield($val['e_label'],2); @@ -156,7 +142,7 @@ trait tlist { return self::assemble($key,$base,$val,$checked); } - //小区统计 + //场所统计 protected function village($val,$checked = '') { global $_M,$_YW; //获取字段 @@ -174,7 +160,7 @@ trait tlist { $workersstr[] = self::$workers[$vwid]; } - //小区分类 + //场所分类 if(empty(self::$para['v_type'])) self::$para['v_type'] = parent::translate(6); $vnameurl = $this->own_name_table.'elevator&e_vid='.$val['id']; @@ -352,12 +338,6 @@ trait tlist { case 3: $p_num = $this->tsql->table('elevator')->where(['e_bno' => $val['p_value']])->count(); break; - case 4: - $p_num = $this->tsql->table('elevator')->where(['e_uno' => $val['p_value']])->count(); - break; - case 5: - $p_num = $this->tsql->table('elevator')->where(['e_eno' => $val['p_value']])->count(); - break; case 6: $p_num = $this->tsql->table('village')->where(['v_type' => $val['p_value']])->count(); break; @@ -381,10 +361,8 @@ trait tlist { - - - - + +
'; @@ -568,7 +546,7 @@ trait tlist { return self::assemble($key,$base,$val,$checked,false); } - //小区统计展示 + //场所统计展示 protected function villages($val,$checked = '') { global $_M,$_YW; //获取字段 @@ -580,7 +558,7 @@ trait tlist { '; - //小区分类 + //场所分类 if(empty(self::$para['v_type'])) self::$para['v_type'] = parent::translate(6); //对字段处理 $scheduleurl = $this->own_name_table.'schedule&e_vid='.$val['id']; @@ -609,7 +587,7 @@ trait tlist { return self::assemble($key,$base,$val,$checked,false); } - //小区统计展示 + //场所统计展示 protected function noticeday($val,$checked = '',$base = []) { global $_M,$_YW; //获取字段 diff --git a/public/js/city/city.min.json b/public/js/city/city.min.json new file mode 100644 index 0000000..63fec67 --- /dev/null +++ b/public/js/city/city.min.json @@ -0,0 +1 @@ +{"citylist":[{"p":"请选择所在地区"},{"p":"北京市","c":[{"n":"请选择"},{"n":"东城区"},{"n":"西城区"},{"n":"朝阳区"},{"n":"丰台区"},{"n":"石景山区"},{"n":"海淀区"},{"n":"门头沟区"},{"n":"房山区"},{"n":"通州区"},{"n":"顺义区"},{"n":"昌平区"},{"n":"大兴区"},{"n":"怀柔区"},{"n":"平谷区"},{"n":"密云县"},{"n":"延庆县"}]},{"p":"天津市","c":[{"n":"请选择"},{"n":"和平区"},{"n":"河东区"},{"n":"河西区"},{"n":"南开区"},{"n":"河北区"},{"n":"红桥区"},{"n":"东丽区"},{"n":"西青区"},{"n":"津南区"},{"n":"北辰区"},{"n":"武清区"},{"n":"宝坻区"},{"n":"滨海新区"},{"n":"宁河县"},{"n":"静海县"},{"n":"蓟县"}]},{"p":"河北省","c":[{"n":"请选择"},{"n":"石家庄市","a":[{"s":"请选择"},{"s":"长安区"},{"s":"桥西区"},{"s":"新华区"},{"s":"井陉矿区"},{"s":"裕华区"},{"s":"藁城区"},{"s":"鹿泉区"},{"s":"栾城区"},{"s":"井陉县"},{"s":"正定县"},{"s":"行唐县"},{"s":"灵寿县"},{"s":"高邑县"},{"s":"深泽县"},{"s":"赞皇县"},{"s":"无极县"},{"s":"平山县"},{"s":"元氏县"},{"s":"赵县"},{"s":"辛集市"},{"s":"晋州市"},{"s":"新乐市"}]},{"n":"唐山市","a":[{"s":"请选择"},{"s":"路南区"},{"s":"路北区"},{"s":"古冶区"},{"s":"开平区"},{"s":"丰南区"},{"s":"丰润区"},{"s":"曹妃甸区"},{"s":"滦县"},{"s":"滦南县"},{"s":"乐亭县"},{"s":"迁西县"},{"s":"玉田县"},{"s":"遵化市"},{"s":"迁安市"}]},{"n":"秦皇岛市","a":[{"s":"请选择"},{"s":"海港区"},{"s":"山海关区"},{"s":"北戴河区"},{"s":"青龙满族自治县"},{"s":"昌黎县"},{"s":"抚宁县"},{"s":"卢龙县"}]},{"n":"邯郸市","a":[{"s":"请选择"},{"s":"邯山区"},{"s":"丛台区"},{"s":"复兴区"},{"s":"峰峰矿区"},{"s":"邯郸县"},{"s":"临漳县"},{"s":"成安县"},{"s":"大名县"},{"s":"涉县"},{"s":"磁县"},{"s":"肥乡县"},{"s":"永年县"},{"s":"邱县"},{"s":"鸡泽县"},{"s":"广平县"},{"s":"馆陶县"},{"s":"魏县"},{"s":"曲周县"},{"s":"武安市"}]},{"n":"邢台市","a":[{"s":"请选择"},{"s":"桥东区"},{"s":"桥西区"},{"s":"邢台县"},{"s":"临城县"},{"s":"内丘县"},{"s":"柏乡县"},{"s":"隆尧县"},{"s":"任县"},{"s":"南和县"},{"s":"宁晋县"},{"s":"巨鹿县"},{"s":"新河县"},{"s":"广宗县"},{"s":"平乡县"},{"s":"威县"},{"s":"清河县"},{"s":"临西县"},{"s":"南宫市"},{"s":"沙河市"}]},{"n":"保定市","a":[{"s":"请选择"},{"s":"新市区"},{"s":"北市区"},{"s":"南市区"},{"s":"满城县"},{"s":"清苑县"},{"s":"涞水县"},{"s":"阜平县"},{"s":"徐水县"},{"s":"定兴县"},{"s":"唐县"},{"s":"高阳县"},{"s":"容城县"},{"s":"涞源县"},{"s":"望都县"},{"s":"安新县"},{"s":"易县"},{"s":"曲阳县"},{"s":"蠡县"},{"s":"顺平县"},{"s":"博野县"},{"s":"雄县"},{"s":"涿州市"},{"s":"定州市"},{"s":"安国市"},{"s":"高碑店市"}]},{"n":"张家口市","a":[{"s":"请选择"},{"s":"桥东区"},{"s":"桥西区"},{"s":"宣化区"},{"s":"下花园区"},{"s":"宣化县"},{"s":"张北县"},{"s":"康保县"},{"s":"沽源县"},{"s":"尚义县"},{"s":"蔚县"},{"s":"阳原县"},{"s":"怀安县"},{"s":"万全县"},{"s":"怀来县"},{"s":"涿鹿县"},{"s":"赤城县"},{"s":"崇礼县"}]},{"n":"承德市","a":[{"s":"请选择"},{"s":"双桥区"},{"s":"双滦区"},{"s":"鹰手营子矿区"},{"s":"承德县"},{"s":"兴隆县"},{"s":"平泉县"},{"s":"滦平县"},{"s":"隆化县"},{"s":"丰宁满族自治县"},{"s":"宽城满族自治县"},{"s":"围场满族蒙古族自治县"}]},{"n":"沧州市","a":[{"s":"请选择"},{"s":"新华区"},{"s":"运河区"},{"s":"沧县"},{"s":"青县"},{"s":"东光县"},{"s":"海兴县"},{"s":"盐山县"},{"s":"肃宁县"},{"s":"南皮县"},{"s":"吴桥县"},{"s":"献县"},{"s":"孟村回族自治县"},{"s":"泊头市"},{"s":"任丘市"},{"s":"黄骅市"},{"s":"河间市"}]},{"n":"廊坊市","a":[{"s":"请选择"},{"s":"安次区"},{"s":"广阳区"},{"s":"固安县"},{"s":"永清县"},{"s":"香河县"},{"s":"大城县"},{"s":"文安县"},{"s":"大厂回族自治县"},{"s":"霸州市"},{"s":"三河市"}]},{"n":"衡水市","a":[{"s":"请选择"},{"s":"桃城区"},{"s":"枣强县"},{"s":"武邑县"},{"s":"武强县"},{"s":"饶阳县"},{"s":"安平县"},{"s":"故城县"},{"s":"景县"},{"s":"阜城县"},{"s":"冀州市"},{"s":"深州市"}]}]},{"p":"山西省","c":[{"n":"请选择"},{"n":"太原市","a":[{"s":"请选择"},{"s":"小店区"},{"s":"迎泽区"},{"s":"杏花岭区"},{"s":"尖草坪区"},{"s":"万柏林区"},{"s":"晋源区"},{"s":"清徐县"},{"s":"阳曲县"},{"s":"娄烦县"},{"s":"古交市"}]},{"n":"大同市","a":[{"s":"请选择"},{"s":"城区"},{"s":"矿区"},{"s":"南郊区"},{"s":"新荣区"},{"s":"阳高县"},{"s":"天镇县"},{"s":"广灵县"},{"s":"灵丘县"},{"s":"浑源县"},{"s":"左云县"},{"s":"大同县"}]},{"n":"阳泉市","a":[{"s":"请选择"},{"s":"城区"},{"s":"矿区"},{"s":"郊区"},{"s":"平定县"},{"s":"盂县"}]},{"n":"长治市","a":[{"s":"请选择"},{"s":"城区"},{"s":"郊区"},{"s":"长治县"},{"s":"襄垣县"},{"s":"屯留县"},{"s":"平顺县"},{"s":"黎城县"},{"s":"壶关县"},{"s":"长子县"},{"s":"武乡县"},{"s":"沁县"},{"s":"沁源县"},{"s":"潞城市"}]},{"n":"晋城市","a":[{"s":"请选择"},{"s":"城区"},{"s":"沁水县"},{"s":"阳城县"},{"s":"陵川县"},{"s":"泽州县"},{"s":"高平市"}]},{"n":"朔州市","a":[{"s":"请选择"},{"s":"朔城区"},{"s":"平鲁区"},{"s":"山阴县"},{"s":"应县"},{"s":"右玉县"},{"s":"怀仁县"}]},{"n":"晋中市","a":[{"s":"请选择"},{"s":"榆次区"},{"s":"榆社县"},{"s":"左权县"},{"s":"和顺县"},{"s":"昔阳县"},{"s":"寿阳县"},{"s":"太谷县"},{"s":"祁县"},{"s":"平遥县"},{"s":"灵石县"},{"s":"介休市"}]},{"n":"运城市","a":[{"s":"请选择"},{"s":"盐湖区"},{"s":"临猗县"},{"s":"万荣县"},{"s":"闻喜县"},{"s":"稷山县"},{"s":"新绛县"},{"s":"绛县"},{"s":"垣曲县"},{"s":"夏县"},{"s":"平陆县"},{"s":"芮城县"},{"s":"永济市"},{"s":"河津市"}]},{"n":"忻州市","a":[{"s":"请选择"},{"s":"忻府区"},{"s":"定襄县"},{"s":"五台县"},{"s":"代县"},{"s":"繁峙县"},{"s":"宁武县"},{"s":"静乐县"},{"s":"神池县"},{"s":"五寨县"},{"s":"岢岚县"},{"s":"河曲县"},{"s":"保德县"},{"s":"偏关县"},{"s":"原平市"}]},{"n":"临汾市","a":[{"s":"请选择"},{"s":"尧都区"},{"s":"曲沃县"},{"s":"翼城县"},{"s":"襄汾县"},{"s":"洪洞县"},{"s":"古县"},{"s":"安泽县"},{"s":"浮山县"},{"s":"吉县"},{"s":"乡宁县"},{"s":"大宁县"},{"s":"隰县"},{"s":"永和县"},{"s":"蒲县"},{"s":"汾西县"},{"s":"侯马市"},{"s":"霍州市"}]},{"n":"吕梁市","a":[{"s":"请选择"},{"s":"离石区"},{"s":"文水县"},{"s":"交城县"},{"s":"兴县"},{"s":"临县"},{"s":"柳林县"},{"s":"石楼县"},{"s":"岚县"},{"s":"方山县"},{"s":"中阳县"},{"s":"交口县"},{"s":"孝义市"},{"s":"汾阳市"}]}]},{"p":"内蒙古自治区","c":[{"n":"请选择"},{"n":"呼和浩特市","a":[{"s":"请选择"},{"s":"新城区"},{"s":"回民区"},{"s":"玉泉区"},{"s":"赛罕区"},{"s":"土默特左旗"},{"s":"托克托县"},{"s":"和林格尔县"},{"s":"清水河县"},{"s":"武川县"}]},{"n":"包头市","a":[{"s":"请选择"},{"s":"东河区"},{"s":"昆都仑区"},{"s":"青山区"},{"s":"石拐区"},{"s":"白云鄂博矿区"},{"s":"九原区"},{"s":"土默特右旗"},{"s":"固阳县"},{"s":"达尔罕茂明安联合旗"}]},{"n":"乌海市","a":[{"s":"请选择"},{"s":"海勃湾区"},{"s":"海南区"},{"s":"乌达区"}]},{"n":"赤峰市","a":[{"s":"请选择"},{"s":"红山区"},{"s":"元宝山区"},{"s":"松山区"},{"s":"阿鲁科尔沁旗"},{"s":"巴林左旗"},{"s":"巴林右旗"},{"s":"林西县"},{"s":"克什克腾旗"},{"s":"翁牛特旗"},{"s":"喀喇沁旗"},{"s":"宁城县"},{"s":"敖汉旗"}]},{"n":"通辽市","a":[{"s":"请选择"},{"s":"科尔沁区"},{"s":"科尔沁左翼中旗"},{"s":"科尔沁左翼后旗"},{"s":"开鲁县"},{"s":"库伦旗"},{"s":"奈曼旗"},{"s":"扎鲁特旗"},{"s":"霍林郭勒市"}]},{"n":"鄂尔多斯市","a":[{"s":"请选择"},{"s":"东胜区"},{"s":"达拉特旗"},{"s":"准格尔旗"},{"s":"鄂托克前旗"},{"s":"鄂托克旗"},{"s":"杭锦旗"},{"s":"乌审旗"},{"s":"伊金霍洛旗"}]},{"n":"呼伦贝尔市","a":[{"s":"请选择"},{"s":"海拉尔区"},{"s":"扎赉诺尔区"},{"s":"阿荣旗"},{"s":"莫力达瓦达斡尔族自治旗"},{"s":"鄂伦春自治旗"},{"s":"鄂温克族自治旗"},{"s":"陈巴尔虎旗"},{"s":"新巴尔虎左旗"},{"s":"新巴尔虎右旗"},{"s":"满洲里市"},{"s":"牙克石市"},{"s":"扎兰屯市"},{"s":"额尔古纳市"},{"s":"根河市"}]},{"n":"巴彦淖尔市","a":[{"s":"请选择"},{"s":"临河区"},{"s":"五原县"},{"s":"磴口县"},{"s":"乌拉特前旗"},{"s":"乌拉特中旗"},{"s":"乌拉特后旗"},{"s":"杭锦后旗"}]},{"n":"乌兰察布市","a":[{"s":"请选择"},{"s":"集宁区"},{"s":"卓资县"},{"s":"化德县"},{"s":"商都县"},{"s":"兴和县"},{"s":"凉城县"},{"s":"察哈尔右翼前旗"},{"s":"察哈尔右翼中旗"},{"s":"察哈尔右翼后旗"},{"s":"四子王旗"},{"s":"丰镇市"}]},{"n":"兴安盟","a":[{"s":"请选择"},{"s":"乌兰浩特市"},{"s":"阿尔山市"},{"s":"科尔沁右翼前旗"},{"s":"科尔沁右翼中旗"},{"s":"扎赉特旗"},{"s":"突泉县"}]},{"n":"锡林郭勒盟","a":[{"s":"请选择"},{"s":"二连浩特市"},{"s":"锡林浩特市"},{"s":"阿巴嘎旗"},{"s":"苏尼特左旗"},{"s":"苏尼特右旗"},{"s":"东乌珠穆沁旗"},{"s":"西乌珠穆沁旗"},{"s":"太仆寺旗"},{"s":"镶黄旗"},{"s":"正镶白旗"},{"s":"正蓝旗"},{"s":"多伦县"}]},{"n":"阿拉善盟","a":[{"s":"请选择"},{"s":"阿拉善左旗"},{"s":"阿拉善右旗"},{"s":"额济纳旗"}]}]},{"p":"辽宁省","c":[{"n":"请选择"},{"n":"沈阳市","a":[{"s":"请选择"},{"s":"和平区"},{"s":"沈河区"},{"s":"大东区"},{"s":"皇姑区"},{"s":"铁西区"},{"s":"苏家屯区"},{"s":"浑南区"},{"s":"沈北新区"},{"s":"于洪区"},{"s":"辽中县"},{"s":"康平县"},{"s":"法库县"},{"s":"新民市"}]},{"n":"大连市","a":[{"s":"请选择"},{"s":"中山区"},{"s":"西岗区"},{"s":"沙河口区"},{"s":"甘井子区"},{"s":"旅顺口区"},{"s":"金州区"},{"s":"长海县"},{"s":"瓦房店市"},{"s":"普兰店市"},{"s":"庄河市"}]},{"n":"鞍山市","a":[{"s":"请选择"},{"s":"铁东区"},{"s":"铁西区"},{"s":"立山区"},{"s":"千山区"},{"s":"台安县"},{"s":"岫岩满族自治县"},{"s":"海城市"}]},{"n":"抚顺市","a":[{"s":"请选择"},{"s":"新抚区"},{"s":"东洲区"},{"s":"望花区"},{"s":"顺城区"},{"s":"抚顺县"},{"s":"新宾满族自治县"},{"s":"清原满族自治县"}]},{"n":"本溪市","a":[{"s":"请选择"},{"s":"平山区"},{"s":"溪湖区"},{"s":"明山区"},{"s":"南芬区"},{"s":"本溪满族自治县"},{"s":"桓仁满族自治县"}]},{"n":"丹东市","a":[{"s":"请选择"},{"s":"元宝区"},{"s":"振兴区"},{"s":"振安区"},{"s":"宽甸满族自治县"},{"s":"东港市"},{"s":"凤城市"}]},{"n":"锦州市","a":[{"s":"请选择"},{"s":"古塔区"},{"s":"凌河区"},{"s":"太和区"},{"s":"黑山县"},{"s":"义县"},{"s":"凌海市"},{"s":"北镇市"}]},{"n":"营口市","a":[{"s":"请选择"},{"s":"站前区"},{"s":"西市区"},{"s":"鲅鱼圈区"},{"s":"老边区"},{"s":"盖州市"},{"s":"大石桥市"}]},{"n":"阜新市","a":[{"s":"请选择"},{"s":"海州区"},{"s":"新邱区"},{"s":"太平区"},{"s":"清河门区"},{"s":"细河区"},{"s":"阜新蒙古族自治县"},{"s":"彰武县"}]},{"n":"辽阳市","a":[{"s":"请选择"},{"s":"白塔区"},{"s":"文圣区"},{"s":"宏伟区"},{"s":"弓长岭区"},{"s":"太子河区"},{"s":"辽阳县"},{"s":"灯塔市"}]},{"n":"盘锦市","a":[{"s":"请选择"},{"s":"双台子区"},{"s":"兴隆台区"},{"s":"大洼县"},{"s":"盘山县"}]},{"n":"铁岭市","a":[{"s":"请选择"},{"s":"银州区"},{"s":"清河区"},{"s":"铁岭县"},{"s":"西丰县"},{"s":"昌图县"},{"s":"调兵山市"},{"s":"开原市"}]},{"n":"朝阳市","a":[{"s":"请选择"},{"s":"双塔区"},{"s":"龙城区"},{"s":"朝阳县"},{"s":"建平县"},{"s":"喀喇沁左翼蒙古族自治县"},{"s":"北票市"},{"s":"凌源市"}]},{"n":"葫芦岛市","a":[{"s":"请选择"},{"s":"连山区"},{"s":"龙港区"},{"s":"南票区"},{"s":"绥中县"},{"s":"建昌县"},{"s":"兴城市"}]}]},{"p":"吉林省","c":[{"n":"请选择"},{"n":"长春市","a":[{"s":"请选择"},{"s":"南关区"},{"s":"宽城区"},{"s":"朝阳区"},{"s":"二道区"},{"s":"绿园区"},{"s":"双阳区"},{"s":"九台区"},{"s":"农安县"},{"s":"榆树市"},{"s":"德惠市"}]},{"n":"吉林市","a":[{"s":"请选择"},{"s":"昌邑区"},{"s":"龙潭区"},{"s":"船营区"},{"s":"丰满区"},{"s":"永吉县"},{"s":"蛟河市"},{"s":"桦甸市"},{"s":"舒兰市"},{"s":"磐石市"}]},{"n":"四平市","a":[{"s":"请选择"},{"s":"铁西区"},{"s":"铁东区"},{"s":"梨树县"},{"s":"伊通满族自治县"},{"s":"公主岭市"},{"s":"双辽市"}]},{"n":"辽源市","a":[{"s":"请选择"},{"s":"龙山区"},{"s":"西安区"},{"s":"东丰县"},{"s":"东辽县"}]},{"n":"通化市","a":[{"s":"请选择"},{"s":"东昌区"},{"s":"二道江区"},{"s":"通化县"},{"s":"辉南县"},{"s":"柳河县"},{"s":"梅河口市"},{"s":"集安市"}]},{"n":"白山市","a":[{"s":"请选择"},{"s":"浑江区"},{"s":"江源区"},{"s":"抚松县"},{"s":"靖宇县"},{"s":"长白朝鲜族自治县"},{"s":"临江市"}]},{"n":"松原市","a":[{"s":"请选择"},{"s":"宁江区"},{"s":"前郭尔罗斯蒙古族自治县"},{"s":"长岭县"},{"s":"乾安县"},{"s":"扶余市"}]},{"n":"白城市","a":[{"s":"请选择"},{"s":"洮北区"},{"s":"镇赉县"},{"s":"通榆县"},{"s":"洮南市"},{"s":"大安市"}]},{"n":"延边朝鲜族自治州","a":[{"s":"请选择"},{"s":"延吉市"},{"s":"图们市"},{"s":"敦化市"},{"s":"珲春市"},{"s":"龙井市"},{"s":"和龙市"},{"s":"汪清县"},{"s":"安图县"}]}]},{"p":"黑龙江省","c":[{"n":"请选择"},{"n":"哈尔滨市","a":[{"s":"请选择"},{"s":"道里区"},{"s":"南岗区"},{"s":"道外区"},{"s":"平房区"},{"s":"松北区"},{"s":"香坊区"},{"s":"呼兰区"},{"s":"阿城区"},{"s":"依兰县"},{"s":"方正县"},{"s":"宾县"},{"s":"巴彦县"},{"s":"木兰县"},{"s":"通河县"},{"s":"延寿县"},{"s":"双城市"},{"s":"尚志市"},{"s":"五常市"}]},{"n":"齐齐哈尔市","a":[{"s":"请选择"},{"s":"龙沙区"},{"s":"建华区"},{"s":"铁锋区"},{"s":"昂昂溪区"},{"s":"富拉尔基区"},{"s":"碾子山区"},{"s":"梅里斯达斡尔族区"},{"s":"龙江县"},{"s":"依安县"},{"s":"泰来县"},{"s":"甘南县"},{"s":"富裕县"},{"s":"克山县"},{"s":"克东县"},{"s":"拜泉县"},{"s":"讷河市"}]},{"n":"鸡西市","a":[{"s":"请选择"},{"s":"鸡冠区"},{"s":"恒山区"},{"s":"滴道区"},{"s":"梨树区"},{"s":"城子河区"},{"s":"麻山区"},{"s":"鸡东县"},{"s":"虎林市"},{"s":"密山市"}]},{"n":"鹤岗市","a":[{"s":"请选择"},{"s":"向阳区"},{"s":"工农区"},{"s":"南山区"},{"s":"兴安区"},{"s":"东山区"},{"s":"兴山区"},{"s":"萝北县"},{"s":"绥滨县"}]},{"n":"双鸭山市","a":[{"s":"请选择"},{"s":"尖山区"},{"s":"岭东区"},{"s":"四方台区"},{"s":"宝山区"},{"s":"集贤县"},{"s":"友谊县"},{"s":"宝清县"},{"s":"饶河县"}]},{"n":"大庆市","a":[{"s":"请选择"},{"s":"萨尔图区"},{"s":"龙凤区"},{"s":"让胡路区"},{"s":"红岗区"},{"s":"大同区"},{"s":"肇州县"},{"s":"肇源县"},{"s":"林甸县"},{"s":"杜尔伯特蒙古族自治县"}]},{"n":"伊春市","a":[{"s":"请选择"},{"s":"伊春区"},{"s":"南岔区"},{"s":"友好区"},{"s":"西林区"},{"s":"翠峦区"},{"s":"新青区"},{"s":"美溪区"},{"s":"金山屯区"},{"s":"五营区"},{"s":"乌马河区"},{"s":"汤旺河区"},{"s":"带岭区"},{"s":"乌伊岭区"},{"s":"红星区"},{"s":"上甘岭区"},{"s":"嘉荫县"},{"s":"铁力市"}]},{"n":"佳木斯市","a":[{"s":"请选择"},{"s":"向阳区"},{"s":"前进区"},{"s":"东风区"},{"s":"郊区"},{"s":"桦南县"},{"s":"桦川县"},{"s":"汤原县"},{"s":"抚远县"},{"s":"同江市"},{"s":"富锦市"}]},{"n":"七台河市","a":[{"s":"请选择"},{"s":"新兴区"},{"s":"桃山区"},{"s":"茄子河区"},{"s":"勃利县"}]},{"n":"牡丹江市","a":[{"s":"请选择"},{"s":"东安区"},{"s":"阳明区"},{"s":"爱民区"},{"s":"西安区"},{"s":"东宁县"},{"s":"林口县"},{"s":"绥芬河市"},{"s":"海林市"},{"s":"宁安市"},{"s":"穆棱市"}]},{"n":"黑河市","a":[{"s":"请选择"},{"s":"爱辉区"},{"s":"嫩江县"},{"s":"逊克县"},{"s":"孙吴县"},{"s":"北安市"},{"s":"五大连池市"}]},{"n":"绥化市","a":[{"s":"请选择"},{"s":"北林区"},{"s":"望奎县"},{"s":"兰西县"},{"s":"青冈县"},{"s":"庆安县"},{"s":"明水县"},{"s":"绥棱县"},{"s":"安达市"},{"s":"肇东市"},{"s":"海伦市"}]},{"n":"大兴安岭地区","a":[{"s":"请选择"},{"s":"呼玛县"},{"s":"塔河县"},{"s":"漠河县"}]}]},{"p":"上海市","c":[{"n":"请选择"},{"n":"黄浦区"},{"n":"徐汇区"},{"n":"长宁区"},{"n":"静安区"},{"n":"普陀区"},{"n":"闸北区"},{"n":"虹口区"},{"n":"杨浦区"},{"n":"闵行区"},{"n":"宝山区"},{"n":"嘉定区"},{"n":"浦东新区"},{"n":"金山区"},{"n":"松江区"},{"n":"青浦区"},{"n":"奉贤区"},{"n":"崇明县"}]},{"p":"江苏省","c":[{"n":"请选择"},{"n":"南京市","a":[{"s":"请选择"},{"s":"玄武区"},{"s":"秦淮区"},{"s":"建邺区"},{"s":"鼓楼区"},{"s":"浦口区"},{"s":"栖霞区"},{"s":"雨花台区"},{"s":"江宁区"},{"s":"六合区"},{"s":"溧水区"},{"s":"高淳区"}]},{"n":"无锡市","a":[{"s":"请选择"},{"s":"崇安区"},{"s":"南长区"},{"s":"北塘区"},{"s":"锡山区"},{"s":"惠山区"},{"s":"滨湖区"},{"s":"江阴市"},{"s":"宜兴市"}]},{"n":"徐州市","a":[{"s":"请选择"},{"s":"鼓楼区"},{"s":"云龙区"},{"s":"贾汪区"},{"s":"泉山区"},{"s":"铜山区"},{"s":"丰县"},{"s":"沛县"},{"s":"睢宁县"},{"s":"新沂市"},{"s":"邳州市"}]},{"n":"常州市","a":[{"s":"请选择"},{"s":"天宁区"},{"s":"钟楼区"},{"s":"戚墅堰区"},{"s":"新北区"},{"s":"武进区"},{"s":"溧阳市"},{"s":"金坛市"}]},{"n":"苏州市","a":[{"s":"请选择"},{"s":"虎丘区"},{"s":"吴中区"},{"s":"相城区"},{"s":"姑苏区"},{"s":"吴江区"},{"s":"常熟市"},{"s":"张家港市"},{"s":"昆山市"},{"s":"太仓市"}]},{"n":"南通市","a":[{"s":"请选择"},{"s":"崇川区"},{"s":"港闸区"},{"s":"通州区"},{"s":"海安县"},{"s":"如东县"},{"s":"启东市"},{"s":"如皋市"},{"s":"海门市"}]},{"n":"连云港市","a":[{"s":"请选择"},{"s":"连云区"},{"s":"海州区"},{"s":"赣榆区"},{"s":"东海县"},{"s":"灌云县"},{"s":"灌南县"}]},{"n":"淮安市","a":[{"s":"请选择"},{"s":"清河区"},{"s":"淮安区"},{"s":"淮阴区"},{"s":"清浦区"},{"s":"涟水县"},{"s":"洪泽县"},{"s":"盱眙县"},{"s":"金湖县"}]},{"n":"盐城市","a":[{"s":"请选择"},{"s":"亭湖区"},{"s":"盐都区"},{"s":"响水县"},{"s":"滨海县"},{"s":"阜宁县"},{"s":"射阳县"},{"s":"建湖县"},{"s":"东台市"},{"s":"大丰市"}]},{"n":"扬州市","a":[{"s":"请选择"},{"s":"广陵区"},{"s":"邗江区"},{"s":"江都区"},{"s":"宝应县"},{"s":"仪征市"},{"s":"高邮市"}]},{"n":"镇江市","a":[{"s":"请选择"},{"s":"京口区"},{"s":"润州区"},{"s":"丹徒区"},{"s":"丹阳市"},{"s":"扬中市"},{"s":"句容市"}]},{"n":"泰州市","a":[{"s":"请选择"},{"s":"海陵区"},{"s":"高港区"},{"s":"姜堰区"},{"s":"兴化市"},{"s":"靖江市"},{"s":"泰兴市"}]},{"n":"宿迁市","a":[{"s":"请选择"},{"s":"宿城区"},{"s":"宿豫区"},{"s":"沭阳县"},{"s":"泗阳县"},{"s":"泗洪县"}]}]},{"p":"浙江省","c":[{"n":"请选择"},{"n":"杭州市","a":[{"s":"请选择"},{"s":"上城区"},{"s":"下城区"},{"s":"江干区"},{"s":"拱墅区"},{"s":"西湖区"},{"s":"滨江区"},{"s":"萧山区"},{"s":"余杭区"},{"s":"桐庐县"},{"s":"淳安县"},{"s":"建德市"},{"s":"富阳市"},{"s":"临安市"}]},{"n":"宁波市","a":[{"s":"请选择"},{"s":"海曙区"},{"s":"江东区"},{"s":"江北区"},{"s":"北仑区"},{"s":"镇海区"},{"s":"鄞州区"},{"s":"象山县"},{"s":"宁海县"},{"s":"余姚市"},{"s":"慈溪市"},{"s":"奉化市"}]},{"n":"温州市","a":[{"s":"请选择"},{"s":"鹿城区"},{"s":"龙湾区"},{"s":"瓯海区"},{"s":"洞头县"},{"s":"永嘉县"},{"s":"平阳县"},{"s":"苍南县"},{"s":"文成县"},{"s":"泰顺县"},{"s":"瑞安市"},{"s":"乐清市"}]},{"n":"嘉兴市","a":[{"s":"请选择"},{"s":"南湖区"},{"s":"秀洲区"},{"s":"嘉善县"},{"s":"海盐县"},{"s":"海宁市"},{"s":"平湖市"},{"s":"桐乡市"}]},{"n":"湖州市","a":[{"s":"请选择"},{"s":"吴兴区"},{"s":"南浔区"},{"s":"德清县"},{"s":"长兴县"},{"s":"安吉县"}]},{"n":"绍兴市","a":[{"s":"请选择"},{"s":"越城区"},{"s":"柯桥区"},{"s":"上虞区"},{"s":"新昌县"},{"s":"诸暨市"},{"s":"嵊州市"}]},{"n":"金华市","a":[{"s":"请选择"},{"s":"婺城区"},{"s":"金东区"},{"s":"武义县"},{"s":"浦江县"},{"s":"磐安县"},{"s":"兰溪市"},{"s":"义乌市"},{"s":"东阳市"},{"s":"永康市"}]},{"n":"衢州市","a":[{"s":"请选择"},{"s":"柯城区"},{"s":"衢江区"},{"s":"常山县"},{"s":"开化县"},{"s":"龙游县"},{"s":"江山市"}]},{"n":"舟山市","a":[{"s":"请选择"},{"s":"定海区"},{"s":"普陀区"},{"s":"岱山县"},{"s":"嵊泗县"}]},{"n":"台州市","a":[{"s":"请选择"},{"s":"椒江区"},{"s":"黄岩区"},{"s":"路桥区"},{"s":"玉环县"},{"s":"三门县"},{"s":"天台县"},{"s":"仙居县"},{"s":"温岭市"},{"s":"临海市"}]},{"n":"丽水市","a":[{"s":"请选择"},{"s":"莲都区"},{"s":"青田县"},{"s":"缙云县"},{"s":"遂昌县"},{"s":"松阳县"},{"s":"云和县"},{"s":"庆元县"},{"s":"景宁畲族自治县"},{"s":"龙泉市"}]}]},{"p":"安徽省","c":[{"n":"请选择"},{"n":"合肥市","a":[{"s":"请选择"},{"s":"瑶海区"},{"s":"庐阳区"},{"s":"蜀山区"},{"s":"包河区"},{"s":"长丰县"},{"s":"肥东县"},{"s":"肥西县"},{"s":"庐江县"},{"s":"巢湖市"}]},{"n":"芜湖市","a":[{"s":"请选择"},{"s":"镜湖区"},{"s":"弋江区"},{"s":"鸠江区"},{"s":"三山区"},{"s":"芜湖县"},{"s":"繁昌县"},{"s":"南陵县"},{"s":"无为县"}]},{"n":"蚌埠市","a":[{"s":"请选择"},{"s":"龙子湖区"},{"s":"蚌山区"},{"s":"禹会区"},{"s":"淮上区"},{"s":"怀远县"},{"s":"五河县"},{"s":"固镇县"}]},{"n":"淮南市","a":[{"s":"请选择"},{"s":"大通区"},{"s":"田家庵区"},{"s":"谢家集区"},{"s":"八公山区"},{"s":"潘集区"},{"s":"凤台县"}]},{"n":"马鞍山市","a":[{"s":"请选择"},{"s":"花山区"},{"s":"雨山区"},{"s":"博望区"},{"s":"当涂县"},{"s":"含山县"},{"s":"和县"}]},{"n":"淮北市","a":[{"s":"请选择"},{"s":"杜集区"},{"s":"相山区"},{"s":"烈山区"},{"s":"濉溪县"}]},{"n":"铜陵市","a":[{"s":"请选择"},{"s":"铜官山区"},{"s":"狮子山区"},{"s":"郊区"},{"s":"铜陵县"}]},{"n":"安庆市","a":[{"s":"请选择"},{"s":"迎江区"},{"s":"大观区"},{"s":"宜秀区"},{"s":"怀宁县"},{"s":"枞阳县"},{"s":"潜山县"},{"s":"太湖县"},{"s":"宿松县"},{"s":"望江县"},{"s":"岳西县"},{"s":"桐城市"}]},{"n":"黄山市","a":[{"s":"请选择"},{"s":"屯溪区"},{"s":"黄山区"},{"s":"徽州区"},{"s":"歙县"},{"s":"休宁县"},{"s":"黟县"},{"s":"祁门县"}]},{"n":"滁州市","a":[{"s":"请选择"},{"s":"琅琊区"},{"s":"南谯区"},{"s":"来安县"},{"s":"全椒县"},{"s":"定远县"},{"s":"凤阳县"},{"s":"天长市"},{"s":"明光市"}]},{"n":"阜阳市","a":[{"s":"请选择"},{"s":"颍州区"},{"s":"颍东区"},{"s":"颍泉区"},{"s":"临泉县"},{"s":"太和县"},{"s":"阜南县"},{"s":"颍上县"},{"s":"界首市"}]},{"n":"宿州市","a":[{"s":"请选择"},{"s":"埇桥区"},{"s":"砀山县"},{"s":"萧县"},{"s":"灵璧县"},{"s":"泗县"}]},{"n":"六安市","a":[{"s":"请选择"},{"s":"金安区"},{"s":"裕安区"},{"s":"寿县"},{"s":"霍邱县"},{"s":"舒城县"},{"s":"金寨县"},{"s":"霍山县"}]},{"n":"亳州市","a":[{"s":"请选择"},{"s":"谯城区"},{"s":"涡阳县"},{"s":"蒙城县"},{"s":"利辛县"}]},{"n":"池州市","a":[{"s":"请选择"},{"s":"贵池区"},{"s":"东至县"},{"s":"石台县"},{"s":"青阳县"}]},{"n":"宣城市","a":[{"s":"请选择"},{"s":"宣州区"},{"s":"郎溪县"},{"s":"广德县"},{"s":"泾县"},{"s":"绩溪县"},{"s":"旌德县"},{"s":"宁国市"}]}]},{"p":"福建省","c":[{"n":"请选择"},{"n":"福州市","a":[{"s":"请选择"},{"s":"鼓楼区"},{"s":"台江区"},{"s":"仓山区"},{"s":"马尾区"},{"s":"晋安区"},{"s":"闽侯县"},{"s":"连江县"},{"s":"罗源县"},{"s":"闽清县"},{"s":"永泰县"},{"s":"平潭县"},{"s":"福清市"},{"s":"长乐市"}]},{"n":"厦门市","a":[{"s":"请选择"},{"s":"思明区"},{"s":"海沧区"},{"s":"湖里区"},{"s":"集美区"},{"s":"同安区"},{"s":"翔安区"}]},{"n":"莆田市","a":[{"s":"请选择"},{"s":"城厢区"},{"s":"涵江区"},{"s":"荔城区"},{"s":"秀屿区"},{"s":"仙游县"}]},{"n":"三明市","a":[{"s":"请选择"},{"s":"梅列区"},{"s":"三元区"},{"s":"明溪县"},{"s":"清流县"},{"s":"宁化县"},{"s":"大田县"},{"s":"尤溪县"},{"s":"沙县"},{"s":"将乐县"},{"s":"泰宁县"},{"s":"建宁县"},{"s":"永安市"}]},{"n":"泉州市","a":[{"s":"请选择"},{"s":"鲤城区"},{"s":"丰泽区"},{"s":"洛江区"},{"s":"泉港区"},{"s":"惠安县"},{"s":"安溪县"},{"s":"永春县"},{"s":"德化县"},{"s":"金门县"},{"s":"石狮市"},{"s":"晋江市"},{"s":"南安市"}]},{"n":"漳州市","a":[{"s":"请选择"},{"s":"芗城区"},{"s":"龙文区"},{"s":"云霄县"},{"s":"漳浦县"},{"s":"诏安县"},{"s":"长泰县"},{"s":"东山县"},{"s":"南靖县"},{"s":"平和县"},{"s":"华安县"},{"s":"龙海市"}]},{"n":"南平市","a":[{"s":"请选择"},{"s":"延平区"},{"s":"顺昌县"},{"s":"浦城县"},{"s":"光泽县"},{"s":"松溪县"},{"s":"政和县"},{"s":"邵武市"},{"s":"武夷山市"},{"s":"建瓯市"},{"s":"建阳市"}]},{"n":"龙岩市","a":[{"s":"请选择"},{"s":"新罗区"},{"s":"长汀县"},{"s":"永定县"},{"s":"上杭县"},{"s":"武平县"},{"s":"连城县"},{"s":"漳平市"}]},{"n":"宁德市","a":[{"s":"请选择"},{"s":"蕉城区"},{"s":"霞浦县"},{"s":"古田县"},{"s":"屏南县"},{"s":"寿宁县"},{"s":"周宁县"},{"s":"柘荣县"},{"s":"福安市"},{"s":"福鼎市"}]}]},{"p":"江西省","c":[{"n":"请选择"},{"n":"南昌市","a":[{"s":"请选择"},{"s":"东湖区"},{"s":"西湖区"},{"s":"青云谱区"},{"s":"湾里区"},{"s":"青山湖区"},{"s":"南昌县"},{"s":"新建县"},{"s":"安义县"},{"s":"进贤县"}]},{"n":"景德镇市","a":[{"s":"请选择"},{"s":"昌江区"},{"s":"珠山区"},{"s":"浮梁县"},{"s":"乐平市"}]},{"n":"萍乡市","a":[{"s":"请选择"},{"s":"安源区"},{"s":"湘东区"},{"s":"莲花县"},{"s":"上栗县"},{"s":"芦溪县"}]},{"n":"九江市","a":[{"s":"请选择"},{"s":"庐山区"},{"s":"浔阳区"},{"s":"九江县"},{"s":"武宁县"},{"s":"修水县"},{"s":"永修县"},{"s":"德安县"},{"s":"星子县"},{"s":"都昌县"},{"s":"湖口县"},{"s":"彭泽县"},{"s":"瑞昌市"},{"s":"共青城市"}]},{"n":"新余市","a":[{"s":"请选择"},{"s":"渝水区"},{"s":"分宜县"}]},{"n":"鹰潭市","a":[{"s":"请选择"},{"s":"月湖区"},{"s":"余江县"},{"s":"贵溪市"}]},{"n":"赣州市","a":[{"s":"请选择"},{"s":"章贡区"},{"s":"南康区"},{"s":"赣县"},{"s":"信丰县"},{"s":"大余县"},{"s":"上犹县"},{"s":"崇义县"},{"s":"安远县"},{"s":"龙南县"},{"s":"定南县"},{"s":"全南县"},{"s":"宁都县"},{"s":"于都县"},{"s":"兴国县"},{"s":"会昌县"},{"s":"寻乌县"},{"s":"石城县"},{"s":"瑞金市"}]},{"n":"吉安市","a":[{"s":"请选择"},{"s":"吉州区"},{"s":"青原区"},{"s":"吉安县"},{"s":"吉水县"},{"s":"峡江县"},{"s":"新干县"},{"s":"永丰县"},{"s":"泰和县"},{"s":"遂川县"},{"s":"万安县"},{"s":"安福县"},{"s":"永新县"},{"s":"井冈山市"}]},{"n":"宜春市","a":[{"s":"请选择"},{"s":"袁州区"},{"s":"奉新县"},{"s":"万载县"},{"s":"上高县"},{"s":"宜丰县"},{"s":"靖安县"},{"s":"铜鼓县"},{"s":"丰城市"},{"s":"樟树市"},{"s":"高安市"}]},{"n":"抚州市","a":[{"s":"请选择"},{"s":"临川区"},{"s":"南城县"},{"s":"黎川县"},{"s":"南丰县"},{"s":"崇仁县"},{"s":"乐安县"},{"s":"宜黄县"},{"s":"金溪县"},{"s":"资溪县"},{"s":"东乡县"},{"s":"广昌县"}]},{"n":"上饶市","a":[{"s":"请选择"},{"s":"信州区"},{"s":"上饶县"},{"s":"广丰县"},{"s":"玉山县"},{"s":"铅山县"},{"s":"横峰县"},{"s":"弋阳县"},{"s":"余干县"},{"s":"鄱阳县"},{"s":"万年县"},{"s":"婺源县"},{"s":"德兴市"}]}]},{"p":"山东省","c":[{"n":"请选择"},{"n":"济南市","a":[{"s":"请选择"},{"s":"历下区"},{"s":"市中区"},{"s":"槐荫区"},{"s":"天桥区"},{"s":"历城区"},{"s":"长清区"},{"s":"平阴县"},{"s":"济阳县"},{"s":"商河县"},{"s":"章丘市"}]},{"n":"青岛市","a":[{"s":"请选择"},{"s":"市南区"},{"s":"市北区"},{"s":"黄岛区"},{"s":"崂山区"},{"s":"李沧区"},{"s":"城阳区"},{"s":"胶州市"},{"s":"即墨市"},{"s":"平度市"},{"s":"莱西市"}]},{"n":"淄博市","a":[{"s":"请选择"},{"s":"淄川区"},{"s":"张店区"},{"s":"博山区"},{"s":"临淄区"},{"s":"周村区"},{"s":"桓台县"},{"s":"高青县"},{"s":"沂源县"}]},{"n":"枣庄市","a":[{"s":"请选择"},{"s":"市中区"},{"s":"薛城区"},{"s":"峄城区"},{"s":"台儿庄区"},{"s":"山亭区"},{"s":"滕州市"}]},{"n":"东营市","a":[{"s":"请选择"},{"s":"东营区"},{"s":"河口区"},{"s":"垦利县"},{"s":"利津县"},{"s":"广饶县"}]},{"n":"烟台市","a":[{"s":"请选择"},{"s":"芝罘区"},{"s":"福山区"},{"s":"牟平区"},{"s":"莱山区"},{"s":"长岛县"},{"s":"龙口市"},{"s":"莱阳市"},{"s":"莱州市"},{"s":"蓬莱市"},{"s":"招远市"},{"s":"栖霞市"},{"s":"海阳市"}]},{"n":"潍坊市","a":[{"s":"请选择"},{"s":"潍城区"},{"s":"寒亭区"},{"s":"坊子区"},{"s":"奎文区"},{"s":"临朐县"},{"s":"昌乐县"},{"s":"青州市"},{"s":"诸城市"},{"s":"寿光市"},{"s":"安丘市"},{"s":"高密市"},{"s":"昌邑市"}]},{"n":"济宁市","a":[{"s":"请选择"},{"s":"任城区"},{"s":"兖州区"},{"s":"微山县"},{"s":"鱼台县"},{"s":"金乡县"},{"s":"嘉祥县"},{"s":"汶上县"},{"s":"泗水县"},{"s":"梁山县"},{"s":"曲阜市"},{"s":"邹城市"}]},{"n":"泰安市","a":[{"s":"请选择"},{"s":"泰山区"},{"s":"岱岳区"},{"s":"宁阳县"},{"s":"东平县"},{"s":"新泰市"},{"s":"肥城市"}]},{"n":"威海市","a":[{"s":"请选择"},{"s":"环翠区"},{"s":"文登区"},{"s":"荣成市"},{"s":"乳山市"}]},{"n":"日照市","a":[{"s":"请选择"},{"s":"东港区"},{"s":"岚山区"},{"s":"五莲县"},{"s":"莒县"}]},{"n":"莱芜市","a":[{"s":"请选择"},{"s":"莱城区"},{"s":"钢城区"}]},{"n":"临沂市","a":[{"s":"请选择"},{"s":"兰山区"},{"s":"罗庄区"},{"s":"河东区"},{"s":"沂南县"},{"s":"郯城县"},{"s":"沂水县"},{"s":"兰陵县"},{"s":"费县"},{"s":"平邑县"},{"s":"莒南县"},{"s":"蒙阴县"},{"s":"临沭县"}]},{"n":"德州市","a":[{"s":"请选择"},{"s":"德城区"},{"s":"陵城区"},{"s":"宁津县"},{"s":"庆云县"},{"s":"临邑县"},{"s":"齐河县"},{"s":"平原县"},{"s":"夏津县"},{"s":"武城县"},{"s":"乐陵市"},{"s":"禹城市"}]},{"n":"聊城市","a":[{"s":"请选择"},{"s":"东昌府区"},{"s":"阳谷县"},{"s":"莘县"},{"s":"茌平县"},{"s":"东阿县"},{"s":"冠县"},{"s":"高唐县"},{"s":"临清市"}]},{"n":"滨州市","a":[{"s":"请选择"},{"s":"滨城区"},{"s":"沾化区"},{"s":"惠民县"},{"s":"阳信县"},{"s":"无棣县"},{"s":"博兴县"},{"s":"邹平县"}]},{"n":"菏泽市","a":[{"s":"请选择"},{"s":"牡丹区"},{"s":"曹县"},{"s":"单县"},{"s":"成武县"},{"s":"巨野县"},{"s":"郓城县"},{"s":"鄄城县"},{"s":"定陶县"},{"s":"东明县"}]}]},{"p":"河南省","c":[{"n":"请选择"},{"n":"郑州市","a":[{"s":"请选择"},{"s":"中原区"},{"s":"二七区"},{"s":"管城回族区"},{"s":"金水区"},{"s":"上街区"},{"s":"惠济区"},{"s":"中牟县"},{"s":"巩义市"},{"s":"荥阳市"},{"s":"新密市"},{"s":"新郑市"},{"s":"登封市"}]},{"n":"开封市","a":[{"s":"请选择"},{"s":"龙亭区"},{"s":"顺河回族区"},{"s":"鼓楼区"},{"s":"禹王台区"},{"s":"金明区"},{"s":"杞县"},{"s":"通许县"},{"s":"尉氏县"},{"s":"开封县"},{"s":"兰考县"}]},{"n":"洛阳市","a":[{"s":"请选择"},{"s":"老城区"},{"s":"西工区"},{"s":"瀍河回族区"},{"s":"涧西区"},{"s":"吉利区"},{"s":"洛龙区"},{"s":"孟津县"},{"s":"新安县"},{"s":"栾川县"},{"s":"嵩县"},{"s":"汝阳县"},{"s":"宜阳县"},{"s":"洛宁县"},{"s":"伊川县"},{"s":"偃师市"}]},{"n":"平顶山市","a":[{"s":"请选择"},{"s":"新华区"},{"s":"卫东区"},{"s":"石龙区"},{"s":"湛河区"},{"s":"宝丰县"},{"s":"叶县"},{"s":"鲁山县"},{"s":"郏县"},{"s":"舞钢市"},{"s":"汝州市"}]},{"n":"安阳市","a":[{"s":"请选择"},{"s":"文峰区"},{"s":"北关区"},{"s":"殷都区"},{"s":"龙安区"},{"s":"安阳县"},{"s":"汤阴县"},{"s":"滑县"},{"s":"内黄县"},{"s":"林州市"}]},{"n":"鹤壁市","a":[{"s":"请选择"},{"s":"鹤山区"},{"s":"山城区"},{"s":"淇滨区"},{"s":"浚县"},{"s":"淇县"}]},{"n":"新乡市","a":[{"s":"请选择"},{"s":"红旗区"},{"s":"卫滨区"},{"s":"凤泉区"},{"s":"牧野区"},{"s":"新乡县"},{"s":"获嘉县"},{"s":"原阳县"},{"s":"延津县"},{"s":"封丘县"},{"s":"长垣县"},{"s":"卫辉市"},{"s":"辉县市"}]},{"n":"焦作市","a":[{"s":"请选择"},{"s":"解放区"},{"s":"中站区"},{"s":"马村区"},{"s":"山阳区"},{"s":"修武县"},{"s":"博爱县"},{"s":"武陟县"},{"s":"温县"},{"s":"沁阳市"},{"s":"孟州市"}]},{"n":"濮阳市","a":[{"s":"请选择"},{"s":"华龙区"},{"s":"清丰县"},{"s":"南乐县"},{"s":"范县"},{"s":"台前县"},{"s":"濮阳县"}]},{"n":"许昌市","a":[{"s":"请选择"},{"s":"魏都区"},{"s":"许昌县"},{"s":"鄢陵县"},{"s":"襄城县"},{"s":"禹州市"},{"s":"长葛市"}]},{"n":"漯河市","a":[{"s":"请选择"},{"s":"源汇区"},{"s":"郾城区"},{"s":"召陵区"},{"s":"舞阳县"},{"s":"临颍县"}]},{"n":"三门峡市","a":[{"s":"请选择"},{"s":"湖滨区"},{"s":"渑池县"},{"s":"陕县"},{"s":"卢氏县"},{"s":"义马市"},{"s":"灵宝市"}]},{"n":"南阳市","a":[{"s":"请选择"},{"s":"宛城区"},{"s":"卧龙区"},{"s":"南召县"},{"s":"方城县"},{"s":"西峡县"},{"s":"镇平县"},{"s":"内乡县"},{"s":"淅川县"},{"s":"社旗县"},{"s":"唐河县"},{"s":"新野县"},{"s":"桐柏县"},{"s":"邓州市"}]},{"n":"商丘市","a":[{"s":"请选择"},{"s":"梁园区"},{"s":"睢阳区"},{"s":"民权县"},{"s":"睢县"},{"s":"宁陵县"},{"s":"柘城县"},{"s":"虞城县"},{"s":"夏邑县"},{"s":"永城市"}]},{"n":"信阳市","a":[{"s":"请选择"},{"s":"浉河区"},{"s":"平桥区"},{"s":"罗山县"},{"s":"光山县"},{"s":"新县"},{"s":"商城县"},{"s":"固始县"},{"s":"潢川县"},{"s":"淮滨县"},{"s":"息县"}]},{"n":"周口市","a":[{"s":"请选择"},{"s":"川汇区"},{"s":"扶沟县"},{"s":"西华县"},{"s":"商水县"},{"s":"沈丘县"},{"s":"郸城县"},{"s":"淮阳县"},{"s":"太康县"},{"s":"鹿邑县"},{"s":"项城市"}]},{"n":"驻马店市","a":[{"s":"请选择"},{"s":"驿城区"},{"s":"西平县"},{"s":"上蔡县"},{"s":"平舆县"},{"s":"正阳县"},{"s":"确山县"},{"s":"泌阳县"},{"s":"汝南县"},{"s":"遂平县"},{"s":"新蔡县"}]},{"n":"省直辖县级行政区划","a":[{"s":"请选择"},{"s":"济源市"}]}]},{"p":"湖北省","c":[{"n":"请选择"},{"n":"武汉市","a":[{"s":"请选择"},{"s":"江岸区"},{"s":"江汉区"},{"s":"硚口区"},{"s":"汉阳区"},{"s":"武昌区"},{"s":"青山区"},{"s":"洪山区"},{"s":"东西湖区"},{"s":"汉南区"},{"s":"蔡甸区"},{"s":"江夏区"},{"s":"黄陂区"},{"s":"新洲区"}]},{"n":"黄石市","a":[{"s":"请选择"},{"s":"黄石港区"},{"s":"西塞山区"},{"s":"下陆区"},{"s":"铁山区"},{"s":"阳新县"},{"s":"大冶市"}]},{"n":"十堰市","a":[{"s":"请选择"},{"s":"茅箭区"},{"s":"张湾区"},{"s":"郧阳区"},{"s":"郧西县"},{"s":"竹山县"},{"s":"竹溪县"},{"s":"房县"},{"s":"丹江口市"}]},{"n":"宜昌市","a":[{"s":"请选择"},{"s":"西陵区"},{"s":"伍家岗区"},{"s":"点军区"},{"s":"猇亭区"},{"s":"夷陵区"},{"s":"远安县"},{"s":"兴山县"},{"s":"秭归县"},{"s":"长阳土家族自治县"},{"s":"五峰土家族自治县"},{"s":"宜都市"},{"s":"当阳市"},{"s":"枝江市"}]},{"n":"襄阳市","a":[{"s":"请选择"},{"s":"襄城区"},{"s":"樊城区"},{"s":"襄州区"},{"s":"南漳县"},{"s":"谷城县"},{"s":"保康县"},{"s":"老河口市"},{"s":"枣阳市"},{"s":"宜城市"}]},{"n":"鄂州市","a":[{"s":"请选择"},{"s":"梁子湖区"},{"s":"华容区"},{"s":"鄂城区"}]},{"n":"荆门市","a":[{"s":"请选择"},{"s":"东宝区"},{"s":"掇刀区"},{"s":"京山县"},{"s":"沙洋县"},{"s":"钟祥市"}]},{"n":"孝感市","a":[{"s":"请选择"},{"s":"孝南区"},{"s":"孝昌县"},{"s":"大悟县"},{"s":"云梦县"},{"s":"应城市"},{"s":"安陆市"},{"s":"汉川市"}]},{"n":"荆州市","a":[{"s":"请选择"},{"s":"沙市区"},{"s":"荆州区"},{"s":"公安县"},{"s":"监利县"},{"s":"江陵县"},{"s":"石首市"},{"s":"洪湖市"},{"s":"松滋市"}]},{"n":"黄冈市","a":[{"s":"请选择"},{"s":"黄州区"},{"s":"团风县"},{"s":"红安县"},{"s":"罗田县"},{"s":"英山县"},{"s":"浠水县"},{"s":"蕲春县"},{"s":"黄梅县"},{"s":"麻城市"},{"s":"武穴市"}]},{"n":"咸宁市","a":[{"s":"请选择"},{"s":"咸安区"},{"s":"嘉鱼县"},{"s":"通城县"},{"s":"崇阳县"},{"s":"通山县"},{"s":"赤壁市"}]},{"n":"随州市","a":[{"s":"请选择"},{"s":"曾都区"},{"s":"随县"},{"s":"广水市"}]},{"n":"恩施土家族苗族自治州","a":[{"s":"请选择"},{"s":"恩施市"},{"s":"利川市"},{"s":"建始县"},{"s":"巴东县"},{"s":"宣恩县"},{"s":"咸丰县"},{"s":"来凤县"},{"s":"鹤峰县"}]},{"n":"省直辖县级行政区划","a":[{"s":"请选择"},{"s":"仙桃市"},{"s":"潜江市"},{"s":"天门市"},{"s":"神农架林区"}]}]},{"p":"湖南省","c":[{"n":"请选择"},{"n":"长沙市","a":[{"s":"请选择"},{"s":"芙蓉区"},{"s":"天心区"},{"s":"岳麓区"},{"s":"开福区"},{"s":"雨花区"},{"s":"望城区"},{"s":"长沙县"},{"s":"宁乡县"},{"s":"浏阳市"}]},{"n":"株洲市","a":[{"s":"请选择"},{"s":"荷塘区"},{"s":"芦淞区"},{"s":"石峰区"},{"s":"天元区"},{"s":"株洲县"},{"s":"攸县"},{"s":"茶陵县"},{"s":"炎陵县"},{"s":"醴陵市"}]},{"n":"湘潭市","a":[{"s":"请选择"},{"s":"雨湖区"},{"s":"岳塘区"},{"s":"湘潭县"},{"s":"湘乡市"},{"s":"韶山市"}]},{"n":"衡阳市","a":[{"s":"请选择"},{"s":"珠晖区"},{"s":"雁峰区"},{"s":"石鼓区"},{"s":"蒸湘区"},{"s":"南岳区"},{"s":"衡阳县"},{"s":"衡南县"},{"s":"衡山县"},{"s":"衡东县"},{"s":"祁东县"},{"s":"耒阳市"},{"s":"常宁市"}]},{"n":"邵阳市","a":[{"s":"请选择"},{"s":"双清区"},{"s":"大祥区"},{"s":"北塔区"},{"s":"邵东县"},{"s":"新邵县"},{"s":"邵阳县"},{"s":"隆回县"},{"s":"洞口县"},{"s":"绥宁县"},{"s":"新宁县"},{"s":"城步苗族自治县"},{"s":"武冈市"}]},{"n":"岳阳市","a":[{"s":"请选择"},{"s":"岳阳楼区"},{"s":"云溪区"},{"s":"君山区"},{"s":"岳阳县"},{"s":"华容县"},{"s":"湘阴县"},{"s":"平江县"},{"s":"汨罗市"},{"s":"临湘市"}]},{"n":"常德市","a":[{"s":"请选择"},{"s":"武陵区"},{"s":"鼎城区"},{"s":"安乡县"},{"s":"汉寿县"},{"s":"澧县"},{"s":"临澧县"},{"s":"桃源县"},{"s":"石门县"},{"s":"津市市"}]},{"n":"张家界市","a":[{"s":"请选择"},{"s":"永定区"},{"s":"武陵源区"},{"s":"慈利县"},{"s":"桑植县"}]},{"n":"益阳市","a":[{"s":"请选择"},{"s":"资阳区"},{"s":"赫山区"},{"s":"南县"},{"s":"桃江县"},{"s":"安化县"},{"s":"沅江市"}]},{"n":"郴州市","a":[{"s":"请选择"},{"s":"北湖区"},{"s":"苏仙区"},{"s":"桂阳县"},{"s":"宜章县"},{"s":"永兴县"},{"s":"嘉禾县"},{"s":"临武县"},{"s":"汝城县"},{"s":"桂东县"},{"s":"安仁县"},{"s":"资兴市"}]},{"n":"永州市","a":[{"s":"请选择"},{"s":"零陵区"},{"s":"冷水滩区"},{"s":"祁阳县"},{"s":"东安县"},{"s":"双牌县"},{"s":"道县"},{"s":"江永县"},{"s":"宁远县"},{"s":"蓝山县"},{"s":"新田县"},{"s":"江华瑶族自治县"}]},{"n":"怀化市","a":[{"s":"请选择"},{"s":"鹤城区"},{"s":"中方县"},{"s":"沅陵县"},{"s":"辰溪县"},{"s":"溆浦县"},{"s":"会同县"},{"s":"麻阳苗族自治县"},{"s":"新晃侗族自治县"},{"s":"芷江侗族自治县"},{"s":"靖州苗族侗族自治县"},{"s":"通道侗族自治县"},{"s":"洪江市"}]},{"n":"娄底市","a":[{"s":"请选择"},{"s":"娄星区"},{"s":"双峰县"},{"s":"新化县"},{"s":"冷水江市"},{"s":"涟源市"}]},{"n":"湘西土家族苗族自治州","a":[{"s":"请选择"},{"s":"吉首市"},{"s":"泸溪县"},{"s":"凤凰县"},{"s":"花垣县"},{"s":"保靖县"},{"s":"古丈县"},{"s":"永顺县"},{"s":"龙山县"}]}]},{"p":"广东省","c":[{"n":"请选择"},{"n":"广州市","a":[{"s":"请选择"},{"s":"荔湾区"},{"s":"越秀区"},{"s":"海珠区"},{"s":"天河区"},{"s":"白云区"},{"s":"黄埔区"},{"s":"番禺区"},{"s":"花都区"},{"s":"南沙区"},{"s":"萝岗区"},{"s":"从化区"},{"s":"增城区"}]},{"n":"韶关市","a":[{"s":"请选择"},{"s":"武江区"},{"s":"浈江区"},{"s":"曲江区"},{"s":"始兴县"},{"s":"仁化县"},{"s":"翁源县"},{"s":"乳源瑶族自治县"},{"s":"新丰县"},{"s":"乐昌市"},{"s":"南雄市"}]},{"n":"深圳市","a":[{"s":"请选择"},{"s":"罗湖区"},{"s":"福田区"},{"s":"南山区"},{"s":"宝安区"},{"s":"龙岗区"},{"s":"盐田区"}]},{"n":"珠海市","a":[{"s":"请选择"},{"s":"香洲区"},{"s":"斗门区"},{"s":"金湾区"}]},{"n":"汕头市","a":[{"s":"请选择"},{"s":"龙湖区"},{"s":"金平区"},{"s":"濠江区"},{"s":"潮阳区"},{"s":"潮南区"},{"s":"澄海区"},{"s":"南澳县"}]},{"n":"佛山市","a":[{"s":"请选择"},{"s":"禅城区"},{"s":"南海区"},{"s":"顺德区"},{"s":"三水区"},{"s":"高明区"}]},{"n":"江门市","a":[{"s":"请选择"},{"s":"蓬江区"},{"s":"江海区"},{"s":"新会区"},{"s":"台山市"},{"s":"开平市"},{"s":"鹤山市"},{"s":"恩平市"}]},{"n":"湛江市","a":[{"s":"请选择"},{"s":"赤坎区"},{"s":"霞山区"},{"s":"坡头区"},{"s":"麻章区"},{"s":"遂溪县"},{"s":"徐闻县"},{"s":"廉江市"},{"s":"雷州市"},{"s":"吴川市"}]},{"n":"茂名市","a":[{"s":"请选择"},{"s":"茂南区"},{"s":"电白区"},{"s":"高州市"},{"s":"化州市"},{"s":"信宜市"}]},{"n":"肇庆市","a":[{"s":"请选择"},{"s":"端州区"},{"s":"鼎湖区"},{"s":"广宁县"},{"s":"怀集县"},{"s":"封开县"},{"s":"德庆县"},{"s":"高要市"},{"s":"四会市"}]},{"n":"惠州市","a":[{"s":"请选择"},{"s":"惠城区"},{"s":"惠阳区"},{"s":"博罗县"},{"s":"惠东县"},{"s":"龙门县"}]},{"n":"梅州市","a":[{"s":"请选择"},{"s":"梅江区"},{"s":"梅县区"},{"s":"大埔县"},{"s":"丰顺县"},{"s":"五华县"},{"s":"平远县"},{"s":"蕉岭县"},{"s":"兴宁市"}]},{"n":"汕尾市","a":[{"s":"请选择"},{"s":"城区"},{"s":"海丰县"},{"s":"陆河县"},{"s":"陆丰市"}]},{"n":"河源市","a":[{"s":"请选择"},{"s":"源城区"},{"s":"紫金县"},{"s":"龙川县"},{"s":"连平县"},{"s":"和平县"},{"s":"东源县"}]},{"n":"阳江市","a":[{"s":"请选择"},{"s":"江城区"},{"s":"阳西县"},{"s":"阳东县"},{"s":"阳春市"}]},{"n":"清远市","a":[{"s":"请选择"},{"s":"清城区"},{"s":"清新区"},{"s":"佛冈县"},{"s":"阳山县"},{"s":"连山壮族瑶族自治县"},{"s":"连南瑶族自治县"},{"s":"英德市"},{"s":"连州市"}]},{"n":"东莞市"},{"n":"中山市"},{"n":"潮州市","a":[{"s":"请选择"},{"s":"湘桥区"},{"s":"潮安区"},{"s":"饶平县"}]},{"n":"揭阳市","a":[{"s":"请选择"},{"s":"榕城区"},{"s":"揭东区"},{"s":"揭西县"},{"s":"惠来县"},{"s":"普宁市"}]},{"n":"云浮市","a":[{"s":"请选择"},{"s":"云城区"},{"s":"云安区"},{"s":"新兴县"},{"s":"郁南县"},{"s":"罗定市"}]}]},{"p":"广西壮族自治区","c":[{"n":"请选择"},{"n":"南宁市","a":[{"s":"请选择"},{"s":"兴宁区"},{"s":"青秀区"},{"s":"江南区"},{"s":"西乡塘区"},{"s":"良庆区"},{"s":"邕宁区"},{"s":"武鸣县"},{"s":"隆安县"},{"s":"马山县"},{"s":"上林县"},{"s":"宾阳县"},{"s":"横县"}]},{"n":"柳州市","a":[{"s":"请选择"},{"s":"城中区"},{"s":"鱼峰区"},{"s":"柳南区"},{"s":"柳北区"},{"s":"柳江县"},{"s":"柳城县"},{"s":"鹿寨县"},{"s":"融安县"},{"s":"融水苗族自治县"},{"s":"三江侗族自治县"}]},{"n":"桂林市","a":[{"s":"请选择"},{"s":"秀峰区"},{"s":"叠彩区"},{"s":"象山区"},{"s":"七星区"},{"s":"雁山区"},{"s":"临桂区"},{"s":"阳朔县"},{"s":"灵川县"},{"s":"全州县"},{"s":"兴安县"},{"s":"永福县"},{"s":"灌阳县"},{"s":"龙胜各族自治县"},{"s":"资源县"},{"s":"平乐县"},{"s":"荔浦县"},{"s":"恭城瑶族自治县"}]},{"n":"梧州市","a":[{"s":"请选择"},{"s":"万秀区"},{"s":"长洲区"},{"s":"龙圩区"},{"s":"苍梧县"},{"s":"藤县"},{"s":"蒙山县"},{"s":"岑溪市"}]},{"n":"北海市","a":[{"s":"请选择"},{"s":"海城区"},{"s":"银海区"},{"s":"铁山港区"},{"s":"合浦县"}]},{"n":"防城港市","a":[{"s":"请选择"},{"s":"港口区"},{"s":"防城区"},{"s":"上思县"},{"s":"东兴市"}]},{"n":"钦州市","a":[{"s":"请选择"},{"s":"钦南区"},{"s":"钦北区"},{"s":"灵山县"},{"s":"浦北县"}]},{"n":"贵港市","a":[{"s":"请选择"},{"s":"港北区"},{"s":"港南区"},{"s":"覃塘区"},{"s":"平南县"},{"s":"桂平市"}]},{"n":"玉林市","a":[{"s":"请选择"},{"s":"玉州区"},{"s":"福绵区"},{"s":"容县"},{"s":"陆川县"},{"s":"博白县"},{"s":"兴业县"},{"s":"北流市"}]},{"n":"百色市","a":[{"s":"请选择"},{"s":"右江区"},{"s":"田阳县"},{"s":"田东县"},{"s":"平果县"},{"s":"德保县"},{"s":"靖西县"},{"s":"那坡县"},{"s":"凌云县"},{"s":"乐业县"},{"s":"田林县"},{"s":"西林县"},{"s":"隆林各族自治县"}]},{"n":"贺州市","a":[{"s":"请选择"},{"s":"八步区"},{"s":"昭平县"},{"s":"钟山县"},{"s":"富川瑶族自治县"}]},{"n":"河池市","a":[{"s":"请选择"},{"s":"金城江区"},{"s":"南丹县"},{"s":"天峨县"},{"s":"凤山县"},{"s":"东兰县"},{"s":"罗城仫佬族自治县"},{"s":"环江毛南族自治县"},{"s":"巴马瑶族自治县"},{"s":"都安瑶族自治县"},{"s":"大化瑶族自治县"},{"s":"宜州市"}]},{"n":"来宾市","a":[{"s":"请选择"},{"s":"兴宾区"},{"s":"忻城县"},{"s":"象州县"},{"s":"武宣县"},{"s":"金秀瑶族自治县"},{"s":"合山市"}]},{"n":"崇左市","a":[{"s":"请选择"},{"s":"江州区"},{"s":"扶绥县"},{"s":"宁明县"},{"s":"龙州县"},{"s":"大新县"},{"s":"天等县"},{"s":"凭祥市"}]}]},{"p":"海南省","c":[{"n":"请选择"},{"n":"海口市","a":[{"s":"请选择"},{"s":"秀英区"},{"s":"龙华区"},{"s":"琼山区"},{"s":"美兰区"}]},{"n":"三亚市","a":[{"s":"请选择"},{"s":"海棠区"},{"s":"吉阳区"},{"s":"天涯区"},{"s":"崖州区"}]},{"n":"三沙市"},{"n":"省直辖县级行政区划","a":[{"s":"请选择"},{"s":"五指山市"},{"s":"琼海市"},{"s":"儋州市"},{"s":"文昌市"},{"s":"万宁市"},{"s":"东方市"},{"s":"定安县"},{"s":"屯昌县"},{"s":"澄迈县"},{"s":"临高县"},{"s":"白沙黎族自治县"},{"s":"昌江黎族自治县"},{"s":"乐东黎族自治县"},{"s":"陵水黎族自治县"},{"s":"保亭黎族苗族自治县"},{"s":"琼中黎族苗族自治县"}]}]},{"p":"重庆市","c":[{"n":"请选择"},{"n":"万州区"},{"n":"涪陵区"},{"n":"渝中区"},{"n":"大渡口区"},{"n":"江北区"},{"n":"沙坪坝区"},{"n":"九龙坡区"},{"n":"南岸区"},{"n":"北碚区"},{"n":"綦江区"},{"n":"大足区"},{"n":"渝北区"},{"n":"巴南区"},{"n":"黔江区"},{"n":"长寿区"},{"n":"江津区"},{"n":"合川区"},{"n":"永川区"},{"n":"南川区"},{"n":"璧山区"},{"n":"铜梁区"},{"n":"潼南县"},{"n":"荣昌县"},{"n":"梁平县"},{"n":"城口县"},{"n":"丰都县"},{"n":"垫江县"},{"n":"武隆县"},{"n":"忠县"},{"n":"开县"},{"n":"云阳县"},{"n":"奉节县"},{"n":"巫山县"},{"n":"巫溪县"},{"n":"石柱土家族自治县"},{"n":"秀山土家族苗族自治县"},{"n":"酉阳土家族苗族自治县"},{"n":"彭水苗族土家族自治县"}]},{"p":"四川省","c":[{"n":"请选择"},{"n":"成都市","a":[{"s":"请选择"},{"s":"锦江区"},{"s":"青羊区"},{"s":"金牛区"},{"s":"武侯区"},{"s":"成华区"},{"s":"龙泉驿区"},{"s":"青白江区"},{"s":"新都区"},{"s":"温江区"},{"s":"金堂县"},{"s":"双流县"},{"s":"郫县"},{"s":"大邑县"},{"s":"蒲江县"},{"s":"新津县"},{"s":"都江堰市"},{"s":"彭州市"},{"s":"邛崃市"},{"s":"崇州市"}]},{"n":"自贡市","a":[{"s":"请选择"},{"s":"自流井区"},{"s":"贡井区"},{"s":"大安区"},{"s":"沿滩区"},{"s":"荣县"},{"s":"富顺县"}]},{"n":"攀枝花市","a":[{"s":"请选择"},{"s":"东区"},{"s":"西区"},{"s":"仁和区"},{"s":"米易县"},{"s":"盐边县"}]},{"n":"泸州市","a":[{"s":"请选择"},{"s":"江阳区"},{"s":"纳溪区"},{"s":"龙马潭区"},{"s":"泸县"},{"s":"合江县"},{"s":"叙永县"},{"s":"古蔺县"}]},{"n":"德阳市","a":[{"s":"请选择"},{"s":"旌阳区"},{"s":"中江县"},{"s":"罗江县"},{"s":"广汉市"},{"s":"什邡市"},{"s":"绵竹市"}]},{"n":"绵阳市","a":[{"s":"请选择"},{"s":"涪城区"},{"s":"游仙区"},{"s":"三台县"},{"s":"盐亭县"},{"s":"安县"},{"s":"梓潼县"},{"s":"北川羌族自治县"},{"s":"平武县"},{"s":"江油市"}]},{"n":"广元市","a":[{"s":"请选择"},{"s":"利州区"},{"s":"昭化区"},{"s":"朝天区"},{"s":"旺苍县"},{"s":"青川县"},{"s":"剑阁县"},{"s":"苍溪县"}]},{"n":"遂宁市","a":[{"s":"请选择"},{"s":"船山区"},{"s":"安居区"},{"s":"蓬溪县"},{"s":"射洪县"},{"s":"大英县"}]},{"n":"内江市","a":[{"s":"请选择"},{"s":"市中区"},{"s":"东兴区"},{"s":"威远县"},{"s":"资中县"},{"s":"隆昌县"}]},{"n":"乐山市","a":[{"s":"请选择"},{"s":"市中区"},{"s":"沙湾区"},{"s":"五通桥区"},{"s":"金口河区"},{"s":"犍为县"},{"s":"井研县"},{"s":"夹江县"},{"s":"沐川县"},{"s":"峨边彝族自治县"},{"s":"马边彝族自治县"},{"s":"峨眉山市"}]},{"n":"南充市","a":[{"s":"请选择"},{"s":"顺庆区"},{"s":"高坪区"},{"s":"嘉陵区"},{"s":"南部县"},{"s":"营山县"},{"s":"蓬安县"},{"s":"仪陇县"},{"s":"西充县"},{"s":"阆中市"}]},{"n":"眉山市","a":[{"s":"请选择"},{"s":"东坡区"},{"s":"仁寿县"},{"s":"彭山县"},{"s":"洪雅县"},{"s":"丹棱县"},{"s":"青神县"}]},{"n":"宜宾市","a":[{"s":"请选择"},{"s":"翠屏区"},{"s":"南溪区"},{"s":"宜宾县"},{"s":"江安县"},{"s":"长宁县"},{"s":"高县"},{"s":"珙县"},{"s":"筠连县"},{"s":"兴文县"},{"s":"屏山县"}]},{"n":"广安市","a":[{"s":"请选择"},{"s":"广安区"},{"s":"前锋区"},{"s":"岳池县"},{"s":"武胜县"},{"s":"邻水县"},{"s":"华蓥市"}]},{"n":"达州市","a":[{"s":"请选择"},{"s":"通川区"},{"s":"达川区"},{"s":"宣汉县"},{"s":"开江县"},{"s":"大竹县"},{"s":"渠县"},{"s":"万源市"}]},{"n":"雅安市","a":[{"s":"请选择"},{"s":"雨城区"},{"s":"名山区"},{"s":"荥经县"},{"s":"汉源县"},{"s":"石棉县"},{"s":"天全县"},{"s":"芦山县"},{"s":"宝兴县"}]},{"n":"巴中市","a":[{"s":"请选择"},{"s":"巴州区"},{"s":"恩阳区"},{"s":"通江县"},{"s":"南江县"},{"s":"平昌县"}]},{"n":"资阳市","a":[{"s":"请选择"},{"s":"雁江区"},{"s":"安岳县"},{"s":"乐至县"},{"s":"简阳市"}]},{"n":"阿坝藏族羌族自治州","a":[{"s":"请选择"},{"s":"汶川县"},{"s":"理县"},{"s":"茂县"},{"s":"松潘县"},{"s":"九寨沟县"},{"s":"金川县"},{"s":"小金县"},{"s":"黑水县"},{"s":"马尔康县"},{"s":"壤塘县"},{"s":"阿坝县"},{"s":"若尔盖县"},{"s":"红原县"}]},{"n":"甘孜藏族自治州","a":[{"s":"请选择"},{"s":"康定县"},{"s":"泸定县"},{"s":"丹巴县"},{"s":"九龙县"},{"s":"雅江县"},{"s":"道孚县"},{"s":"炉霍县"},{"s":"甘孜县"},{"s":"新龙县"},{"s":"德格县"},{"s":"白玉县"},{"s":"石渠县"},{"s":"色达县"},{"s":"理塘县"},{"s":"巴塘县"},{"s":"乡城县"},{"s":"稻城县"},{"s":"得荣县"}]},{"n":"凉山彝族自治州","a":[{"s":"请选择"},{"s":"西昌市"},{"s":"木里藏族自治县"},{"s":"盐源县"},{"s":"德昌县"},{"s":"会理县"},{"s":"会东县"},{"s":"宁南县"},{"s":"普格县"},{"s":"布拖县"},{"s":"金阳县"},{"s":"昭觉县"},{"s":"喜德县"},{"s":"冕宁县"},{"s":"越西县"},{"s":"甘洛县"},{"s":"美姑县"},{"s":"雷波县"}]}]},{"p":"贵州省","c":[{"n":"请选择"},{"n":"贵阳市","a":[{"s":"请选择"},{"s":"南明区"},{"s":"云岩区"},{"s":"花溪区"},{"s":"乌当区"},{"s":"白云区"},{"s":"观山湖区"},{"s":"开阳县"},{"s":"息烽县"},{"s":"修文县"},{"s":"清镇市"}]},{"n":"六盘水市","a":[{"s":"请选择"},{"s":"钟山区"},{"s":"六枝特区"},{"s":"水城县"},{"s":"盘县"}]},{"n":"遵义市","a":[{"s":"请选择"},{"s":"红花岗区"},{"s":"汇川区"},{"s":"遵义县"},{"s":"桐梓县"},{"s":"绥阳县"},{"s":"正安县"},{"s":"道真仡佬族苗族自治县"},{"s":"务川仡佬族苗族自治县"},{"s":"凤冈县"},{"s":"湄潭县"},{"s":"余庆县"},{"s":"习水县"},{"s":"赤水市"},{"s":"仁怀市"}]},{"n":"安顺市","a":[{"s":"请选择"},{"s":"西秀区"},{"s":"平坝县"},{"s":"普定县"},{"s":"镇宁布依族苗族自治县"},{"s":"关岭布依族苗族自治县"},{"s":"紫云苗族布依族自治县"}]},{"n":"毕节市","a":[{"s":"请选择"},{"s":"七星关区"},{"s":"大方县"},{"s":"黔西县"},{"s":"金沙县"},{"s":"织金县"},{"s":"纳雍县"},{"s":"威宁彝族回族苗族自治县"},{"s":"赫章县"}]},{"n":"铜仁市","a":[{"s":"请选择"},{"s":"碧江区"},{"s":"万山区"},{"s":"江口县"},{"s":"玉屏侗族自治县"},{"s":"石阡县"},{"s":"思南县"},{"s":"印江土家族苗族自治县"},{"s":"德江县"},{"s":"沿河土家族自治县"},{"s":"松桃苗族自治县"}]},{"n":"黔西南布依族苗族自治州","a":[{"s":"请选择"},{"s":"兴义市"},{"s":"兴仁县"},{"s":"普安县"},{"s":"晴隆县"},{"s":"贞丰县"},{"s":"望谟县"},{"s":"册亨县"},{"s":"安龙县"}]},{"n":"黔东南苗族侗族自治州","a":[{"s":"请选择"},{"s":"凯里市"},{"s":"黄平县"},{"s":"施秉县"},{"s":"三穗县"},{"s":"镇远县"},{"s":"岑巩县"},{"s":"天柱县"},{"s":"锦屏县"},{"s":"剑河县"},{"s":"台江县"},{"s":"黎平县"},{"s":"榕江县"},{"s":"从江县"},{"s":"雷山县"},{"s":"麻江县"},{"s":"丹寨县"}]},{"n":"黔南布依族苗族自治州","a":[{"s":"请选择"},{"s":"都匀市"},{"s":"福泉市"},{"s":"荔波县"},{"s":"贵定县"},{"s":"瓮安县"},{"s":"独山县"},{"s":"平塘县"},{"s":"罗甸县"},{"s":"长顺县"},{"s":"龙里县"},{"s":"惠水县"},{"s":"三都水族自治县"}]}]},{"p":"云南省","c":[{"n":"请选择"},{"n":"昆明市","a":[{"s":"请选择"},{"s":"五华区"},{"s":"盘龙区"},{"s":"官渡区"},{"s":"西山区"},{"s":"东川区"},{"s":"呈贡区"},{"s":"晋宁县"},{"s":"富民县"},{"s":"宜良县"},{"s":"石林彝族自治县"},{"s":"嵩明县"},{"s":"禄劝彝族苗族自治县"},{"s":"寻甸回族彝族自治县"},{"s":"安宁市"}]},{"n":"曲靖市","a":[{"s":"请选择"},{"s":"麒麟区"},{"s":"马龙县"},{"s":"陆良县"},{"s":"师宗县"},{"s":"罗平县"},{"s":"富源县"},{"s":"会泽县"},{"s":"沾益县"},{"s":"宣威市"}]},{"n":"玉溪市","a":[{"s":"请选择"},{"s":"红塔区"},{"s":"江川县"},{"s":"澄江县"},{"s":"通海县"},{"s":"华宁县"},{"s":"易门县"},{"s":"峨山彝族自治县"},{"s":"新平彝族傣族自治县"},{"s":"元江哈尼族彝族傣族自治县"}]},{"n":"保山市","a":[{"s":"请选择"},{"s":"隆阳区"},{"s":"施甸县"},{"s":"腾冲县"},{"s":"龙陵县"},{"s":"昌宁县"}]},{"n":"昭通市","a":[{"s":"请选择"},{"s":"昭阳区"},{"s":"鲁甸县"},{"s":"巧家县"},{"s":"盐津县"},{"s":"大关县"},{"s":"永善县"},{"s":"绥江县"},{"s":"镇雄县"},{"s":"彝良县"},{"s":"威信县"},{"s":"水富县"}]},{"n":"丽江市","a":[{"s":"请选择"},{"s":"古城区"},{"s":"玉龙纳西族自治县"},{"s":"永胜县"},{"s":"华坪县"},{"s":"宁蒗彝族自治县"}]},{"n":"普洱市","a":[{"s":"请选择"},{"s":"思茅区"},{"s":"宁洱哈尼族彝族自治县"},{"s":"墨江哈尼族自治县"},{"s":"景东彝族自治县"},{"s":"景谷傣族彝族自治县"},{"s":"镇沅彝族哈尼族拉祜族自治县"},{"s":"江城哈尼族彝族自治县"},{"s":"孟连傣族拉祜族佤族自治县"},{"s":"澜沧拉祜族自治县"},{"s":"西盟佤族自治县"}]},{"n":"临沧市","a":[{"s":"请选择"},{"s":"临翔区"},{"s":"凤庆县"},{"s":"云县"},{"s":"永德县"},{"s":"镇康县"},{"s":"双江拉祜族佤族布朗族傣族自治县"},{"s":"耿马傣族佤族自治县"},{"s":"沧源佤族自治县"}]},{"n":"楚雄彝族自治州","a":[{"s":"请选择"},{"s":"楚雄市"},{"s":"双柏县"},{"s":"牟定县"},{"s":"南华县"},{"s":"姚安县"},{"s":"大姚县"},{"s":"永仁县"},{"s":"元谋县"},{"s":"武定县"},{"s":"禄丰县"}]},{"n":"红河哈尼族彝族自治州","a":[{"s":"请选择"},{"s":"个旧市"},{"s":"开远市"},{"s":"蒙自市"},{"s":"弥勒市"},{"s":"屏边苗族自治县"},{"s":"建水县"},{"s":"石屏县"},{"s":"泸西县"},{"s":"元阳县"},{"s":"红河县"},{"s":"金平苗族瑶族傣族自治县"},{"s":"绿春县"},{"s":"河口瑶族自治县"}]},{"n":"文山壮族苗族自治州","a":[{"s":"请选择"},{"s":"文山市"},{"s":"砚山县"},{"s":"西畴县"},{"s":"麻栗坡县"},{"s":"马关县"},{"s":"丘北县"},{"s":"广南县"},{"s":"富宁县"}]},{"n":"西双版纳傣族自治州","a":[{"s":"请选择"},{"s":"景洪市"},{"s":"勐海县"},{"s":"勐腊县"}]},{"n":"大理白族自治州","a":[{"s":"请选择"},{"s":"大理市"},{"s":"漾濞彝族自治县"},{"s":"祥云县"},{"s":"宾川县"},{"s":"弥渡县"},{"s":"南涧彝族自治县"},{"s":"巍山彝族回族自治县"},{"s":"永平县"},{"s":"云龙县"},{"s":"洱源县"},{"s":"剑川县"},{"s":"鹤庆县"}]},{"n":"德宏傣族景颇族自治州","a":[{"s":"请选择"},{"s":"瑞丽市"},{"s":"芒市"},{"s":"梁河县"},{"s":"盈江县"},{"s":"陇川县"}]},{"n":"怒江傈僳族自治州","a":[{"s":"请选择"},{"s":"泸水县"},{"s":"福贡县"},{"s":"贡山独龙族怒族自治县"},{"s":"兰坪白族普米族自治县"}]},{"n":"迪庆藏族自治州","a":[{"s":"请选择"},{"s":"香格里拉县"},{"s":"德钦县"},{"s":"维西傈僳族自治县"}]}]},{"p":"西藏自治区","c":[{"n":"请选择"},{"n":"拉萨市","a":[{"s":"请选择"},{"s":"城关区"},{"s":"林周县"},{"s":"当雄县"},{"s":"尼木县"},{"s":"曲水县"},{"s":"堆龙德庆县"},{"s":"达孜县"},{"s":"墨竹工卡县"}]},{"n":"日喀则市","a":[{"s":"请选择"},{"s":"桑珠孜区"},{"s":"南木林县"},{"s":"江孜县"},{"s":"定日县"},{"s":"萨迦县"},{"s":"拉孜县"},{"s":"昂仁县"},{"s":"谢通门县"},{"s":"白朗县"},{"s":"仁布县"},{"s":"康马县"},{"s":"定结县"},{"s":"仲巴县"},{"s":"亚东县"},{"s":"吉隆县"},{"s":"聂拉木县"},{"s":"萨嘎县"},{"s":"岗巴县"}]},{"n":"昌都地区","a":[{"s":"请选择"},{"s":"昌都县"},{"s":"江达县"},{"s":"贡觉县"},{"s":"类乌齐县"},{"s":"丁青县"},{"s":"察雅县"},{"s":"八宿县"},{"s":"左贡县"},{"s":"芒康县"},{"s":"洛隆县"},{"s":"边坝县"}]},{"n":"山南地区","a":[{"s":"请选择"},{"s":"乃东县"},{"s":"扎囊县"},{"s":"贡嘎县"},{"s":"桑日县"},{"s":"琼结县"},{"s":"曲松县"},{"s":"措美县"},{"s":"洛扎县"},{"s":"加查县"},{"s":"隆子县"},{"s":"错那县"},{"s":"浪卡子县"}]},{"n":"那曲地区","a":[{"s":"请选择"},{"s":"那曲县"},{"s":"嘉黎县"},{"s":"比如县"},{"s":"聂荣县"},{"s":"安多县"},{"s":"申扎县"},{"s":"索县"},{"s":"班戈县"},{"s":"巴青县"},{"s":"尼玛县"},{"s":"双湖县"}]},{"n":"阿里地区","a":[{"s":"请选择"},{"s":"普兰县"},{"s":"札达县"},{"s":"噶尔县"},{"s":"日土县"},{"s":"革吉县"},{"s":"改则县"},{"s":"措勤县"}]},{"n":"林芝地区","a":[{"s":"请选择"},{"s":"林芝县"},{"s":"工布江达县"},{"s":"米林县"},{"s":"墨脱县"},{"s":"波密县"},{"s":"察隅县"},{"s":"朗县"}]}]},{"p":"陕西省","c":[{"n":"请选择"},{"n":"西安市","a":[{"s":"请选择"},{"s":"新城区"},{"s":"碑林区"},{"s":"莲湖区"},{"s":"灞桥区"},{"s":"未央区"},{"s":"雁塔区"},{"s":"阎良区"},{"s":"临潼区"},{"s":"长安区"},{"s":"蓝田县"},{"s":"周至县"},{"s":"户县"},{"s":"高陵县"}]},{"n":"铜川市","a":[{"s":"请选择"},{"s":"王益区"},{"s":"印台区"},{"s":"耀州区"},{"s":"宜君县"}]},{"n":"宝鸡市","a":[{"s":"请选择"},{"s":"渭滨区"},{"s":"金台区"},{"s":"陈仓区"},{"s":"凤翔县"},{"s":"岐山县"},{"s":"扶风县"},{"s":"眉县"},{"s":"陇县"},{"s":"千阳县"},{"s":"麟游县"},{"s":"凤县"},{"s":"太白县"}]},{"n":"咸阳市","a":[{"s":"请选择"},{"s":"秦都区"},{"s":"杨陵区"},{"s":"渭城区"},{"s":"三原县"},{"s":"泾阳县"},{"s":"乾县"},{"s":"礼泉县"},{"s":"永寿县"},{"s":"彬县"},{"s":"长武县"},{"s":"旬邑县"},{"s":"淳化县"},{"s":"武功县"},{"s":"兴平市"}]},{"n":"渭南市","a":[{"s":"请选择"},{"s":"临渭区"},{"s":"华县"},{"s":"潼关县"},{"s":"大荔县"},{"s":"合阳县"},{"s":"澄城县"},{"s":"蒲城县"},{"s":"白水县"},{"s":"富平县"},{"s":"韩城市"},{"s":"华阴市"}]},{"n":"延安市","a":[{"s":"请选择"},{"s":"宝塔区"},{"s":"延长县"},{"s":"延川县"},{"s":"子长县"},{"s":"安塞县"},{"s":"志丹县"},{"s":"吴起县"},{"s":"甘泉县"},{"s":"富县"},{"s":"洛川县"},{"s":"宜川县"},{"s":"黄龙县"},{"s":"黄陵县"}]},{"n":"汉中市","a":[{"s":"请选择"},{"s":"汉台区"},{"s":"南郑县"},{"s":"城固县"},{"s":"洋县"},{"s":"西乡县"},{"s":"勉县"},{"s":"宁强县"},{"s":"略阳县"},{"s":"镇巴县"},{"s":"留坝县"},{"s":"佛坪县"}]},{"n":"榆林市","a":[{"s":"请选择"},{"s":"榆阳区"},{"s":"神木县"},{"s":"府谷县"},{"s":"横山县"},{"s":"靖边县"},{"s":"定边县"},{"s":"绥德县"},{"s":"米脂县"},{"s":"佳县"},{"s":"吴堡县"},{"s":"清涧县"},{"s":"子洲县"}]},{"n":"安康市","a":[{"s":"请选择"},{"s":"汉滨区"},{"s":"汉阴县"},{"s":"石泉县"},{"s":"宁陕县"},{"s":"紫阳县"},{"s":"岚皋县"},{"s":"平利县"},{"s":"镇坪县"},{"s":"旬阳县"},{"s":"白河县"}]},{"n":"商洛市","a":[{"s":"请选择"},{"s":"商州区"},{"s":"洛南县"},{"s":"丹凤县"},{"s":"商南县"},{"s":"山阳县"},{"s":"镇安县"},{"s":"柞水县"}]}]},{"p":"甘肃省","c":[{"n":"请选择"},{"n":"兰州市","a":[{"s":"请选择"},{"s":"城关区"},{"s":"七里河区"},{"s":"西固区"},{"s":"安宁区"},{"s":"红古区"},{"s":"永登县"},{"s":"皋兰县"},{"s":"榆中县"}]},{"n":"嘉峪关市","a":[{"s":"请选择"},{"s":"市辖区"}]},{"n":"金昌市","a":[{"s":"请选择"},{"s":"金川区"},{"s":"永昌县"}]},{"n":"白银市","a":[{"s":"请选择"},{"s":"白银区"},{"s":"平川区"},{"s":"靖远县"},{"s":"会宁县"},{"s":"景泰县"}]},{"n":"天水市","a":[{"s":"请选择"},{"s":"秦州区"},{"s":"麦积区"},{"s":"清水县"},{"s":"秦安县"},{"s":"甘谷县"},{"s":"武山县"},{"s":"张家川回族自治县"}]},{"n":"武威市","a":[{"s":"请选择"},{"s":"凉州区"},{"s":"民勤县"},{"s":"古浪县"},{"s":"天祝藏族自治县"}]},{"n":"张掖市","a":[{"s":"请选择"},{"s":"甘州区"},{"s":"肃南裕固族自治县"},{"s":"民乐县"},{"s":"临泽县"},{"s":"高台县"},{"s":"山丹县"}]},{"n":"平凉市","a":[{"s":"请选择"},{"s":"崆峒区"},{"s":"泾川县"},{"s":"灵台县"},{"s":"崇信县"},{"s":"华亭县"},{"s":"庄浪县"},{"s":"静宁县"}]},{"n":"酒泉市","a":[{"s":"请选择"},{"s":"肃州区"},{"s":"金塔县"},{"s":"瓜州县"},{"s":"肃北蒙古族自治县"},{"s":"阿克塞哈萨克族自治县"},{"s":"玉门市"},{"s":"敦煌市"}]},{"n":"庆阳市","a":[{"s":"请选择"},{"s":"西峰区"},{"s":"庆城县"},{"s":"环县"},{"s":"华池县"},{"s":"合水县"},{"s":"正宁县"},{"s":"宁县"},{"s":"镇原县"}]},{"n":"定西市","a":[{"s":"请选择"},{"s":"安定区"},{"s":"通渭县"},{"s":"陇西县"},{"s":"渭源县"},{"s":"临洮县"},{"s":"漳县"},{"s":"岷县"}]},{"n":"陇南市","a":[{"s":"请选择"},{"s":"武都区"},{"s":"成县"},{"s":"文县"},{"s":"宕昌县"},{"s":"康县"},{"s":"西和县"},{"s":"礼县"},{"s":"徽县"},{"s":"两当县"}]},{"n":"临夏回族自治州","a":[{"s":"请选择"},{"s":"临夏市"},{"s":"临夏县"},{"s":"康乐县"},{"s":"永靖县"},{"s":"广河县"},{"s":"和政县"},{"s":"东乡族自治县"},{"s":"积石山保安族东乡族撒拉族自治县"}]},{"n":"甘南藏族自治州","a":[{"s":"请选择"},{"s":"合作市"},{"s":"临潭县"},{"s":"卓尼县"},{"s":"舟曲县"},{"s":"迭部县"},{"s":"玛曲县"},{"s":"碌曲县"},{"s":"夏河县"}]}]},{"p":"青海省","c":[{"n":"请选择"},{"n":"西宁市","a":[{"s":"请选择"},{"s":"城东区"},{"s":"城中区"},{"s":"城西区"},{"s":"城北区"},{"s":"大通回族土族自治县"},{"s":"湟中县"},{"s":"湟源县"}]},{"n":"海东市","a":[{"s":"请选择"},{"s":"乐都区"},{"s":"平安县"},{"s":"民和回族土族自治县"},{"s":"互助土族自治县"},{"s":"化隆回族自治县"},{"s":"循化撒拉族自治县"}]},{"n":"海北藏族自治州","a":[{"s":"请选择"},{"s":"门源回族自治县"},{"s":"祁连县"},{"s":"海晏县"},{"s":"刚察县"}]},{"n":"黄南藏族自治州","a":[{"s":"请选择"},{"s":"同仁县"},{"s":"尖扎县"},{"s":"泽库县"},{"s":"河南蒙古族自治县"}]},{"n":"海南藏族自治州","a":[{"s":"请选择"},{"s":"共和县"},{"s":"同德县"},{"s":"贵德县"},{"s":"兴海县"},{"s":"贵南县"}]},{"n":"果洛藏族自治州","a":[{"s":"请选择"},{"s":"玛沁县"},{"s":"班玛县"},{"s":"甘德县"},{"s":"达日县"},{"s":"久治县"},{"s":"玛多县"}]},{"n":"玉树藏族自治州","a":[{"s":"请选择"},{"s":"玉树市"},{"s":"杂多县"},{"s":"称多县"},{"s":"治多县"},{"s":"囊谦县"},{"s":"曲麻莱县"}]},{"n":"海西蒙古族藏族自治州","a":[{"s":"请选择"},{"s":"格尔木市"},{"s":"德令哈市"},{"s":"乌兰县"},{"s":"都兰县"},{"s":"天峻县"}]}]},{"p":"宁夏回族自治区","c":[{"n":"请选择"},{"n":"银川市","a":[{"s":"请选择"},{"s":"兴庆区"},{"s":"西夏区"},{"s":"金凤区"},{"s":"永宁县"},{"s":"贺兰县"},{"s":"灵武市"}]},{"n":"石嘴山市","a":[{"s":"请选择"},{"s":"大武口区"},{"s":"惠农区"},{"s":"平罗县"}]},{"n":"吴忠市","a":[{"s":"请选择"},{"s":"利通区"},{"s":"红寺堡区"},{"s":"盐池县"},{"s":"同心县"},{"s":"青铜峡市"}]},{"n":"固原市","a":[{"s":"请选择"},{"s":"原州区"},{"s":"西吉县"},{"s":"隆德县"},{"s":"泾源县"},{"s":"彭阳县"}]},{"n":"中卫市","a":[{"s":"请选择"},{"s":"沙坡头区"},{"s":"中宁县"},{"s":"海原县"}]}]},{"p":"新疆维吾尔自治区","c":[{"n":"请选择"},{"n":"乌鲁木齐市","a":[{"s":"请选择"},{"s":"天山区"},{"s":"沙依巴克区"},{"s":"新市区"},{"s":"水磨沟区"},{"s":"头屯河区"},{"s":"达坂城区"},{"s":"米东区"},{"s":"乌鲁木齐县"}]},{"n":"克拉玛依市","a":[{"s":"请选择"},{"s":"独山子区"},{"s":"克拉玛依区"},{"s":"白碱滩区"},{"s":"乌尔禾区"}]},{"n":"吐鲁番地区","a":[{"s":"请选择"},{"s":"吐鲁番市"},{"s":"鄯善县"},{"s":"托克逊县"}]},{"n":"哈密地区","a":[{"s":"请选择"},{"s":"哈密市"},{"s":"巴里坤哈萨克自治县"},{"s":"伊吾县"}]},{"n":"昌吉回族自治州","a":[{"s":"请选择"},{"s":"昌吉市"},{"s":"阜康市"},{"s":"呼图壁县"},{"s":"玛纳斯县"},{"s":"奇台县"},{"s":"吉木萨尔县"},{"s":"木垒哈萨克自治县"}]},{"n":"博尔塔拉蒙古自治州","a":[{"s":"请选择"},{"s":"博乐市"},{"s":"阿拉山口市"},{"s":"精河县"},{"s":"温泉县"}]},{"n":"巴音郭楞蒙古自治州","a":[{"s":"请选择"},{"s":"库尔勒市"},{"s":"轮台县"},{"s":"尉犁县"},{"s":"若羌县"},{"s":"且末县"},{"s":"焉耆回族自治县"},{"s":"和静县"},{"s":"和硕县"},{"s":"博湖县"}]},{"n":"阿克苏地区","a":[{"s":"请选择"},{"s":"阿克苏市"},{"s":"温宿县"},{"s":"库车县"},{"s":"沙雅县"},{"s":"新和县"},{"s":"拜城县"},{"s":"乌什县"},{"s":"阿瓦提县"},{"s":"柯坪县"}]},{"n":"克孜勒苏柯尔克孜自治州","a":[{"s":"请选择"},{"s":"阿图什市"},{"s":"阿克陶县"},{"s":"阿合奇县"},{"s":"乌恰县"}]},{"n":"喀什地区","a":[{"s":"请选择"},{"s":"喀什市"},{"s":"疏附县"},{"s":"疏勒县"},{"s":"英吉沙县"},{"s":"泽普县"},{"s":"莎车县"},{"s":"叶城县"},{"s":"麦盖提县"},{"s":"岳普湖县"},{"s":"伽师县"},{"s":"巴楚县"},{"s":"塔什库尔干塔吉克自治县"}]},{"n":"和田地区","a":[{"s":"请选择"},{"s":"和田市"},{"s":"和田县"},{"s":"墨玉县"},{"s":"皮山县"},{"s":"洛浦县"},{"s":"策勒县"},{"s":"于田县"},{"s":"民丰县"}]},{"n":"伊犁哈萨克自治州","a":[{"s":"请选择"},{"s":"伊宁市"},{"s":"奎屯市"},{"s":"伊宁县"},{"s":"察布查尔锡伯自治县"},{"s":"霍城县"},{"s":"巩留县"},{"s":"新源县"},{"s":"昭苏县"},{"s":"特克斯县"},{"s":"尼勒克县"}]},{"n":"塔城地区","a":[{"s":"请选择"},{"s":"塔城市"},{"s":"乌苏市"},{"s":"额敏县"},{"s":"沙湾县"},{"s":"托里县"},{"s":"裕民县"},{"s":"和布克赛尔蒙古自治县"}]},{"n":"阿勒泰地区","a":[{"s":"请选择"},{"s":"阿勒泰市"},{"s":"布尔津县"},{"s":"富蕴县"},{"s":"福海县"},{"s":"哈巴河县"},{"s":"青河县"},{"s":"吉木乃县"}]},{"n":"自治区直辖县级行政区划","a":[{"s":"请选择"},{"s":"石河子市"},{"s":"阿拉尔市"},{"s":"图木舒克市"},{"s":"五家渠市"}]}]},{"p":"香港特别行政区","c":[{"n":"请选择"},{"n":"中西区"},{"n":"湾仔区"},{"n":"东区"},{"n":"南区"},{"n":"油尖旺区"},{"n":"深水埗区"},{"n":"九龙城区"},{"n":"黄大仙区"},{"n":"观塘区"},{"n":"葵青区"},{"n":"荃湾区"},{"n":"屯门区"},{"n":"元朗区"},{"n":"北区"},{"n":"大埔区"},{"n":"沙田区"},{"n":"西贡区"},{"n":"离岛区"}]},{"p":"澳门特别行政区","c":[{"n":"请选择"},{"n":"花地玛堂区"},{"n":"圣安多尼堂区"},{"n":"大堂区"},{"n":"望德堂区"},{"n":"风顺堂区"},{"n":"嘉模堂区"},{"n":"圣方济各堂区"},{"n":"路氹城"}]},{"p":"台湾","c":[{"n":"请选择"},{"n":"台北市"},{"n":"新北市"},{"n":"桃园市"},{"n":"台中市"},{"n":"台南市"},{"n":"高雄市"},{"n":"基隆市"},{"n":"新竹市"},{"n":"嘉义市"},{"n":"新竹县"},{"n":"苗栗县"},{"n":"彰化县"},{"n":"南投县"},{"n":"云林县"},{"n":"嘉义县"},{"n":"屏东县"},{"n":"宜兰县"},{"n":"花莲县"},{"n":"台东县"},{"n":"澎湖县"},{"n":"金门县"},{"n":"连江县"}]},{"p":"国外"}]} \ No newline at end of file diff --git a/src/update/update.class.php b/src/update/update.class.php index e20c734..85cbd35 100644 --- a/src/update/update.class.php +++ b/src/update/update.class.php @@ -194,16 +194,16 @@ class update extends admin{ //数据库创建 protected function table_field() { global $_M; - // 小区资料库 + // 场所资料库 $zdytable['village'] = " `id` int(11) NOT NULL AUTO_INCREMENT, - `v_name` varchar(255) NOT NULL COMMENT '小区名称', + `v_name` varchar(255) NOT NULL COMMENT '场所名称', `v_type` varchar(255) NOT NULL COMMENT '分类', `v_province` varchar(255) NOT NULL COMMENT '省', `v_city` varchar(255) NOT NULL COMMENT '市', `v_district` varchar(255) NOT NULL COMMENT '区', `v_address` varchar(255) NOT NULL COMMENT '详细地址', `v_wid` varchar(255) COMMENT '相关联系人', - `v_price` decimal(10,2) DEFAULT NULL COMMENT '小区均价', + `v_price` decimal(10,2) DEFAULT NULL COMMENT '场所均价', `v_psize` int(11) COMMENT '居住人口规模', `v_text` text COMMENT '备注', `v_updatetime` datetime DEFAULT NULL, @@ -239,20 +239,17 @@ class update extends admin{ `w_addtime` datetime DEFAULT NULL, PRIMARY KEY (`id`)"; - // 小区电梯 // 同一个广告位置 不可重复 $zdytable['elevator'] = " `id` int(11) NOT NULL AUTO_INCREMENT, - `e_vid` int(11) COMMENT '小区ID', + `e_vid` int(11) COMMENT '场所ID', `e_number` varchar(100) NOT NULL COMMENT '广告位编号,用于后期各表操作', - `e_bno` int(11) NOT NULL COMMENT '楼号', - `e_uno` int(11) NOT NULL COMMENT '单元号', - `e_eno` int(11) NOT NULL COMMENT '电梯号', + `e_bno` int(11) NOT NULL COMMENT '道闸方位', `e_aps` int(11) NOT NULL COMMENT '广告位置', `e_size` varchar(255) NOT NULL COMMENT '广告位尺寸大小', `e_enable` tinyint(1) NOT NULL DEFAULT '1' COMMENT '是否启用 0 不启用,1 为启用', `e_label` text COMMENT '自主标签', `e_text` text COMMENT '备注', - UNIQUE KEY `elidno` (`e_vid`,`e_bno`,`e_uno`,`e_eno`,`e_aps`), + UNIQUE KEY `elidno` (`e_vid`,`e_bno`,`e_aps`), UNIQUE KEY `enumber` (`e_number`), PRIMARY KEY (`id`)"; @@ -305,7 +302,7 @@ class update extends admin{ // 参数配置 $zdytable['para'] = " `id` int(11) NOT NULL AUTO_INCREMENT, - `p_type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '参数分类 0广告位置,1职位,2合同状态,3楼号,4单元号,5电梯编号', + `p_type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '参数分类 0广告位置,1职位,2合同状态,3道闸方位', `p_order` int(11) DEFAULT '0' COMMENT '排序', `p_name` varchar(255) COMMENT '名称', `p_value` int(11) COMMENT '参数值,必须为数字', @@ -447,8 +444,6 @@ class update extends admin{ e.e_vid, e.e_number, e.e_bno, - e.e_uno, - e.e_eno, e.e_aps, e.e_enable, l.id AS l_id, diff --git a/web/select.class.php b/web/select.class.php index 583aec6..58d347e 100644 --- a/web/select.class.php +++ b/web/select.class.php @@ -241,7 +241,7 @@ class select extends appweb { } - // 查看小区名称列表 + // 查看场所名称列表 public function doselect() { global $_M,$_YW; //判断条件