diff --git a/README.md b/README.md
index d5b0e0c950c4fa5436c3159bcd9105d8469b6f6d..f243781b39bf06d16abbc5457f04670d23961c5e 100644
--- a/README.md
+++ b/README.md
@@ -138,8 +138,8 @@ npm run dev
# 打包(可选)
npm run build
-# 将 dist 目录下的文件 copy 到 php/public 目录。
```
+~~npm run build 命令会自动将 dist 目录下的文件 copy 到 laravel/public 目录下。~~
## 域名绑定
域名需要绑定到根目录,即项目的 laravel/public 目录下。
@@ -149,7 +149,7 @@ npm run build
```shell
server {
listen 443 ssl;
- root /www/vueBus/laravel/public;
+ root /www/laravel-vue-admin/laravel/public;
server_name www.guke1.com; # 改为绑定证书的域名
# ssl 配置
@@ -217,8 +217,8 @@ upstream laravels {
server {
listen 80;
# 别忘了绑Host哟
- server_name www.bus.com;
- root /home/www/vueBus/laravel/public;
+ server_name www.guke1.com;
+ root /home/www/laravel-vue-admin/laravel/public;
access_log /home/wwwlogs/nginx/$server_name.access.log;
autoindex off;
index index.html index.htm;
diff --git a/admin/src/api/config.js b/admin/src/api/config.js
new file mode 100644
index 0000000000000000000000000000000000000000..5027985ca42c8d6616ddb8a00c795878791278ae
--- /dev/null
+++ b/admin/src/api/config.js
@@ -0,0 +1,37 @@
+import request from '@/utils/request'
+
+export function getList(params) {
+ return request({
+ url: '/api/config',
+ method: 'get',
+ params
+ })
+}
+
+export function postAdd(params) {
+ return request.post('/api/config', params)
+}
+
+export function edit(id) {
+ return request.get('/api/config/' + id)
+}
+
+export function postEdit(id, params) {
+ return request.patch('/api/config/' + id, params)
+}
+
+export function deleteAct(id) {
+ return request.delete('/api/config/' + id)
+}
+
+/**
+ * 搜索 config
+ * @param params
+ */
+export function search(params) {
+ return request({
+ url: '/api/config_search',
+ method: 'get',
+ params
+ })
+}
diff --git a/admin/src/router/router.js b/admin/src/router/router.js
index a1371739ad3ff188f6117f837ee19330b9f4772e..30bcf06b580325172cea6bba6b556feab576f6dc 100644
--- a/admin/src/router/router.js
+++ b/admin/src/router/router.js
@@ -137,7 +137,7 @@ export const routeSuper = [
{
path: 'config',
name: '配置管理',
- component: () => import('@/views/lines/index'),
+ component: () => import('@/views/config/index'),
meta: { title: '配置列表', icon: 'table', roles: [Super] }
},
{
diff --git a/admin/src/views/api_excel/index.vue b/admin/src/views/api_excel/index.vue
index ab5e11bc5da8ed4cd5d30f77cb9884382ab75668..9ce16f70d6753c76cfb4828d5ea8cc7ae6f0683f 100644
--- a/admin/src/views/api_excel/index.vue
+++ b/admin/src/views/api_excel/index.vue
@@ -157,7 +157,8 @@ export default {
},
created() {
this.listQuery = this.$route.query
- this.currentpage = parseInt(this.listQuery.page)
+ const page = parseInt(this.listQuery.page)
+ this.currentpage = isNaN(page) ? 1 : page
const perPage = parseInt(this.$route.query.perPage)
this.perpage = isNaN(perPage) ? this.perpage : perPage
// this.fetchData()
@@ -222,7 +223,7 @@ export default {
},
initWebSocket() { // 初始化 weosocket
if ('WebSocket' in window) {
- const url = process.env.WEBSOCKET + '?action=api_excel&token=' + getToken()
+ const url = process.env.WEBSOCKET + '?action=api_excel&token=' + getToken() + '&page=' + this.currentpage + '&perPage=' + this.perpage
this.websock = new WebSocket(url)
this.websock.onmessage = this.onmessage
this.websock.onopen = this.onopen
diff --git a/admin/src/views/config/index.vue b/admin/src/views/config/index.vue
new file mode 100644
index 0000000000000000000000000000000000000000..2f610fb870eddbc4d111a0b9667f13bb184dd474
--- /dev/null
+++ b/admin/src/views/config/index.vue
@@ -0,0 +1,102 @@
+
+
+
+
+
+
+
+
+
+
+ 开启公交配置情况--【1: 老接口,2: 新接口,3: 先老接口再新接口,4: 先新接口后老接口】
+
+
+
+
+
+ 提交
+ 重置
+
+
+
+
+
+
+
+
+
diff --git a/laravel/app/Http/Controllers/Api/ArticleController.php b/laravel/app/Http/Controllers/Api/ArticleController.php
index 7fe00e6ef360699561adad18a886e47b701b4a9c..a83e0c780d6b012070de37cf9ce978abf64068fc 100644
--- a/laravel/app/Http/Controllers/Api/ArticleController.php
+++ b/laravel/app/Http/Controllers/Api/ArticleController.php
@@ -42,7 +42,7 @@ class ArticleController extends Controller
*/
public function index()
{
- $list = Article::orderBy('id', 'DESC')->paginate($this->perPage);
+ $list = Article::orderBy('id', 'DESC')->select('id', 'title', 'author', 'keywords', 'created_at')->paginate($this->perPage);
return $this->out(200, $list);
}
diff --git a/laravel/app/Http/Controllers/Api/ConfigController.php b/laravel/app/Http/Controllers/Api/ConfigController.php
new file mode 100644
index 0000000000000000000000000000000000000000..9f7cc4d67e4a92aa8a94dcd4c40fa7e5e77b1225
--- /dev/null
+++ b/laravel/app/Http/Controllers/Api/ConfigController.php
@@ -0,0 +1,148 @@
+middleware(['auth:api', 'role']);
+ // 另外关于上面的中间件,官方文档写的是『auth:api』
+ // 但是我推荐用 『jwt.auth』,效果是一样的,但是有更加丰富的报错信息返回
+
+ $perPage = intval($request->input('perPage'));
+ $this->perPage = $perPage ?? 11;
+ }
+
+ /**
+ * Display a listing of the resource.
+ *
+ * @return \Illuminate\Http\Response
+ */
+ public function index()
+ {
+ $list = [];
+ foreach ($this->allow as $item) {
+ $list[$item] = Cache::get($item) ?? '';
+ }
+ return $this->out(200, $list);
+ }
+
+ /**
+ * Show the form for creating a new resource.
+ *
+ * @return \Illuminate\Http\Response
+ */
+ public function create()
+ {
+ return $this->out(200, ['method' => 'create']);
+ }
+
+ /**
+ * Store a newly created resource in storage.
+ * 新增入库操作
+ *
+ * @param Request $request
+ * @return \Illuminate\Http\Response
+ */
+ public function store(Request $request)
+ {
+ // 全部数据
+ $input = $request->all();
+ // 存入缓存数据
+ foreach ($input as $key => $item) {
+ if (in_array($key, $this->allow)) {
+ Cache::forever($key, $item);
+ }
+ }
+ return $this->out(200);
+ }
+
+ /**
+ * Display the specified resource.
+ * 展示某个详情数据
+ *
+ * @param Config $Config
+ *
+ * @return \Illuminate\Http\Response
+ */
+ public function show(Config $Config)
+ {
+ return $this->out(200, $Config);
+ }
+
+ /**
+ * Show the form for editing the specified resource.
+ * 编辑展示数据
+ *
+ * @param int $id
+ *
+ * @return \Illuminate\Http\Response
+ */
+ public function edit($id)
+ {
+ $data = Config::findOrFail($id);
+ return $this->out(200, $data);
+ }
+
+ /**
+ * Update the specified resource in storage.
+ * 更新数据
+ *
+ * @param Request $request
+ * @param int $id
+ * @return \Illuminate\Http\Response
+ */
+ public function update(Request $request, $id)
+ {
+ $input = $request->all();
+ // $model = new Config();$model->save($input, ['id' => $id]);
+ // 老版本更新操作如下,新版本先查询再更新
+ // Config::where('id', $id)->update($input)
+ $Config = Config::findOrFail($id);
+ if ($Config->update($input)) {
+ return $this->out(200, ['data' => ['id' => $id]]);
+ } else {
+ return $this->out(4000);
+ }
+ }
+
+ /**
+ * Remove the specified resource from storage.
+ *
+ * @param int $id
+ * @return \Illuminate\Http\Response
+ * @throws \Exception
+ */
+ public function destroy($id)
+ {
+ if (Config::findOrFail($id)->delete()) {
+ $data = ['msg' => '删除成功', 'errno' => 0];
+ } else {
+ $data = ['msg' => '删除失败', 'errno' => 2];
+ }
+ return $this->out(200, $data);
+ }
+}
diff --git a/laravel/app/Http/Controllers/Bus/AutoController.php b/laravel/app/Http/Controllers/Bus/AutoController.php
index 329de61a0a444890014fe13c0252d3b44ce0c928..d01cbd9362fc353007b48b100791d2e3b432651e 100644
--- a/laravel/app/Http/Controllers/Bus/AutoController.php
+++ b/laravel/app/Http/Controllers/Bus/AutoController.php
@@ -18,7 +18,7 @@ class AutoController extends Controller
public function __construct()
{
- $this->http = Http::getInstent();
+ $this->http || $this->http = Http::getInstent();
}
/**
* 获取七牛 Token 的方法
diff --git a/laravel/app/Http/Controllers/Bus/IndexController.php b/laravel/app/Http/Controllers/Bus/IndexController.php
index 6e30574b5a9ffc973a71300c2062102e58afa691..c8d499887360d4217d7688e88e881f74d3d4283c 100644
--- a/laravel/app/Http/Controllers/Bus/IndexController.php
+++ b/laravel/app/Http/Controllers/Bus/IndexController.php
@@ -11,6 +11,7 @@ namespace App\Http\Controllers\Bus;
use App\Http\Repository\BusRepository;
use App\Http\Repository\NewBusRepository;
use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Cache;
class IndexController extends CommonController
{
@@ -41,24 +42,74 @@ class IndexController extends CommonController
{
$line = $request['linename'];
$line = preg_replace('/快\b(\d)/', '快线$1号', $line);
- switch ($request['type']) {
- case '1':
- case 'new':
- $list = NewBusRepository::getInstent()->getLine($line);
- break;
-
- default:
- // $list = BusRepository::getInstent()->getList($line);
- $list = [];
- if (empty($list)) {
- $list = NewBusRepository::getInstent()->getLine($line);
- }
+ // 1. 前端直接传递 type 参数时先判断
+ if (isset($request['type'])) {
+ switch ($request['type']) {
+ case '1':
+ case 'new':
+ $list = $this->getNewList($line);
+ break;
+ default:
+ $list = $this->getOldList($line);
+ // $list = [];
+ if (empty($list)) {
+ $list = $this->getNewList($line);
+ }
+ }
+ } else {
+ // 2. 根据后台配置查询不同的结果
+ $default_open = Cache::get('default_open');
+ switch ($default_open) {
+ case '2': // 查询新版
+ $list = $this->getNewList($line);
+ break;
+ case '3': // 先查老版再查新版
+ $list = $this->getOldList($line);
+ // $list = [];
+ if (empty($list)) {
+ $list = $this->getNewList($line);
+ }
+ break;
+ case '4': // 先查新版再查老版
+ $list = $this->getNewList($line);
+ // $list = [];
+ if (empty($list)) {
+ $list = $this->getOldList($line);
+ }
+ break;
+ default: // 查询老版
+ $list = $this->getOldList($line);
+ }
}
// return $this->exportData($list);
return $this->out(200, $list);
}
+ /**
+ * 获取老线路列表
+ *
+ * @param $line
+ *
+ * @return array
+ */
+ private function getNewList($line)
+ {
+ return NewBusRepository::getInstent()->getLine($line);
+ }
+
+ /**
+ * 获取老线路列表
+ *
+ * @param $line
+ *
+ * @return array
+ */
+ private function getOldList($line)
+ {
+ return BusRepository::getInstent()->getList($line);
+ }
+
/**
* 获取实时公交数据table列表 --- 根据data-href 地址,请求 szjt.gov.cn 查询实时公交数据,不能缓存
* 获取实时公交数据table列表,数据来自 szjt.gov.cn,需要限制访问频率,1秒一次请求
diff --git a/laravel/app/Http/Repository/MultithreadingRepository.php b/laravel/app/Http/Repository/MultithreadingRepository.php
index 68cb47d11de0285024a41a2790a87a0b3ac5861a..f8c7555718ce2af5b525fcbbf053de4d095d3871 100644
--- a/laravel/app/Http/Repository/MultithreadingRepository.php
+++ b/laravel/app/Http/Repository/MultithreadingRepository.php
@@ -444,14 +444,15 @@ class MultithreadingRepository
$insert = [
'title' => $this->api_excel_id,
'markdown' => json_encode($this->data, JSON_UNESCAPED_UNICODE),
- 'content' => json_encode($this->dataSet['data'], JSON_UNESCAPED_UNICODE)
+ 'content' => json_encode($this->dataSet['data'], JSON_UNESCAPED_UNICODE),
+ 'created_at' => date('Y-m-d H:i:s'),
];
Article::insert($insert);
$returnArray = [];
foreach ($this->data as $k => $v) {
if (!isset($this->dataSet['data'][$k])) {
- Article::insert(['title' => $this->api_excel_id, 'content' => $k]);
+ Article::insert(['title' => $this->api_excel_id, 'content' => $k, 'created_at' => date('Y-m-d H:i:s')]);
return [];
}
$returnArray[$k]['param'] = $this->dataSet['data'][$k];
diff --git a/laravel/public/index.html b/laravel/public/index.html
index 3c098c65c20d40e3df7d05a771252affba9f5e4c..2fa931698c719648f55d604c79836e49d247b6b2 100644
--- a/laravel/public/index.html
+++ b/laravel/public/index.html
@@ -1 +1 @@
-
Laravel-vue-admin 后台管理系统
\ No newline at end of file
+Laravel-vue-admin 后台管理系统
\ No newline at end of file
diff --git a/laravel/public/static/css/chunk-0090.4e19e95e.css b/laravel/public/static/css/chunk-0090.4e19e95e.css
new file mode 100644
index 0000000000000000000000000000000000000000..9e48ae6df6b4cec3de104284c0a7eb4d7fa3ab22
--- /dev/null
+++ b/laravel/public/static/css/chunk-0090.4e19e95e.css
@@ -0,0 +1 @@
+.line[data-v-5e7dc39c]{text-align:center}
\ No newline at end of file
diff --git a/laravel/public/static/css/chunk-01a2.65e79044.css b/laravel/public/static/css/chunk-01a2.65e79044.css
deleted file mode 100644
index fae2d3c72412443d5ff680cc7b495a7f9f92a01e..0000000000000000000000000000000000000000
--- a/laravel/public/static/css/chunk-01a2.65e79044.css
+++ /dev/null
@@ -1 +0,0 @@
-.el-row[data-v-03a7e190]{margin-bottom:20px}.pagination[data-v-03a7e190]{margin:20px auto}.reload[data-v-03a7e190]{margin-right:300px;float:right}
\ No newline at end of file
diff --git a/laravel/public/static/css/chunk-1496.ce297c01.css b/laravel/public/static/css/chunk-164a.881f336f.css
similarity index 100%
rename from laravel/public/static/css/chunk-1496.ce297c01.css
rename to laravel/public/static/css/chunk-164a.881f336f.css
diff --git a/laravel/public/static/css/chunk-2164.47a17e74.css b/laravel/public/static/css/chunk-2319.33ab6a18.css
similarity index 100%
rename from laravel/public/static/css/chunk-2164.47a17e74.css
rename to laravel/public/static/css/chunk-2319.33ab6a18.css
diff --git a/laravel/public/static/css/chunk-0def.5954d1f8.css b/laravel/public/static/css/chunk-3379.eb95dec8.css
similarity index 100%
rename from laravel/public/static/css/chunk-0def.5954d1f8.css
rename to laravel/public/static/css/chunk-3379.eb95dec8.css
diff --git a/laravel/public/static/css/chunk-41b9.b122ba1b.css b/laravel/public/static/css/chunk-41b9.b122ba1b.css
new file mode 100644
index 0000000000000000000000000000000000000000..1dcfe1b87f0d8de4b519fcb745deafe8b3af4819
--- /dev/null
+++ b/laravel/public/static/css/chunk-41b9.b122ba1b.css
@@ -0,0 +1 @@
+.el-row[data-v-6d88329c]{margin-bottom:20px}.pagination[data-v-6d88329c]{margin:20px auto}.reload[data-v-6d88329c]{margin-right:300px;float:right}
\ No newline at end of file
diff --git a/laravel/public/static/css/chunk-4707.b2580f00.css b/laravel/public/static/css/chunk-439e.a90fda38.css
similarity index 100%
rename from laravel/public/static/css/chunk-4707.b2580f00.css
rename to laravel/public/static/css/chunk-439e.a90fda38.css
diff --git a/laravel/public/static/css/chunk-5ba7.427207a0.css b/laravel/public/static/css/chunk-5d5c.aef73eaa.css
similarity index 100%
rename from laravel/public/static/css/chunk-5ba7.427207a0.css
rename to laravel/public/static/css/chunk-5d5c.aef73eaa.css
diff --git a/laravel/public/static/css/chunk-7951.854044ea.css b/laravel/public/static/css/chunk-75e7.f6104db0.css
similarity index 100%
rename from laravel/public/static/css/chunk-7951.854044ea.css
rename to laravel/public/static/css/chunk-75e7.f6104db0.css
diff --git a/laravel/public/static/css/chunk-98bc.75dd30d2.css b/laravel/public/static/css/chunk-9552.8bac1840.css
similarity index 100%
rename from laravel/public/static/css/chunk-98bc.75dd30d2.css
rename to laravel/public/static/css/chunk-9552.8bac1840.css
diff --git a/laravel/public/static/css/chunk-b5cc.e3382e7b.css b/laravel/public/static/css/chunk-b262.ee477ce2.css
similarity index 100%
rename from laravel/public/static/css/chunk-b5cc.e3382e7b.css
rename to laravel/public/static/css/chunk-b262.ee477ce2.css
diff --git a/laravel/public/static/css/chunk-d993.041a1eac.css b/laravel/public/static/css/chunk-d62a.d723259d.css
similarity index 100%
rename from laravel/public/static/css/chunk-d993.041a1eac.css
rename to laravel/public/static/css/chunk-d62a.d723259d.css
diff --git a/laravel/public/static/css/chunk-f78c.0afee40d.css b/laravel/public/static/css/chunk-f422.37758734.css
similarity index 100%
rename from laravel/public/static/css/chunk-f78c.0afee40d.css
rename to laravel/public/static/css/chunk-f422.37758734.css
diff --git a/laravel/public/static/js/app.292194fe.js b/laravel/public/static/js/app.b6c37f94.js
similarity index 98%
rename from laravel/public/static/js/app.292194fe.js
rename to laravel/public/static/js/app.b6c37f94.js
index c0bc0cabd48c75abd2a2d75a27976a28a716d5a2..66a5ff5777dfecdfb57ed354b33a28acc489972f 100644
--- a/laravel/public/static/js/app.292194fe.js
+++ b/laravel/public/static/js/app.b6c37f94.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([["app"],{"/OCX":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-ico-table",use:"icon-ico-table-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},"0faV":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-article",use:"icon-article-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},"3PhE":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-nested",use:"icon-nested-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},"6xvN":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-form",use:"icon-form-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},"8fzN":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-tag",use:"icon-tag-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},"96Go":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-ico-aliyun",use:"icon-ico-aliyun-usage",viewBox:"0 0 1844 1024",content:''});o.a.add(s);n.default=s},"9ChT":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-category",use:"icon-category-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},"A0++":function(e,n,t){"use strict";var i=t("xUNX");t.n(i).a},Ahhv:function(e,n,t){},BKkR:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-ico-article",use:"icon-ico-article-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},GPBF:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-link",use:"icon-link-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},Hoqj:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-ico-category",use:"icon-ico-category-usage",viewBox:"0 0 1260 1024",content:''});o.a.add(s);n.default=s},Kj24:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-password",use:"icon-password-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},LyEU:function(e,n,t){"use strict";var i=t("m821");t.n(i).a},MMMJ:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-example",use:"icon-example-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},OXmT:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-permission",use:"icon-permission-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},Q2AE:function(e,n,t){"use strict";var i=t("Kw5r"),a=t("L2JU"),c=t("p46w"),o=t.n(c),s={state:{sidebar:{opened:!+o.a.get("sidebarStatus"),withoutAnimation:!1},device:"desktop"},mutations:{TOGGLE_SIDEBAR:function(e){e.sidebar.opened?o.a.set("sidebarStatus",1):o.a.set("sidebarStatus",0),e.sidebar.opened=!e.sidebar.opened,e.sidebar.withoutAnimation=!1},CLOSE_SIDEBAR:function(e,n){o.a.set("sidebarStatus",1),e.sidebar.opened=!1,e.sidebar.withoutAnimation=n},TOGGLE_DEVICE:function(e,n){e.device=n}},actions:{ToggleSideBar:function(e){(0,e.commit)("TOGGLE_SIDEBAR")},CloseSideBar:function(e,n){(0,e.commit)("CLOSE_SIDEBAR",n.withoutAnimation)},ToggleDevice:function(e,n){(0,e.commit)("TOGGLE_DEVICE",n)}}},l=t("gDS+"),r=t.n(l),d=t("4d7F"),u=t.n(d),h=t("t3Un");var m=t("X4fA"),p={state:{token:Object(m.a)(),name:"",avatar:"",roles:[],addRouters:[]},mutations:{SET_TOKEN:function(e,n){e.token=n},SET_NAME:function(e,n){e.name=n},SET_AVATAR:function(e,n){e.avatar=n},SET_ROLES:function(e,n){e.roles=n},SET_ROUTERS:function(e,n){e.addRouters=n}},actions:{Login:function(e,n){var t=e.commit;return new u.a(function(e,i){(function(e){return h.a.post("/api/user/login",e)})(n).then(function(n){var i=n.data;Object(m.c)(i.access_token),t("SET_TOKEN",i.access_token),e()}).catch(function(e){i(e)})})},GetInfo:function(e){var n=e.commit,t=e.state;return new u.a(function(e,i){(function(e){return Object(h.a)({url:"/api/user/info",method:"get",params:{token:e}})})(t.token).then(function(t){var a=t.data;a.roles&&a.roles.length>0?n("SET_ROLES",a.roles):i("getInfo: roles must be a non-null array !"),n("SET_NAME",a.name),n("SET_AVATAR",a.avatar),e(t)}).catch(function(e){i(e)})})},LogOut:function(e){var n=e.commit,t=e.state;return new u.a(function(e,i){(t.token,Object(h.a)({url:"/api/user/logout",method:"post"})).then(function(){n("SET_TOKEN",""),n("SET_ROLES",[]),Object(m.b)(),sessionStorage.setItem("roles",""),e()}).catch(function(e){i(e)})})},FedLogOut:function(e){var n=e.commit;return new u.a(function(e){n("SET_TOKEN",""),Object(m.b)(),e()})},GenerateRoutes:function(e,n){var t=e.commit;return new u.a(function(e){t("SET_ROUTERS",n.routers),sessionStorage.setItem("roles",r()(n.roles)),e()})}}},v={sidebar:function(e){return e.app.sidebar},device:function(e){return e.app.device},token:function(e){return e.user.token},avatar:function(e){return e.user.avatar},name:function(e){return e.user.name},roles:function(e){return e.user.roles},addRouters:function(e){return e.user.addRouters}};i.default.use(a.a);var f=new a.a.Store({modules:{app:s,user:p},getters:v});n.a=f},"R/Hx":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-table",use:"icon-table-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},TfVu:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-eye",use:"icon-eye-usage",viewBox:"0 0 128 64",content:''});o.a.add(s);n.default=s},TnCw:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-auth",use:"icon-auth-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},"Uf/o":function(e,n,t){var i={"./add.svg":"wqOL","./api.svg":"dHYy","./article.svg":"0faV","./auth.svg":"TnCw","./bus.svg":"jxcm","./category.svg":"9ChT","./example.svg":"MMMJ","./excel.svg":"ZZmv","./eye.svg":"TfVu","./form.svg":"6xvN","./ico-aliyun.svg":"96Go","./ico-article.svg":"BKkR","./ico-category.svg":"Hoqj","./ico-table.svg":"/OCX","./link.svg":"GPBF","./nav.svg":"dbke","./nested.svg":"3PhE","./password.svg":"Kj24","./permission.svg":"OXmT","./role.svg":"Ugzh","./table.svg":"R/Hx","./tag.svg":"8fzN","./task.svg":"dxv6","./tree.svg":"k80C","./user.svg":"s7Vf"};function a(e){var n=c(e);return t(n)}function c(e){var n=i[e];if(!(n+1)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return n}a.keys=function(){return Object.keys(i)},a.resolve=c,e.exports=a,a.id="Uf/o"},Ugzh:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-role",use:"icon-role-usage",viewBox:"0 0 1333 1024",content:''});o.a.add(s);n.default=s},Vtdi:function(e,n,t){"use strict";t.r(n);var i=t("Kw5r"),a=(t("9d8Q"),t("XJYT")),c=t.n(a),o=(t("D66Q"),t("cIdk"),t("sg+I"),t("stgD")),s=t.n(o),l=(t("ZOF2"),{name:"App"}),r=(t("A0++"),t("KHd+")),d=Object(r.a)(l,function(){var e=this.$createElement,n=this._self._c||e;return n("div",{attrs:{id:"app"}},[n("router-view")],1)},[],!1,null,null,null);d.options.__file="App.vue";var u=d.exports,h=t("jE9Z");i.default.use(h.a);var m=function(){return t.e("chunk-4c2d").then(t.bind(null,"2c6e"))},p=[].concat([{path:"/",name:"index",component:function(){return t.e("chunk-64b5").then(t.bind(null,"er4n"))},hidden:!0},{path:"/line",name:"line",component:function(){return t.e("chunk-687a").then(t.bind(null,"G5rc"))},hidden:!0},{path:"/home",component:function(){return t.e("chunk-1412").then(t.bind(null,"d7gD"))},hidden:!0},{path:"/md",name:"md",component:function(){return t.e("gW6U").then(t.bind(null,"gW6U"))},hidden:!0},{path:"/out",name:"out",component:function(){return t.e("chunk-132e").then(t.bind(null,"LnUv"))},hidden:!0},{path:"/excel",name:"excel",component:function(){return Promise.all([t.e("chunk-7a80"),t.e("chunk-68e9")]).then(t.bind(null,"5EWB"))},hidden:!0},{path:"/upload",name:"upload",component:function(){return t.e("chunk-62f7").then(t.bind(null,"4p+I"))},hidden:!0},{path:"/websocket",name:"websocket",component:function(){return t.e("chunk-f5ec").then(t.bind(null,"6jsT"))},hidden:!0},{path:"/echarts",name:"echarts",component:function(){return Promise.all([t.e("chunk-7025"),t.e("chunk-6148")]).then(t.bind(null,"HnWs"))},hidden:!0},{path:"/login",component:function(){return t.e("chunk-c8fe").then(t.bind(null,"ntYl"))},hidden:!0},{path:"/404",component:function(){return t.e("chunk-c5f5").then(t.bind(null,"jNvO"))},hidden:!0},{path:"/admin",component:m,redirect:"/admin/dashboard",name:"Dashboard",hidden:!0,children:[{path:"dashboard",component:function(){return Promise.all([t.e("chunk-7025"),t.e("chunk-cfc1")]).then(t.bind(null,"lAbF"))}}]}],[{path:"/form",component:m,children:[{path:"index",name:"Form",component:function(){return t.e("chunk-d818").then(t.bind(null,"Nx2/"))},meta:{title:"Form",icon:"form"}}],hidden:!0},{path:"/nested",component:m,redirect:"/nested/menu1",name:"Nested",meta:{title:"Nested",icon:"nested"},children:[{path:"menu1",component:function(){return t.e("6bwb").then(t.bind(null,"6bwb"))},name:"Menu1",meta:{title:"Menu1"},children:[{path:"menu1-1",component:function(){return t.e("kbPl").then(t.bind(null,"kbPl"))},name:"Menu1-1",meta:{title:"Menu1-1"}},{path:"menu1-2",component:function(){return t.e("Vc2m").then(t.bind(null,"Vc2m"))},name:"Menu1-2",meta:{title:"Menu1-2"},children:[{path:"menu1-2-1",component:function(){return t.e("ZYJW").then(t.bind(null,"ZYJW"))},name:"Menu1-2-1",meta:{title:"Menu1-2-1"}},{path:"menu1-2-2",component:function(){return t.e("tvtM").then(t.bind(null,"tvtM"))},name:"Menu1-2-2",meta:{title:"Menu1-2-2"}}]},{path:"menu1-3",component:function(){return t.e("jYsI").then(t.bind(null,"jYsI"))},name:"Menu1-3",meta:{title:"Menu1-3"}}]},{path:"menu2",component:function(){return t.e("27OO").then(t.bind(null,"27OO"))},meta:{title:"menu2"}}]},{path:"*",redirect:"/404",hidden:!0}]),v=new h.a({scrollBehavior:function(){return{y:0}},routes:p}),f=t("Q2AE"),w={name:"SvgIcon",props:{iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{iconName:function(){return"#icon-"+this.iconClass},svgClass:function(){return this.className?"svg-icon "+this.className:"svg-icon"}}},g=(t("LyEU"),Object(r.a)(w,function(){var e=this.$createElement,n=this._self._c||e;return n("svg",{class:this.svgClass,attrs:{"aria-hidden":"true"}},[n("use",{attrs:{"xlink:href":this.iconName}})])},[],!1,null,"2f0f1ae2",null));g.options.__file="index.vue";var x=g.exports,b={name:"NavBar",data:function(){return{activeIndex:""}}},y=(t("mNmU"),Object(r.a)(b,function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"nav"},[t("el-menu",{staticClass:"el-menu-demo",attrs:{"default-active":e.activeIndex,mode:"horizontal"}},[t("el-row",{attrs:{gutter:1}},[t("el-col",{attrs:{xs:6,sm:6,md:4,lg:4,xl:4}},[t("div",{staticClass:"grid-content"},[t("el-menu-item",{attrs:{index:"1"}},[t("router-link",{attrs:{to:{name:"index"}}},[e._v("公交-首页")])],1)],1)]),e._v(" "),t("el-col",{attrs:{xs:6,sm:6,md:4,lg:4,xl:4}},[t("div",{staticClass:"grid-content"},[t("el-menu-item",{attrs:{index:"3"}},[t("router-link",{staticClass:"login",attrs:{to:{name:"out"}}},[e._v("中文排版")])],1)],1)]),e._v(" "),t("el-col",{attrs:{xs:6,sm:6,md:4,lg:4,xl:4}},[t("div",{staticClass:"grid-content"},[t("el-menu-item",{attrs:{index:"4"}},[t("router-link",{staticClass:"login",attrs:{to:{name:"excel"}}},[e._v("在线表格 Excel")])],1)],1)]),e._v(" "),t("el-col",{attrs:{xs:6,sm:6,md:4,lg:4,xl:4}},[t("div",{staticClass:"grid-content"},[t("el-menu-item",{attrs:{index:"4"}},[t("router-link",{staticClass:"login",attrs:{to:{name:"upload"}}},[e._v("图片转文字")])],1)],1)]),e._v(" "),t("el-col",{attrs:{xs:6,sm:6,md:4,lg:4,xl:4}},[t("div",{staticClass:"grid-content"},[t("el-submenu",{attrs:{index:"2"}},[t("template",{slot:"title"},[e._v("其它工具")]),e._v(" "),t("el-menu-item",{attrs:{index:"2-2"}},[t("router-link",{staticClass:"login",attrs:{to:{name:"md"}}},[e._v("Markdown")])],1),e._v(" "),t("el-menu-item",{attrs:{index:"2-2"}},[t("router-link",{attrs:{to:{name:"echarts"}}},[e._v("图表")])],1)],2)],1)])],1)],1)],1)},[],!1,null,"6308ec4e",null));y.options.__file="navBar.vue";var k=y.exports;i.default.component("svg-icon",x),i.default.component("nav-bar",k);!function(e){e.keys().map(e)}(t("Uf/o"));var M=t("m1cH"),z=t.n(M),B=t("QbLZ"),C=t.n(B),L=function(){return t.e("chunk-4c2d").then(t.bind(null,"2c6e"))},E="Super Administrator",H=[{path:"/api_excel",component:L,redirect:"/api_excel/index",name:"Excel-List",meta:{title:"批量测试管理",icon:"ico-table",roles:[E,"Admin"]},children:[{path:"/api_excel/edit/:id",name:"EditExcel",component:function(){return t.e("chunk-d226").then(t.bind(null,"F/uS"))},hidden:!0},{path:"/api_excel/add",name:"AddExcel",component:function(){return t.e("chunk-2f6b").then(t.bind(null,"wf12"))},meta:{title:"上传测试",icon:"excel",roles:[E,"Admin"]}},{path:"/api_excel/index",name:"Excel",component:function(){return t.e("chunk-01a2").then(t.bind(null,"yWqU"))},meta:{title:"测试管理",icon:"ico-aliyun",roles:[E,"Admin"]}},{path:"/api_param/add",name:"AddApiParam",component:function(){return t.e("chunk-34e9").then(t.bind(null,"eR/3"))},hidden:!0},{path:"/api_param/edit/:id",name:"EditApiParam",component:function(){return t.e("chunk-2227").then(t.bind(null,"/+Eh"))},hidden:!0},{path:"/api_param/index",name:"ApiParam",component:function(){return t.e("chunk-e667").then(t.bind(null,"dH62"))},meta:{title:"接口列表",icon:"api",roles:[E,"Admin"]}}]}],V=[{path:"/category",component:L,redirect:"/category/index",name:"Category-Nav",meta:{title:"栏目菜单",icon:"category",roles:[E]},children:[{path:"/category/add",name:"AddCategory",component:function(){return t.e("chunk-6908").then(t.bind(null,"GMaQ"))},meta:{title:"添加栏目"},hidden:!0},{path:"/category/edit/:id",name:"EditCategory",component:function(){return t.e("chunk-7105").then(t.bind(null,"1ylW"))},hidden:!0},{path:"/category/index",name:"Category",component:function(){return t.e("chunk-4055").then(t.bind(null,"oZKA"))},meta:{title:"栏目管理",icon:"ico-category",roles:[E]}},{path:"/nav/add",name:"AddNav",component:function(){return t.e("chunk-4f15").then(t.bind(null,"JPfX"))},hidden:!0},{path:"/nav/edit/:id",name:"EditNav",component:function(){return t.e("chunk-4332").then(t.bind(null,"LnHU"))},hidden:!0},{path:"/nav",name:"Nav",component:function(){return t.e("chunk-99dd").then(t.bind(null,"mxRw"))},meta:{title:"导航管理",icon:"nav",roles:[E]}},{path:"/tag/add",name:"AddTag",component:function(){return t.e("chunk-82a7").then(t.bind(null,"+1ta"))},meta:{title:"添加标签"},hidden:!0},{path:"/tag/edit/:id",name:"EditTag",component:function(){return t.e("chunk-1dc3").then(t.bind(null,"S2fK"))},hidden:!0},{path:"/tag",name:"Tag",component:function(){return t.e("chunk-ac41").then(t.bind(null,"ZhNY"))},meta:{title:"标签列表",icon:"tag",roles:[E]}}]},{path:"/article",component:L,name:"Article-List",meta:{title:"文章管理",icon:"article",roles:[E]},children:[{path:"/article/edit/:id",name:"EditArticle",component:function(){return t.e("chunk-766b").then(t.bind(null,"++5l"))},hidden:!0},{path:"/article/index",name:"Article",component:function(){return t.e("chunk-9f60").then(t.bind(null,"Iwy+"))},meta:{title:"文章管理",icon:"ico-article",roles:[E]}},{path:"/article/add",name:"AddArticle",component:function(){return t.e("chunk-59d3").then(t.bind(null,"/cac"))},meta:{title:"添加文章",icon:"add",roles:[E]}}]},{path:"/list",component:L,redirect:"/task",name:"公交",meta:{title:"公交管理",icon:"bus",roles:[E]},children:[{path:"/task/search",name:"search",component:function(){return t.e("chunk-ee37").then(t.bind(null,"Keas"))},hidden:!0},{path:"/task/newBus",name:"NewBus",component:function(){return t.e("chunk-3994").then(t.bind(null,"GRON"))},hidden:!0},{path:"/task/edit/:id",name:"taskEdit",component:function(){return t.e("chunk-fc68").then(t.bind(null,"J1Jp"))},hidden:!0},{path:"/task",name:"定时任务",component:function(){return t.e("chunk-775c").then(t.bind(null,"xDC0"))},meta:{title:"定时任务",icon:"task",roles:[E]}},{path:"lines/add",name:"linesAdd",component:function(){return t.e("chunk-00f7").then(t.bind(null,"V9Fe"))},hidden:!0},{path:"lines/edit/:id",name:"linesEdit",component:function(){return t.e("chunk-e830").then(t.bind(null,"bAuQ"))},hidden:!0},{path:"lines",name:"公交列表",component:function(){return t.e("chunk-47b6").then(t.bind(null,"HBaq"))},meta:{title:"公交列表",icon:"table",roles:[E]}},{path:"config",name:"配置管理",component:function(){return t.e("chunk-47b6").then(t.bind(null,"HBaq"))},meta:{title:"配置列表",icon:"table",roles:[E]}},{path:"tree",name:"Tree",component:function(){return t.e("ad09").then(t.bind(null,"ad09"))},meta:{title:"Tree",icon:"tree",roles:[E]},hidden:!0}]},{path:"user",component:L,redirect:"/user",name:"权限",meta:{title:"权限管理",icon:"auth",roles:[E]},children:[{path:"index",name:"userIndex",component:function(){return t.e("chunk-2164").then(t.bind(null,"44Km"))},hidden:!0},{path:"password",name:"userPassword",component:function(){return t.e("chunk-b5cc").then(t.bind(null,"HwY3"))},hidden:!0},{path:"/user/add",name:"AddUser",component:function(){return t.e("chunk-7951").then(t.bind(null,"fqc2"))},hidden:!0},{path:"/user/edit/:id",name:"EditUser",component:function(){return t.e("chunk-f78c").then(t.bind(null,"00Qp"))},hidden:!0},{path:"/user",name:"用户管理",component:function(){return t.e("chunk-2164").then(t.bind(null,"44Km"))},meta:{title:"用户列表",icon:"user",roles:[E]}},{path:"/permission/add",name:"AddPermission",component:function(){return t.e("chunk-0def").then(t.bind(null,"oKS6"))},hidden:!0},{path:"/permission/edit/:id",name:"EditPermission",component:function(){return t.e("chunk-98bc").then(t.bind(null,"t2jL"))},hidden:!0},{path:"/permission",name:"权限列表",component:function(){return t.e("chunk-1496").then(t.bind(null,"wjrd"))},meta:{title:"权限列表",icon:"permission",roles:[E]}},{path:"/role/add",name:"Addroles",component:function(){return t.e("chunk-4707").then(t.bind(null,"rwG5"))},hidden:!0},{path:"/role/edit/:id",name:"Editroles",component:function(){return t.e("chunk-d993").then(t.bind(null,"XqkG"))},hidden:!0},{path:"/role",name:"角色管理",component:function(){return t.e("chunk-5ba7").then(t.bind(null,"bDWH"))},meta:{title:"角色管理",icon:"role",roles:[E]}}]}],A=[],O=t("Mj6V"),_=t.n(O),S=(t("pdi6"),t("X4fA"));if(0===f.a.getters.roles.length&&sessionStorage.getItem("roles")){var I=JSON.parse(sessionStorage.getItem("roles")),T=N(I);f.a.dispatch("GenerateRoutes",{routers:T,roles:I}),v.addRoutes(T)}var F=["/login","/index","/line","/home","/404","/","","/echarts","/md","/out","/excel","/upload"];function Y(e,n){return e.indexOf("Super Administrator")>=0||(!n||e.some(function(e){return n.indexOf(e)>=0}))}function N(e){return e.indexOf("Super Administrator")>=0?[].concat(z()(H),z()(V),z()(A)):e.indexOf("Admin")>=0?H:A}v.beforeEach(function(e,n,t){_.a.start(),Object(S.a)()?"/login"===e.path?(t({path:"/admin"}),_.a.done()):0===f.a.getters.roles.length?f.a.dispatch("GetInfo").then(function(n){var i=N(n.data.roles);sessionStorage.getItem("roles")||v.addRoutes(i),f.a.dispatch("GenerateRoutes",{routers:i,roles:n.data.roles}),!e.meta.role||-1!==F.indexOf(e.path)||Y(n.data.roles,e.meta.roles)?t(C()({},e,{replace:!0})):(t({path:"/404"}),_.a.done())}).catch(function(e){f.a.dispatch("FedLogOut").then(function(){a.Message.error(e||"Verification failed, please login again"),t({path:"/admin"})})}):!e.meta.role||-1!==F.indexOf(e.path)||Y(f.a.getters.roles,e.meta.roles)?t():(t({path:"/404"}),_.a.done()):-1!==F.indexOf(e.path)?t():(t("/login?redirect="+e.path),_.a.done())}),v.afterEach(function(){_.a.done()}),i.default.use(s.a),i.default.use(c.a),i.default.config.productionTip=!1,new i.default({el:"#app",router:v,store:f.a,render:function(e){return e(u)}})},X4fA:function(e,n,t){"use strict";t.d(n,"a",function(){return o}),t.d(n,"c",function(){return s}),t.d(n,"b",function(){return l});var i=t("p46w"),a=t.n(i),c="Admin-Token";function o(){return a.a.get(c)}function s(e){return a.a.set(c,e)}function l(){return a.a.remove(c)}},ZZmv:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-excel",use:"icon-excel-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},dHYy:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-api",use:"icon-api-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},dbke:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-nav",use:"icon-nav-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},dxv6:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-task",use:"icon-task-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},jxcm:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-bus",use:"icon-bus-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},k80C:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-tree",use:"icon-tree-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},m821:function(e,n,t){},mNmU:function(e,n,t){"use strict";var i=t("Ahhv");t.n(i).a},s7Vf:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-user",use:"icon-user-usage",viewBox:"0 0 130 130",content:''});o.a.add(s);n.default=s},"sg+I":function(e,n,t){},t3Un:function(e,n,t){"use strict";var i=t("4d7F"),a=t.n(i),c=t("vDqi"),o=t.n(c),s=t("XJYT"),l=t("Q2AE"),r=t("X4fA"),d=o.a.create({baseURL:"https://www.guke1.com",timeout:5e3});d.interceptors.request.use(function(e){return l.a.getters.token&&(e.headers.Authorization="Bearer "+Object(r.a)()),e},function(e){console.log(e),a.a.reject(e)}),d.interceptors.response.use(function(e){var n=e.data;if(200!==n.code){Object(s.Message)({message:n.reason,type:"error",duration:5e3}),50008!==n.code&&50012!==n.code&&50014!==n.code&&1200!==n.code||s.MessageBox.confirm("你已被登出,可以取消继续留在该页面,或者重新登录","确定登出",{confirmButtonText:"重新登录",cancelButtonText:"取消",type:"warning"}).then(function(){l.a.dispatch("FedLogOut").then(function(){location.reload()})});var t=n.reason?n.reason:"error";return a.a.reject(t)}return e.data},function(e){return console.log("err"+e),Object(s.Message)({message:e.message,type:"error",duration:5e3}),a.a.reject(e)}),n.a=d},wqOL:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-add",use:"icon-add-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},xUNX:function(e,n,t){}},[["Vtdi","runtime","chunk-elementUI","chunk-libs"]]]);
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([["app"],{"/OCX":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-ico-table",use:"icon-ico-table-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},"0faV":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-article",use:"icon-article-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},"3PhE":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-nested",use:"icon-nested-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},"6xvN":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-form",use:"icon-form-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},"8fzN":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-tag",use:"icon-tag-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},"96Go":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-ico-aliyun",use:"icon-ico-aliyun-usage",viewBox:"0 0 1844 1024",content:''});o.a.add(s);n.default=s},"9ChT":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-category",use:"icon-category-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},"A0++":function(e,n,t){"use strict";var i=t("xUNX");t.n(i).a},Ahhv:function(e,n,t){},BKkR:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-ico-article",use:"icon-ico-article-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},GPBF:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-link",use:"icon-link-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},Hoqj:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-ico-category",use:"icon-ico-category-usage",viewBox:"0 0 1260 1024",content:''});o.a.add(s);n.default=s},Kj24:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-password",use:"icon-password-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},LyEU:function(e,n,t){"use strict";var i=t("m821");t.n(i).a},MMMJ:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-example",use:"icon-example-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},OXmT:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-permission",use:"icon-permission-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},Q2AE:function(e,n,t){"use strict";var i=t("Kw5r"),a=t("L2JU"),c=t("p46w"),o=t.n(c),s={state:{sidebar:{opened:!+o.a.get("sidebarStatus"),withoutAnimation:!1},device:"desktop"},mutations:{TOGGLE_SIDEBAR:function(e){e.sidebar.opened?o.a.set("sidebarStatus",1):o.a.set("sidebarStatus",0),e.sidebar.opened=!e.sidebar.opened,e.sidebar.withoutAnimation=!1},CLOSE_SIDEBAR:function(e,n){o.a.set("sidebarStatus",1),e.sidebar.opened=!1,e.sidebar.withoutAnimation=n},TOGGLE_DEVICE:function(e,n){e.device=n}},actions:{ToggleSideBar:function(e){(0,e.commit)("TOGGLE_SIDEBAR")},CloseSideBar:function(e,n){(0,e.commit)("CLOSE_SIDEBAR",n.withoutAnimation)},ToggleDevice:function(e,n){(0,e.commit)("TOGGLE_DEVICE",n)}}},l=t("gDS+"),r=t.n(l),d=t("4d7F"),u=t.n(d),h=t("t3Un");var m=t("X4fA"),p={state:{token:Object(m.a)(),name:"",avatar:"",roles:[],addRouters:[]},mutations:{SET_TOKEN:function(e,n){e.token=n},SET_NAME:function(e,n){e.name=n},SET_AVATAR:function(e,n){e.avatar=n},SET_ROLES:function(e,n){e.roles=n},SET_ROUTERS:function(e,n){e.addRouters=n}},actions:{Login:function(e,n){var t=e.commit;return new u.a(function(e,i){(function(e){return h.a.post("/api/user/login",e)})(n).then(function(n){var i=n.data;Object(m.c)(i.access_token),t("SET_TOKEN",i.access_token),e()}).catch(function(e){i(e)})})},GetInfo:function(e){var n=e.commit,t=e.state;return new u.a(function(e,i){(function(e){return Object(h.a)({url:"/api/user/info",method:"get",params:{token:e}})})(t.token).then(function(t){var a=t.data;a.roles&&a.roles.length>0?n("SET_ROLES",a.roles):i("getInfo: roles must be a non-null array !"),n("SET_NAME",a.name),n("SET_AVATAR",a.avatar),e(t)}).catch(function(e){i(e)})})},LogOut:function(e){var n=e.commit,t=e.state;return new u.a(function(e,i){(t.token,Object(h.a)({url:"/api/user/logout",method:"post"})).then(function(){n("SET_TOKEN",""),n("SET_ROLES",[]),Object(m.b)(),sessionStorage.setItem("roles",""),e()}).catch(function(e){i(e)})})},FedLogOut:function(e){var n=e.commit;return new u.a(function(e){n("SET_TOKEN",""),Object(m.b)(),e()})},GenerateRoutes:function(e,n){var t=e.commit;return new u.a(function(e){t("SET_ROUTERS",n.routers),sessionStorage.setItem("roles",r()(n.roles)),e()})}}},v={sidebar:function(e){return e.app.sidebar},device:function(e){return e.app.device},token:function(e){return e.user.token},avatar:function(e){return e.user.avatar},name:function(e){return e.user.name},roles:function(e){return e.user.roles},addRouters:function(e){return e.user.addRouters}};i.default.use(a.a);var f=new a.a.Store({modules:{app:s,user:p},getters:v});n.a=f},"R/Hx":function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-table",use:"icon-table-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},TfVu:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-eye",use:"icon-eye-usage",viewBox:"0 0 128 64",content:''});o.a.add(s);n.default=s},TnCw:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-auth",use:"icon-auth-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},"Uf/o":function(e,n,t){var i={"./add.svg":"wqOL","./api.svg":"dHYy","./article.svg":"0faV","./auth.svg":"TnCw","./bus.svg":"jxcm","./category.svg":"9ChT","./example.svg":"MMMJ","./excel.svg":"ZZmv","./eye.svg":"TfVu","./form.svg":"6xvN","./ico-aliyun.svg":"96Go","./ico-article.svg":"BKkR","./ico-category.svg":"Hoqj","./ico-table.svg":"/OCX","./link.svg":"GPBF","./nav.svg":"dbke","./nested.svg":"3PhE","./password.svg":"Kj24","./permission.svg":"OXmT","./role.svg":"Ugzh","./table.svg":"R/Hx","./tag.svg":"8fzN","./task.svg":"dxv6","./tree.svg":"k80C","./user.svg":"s7Vf"};function a(e){var n=c(e);return t(n)}function c(e){var n=i[e];if(!(n+1)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return n}a.keys=function(){return Object.keys(i)},a.resolve=c,e.exports=a,a.id="Uf/o"},Ugzh:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-role",use:"icon-role-usage",viewBox:"0 0 1333 1024",content:''});o.a.add(s);n.default=s},Vtdi:function(e,n,t){"use strict";t.r(n);var i=t("Kw5r"),a=(t("9d8Q"),t("XJYT")),c=t.n(a),o=(t("D66Q"),t("cIdk"),t("sg+I"),t("stgD")),s=t.n(o),l=(t("ZOF2"),{name:"App"}),r=(t("A0++"),t("KHd+")),d=Object(r.a)(l,function(){var e=this.$createElement,n=this._self._c||e;return n("div",{attrs:{id:"app"}},[n("router-view")],1)},[],!1,null,null,null);d.options.__file="App.vue";var u=d.exports,h=t("jE9Z");i.default.use(h.a);var m=function(){return t.e("chunk-4c2d").then(t.bind(null,"2c6e"))},p=[].concat([{path:"/",name:"index",component:function(){return t.e("chunk-64b5").then(t.bind(null,"er4n"))},hidden:!0},{path:"/line",name:"line",component:function(){return t.e("chunk-687a").then(t.bind(null,"G5rc"))},hidden:!0},{path:"/home",component:function(){return t.e("chunk-1412").then(t.bind(null,"d7gD"))},hidden:!0},{path:"/md",name:"md",component:function(){return t.e("gW6U").then(t.bind(null,"gW6U"))},hidden:!0},{path:"/out",name:"out",component:function(){return t.e("chunk-132e").then(t.bind(null,"LnUv"))},hidden:!0},{path:"/excel",name:"excel",component:function(){return Promise.all([t.e("chunk-7a80"),t.e("chunk-68e9")]).then(t.bind(null,"5EWB"))},hidden:!0},{path:"/upload",name:"upload",component:function(){return t.e("chunk-62f7").then(t.bind(null,"4p+I"))},hidden:!0},{path:"/websocket",name:"websocket",component:function(){return t.e("chunk-f5ec").then(t.bind(null,"6jsT"))},hidden:!0},{path:"/echarts",name:"echarts",component:function(){return Promise.all([t.e("chunk-7025"),t.e("chunk-6148")]).then(t.bind(null,"HnWs"))},hidden:!0},{path:"/login",component:function(){return t.e("chunk-c8fe").then(t.bind(null,"ntYl"))},hidden:!0},{path:"/404",component:function(){return t.e("chunk-c5f5").then(t.bind(null,"jNvO"))},hidden:!0},{path:"/admin",component:m,redirect:"/admin/dashboard",name:"Dashboard",hidden:!0,children:[{path:"dashboard",component:function(){return Promise.all([t.e("chunk-7025"),t.e("chunk-cfc1")]).then(t.bind(null,"lAbF"))}}]}],[{path:"/form",component:m,children:[{path:"index",name:"Form",component:function(){return t.e("chunk-d818").then(t.bind(null,"Nx2/"))},meta:{title:"Form",icon:"form"}}],hidden:!0},{path:"/nested",component:m,redirect:"/nested/menu1",name:"Nested",meta:{title:"Nested",icon:"nested"},children:[{path:"menu1",component:function(){return t.e("6bwb").then(t.bind(null,"6bwb"))},name:"Menu1",meta:{title:"Menu1"},children:[{path:"menu1-1",component:function(){return t.e("kbPl").then(t.bind(null,"kbPl"))},name:"Menu1-1",meta:{title:"Menu1-1"}},{path:"menu1-2",component:function(){return t.e("Vc2m").then(t.bind(null,"Vc2m"))},name:"Menu1-2",meta:{title:"Menu1-2"},children:[{path:"menu1-2-1",component:function(){return t.e("ZYJW").then(t.bind(null,"ZYJW"))},name:"Menu1-2-1",meta:{title:"Menu1-2-1"}},{path:"menu1-2-2",component:function(){return t.e("tvtM").then(t.bind(null,"tvtM"))},name:"Menu1-2-2",meta:{title:"Menu1-2-2"}}]},{path:"menu1-3",component:function(){return t.e("jYsI").then(t.bind(null,"jYsI"))},name:"Menu1-3",meta:{title:"Menu1-3"}}]},{path:"menu2",component:function(){return t.e("27OO").then(t.bind(null,"27OO"))},meta:{title:"menu2"}}]},{path:"*",redirect:"/404",hidden:!0}]),v=new h.a({scrollBehavior:function(){return{y:0}},routes:p}),f=t("Q2AE"),w={name:"SvgIcon",props:{iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{iconName:function(){return"#icon-"+this.iconClass},svgClass:function(){return this.className?"svg-icon "+this.className:"svg-icon"}}},g=(t("LyEU"),Object(r.a)(w,function(){var e=this.$createElement,n=this._self._c||e;return n("svg",{class:this.svgClass,attrs:{"aria-hidden":"true"}},[n("use",{attrs:{"xlink:href":this.iconName}})])},[],!1,null,"2f0f1ae2",null));g.options.__file="index.vue";var x=g.exports,b={name:"NavBar",data:function(){return{activeIndex:""}}},y=(t("mNmU"),Object(r.a)(b,function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"nav"},[t("el-menu",{staticClass:"el-menu-demo",attrs:{"default-active":e.activeIndex,mode:"horizontal"}},[t("el-row",{attrs:{gutter:1}},[t("el-col",{attrs:{xs:6,sm:6,md:4,lg:4,xl:4}},[t("div",{staticClass:"grid-content"},[t("el-menu-item",{attrs:{index:"1"}},[t("router-link",{attrs:{to:{name:"index"}}},[e._v("公交-首页")])],1)],1)]),e._v(" "),t("el-col",{attrs:{xs:6,sm:6,md:4,lg:4,xl:4}},[t("div",{staticClass:"grid-content"},[t("el-menu-item",{attrs:{index:"3"}},[t("router-link",{staticClass:"login",attrs:{to:{name:"out"}}},[e._v("中文排版")])],1)],1)]),e._v(" "),t("el-col",{attrs:{xs:6,sm:6,md:4,lg:4,xl:4}},[t("div",{staticClass:"grid-content"},[t("el-menu-item",{attrs:{index:"4"}},[t("router-link",{staticClass:"login",attrs:{to:{name:"excel"}}},[e._v("在线表格 Excel")])],1)],1)]),e._v(" "),t("el-col",{attrs:{xs:6,sm:6,md:4,lg:4,xl:4}},[t("div",{staticClass:"grid-content"},[t("el-menu-item",{attrs:{index:"4"}},[t("router-link",{staticClass:"login",attrs:{to:{name:"upload"}}},[e._v("图片转文字")])],1)],1)]),e._v(" "),t("el-col",{attrs:{xs:6,sm:6,md:4,lg:4,xl:4}},[t("div",{staticClass:"grid-content"},[t("el-submenu",{attrs:{index:"2"}},[t("template",{slot:"title"},[e._v("其它工具")]),e._v(" "),t("el-menu-item",{attrs:{index:"2-2"}},[t("router-link",{staticClass:"login",attrs:{to:{name:"md"}}},[e._v("Markdown")])],1),e._v(" "),t("el-menu-item",{attrs:{index:"2-2"}},[t("router-link",{attrs:{to:{name:"echarts"}}},[e._v("图表")])],1)],2)],1)])],1)],1)],1)},[],!1,null,"6308ec4e",null));y.options.__file="navBar.vue";var k=y.exports;i.default.component("svg-icon",x),i.default.component("nav-bar",k);!function(e){e.keys().map(e)}(t("Uf/o"));var M=t("m1cH"),z=t.n(M),B=t("QbLZ"),C=t.n(B),L=function(){return t.e("chunk-4c2d").then(t.bind(null,"2c6e"))},E="Super Administrator",V=[{path:"/api_excel",component:L,redirect:"/api_excel/index",name:"Excel-List",meta:{title:"批量测试管理",icon:"ico-table",roles:[E,"Admin"]},children:[{path:"/api_excel/edit/:id",name:"EditExcel",component:function(){return t.e("chunk-d226").then(t.bind(null,"F/uS"))},hidden:!0},{path:"/api_excel/add",name:"AddExcel",component:function(){return t.e("chunk-2f6b").then(t.bind(null,"wf12"))},meta:{title:"上传测试",icon:"excel",roles:[E,"Admin"]}},{path:"/api_excel/index",name:"Excel",component:function(){return t.e("chunk-41b9").then(t.bind(null,"yWqU"))},meta:{title:"测试管理",icon:"ico-aliyun",roles:[E,"Admin"]}},{path:"/api_param/add",name:"AddApiParam",component:function(){return t.e("chunk-34e9").then(t.bind(null,"eR/3"))},hidden:!0},{path:"/api_param/edit/:id",name:"EditApiParam",component:function(){return t.e("chunk-2227").then(t.bind(null,"/+Eh"))},hidden:!0},{path:"/api_param/index",name:"ApiParam",component:function(){return t.e("chunk-e667").then(t.bind(null,"dH62"))},meta:{title:"接口列表",icon:"api",roles:[E,"Admin"]}}]}],H=[{path:"/category",component:L,redirect:"/category/index",name:"Category-Nav",meta:{title:"栏目菜单",icon:"category",roles:[E]},children:[{path:"/category/add",name:"AddCategory",component:function(){return t.e("chunk-6908").then(t.bind(null,"GMaQ"))},meta:{title:"添加栏目"},hidden:!0},{path:"/category/edit/:id",name:"EditCategory",component:function(){return t.e("chunk-7105").then(t.bind(null,"1ylW"))},hidden:!0},{path:"/category/index",name:"Category",component:function(){return t.e("chunk-4055").then(t.bind(null,"oZKA"))},meta:{title:"栏目管理",icon:"ico-category",roles:[E]}},{path:"/nav/add",name:"AddNav",component:function(){return t.e("chunk-4f15").then(t.bind(null,"JPfX"))},hidden:!0},{path:"/nav/edit/:id",name:"EditNav",component:function(){return t.e("chunk-4332").then(t.bind(null,"LnHU"))},hidden:!0},{path:"/nav",name:"Nav",component:function(){return t.e("chunk-99dd").then(t.bind(null,"mxRw"))},meta:{title:"导航管理",icon:"nav",roles:[E]}},{path:"/tag/add",name:"AddTag",component:function(){return t.e("chunk-82a7").then(t.bind(null,"+1ta"))},meta:{title:"添加标签"},hidden:!0},{path:"/tag/edit/:id",name:"EditTag",component:function(){return t.e("chunk-1dc3").then(t.bind(null,"S2fK"))},hidden:!0},{path:"/tag",name:"Tag",component:function(){return t.e("chunk-ac41").then(t.bind(null,"ZhNY"))},meta:{title:"标签列表",icon:"tag",roles:[E]}}]},{path:"/article",component:L,name:"Article-List",meta:{title:"文章管理",icon:"article",roles:[E]},children:[{path:"/article/edit/:id",name:"EditArticle",component:function(){return t.e("chunk-766b").then(t.bind(null,"++5l"))},hidden:!0},{path:"/article/index",name:"Article",component:function(){return t.e("chunk-9f60").then(t.bind(null,"Iwy+"))},meta:{title:"文章管理",icon:"ico-article",roles:[E]}},{path:"/article/add",name:"AddArticle",component:function(){return t.e("chunk-59d3").then(t.bind(null,"/cac"))},meta:{title:"添加文章",icon:"add",roles:[E]}}]},{path:"/list",component:L,redirect:"/task",name:"公交",meta:{title:"公交管理",icon:"bus",roles:[E]},children:[{path:"/task/search",name:"search",component:function(){return t.e("chunk-ee37").then(t.bind(null,"Keas"))},hidden:!0},{path:"/task/newBus",name:"NewBus",component:function(){return t.e("chunk-3994").then(t.bind(null,"GRON"))},hidden:!0},{path:"/task/edit/:id",name:"taskEdit",component:function(){return t.e("chunk-fc68").then(t.bind(null,"J1Jp"))},hidden:!0},{path:"/task",name:"定时任务",component:function(){return t.e("chunk-775c").then(t.bind(null,"xDC0"))},meta:{title:"定时任务",icon:"task",roles:[E]}},{path:"lines/add",name:"linesAdd",component:function(){return t.e("chunk-00f7").then(t.bind(null,"V9Fe"))},hidden:!0},{path:"lines/edit/:id",name:"linesEdit",component:function(){return t.e("chunk-e830").then(t.bind(null,"bAuQ"))},hidden:!0},{path:"lines",name:"公交列表",component:function(){return t.e("chunk-47b6").then(t.bind(null,"HBaq"))},meta:{title:"公交列表",icon:"table",roles:[E]}},{path:"config",name:"配置管理",component:function(){return t.e("chunk-0090").then(t.bind(null,"60Md"))},meta:{title:"配置列表",icon:"table",roles:[E]}},{path:"tree",name:"Tree",component:function(){return t.e("ad09").then(t.bind(null,"ad09"))},meta:{title:"Tree",icon:"tree",roles:[E]},hidden:!0}]},{path:"user",component:L,redirect:"/user",name:"权限",meta:{title:"权限管理",icon:"auth",roles:[E]},children:[{path:"index",name:"userIndex",component:function(){return t.e("chunk-2319").then(t.bind(null,"44Km"))},hidden:!0},{path:"password",name:"userPassword",component:function(){return t.e("chunk-b262").then(t.bind(null,"HwY3"))},hidden:!0},{path:"/user/add",name:"AddUser",component:function(){return t.e("chunk-75e7").then(t.bind(null,"fqc2"))},hidden:!0},{path:"/user/edit/:id",name:"EditUser",component:function(){return t.e("chunk-f422").then(t.bind(null,"00Qp"))},hidden:!0},{path:"/user",name:"用户管理",component:function(){return t.e("chunk-2319").then(t.bind(null,"44Km"))},meta:{title:"用户列表",icon:"user",roles:[E]}},{path:"/permission/add",name:"AddPermission",component:function(){return t.e("chunk-3379").then(t.bind(null,"oKS6"))},hidden:!0},{path:"/permission/edit/:id",name:"EditPermission",component:function(){return t.e("chunk-9552").then(t.bind(null,"t2jL"))},hidden:!0},{path:"/permission",name:"权限列表",component:function(){return t.e("chunk-164a").then(t.bind(null,"wjrd"))},meta:{title:"权限列表",icon:"permission",roles:[E]}},{path:"/role/add",name:"Addroles",component:function(){return t.e("chunk-439e").then(t.bind(null,"rwG5"))},hidden:!0},{path:"/role/edit/:id",name:"Editroles",component:function(){return t.e("chunk-d62a").then(t.bind(null,"XqkG"))},hidden:!0},{path:"/role",name:"角色管理",component:function(){return t.e("chunk-5d5c").then(t.bind(null,"bDWH"))},meta:{title:"角色管理",icon:"role",roles:[E]}}]}],A=[],O=t("Mj6V"),_=t.n(O),S=(t("pdi6"),t("X4fA"));if(0===f.a.getters.roles.length&&sessionStorage.getItem("roles")){var I=JSON.parse(sessionStorage.getItem("roles")),T=N(I);f.a.dispatch("GenerateRoutes",{routers:T,roles:I}),v.addRoutes(T)}var F=["/login","/index","/line","/home","/404","/","","/echarts","/md","/out","/excel","/upload"];function Y(e,n){return e.indexOf("Super Administrator")>=0||(!n||e.some(function(e){return n.indexOf(e)>=0}))}function N(e){return e.indexOf("Super Administrator")>=0?[].concat(z()(V),z()(H),z()(A)):e.indexOf("Admin")>=0?V:A}v.beforeEach(function(e,n,t){_.a.start(),Object(S.a)()?"/login"===e.path?(t({path:"/admin"}),_.a.done()):0===f.a.getters.roles.length?f.a.dispatch("GetInfo").then(function(n){var i=N(n.data.roles);sessionStorage.getItem("roles")||v.addRoutes(i),f.a.dispatch("GenerateRoutes",{routers:i,roles:n.data.roles}),!e.meta.role||-1!==F.indexOf(e.path)||Y(n.data.roles,e.meta.roles)?t(C()({},e,{replace:!0})):(t({path:"/404"}),_.a.done())}).catch(function(e){f.a.dispatch("FedLogOut").then(function(){a.Message.error(e||"Verification failed, please login again"),t({path:"/admin"})})}):!e.meta.role||-1!==F.indexOf(e.path)||Y(f.a.getters.roles,e.meta.roles)?t():(t({path:"/404"}),_.a.done()):-1!==F.indexOf(e.path)?t():(t("/login?redirect="+e.path),_.a.done())}),v.afterEach(function(){_.a.done()}),i.default.use(s.a),i.default.use(c.a),i.default.config.productionTip=!1,new i.default({el:"#app",router:v,store:f.a,render:function(e){return e(u)}})},X4fA:function(e,n,t){"use strict";t.d(n,"a",function(){return o}),t.d(n,"c",function(){return s}),t.d(n,"b",function(){return l});var i=t("p46w"),a=t.n(i),c="Admin-Token";function o(){return a.a.get(c)}function s(e){return a.a.set(c,e)}function l(){return a.a.remove(c)}},ZZmv:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-excel",use:"icon-excel-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},dHYy:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-api",use:"icon-api-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},dbke:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-nav",use:"icon-nav-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},dxv6:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-task",use:"icon-task-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},jxcm:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-bus",use:"icon-bus-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},k80C:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-tree",use:"icon-tree-usage",viewBox:"0 0 128 128",content:''});o.a.add(s);n.default=s},m821:function(e,n,t){},mNmU:function(e,n,t){"use strict";var i=t("Ahhv");t.n(i).a},s7Vf:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-user",use:"icon-user-usage",viewBox:"0 0 130 130",content:''});o.a.add(s);n.default=s},"sg+I":function(e,n,t){},t3Un:function(e,n,t){"use strict";var i=t("4d7F"),a=t.n(i),c=t("vDqi"),o=t.n(c),s=t("XJYT"),l=t("Q2AE"),r=t("X4fA"),d=o.a.create({baseURL:"https://www.guke1.com",timeout:5e3});d.interceptors.request.use(function(e){return l.a.getters.token&&(e.headers.Authorization="Bearer "+Object(r.a)()),e},function(e){console.log(e),a.a.reject(e)}),d.interceptors.response.use(function(e){var n=e.data;if(200!==n.code){Object(s.Message)({message:n.reason,type:"error",duration:5e3}),50008!==n.code&&50012!==n.code&&50014!==n.code&&1200!==n.code||s.MessageBox.confirm("你已被登出,可以取消继续留在该页面,或者重新登录","确定登出",{confirmButtonText:"重新登录",cancelButtonText:"取消",type:"warning"}).then(function(){l.a.dispatch("FedLogOut").then(function(){location.reload()})});var t=n.reason?n.reason:"error";return a.a.reject(t)}return e.data},function(e){return console.log("err"+e),Object(s.Message)({message:e.message,type:"error",duration:5e3}),a.a.reject(e)}),n.a=d},wqOL:function(e,n,t){"use strict";t.r(n);var i=t("4BeY"),a=t.n(i),c=t("IaFt"),o=t.n(c),s=new a.a({id:"icon-add",use:"icon-add-usage",viewBox:"0 0 1024 1024",content:''});o.a.add(s);n.default=s},xUNX:function(e,n,t){}},[["Vtdi","runtime","chunk-elementUI","chunk-libs"]]]);
\ No newline at end of file
diff --git a/laravel/public/static/js/chunk-0090.2f7d16d5.js b/laravel/public/static/js/chunk-0090.2f7d16d5.js
new file mode 100644
index 0000000000000000000000000000000000000000..c3821437e720fbe496d637c7e8dbb2e435926cca
--- /dev/null
+++ b/laravel/public/static/js/chunk-0090.2f7d16d5.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-0090"],{"60Md":function(e,t,n){"use strict";n.r(t);var r=n("t3Un");var o={data:function(){return{form:{name:"",default_open:1,state:!0,loading:!1},rules:{name:[{required:!0,message:"请输入名称",trigger:"blur"}],default_open:[{required:!0,message:"请输入开启公交配置情况",trigger:"blur"}]},redirect:"/config/index"}},created:function(){this.init()},methods:{init:function(){var e=this;(function(e){return Object(r.a)({url:"/api/config",method:"get",params:e})})({perPage:20}).then(function(t){var n=t.data;e.form.name=n.name,e.form.default_open=n.default_open})},onSubmit:function(e){var t=this;this.$refs[e].validate(function(e){if(!e)return!1;t.loading=!0,function(e){return r.a.post("/api/config",e)}(t.form).then(function(e){t.loading=!1,200===e.code?t.$message({message:"操作成功",type:"success"}):t.$message.error(e.reason)})})},onCancel:function(){this.$message({message:"cancel!",type:"warning"})},resetForm:function(e){this.$refs[e].resetFields()}}},a=(n("Kwhh"),n("KHd+")),i=Object(a.a)(o,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"app-container"},[n("el-form",{ref:"form",attrs:{model:e.form,rules:e.rules,"label-width":"120px"}},[n("el-form-item",{attrs:{label:"名称",prop:"name"}},[n("el-input",{model:{value:e.form.name,callback:function(t){e.$set(e.form,"name",t)},expression:"form.name"}})],1),e._v(" "),n("el-form-item",{attrs:{label:"开启新老接口",prop:"default_open"}},[n("el-col",{attrs:{span:4}},[n("el-input",{model:{value:e.form.default_open,callback:function(t){e.$set(e.form,"default_open",t)},expression:"form.default_open"}})],1),e._v(" "),n("el-col",{attrs:{span:20}},[e._v(" 开启公交配置情况--【1: 老接口,2: 新接口,3: 先老接口再新接口,4: 先新接口后老接口】")])],1),e._v(" "),n("el-form-item",{attrs:{label:"是否启用"}},[n("el-switch",{model:{value:e.form.state,callback:function(t){e.$set(e.form,"state",t)},expression:"form.state"}})],1),e._v(" "),n("el-form-item",[n("el-button",{attrs:{type:"primary"},on:{click:function(t){e.onSubmit("form")}}},[e._v("提交")]),e._v(" "),n("el-button",{on:{click:function(t){e.resetForm("form")}}},[e._v("重置")])],1)],1)],1)},[],!1,null,"5e7dc39c",null);i.options.__file="index.vue";t.default=i.exports},Kwhh:function(e,t,n){"use strict";var r=n("ptn5");n.n(r).a},ptn5:function(e,t,n){}}]);
\ No newline at end of file
diff --git a/laravel/public/static/js/chunk-01a2.799243c4.js b/laravel/public/static/js/chunk-01a2.799243c4.js
deleted file mode 100644
index 0d55091808f5afac0b3b9ca98da342a36d3a29d5..0000000000000000000000000000000000000000
--- a/laravel/public/static/js/chunk-01a2.799243c4.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-01a2"],{R8mO:function(t,e,n){"use strict";n.d(e,"d",function(){return i}),n.d(e,"e",function(){return r}),n.d(e,"c",function(){return o}),n.d(e,"f",function(){return s}),n.d(e,"a",function(){return c}),n.d(e,"g",function(){return l}),n.d(e,"h",function(){return u}),n.d(e,"b",function(){return d});var a=n("t3Un");function i(t){return Object(a.a)({url:"/api/api_excel",method:"get",params:t})}function r(t){return a.a.post("/api/api_excel",t)}function o(t){return a.a.get("/api/api_excel/"+t)}function s(t,e){return a.a.patch("/api/api_excel/"+t,e)}function c(t){return a.a.delete("/api/api_excel/"+t)}function l(t){return Object(a.a)({url:"/api/api_excel_search",method:"get",params:t})}function u(t){return Object(a.a)({url:"/api/start_task",method:"post",params:t})}function d(t){return Object(a.a)({url:"/api/download_log",method:"post",params:t})}},kXeL:function(t,e,n){"use strict";var a=n("uDov");n.n(a).a},uDov:function(t,e,n){},yWqU:function(t,e,n){"use strict";n.r(e);var a=n("P2sY"),i=n.n(a),r=n("X4fA"),o=n("R8mO"),s={filters:{statusFilter:function(t){return{1:"success",0:"gray","-1":"danger"}[t]}},data:function(){return{reload:!1,reload_name:"点击刷新",list:null,listLoading:!0,perpage:10,total:100,currentpage:1,listQuery:{page:1},url:null,websock:null}},created:function(){this.listQuery=this.$route.query,this.currentpage=parseInt(this.listQuery.page);var t=parseInt(this.$route.query.perPage);this.perpage=isNaN(t)?this.perpage:t,this.initWebSocket()},destroyed:function(){this.websock.close()},methods:{startTask:function(t,e){var n=this;this.$confirm("此操作将开启任务, 是否继续?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(function(){Object(o.h)(e).then(function(t){var a="";200===t.code?(e.state=1,a="success"):a="error",n.$message({type:a,message:t.reason})})}).catch(function(){n.$message({type:"info",message:"已取消操作"})})},openTask:function(t,e){var n=this;this.$alert("此操作将开启任务, 是否继续?","开启任务提醒",{confirmButtonText:"确定",center:!0,type:"warning",callback:function(t){"confirm"===t&&Object(o.h)(e).then(function(t){var a="";200===t.code?(e.state=1,a="success"):a="error",n.$message({type:a,message:t.reason}),n.initWebSocket()})}})},initWebSocket:function(){if("WebSocket"in window){var t="wss://www.guke1.com/ws?action=api_excel&token="+Object(r.a)();this.websock=new WebSocket(t),this.websock.onmessage=this.onmessage,this.websock.onopen=this.onopen,this.websock.onerror=this.onerror,this.websock.onclose=this.close}else this.fetchData(),console.log("Your browser does not support WebSocket!")},onopen:function(){},onerror:function(){this.fetchData()},onmessage:function(t){var e=this,n=JSON.parse(t.data);this.list=n.data.data,this.listLoading=!1,this.total=n.data.total,this.url=n.data.appUrl,setTimeout(function(){e.reload=!1,e.reload_name="刷新"},800)},send:function(t){this.websock.send(t)},close:function(){},download:function(t,e){window.location.href=this.url+e.finish_url},download_log:function(t,e){var n=this;Object(o.b)({id:e.id}).then(function(t){200===t.code&&(window.location.href=n.url+t.data.failed_done_file)})},fetchData:function(){var t=this;this.listLoading=this.reload=!0,this.reload_name="加载中";var e=i()({page:this.listQuery.page},{perPage:this.perpage});Object(o.d)(e).then(function(e){t.list=e.data.data,t.listLoading=!1,t.total=e.data.total,t.url=e.data.appUrl,setTimeout(function(){t.reload=!1,t.reload_name="刷新"},800)})},handleEdit:function(t,e){this.$router.push({path:"/api_excel/edit/"+e.id})},handleDelete:function(t,e){var n=this;this.$confirm("此操作将永久删除该数据, 是否继续?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"error"}).then(function(){Object(o.a)(e.id).then(function(t){n.loading=!1,200===t.code?(n.$message({message:"操作成功",type:"success"}),n.fetchData()):n.$message.error(t.reason)}),n.$message({type:"success",message:"删除成功!"})}).catch(function(){n.$message({type:"info",message:"已取消删除"})})},handleSizeChange:function(t){this.perpage=t,this.$router.push({path:"",query:{page:this.listQuery.page,perPage:t}}),this.fetchData()},handleCurrentChange:function(t){this.listQuery={page:t},this.$router.push({path:"",query:{page:t,perPage:this.perpage}}),this.fetchData({page:t})},goSearch:function(t){var e=this;this.$refs[t].validate(function(t){if(!t)return!1;e.listLoading=!0;var n={wd:e.form.input};Object(o.g)(n).then(function(t){e.listLoading=!1,200===t.code?(e.form.isShow=!0,e.list=t.data.data,e.total=t.data.total):e.$message.error(t.reason)})})}}},c=(n("kXeL"),n("KHd+")),l=Object(c.a)(s,function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"app-container"},[n("el-row",[n("el-button",{attrs:{type:"primary",size:"medium"}},[n("router-link",{attrs:{to:"/api_excel/add"}},[t._v("上传测试")])],1),t._v(" "),n("el-button",{staticClass:"reload",attrs:{loading:t.reload,type:"primary",plain:""},on:{click:t.fetchData}},[t._v(t._s(t.reload_name))])],1),t._v(" "),n("el-table",{directives:[{name:"loading",rawName:"v-loading",value:t.listLoading,expression:"listLoading"}],attrs:{data:t.list,"element-loading-text":"Loading",border:"",fit:"","highlight-current-row":""}},[n("el-table-column",{attrs:{align:"center",label:"ID",width:"70"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.id)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"接口名称",align:"center"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("span",[t._v(t._s(e.row.api_param.name))])]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"描述内容",align:"center"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("span",[t._v(t._s(e.row.description))])]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"用户ID",align:"center",width:"80"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.uid)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"原文件"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.upload_url)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"状态",width:"90",align:"center"},scopedSlots:t._u([{key:"default",fn:function(e){return[0===e.row.state?n("div",[n("el-tag",{attrs:{type:"warning"}},[t._v("未开启")])],1):1===e.row.state?n("div",[n("el-tag",{attrs:{type:"primary"}},[t._v("正在处理")])],1):2===e.row.state?n("div",[n("el-tag",{attrs:{type:"success"}},[t._v("已完成")])],1):n("div",[n("el-tag",{attrs:{type:"info"}},[t._v("失败")])],1)]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"进度条",width:"100",align:"center",display:"none"},scopedSlots:t._u([{key:"default",fn:function(t){return[0===t.row.state?n("div",[n("el-progress",{attrs:{"text-inside":!0,"stroke-width":18,percentage:0}})],1):1===t.row.state?n("div",[n("el-progress",{attrs:{"text-inside":!0,"stroke-width":18,percentage:t.row.rate}})],1):2===t.row.state?n("div",[n("el-progress",{attrs:{"text-inside":!0,"stroke-width":18,percentage:100,status:"success"}})],1):n("div",[n("el-progress",{attrs:{"text-inside":!0,"stroke-width":18,percentage:t.row.rate,status:"exception"}})],1)]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"操作",width:"300",align:"center"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("div",[0===e.row.state?n("el-button",{attrs:{size:"mini",type:"warning"},on:{click:function(n){t.openTask(e.$index,e.row)}}},[t._v("点击开启任务")]):1===e.row.state?n("el-button",{attrs:{size:"mini",type:"primary"}},[t._v("...")]):2===e.row.state?n("el-button",{attrs:{size:"mini",type:"success"},on:{click:function(n){t.download(e.$index,e.row)}}},[t._v("点击下载")]):5===e.row.state?n("el-button",{attrs:{size:"mini",type:"info"},on:{click:function(n){t.download_log(e.$index,e.row)}}},[t._v("下载已测试数据")]):t._e(),t._v(" "),n("el-button",{attrs:{size:"mini",type:"danger"},on:{click:function(n){t.handleDelete(e.$index,e.row)}}},[t._v("删除")])],1)]}}])}),t._v(" "),n("el-table-column",{attrs:{align:"center",prop:"created_at",label:"创建时间",width:"100"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("span",[t._v(t._s(e.row.created_at))])]}}])})],1),t._v(" "),n("div",{staticClass:"pagination"},[n("el-pagination",{attrs:{total:t.total,"current-page":t.currentpage,"page-sizes":[10,20,30,50,100],"page-size":t.perpage,layout:"total, sizes, prev, pager, next, jumper"},on:{"size-change":t.handleSizeChange,"current-change":t.handleCurrentChange}})],1)],1)},[],!1,null,"03a7e190",null);l.options.__file="index.vue";e.default=l.exports}}]);
\ No newline at end of file
diff --git a/laravel/public/static/js/chunk-1496.f320cb0b.js b/laravel/public/static/js/chunk-164a.cec92354.js
similarity index 98%
rename from laravel/public/static/js/chunk-1496.f320cb0b.js
rename to laravel/public/static/js/chunk-164a.cec92354.js
index c1ae678ee6732343035b39e397d7ecd09a9b25e3..3de60ea0fdad51c0cde68e517889f846d03d9ce4 100644
--- a/laravel/public/static/js/chunk-1496.f320cb0b.js
+++ b/laravel/public/static/js/chunk-164a.cec92354.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-1496"],{"+cNF":function(t,e,n){},"D+s9":function(t,e,n){"use strict";n.d(e,"c",function(){return i}),n.d(e,"d",function(){return r}),n.d(e,"e",function(){return s}),n.d(e,"b",function(){return o}),n.d(e,"f",function(){return u}),n.d(e,"a",function(){return c}),n.d(e,"g",function(){return l});var a=n("t3Un");function i(t){return Object(a.a)({url:"/api/permissions",method:"get",params:t})}function r(){return a.a.get("/api/permissions/create")}function s(t){return a.a.post("/api/permissions",t)}function o(t){return a.a.get("/api/permissions/"+t)}function u(t,e){return a.a.patch("/api/permissions/"+t,e)}function c(t){return a.a.delete("/api/permissions/"+t)}function l(t){return Object(a.a)({url:"/api/permissions_search",method:"get",params:t})}},QQbN:function(t,e,n){"use strict";var a=n("+cNF");n.n(a).a},wjrd:function(t,e,n){"use strict";n.r(e);var a=n("P2sY"),i=n.n(a),r=n("D+s9"),s={filters:{statusFilter:function(t){return{1:"success",0:"gray","-1":"danger"}[t]}},data:function(){return{list:null,listLoading:!0,perpage:10,total:100,currentpage:1,listQuery:{page:1}}},created:function(){this.listQuery=this.$route.query,this.currentpage=parseInt(this.listQuery.page);var t=parseInt(this.$route.query.perPage);this.perpage=isNaN(t)?this.perpage:t,this.fetchData()},methods:{fetchData:function(){var t=this;this.listLoading=!0;var e=i()({page:this.listQuery.page},{perPage:this.perpage});Object(r.c)(e).then(function(e){t.list=e.data.data,t.listLoading=!1,t.total=e.data.total})},handleEdit:function(t,e){this.$router.push({path:"/permission/edit/"+e.id})},handleDelete:function(t,e){var n=this;this.$confirm("此操作将永久删除该数据, 是否继续?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(function(){Object(r.a)(e.id).then(function(t){n.loading=!1,200===t.code?(n.$message({message:"操作成功",type:"success"}),n.fetchData()):n.$message.error(t.reason)}),n.$message({type:"success",message:"删除成功!"})}).catch(function(){n.$message({type:"info",message:"已取消删除"})})},handleSizeChange:function(t){this.perpage=t,this.$router.push({path:"",query:{page:this.listQuery.page,perPage:t}}),this.fetchData()},handleCurrentChange:function(t){this.listQuery={page:t},this.$router.push({path:"",query:{page:t,perPage:this.perpage}}),this.fetchData({page:t})},goSearch:function(t){var e=this;this.$refs[t].validate(function(t){if(!t)return!1;e.listLoading=!0;var n={wd:e.form.input};Object(r.g)(n).then(function(t){e.listLoading=!1,200===t.code?(e.form.isShow=!0,e.list=t.data.data,e.total=t.data.total):e.$message.error(t.reason)})})}}},o=(n("QQbN"),n("KHd+")),u=Object(o.a)(s,function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"app-container"},[n("el-row",[n("el-button",{attrs:{type:"primary",size:"medium"}},[n("router-link",{attrs:{to:"/permission/add"}},[t._v("新增权限")])],1)],1),t._v(" "),n("el-table",{directives:[{name:"loading",rawName:"v-loading",value:t.listLoading,expression:"listLoading"}],attrs:{data:t.list,"element-loading-text":"Loading",border:"",fit:"","highlight-current-row":""}},[n("el-table-column",{attrs:{align:"center",label:"ID",width:"70"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.id)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"权限名称"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.name)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{align:"center",prop:"created_at",label:"创建时间",width:""},scopedSlots:t._u([{key:"default",fn:function(e){return[n("i",{staticClass:"el-icon-time"}),t._v(" "),n("span",[t._v(t._s(e.row.created_at))])]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"操作"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("el-button",{attrs:{size:"mini"},on:{click:function(n){t.handleEdit(e.$index,e.row)}}},[t._v("编辑")]),t._v(" "),n("el-button",{attrs:{size:"mini",type:"danger"},on:{click:function(n){t.handleDelete(e.$index,e.row)}}},[t._v("删除")])]}}])})],1),t._v(" "),n("div",{staticClass:"pagination"},[n("el-pagination",{attrs:{total:t.total,"current-page":t.currentpage,"page-sizes":[10,20,30,50,100],"page-size":t.perpage,layout:"total, sizes, prev, pager, next, jumper"},on:{"size-change":t.handleSizeChange,"current-change":t.handleCurrentChange}})],1)],1)},[],!1,null,"415a43e3",null);u.options.__file="index.vue";e.default=u.exports}}]);
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-164a"],{"+cNF":function(t,e,n){},"D+s9":function(t,e,n){"use strict";n.d(e,"c",function(){return i}),n.d(e,"d",function(){return r}),n.d(e,"e",function(){return s}),n.d(e,"b",function(){return o}),n.d(e,"f",function(){return u}),n.d(e,"a",function(){return c}),n.d(e,"g",function(){return l});var a=n("t3Un");function i(t){return Object(a.a)({url:"/api/permissions",method:"get",params:t})}function r(){return a.a.get("/api/permissions/create")}function s(t){return a.a.post("/api/permissions",t)}function o(t){return a.a.get("/api/permissions/"+t)}function u(t,e){return a.a.patch("/api/permissions/"+t,e)}function c(t){return a.a.delete("/api/permissions/"+t)}function l(t){return Object(a.a)({url:"/api/permissions_search",method:"get",params:t})}},QQbN:function(t,e,n){"use strict";var a=n("+cNF");n.n(a).a},wjrd:function(t,e,n){"use strict";n.r(e);var a=n("P2sY"),i=n.n(a),r=n("D+s9"),s={filters:{statusFilter:function(t){return{1:"success",0:"gray","-1":"danger"}[t]}},data:function(){return{list:null,listLoading:!0,perpage:10,total:100,currentpage:1,listQuery:{page:1}}},created:function(){this.listQuery=this.$route.query,this.currentpage=parseInt(this.listQuery.page);var t=parseInt(this.$route.query.perPage);this.perpage=isNaN(t)?this.perpage:t,this.fetchData()},methods:{fetchData:function(){var t=this;this.listLoading=!0;var e=i()({page:this.listQuery.page},{perPage:this.perpage});Object(r.c)(e).then(function(e){t.list=e.data.data,t.listLoading=!1,t.total=e.data.total})},handleEdit:function(t,e){this.$router.push({path:"/permission/edit/"+e.id})},handleDelete:function(t,e){var n=this;this.$confirm("此操作将永久删除该数据, 是否继续?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(function(){Object(r.a)(e.id).then(function(t){n.loading=!1,200===t.code?(n.$message({message:"操作成功",type:"success"}),n.fetchData()):n.$message.error(t.reason)}),n.$message({type:"success",message:"删除成功!"})}).catch(function(){n.$message({type:"info",message:"已取消删除"})})},handleSizeChange:function(t){this.perpage=t,this.$router.push({path:"",query:{page:this.listQuery.page,perPage:t}}),this.fetchData()},handleCurrentChange:function(t){this.listQuery={page:t},this.$router.push({path:"",query:{page:t,perPage:this.perpage}}),this.fetchData({page:t})},goSearch:function(t){var e=this;this.$refs[t].validate(function(t){if(!t)return!1;e.listLoading=!0;var n={wd:e.form.input};Object(r.g)(n).then(function(t){e.listLoading=!1,200===t.code?(e.form.isShow=!0,e.list=t.data.data,e.total=t.data.total):e.$message.error(t.reason)})})}}},o=(n("QQbN"),n("KHd+")),u=Object(o.a)(s,function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"app-container"},[n("el-row",[n("el-button",{attrs:{type:"primary",size:"medium"}},[n("router-link",{attrs:{to:"/permission/add"}},[t._v("新增权限")])],1)],1),t._v(" "),n("el-table",{directives:[{name:"loading",rawName:"v-loading",value:t.listLoading,expression:"listLoading"}],attrs:{data:t.list,"element-loading-text":"Loading",border:"",fit:"","highlight-current-row":""}},[n("el-table-column",{attrs:{align:"center",label:"ID",width:"70"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.id)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"权限名称"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.name)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{align:"center",prop:"created_at",label:"创建时间",width:""},scopedSlots:t._u([{key:"default",fn:function(e){return[n("i",{staticClass:"el-icon-time"}),t._v(" "),n("span",[t._v(t._s(e.row.created_at))])]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"操作"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("el-button",{attrs:{size:"mini"},on:{click:function(n){t.handleEdit(e.$index,e.row)}}},[t._v("编辑")]),t._v(" "),n("el-button",{attrs:{size:"mini",type:"danger"},on:{click:function(n){t.handleDelete(e.$index,e.row)}}},[t._v("删除")])]}}])})],1),t._v(" "),n("div",{staticClass:"pagination"},[n("el-pagination",{attrs:{total:t.total,"current-page":t.currentpage,"page-sizes":[10,20,30,50,100],"page-size":t.perpage,layout:"total, sizes, prev, pager, next, jumper"},on:{"size-change":t.handleSizeChange,"current-change":t.handleCurrentChange}})],1)],1)},[],!1,null,"415a43e3",null);u.options.__file="index.vue";e.default=u.exports}}]);
\ No newline at end of file
diff --git a/laravel/public/static/js/chunk-2164.2d04d7c4.js b/laravel/public/static/js/chunk-2319.77b7199c.js
similarity index 98%
rename from laravel/public/static/js/chunk-2164.2d04d7c4.js
rename to laravel/public/static/js/chunk-2319.77b7199c.js
index be4a95b5c0e613e46d3530a90e6fdbfff160ea95..7aa5b66940dafb8e8a1163967f4d28b9ce272435 100644
--- a/laravel/public/static/js/chunk-2164.2d04d7c4.js
+++ b/laravel/public/static/js/chunk-2319.77b7199c.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-2164"],{"44Km":function(t,e,n){"use strict";n.r(e);var a=n("P2sY"),r=n.n(a),i=n("wk8/"),s={filters:{statusFilter:function(t){return{1:"success",0:"gray","-1":"danger"}[t]}},data:function(){return{list:null,listLoading:!0,perpage:10,total:100,currentpage:1,listQuery:{page:1}}},created:function(){this.listQuery=this.$route.query,this.currentpage=parseInt(this.listQuery.page);var t=parseInt(this.$route.query.perPage);this.perpage=isNaN(t)?this.perpage:t,this.fetchData()},methods:{fetchData:function(){var t=this;this.listLoading=!0;var e=r()({page:this.listQuery.page},{perPage:this.perpage});Object(i.c)(e).then(function(e){t.list=e.data.data,t.listLoading=!1,t.total=e.data.total})},handleEdit:function(t,e){this.$router.push({path:"/user/edit/"+e.id})},handleDelete:function(t,e){var n=this;this.$confirm("此操作将永久删除该数据, 是否继续?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(function(){Object(i.a)(e.id).then(function(t){n.loading=!1,200===t.code?(n.$message({message:"操作成功",type:"success"}),n.fetchData()):n.$message.error(t.reason)}),n.$message({type:"success",message:"删除成功!"})}).catch(function(){n.$message({type:"info",message:"已取消删除"})})},handleSizeChange:function(t){this.perpage=t,this.$router.push({path:"",query:{page:this.listQuery.page,perPage:t}}),this.fetchData()},handleCurrentChange:function(t){this.listQuery={page:t},this.$router.push({path:"",query:{page:t,perPage:this.perpage}}),this.fetchData({page:t})},goSearch:function(t){var e=this;this.$refs[t].validate(function(t){if(!t)return!1;e.listLoading=!0;var n={wd:e.form.input};Object(i.h)(n).then(function(t){e.listLoading=!1,200===t.code?(e.form.isShow=!0,e.list=t.data.data,e.total=t.data.total):e.$message.error(t.reason)})})}}},u=(n("8qaZ"),n("KHd+")),o=Object(u.a)(s,function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"app-container"},[n("el-row",[n("el-button",{attrs:{type:"primary",size:"medium"}},[n("router-link",{attrs:{to:"/user/add"}},[t._v("新增用户")])],1)],1),t._v(" "),n("el-table",{directives:[{name:"loading",rawName:"v-loading",value:t.listLoading,expression:"listLoading"}],attrs:{data:t.list,"element-loading-text":"Loading",border:"",fit:"","highlight-current-row":""}},[n("el-table-column",{attrs:{align:"center",label:"ID",width:"70"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.id)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"用户昵称"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.name)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"邮箱"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.email)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"分配的角色"},scopedSlots:t._u([{key:"default",fn:function(e){return t._l(e.row.roles,function(e){return n("el-tag",{key:e.id},[t._v(t._s(e.name))])})}}])}),t._v(" "),n("el-table-column",{attrs:{align:"center",prop:"created_at",label:"创建时间",width:""},scopedSlots:t._u([{key:"default",fn:function(e){return[n("i",{staticClass:"el-icon-time"}),t._v(" "),n("span",[t._v(t._s(e.row.created_at))])]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"操作"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("el-button",{attrs:{size:"mini"},on:{click:function(n){t.handleEdit(e.$index,e.row)}}},[t._v("编辑")]),t._v(" "),n("el-button",{attrs:{size:"mini",type:"danger"},on:{click:function(n){t.handleDelete(e.$index,e.row)}}},[t._v("删除")])]}}])})],1),t._v(" "),n("div",{staticClass:"pagination"},[n("el-pagination",{attrs:{total:t.total,"current-page":t.currentpage,"page-sizes":[10,20,30,50,100],"page-size":t.perpage,layout:"total, sizes, prev, pager, next, jumper"},on:{"size-change":t.handleSizeChange,"current-change":t.handleCurrentChange}})],1)],1)},[],!1,null,"3e7fc716",null);o.options.__file="index.vue";e.default=o.exports},"8qaZ":function(t,e,n){"use strict";var a=n("9DmL");n.n(a).a},"9DmL":function(t,e,n){},"wk8/":function(t,e,n){"use strict";n.d(e,"c",function(){return r}),n.d(e,"d",function(){return i}),n.d(e,"e",function(){return s}),n.d(e,"b",function(){return u}),n.d(e,"f",function(){return o}),n.d(e,"a",function(){return l}),n.d(e,"g",function(){return c}),n.d(e,"h",function(){return p});var a=n("t3Un");function r(t){return Object(a.a)({url:"/api/user",method:"get",params:t})}function i(){return a.a.get("/api/permissions/create")}function s(t){return a.a.post("/api/user",t)}function u(t){return a.a.get("/api/user/"+t)}function o(t,e){return a.a.patch("/api/user/"+t,e)}function l(t){return a.a.delete("/api/user/"+t)}function c(t){return a.a.post("/api/user_password",t)}function p(t){return Object(a.a)({url:"/api/api_user_search",method:"get",params:t})}}}]);
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-2319"],{"44Km":function(t,e,n){"use strict";n.r(e);var a=n("P2sY"),r=n.n(a),i=n("wk8/"),s={filters:{statusFilter:function(t){return{1:"success",0:"gray","-1":"danger"}[t]}},data:function(){return{list:null,listLoading:!0,perpage:10,total:100,currentpage:1,listQuery:{page:1}}},created:function(){this.listQuery=this.$route.query,this.currentpage=parseInt(this.listQuery.page);var t=parseInt(this.$route.query.perPage);this.perpage=isNaN(t)?this.perpage:t,this.fetchData()},methods:{fetchData:function(){var t=this;this.listLoading=!0;var e=r()({page:this.listQuery.page},{perPage:this.perpage});Object(i.c)(e).then(function(e){t.list=e.data.data,t.listLoading=!1,t.total=e.data.total})},handleEdit:function(t,e){this.$router.push({path:"/user/edit/"+e.id})},handleDelete:function(t,e){var n=this;this.$confirm("此操作将永久删除该数据, 是否继续?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(function(){Object(i.a)(e.id).then(function(t){n.loading=!1,200===t.code?(n.$message({message:"操作成功",type:"success"}),n.fetchData()):n.$message.error(t.reason)}),n.$message({type:"success",message:"删除成功!"})}).catch(function(){n.$message({type:"info",message:"已取消删除"})})},handleSizeChange:function(t){this.perpage=t,this.$router.push({path:"",query:{page:this.listQuery.page,perPage:t}}),this.fetchData()},handleCurrentChange:function(t){this.listQuery={page:t},this.$router.push({path:"",query:{page:t,perPage:this.perpage}}),this.fetchData({page:t})},goSearch:function(t){var e=this;this.$refs[t].validate(function(t){if(!t)return!1;e.listLoading=!0;var n={wd:e.form.input};Object(i.h)(n).then(function(t){e.listLoading=!1,200===t.code?(e.form.isShow=!0,e.list=t.data.data,e.total=t.data.total):e.$message.error(t.reason)})})}}},u=(n("8qaZ"),n("KHd+")),o=Object(u.a)(s,function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"app-container"},[n("el-row",[n("el-button",{attrs:{type:"primary",size:"medium"}},[n("router-link",{attrs:{to:"/user/add"}},[t._v("新增用户")])],1)],1),t._v(" "),n("el-table",{directives:[{name:"loading",rawName:"v-loading",value:t.listLoading,expression:"listLoading"}],attrs:{data:t.list,"element-loading-text":"Loading",border:"",fit:"","highlight-current-row":""}},[n("el-table-column",{attrs:{align:"center",label:"ID",width:"70"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.id)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"用户昵称"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.name)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"邮箱"},scopedSlots:t._u([{key:"default",fn:function(e){return[t._v("\n "+t._s(e.row.email)+"\n ")]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"分配的角色"},scopedSlots:t._u([{key:"default",fn:function(e){return t._l(e.row.roles,function(e){return n("el-tag",{key:e.id},[t._v(t._s(e.name))])})}}])}),t._v(" "),n("el-table-column",{attrs:{align:"center",prop:"created_at",label:"创建时间",width:""},scopedSlots:t._u([{key:"default",fn:function(e){return[n("i",{staticClass:"el-icon-time"}),t._v(" "),n("span",[t._v(t._s(e.row.created_at))])]}}])}),t._v(" "),n("el-table-column",{attrs:{label:"操作"},scopedSlots:t._u([{key:"default",fn:function(e){return[n("el-button",{attrs:{size:"mini"},on:{click:function(n){t.handleEdit(e.$index,e.row)}}},[t._v("编辑")]),t._v(" "),n("el-button",{attrs:{size:"mini",type:"danger"},on:{click:function(n){t.handleDelete(e.$index,e.row)}}},[t._v("删除")])]}}])})],1),t._v(" "),n("div",{staticClass:"pagination"},[n("el-pagination",{attrs:{total:t.total,"current-page":t.currentpage,"page-sizes":[10,20,30,50,100],"page-size":t.perpage,layout:"total, sizes, prev, pager, next, jumper"},on:{"size-change":t.handleSizeChange,"current-change":t.handleCurrentChange}})],1)],1)},[],!1,null,"3e7fc716",null);o.options.__file="index.vue";e.default=o.exports},"8qaZ":function(t,e,n){"use strict";var a=n("9DmL");n.n(a).a},"9DmL":function(t,e,n){},"wk8/":function(t,e,n){"use strict";n.d(e,"c",function(){return r}),n.d(e,"d",function(){return i}),n.d(e,"e",function(){return s}),n.d(e,"b",function(){return u}),n.d(e,"f",function(){return o}),n.d(e,"a",function(){return l}),n.d(e,"g",function(){return c}),n.d(e,"h",function(){return p});var a=n("t3Un");function r(t){return Object(a.a)({url:"/api/user",method:"get",params:t})}function i(){return a.a.get("/api/permissions/create")}function s(t){return a.a.post("/api/user",t)}function u(t){return a.a.get("/api/user/"+t)}function o(t,e){return a.a.patch("/api/user/"+t,e)}function l(t){return a.a.delete("/api/user/"+t)}function c(t){return a.a.post("/api/user_password",t)}function p(t){return Object(a.a)({url:"/api/api_user_search",method:"get",params:t})}}}]);
\ No newline at end of file
diff --git a/laravel/public/static/js/chunk-0def.4d2da810.js b/laravel/public/static/js/chunk-3379.035e311f.js
similarity index 98%
rename from laravel/public/static/js/chunk-0def.4d2da810.js
rename to laravel/public/static/js/chunk-3379.035e311f.js
index 7238f0e28b5c7de2e8bb32fc3ae4018d6624e456..f69eca3af9b5c9422ac2f8e48182d0e698070beb 100644
--- a/laravel/public/static/js/chunk-0def.4d2da810.js
+++ b/laravel/public/static/js/chunk-3379.035e311f.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-0def"],{"D+s9":function(e,t,n){"use strict";n.d(t,"c",function(){return o}),n.d(t,"d",function(){return s}),n.d(t,"e",function(){return i}),n.d(t,"b",function(){return a}),n.d(t,"f",function(){return c}),n.d(t,"a",function(){return l}),n.d(t,"g",function(){return u});var r=n("t3Un");function o(e){return Object(r.a)({url:"/api/permissions",method:"get",params:e})}function s(){return r.a.get("/api/permissions/create")}function i(e){return r.a.post("/api/permissions",e)}function a(e){return r.a.get("/api/permissions/"+e)}function c(e,t){return r.a.patch("/api/permissions/"+e,t)}function l(e){return r.a.delete("/api/permissions/"+e)}function u(e){return Object(r.a)({url:"/api/permissions_search",method:"get",params:e})}},Hr20:function(e,t,n){"use strict";var r=n("qZ7z");n.n(r).a},oKS6:function(e,t,n){"use strict";n.r(t);var r=n("D+s9"),o={data:function(){return{form:{name:"",route:"",checkedRoles:[],roles:[],isIndeterminate:!0,loading:!1},rules:{name:[{required:!0,message:"请输入名称",trigger:"blur"}]},redirect:"/permission"}},created:function(){this.fetchData()},methods:{fetchData:function(){var e=this;this.listLoading=!0,Object(r.d)().then(function(t){e.form.roles=t.data.roles,e.listLoading=!1})},handleCheckedRolesChange:function(e){var t=e.length;this.isIndeterminate=t>0&&t0&&t0&&t0&&t0&&r0&&r0&&t0&&t0&&n0&&n0&&t0&&t 'Api'], function () {
Route::get('roles/store', 'RoleController@store');
Route::resource('permissions', 'PermissionController');
Route::resource('roles', 'RoleController');
+
+ // 配置相关
+ Route::resource('config', 'ConfigController');
});