Commit eb78295e authored by 萌萌哒SAKURA酱's avatar 萌萌哒SAKURA酱

🎨 Improving structure / format of the code.

parent ab75b4d4
...@@ -2,4 +2,4 @@ module.exports = { ...@@ -2,4 +2,4 @@ module.exports = {
presets: [ presets: [
'@vue/app' '@vue/app'
] ]
} }
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -4,4 +4,4 @@ code.google.com/p/crypto-js ...@@ -4,4 +4,4 @@ code.google.com/p/crypto-js
(c) 2009-2013 by Jeff Mott. All rights reserved. (c) 2009-2013 by Jeff Mott. All rights reserved.
code.google.com/p/crypto-js/wiki/License code.google.com/p/crypto-js/wiki/License
*/ */
CryptoJS.mode.ECB=function(){var a=CryptoJS.lib.BlockCipherMode.extend();a.Encryptor=a.extend({processBlock:function(a,b){this._cipher.encryptBlock(a,b)}});a.Decryptor=a.extend({processBlock:function(a,b){this._cipher.decryptBlock(a,b)}});return a}(); CryptoJS.mode.ECB = (function () { var a = CryptoJS.lib.BlockCipherMode.extend(); a.Encryptor = a.extend({ processBlock: function (a, b) { this._cipher.encryptBlock(a, b) } }); a.Decryptor = a.extend({ processBlock: function (a, b) { this._cipher.decryptBlock(a, b) } }); return a }())
...@@ -2,24 +2,24 @@ ...@@ -2,24 +2,24 @@
* Zero padding strategy. * Zero padding strategy.
*/ */
CryptoJS.pad.ZeroPadding = { CryptoJS.pad.ZeroPadding = {
pad: function (data, blockSize) { pad: function (data, blockSize) {
// Shortcut // Shortcut
var blockSizeBytes = blockSize * 4; var blockSizeBytes = blockSize * 4
// Pad // Pad
data.clamp(); data.clamp()
data.sigBytes += blockSizeBytes - ((data.sigBytes % blockSizeBytes) || blockSizeBytes); data.sigBytes += blockSizeBytes - ((data.sigBytes % blockSizeBytes) || blockSizeBytes)
}, },
unpad: function (data) { unpad: function (data) {
// Shortcut // Shortcut
var dataWords = data.words; var dataWords = data.words
// Unpad // Unpad
var i = data.sigBytes - 1; var i = data.sigBytes - 1
while (!((dataWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff)) { while (!((dataWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff)) {
i--; i--
}
data.sigBytes = i + 1;
} }
}; data.sigBytes = i + 1
}
}
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/act/model', url: '/act/model',
method: 'get', method: 'get',
...@@ -25,22 +25,21 @@ export function fetchList(query) { ...@@ -25,22 +25,21 @@ export function fetchList(query) {
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/act/model/' + id, url: '/act/model/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function deploy(id) { export function deploy (id) {
return request({ return request({
url: '/act/model/deploy/' + id, url: '/act/model/deploy/' + id,
method: 'post' method: 'post'
}) })
} }
export function addObj (obj) {
export function addObj(obj) {
return request({ return request({
url: '/act/model/insert', url: '/act/model/insert',
method: 'post', method: 'post',
...@@ -48,14 +47,14 @@ export function addObj(obj) { ...@@ -48,14 +47,14 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/admin/log/' + id, url: '/admin/log/' + id,
method: 'get' method: 'get'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/admin/log/', url: '/admin/log/',
method: 'put', method: 'put',
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/act/leave-bill/page', url: '/act/leave-bill/page',
method: 'get', method: 'get',
...@@ -25,7 +25,7 @@ export function fetchList(query) { ...@@ -25,7 +25,7 @@ export function fetchList(query) {
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/act/leave-bill', url: '/act/leave-bill',
method: 'post', method: 'post',
...@@ -33,28 +33,28 @@ export function addObj(obj) { ...@@ -33,28 +33,28 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/act/leave-bill/' + id, url: '/act/leave-bill/' + id,
method: 'get' method: 'get'
}) })
} }
export function submit(id) { export function submit (id) {
return request({ return request({
url: '/act/leave-bill/submit/' + id, url: '/act/leave-bill/submit/' + id,
method: 'get' method: 'get'
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/act/leave-bill/' + id, url: '/act/leave-bill/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/act/leave-bill/', url: '/act/leave-bill/',
method: 'put', method: 'put',
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/act/process', url: '/act/process',
method: 'get', method: 'get',
...@@ -25,16 +25,16 @@ export function fetchList(query) { ...@@ -25,16 +25,16 @@ export function fetchList(query) {
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/act/process/' + id, url: '/act/process/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function status(id, type) { export function status (id, type) {
return request({ return request({
url: '/act/process/status/' + id + "/" + type, url: '/act/process/status/' + id + '/' + type,
method: 'put' method: 'put'
}) })
} }
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/act/task/todo', url: '/act/task/todo',
method: 'get', method: 'get',
...@@ -25,21 +25,21 @@ export function fetchList(query) { ...@@ -25,21 +25,21 @@ export function fetchList(query) {
}) })
} }
export function fetchDetail(id) { export function fetchDetail (id) {
return request({ return request({
url: '/act/task/' + id, url: '/act/task/' + id,
method: 'get' method: 'get'
}) })
} }
export function fetchComment(id) { export function fetchComment (id) {
return request({ return request({
url: '/act/task/comment/' + id, url: '/act/task/comment/' + id,
method: 'get' method: 'get'
}) })
} }
export function doTask(obj) { export function doTask (obj) {
return request({ return request({
url: '/act/task', url: '/act/task',
method: 'post', method: 'post',
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/admin/client/page', url: '/admin/client/page',
method: 'get', method: 'get',
...@@ -25,7 +25,7 @@ export function fetchList(query) { ...@@ -25,7 +25,7 @@ export function fetchList(query) {
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/admin/client/', url: '/admin/client/',
method: 'post', method: 'post',
...@@ -33,21 +33,21 @@ export function addObj(obj) { ...@@ -33,21 +33,21 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/admin/client/' + id, url: '/admin/client/' + id,
method: 'get' method: 'get'
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/admin/client/' + id, url: '/admin/client/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/admin/client', url: '/admin/client',
method: 'put', method: 'put',
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchDeptTree(query) { export function fetchDeptTree (query) {
return request({ return request({
url: '/admin/dept/user-tree', url: '/admin/dept/user-tree',
method: 'get', method: 'get',
...@@ -25,7 +25,7 @@ export function fetchDeptTree(query) { ...@@ -25,7 +25,7 @@ export function fetchDeptTree(query) {
}) })
} }
export function fetchTree(query) { export function fetchTree (query) {
return request({ return request({
url: '/admin/dept/tree', url: '/admin/dept/tree',
method: 'get', method: 'get',
...@@ -33,7 +33,7 @@ export function fetchTree(query) { ...@@ -33,7 +33,7 @@ export function fetchTree(query) {
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/admin/dept/', url: '/admin/dept/',
method: 'post', method: 'post',
...@@ -41,21 +41,21 @@ export function addObj(obj) { ...@@ -41,21 +41,21 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/admin/dept/' + id, url: '/admin/dept/' + id,
method: 'get' method: 'get'
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/admin/dept/' + id, url: '/admin/dept/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/admin/dept/', url: '/admin/dept/',
method: 'put', method: 'put',
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/admin/dict/page', url: '/admin/dict/page',
method: 'get', method: 'get',
...@@ -25,7 +25,7 @@ export function fetchList(query) { ...@@ -25,7 +25,7 @@ export function fetchList(query) {
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/admin/dict/', url: '/admin/dict/',
method: 'post', method: 'post',
...@@ -33,21 +33,21 @@ export function addObj(obj) { ...@@ -33,21 +33,21 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/admin/dict/' + id, url: '/admin/dict/' + id,
method: 'get' method: 'get'
}) })
} }
export function delObj(row) { export function delObj (row) {
return request({ return request({
url: '/admin/dict/' + row.id + '/' + row.type, url: '/admin/dict/' + row.id + '/' + row.type,
method: 'delete' method: 'delete'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/admin/dict/', url: '/admin/dict/',
method: 'put', method: 'put',
...@@ -55,7 +55,7 @@ export function putObj(obj) { ...@@ -55,7 +55,7 @@ export function putObj(obj) {
}) })
} }
export function remote(type) { export function remote (type) {
return request({ return request({
url: '/admin/dict/type/' + type, url: '/admin/dict/type/' + type,
method: 'get' method: 'get'
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/admin/log/page', url: '/admin/log/page',
method: 'get', method: 'get',
...@@ -25,14 +25,14 @@ export function fetchList(query) { ...@@ -25,14 +25,14 @@ export function fetchList(query) {
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/admin/log/' + id, url: '/admin/log/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/admin/log/', url: '/admin/log/',
method: 'post', method: 'post',
...@@ -40,14 +40,14 @@ export function addObj(obj) { ...@@ -40,14 +40,14 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/admin/log/' + id, url: '/admin/log/' + id,
method: 'get' method: 'get'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/admin/log/', url: '/admin/log/',
method: 'put', method: 'put',
...@@ -55,7 +55,7 @@ export function putObj(obj) { ...@@ -55,7 +55,7 @@ export function putObj(obj) {
}) })
} }
export function sendLogs(logsList) { export function sendLogs (logsList) {
return request({ return request({
url: '/admin/log/logs', url: '/admin/log/logs',
method: 'post', method: 'post',
......
...@@ -17,14 +17,14 @@ ...@@ -17,14 +17,14 @@
import request from '@/router/axios' import request from '@/router/axios'
export function GetMenu() { export function GetMenu () {
return request({ return request({
url: '/admin/menu', url: '/admin/menu',
method: 'get' method: 'get'
}) })
} }
export function fetchTree(query) { export function fetchTree (query) {
return request({ return request({
url: '/admin/menu/tree', url: '/admin/menu/tree',
method: 'get', method: 'get',
...@@ -32,7 +32,7 @@ export function fetchTree(query) { ...@@ -32,7 +32,7 @@ export function fetchTree(query) {
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/admin/menu', url: '/admin/menu',
method: 'post', method: 'post',
...@@ -40,21 +40,21 @@ export function addObj(obj) { ...@@ -40,21 +40,21 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/admin/menu/' + id, url: '/admin/menu/' + id,
method: 'get' method: 'get'
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/admin/menu/' + id, url: '/admin/menu/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/admin/menu', url: '/admin/menu',
method: 'put', method: 'put',
......
...@@ -17,14 +17,14 @@ ...@@ -17,14 +17,14 @@
import request from '@/router/axios' import request from '@/router/axios'
export function roleList() { export function roleList () {
return request({ return request({
url: '/admin/role/roleList', url: '/admin/role/roleList',
method: 'get' method: 'get'
}) })
} }
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/admin/role/page', url: '/admin/role/page',
method: 'get', method: 'get',
...@@ -32,21 +32,21 @@ export function fetchList(query) { ...@@ -32,21 +32,21 @@ export function fetchList(query) {
}) })
} }
export function deptRoleList() { export function deptRoleList () {
return request({ return request({
url: '/admin/role/list', url: '/admin/role/list',
method: 'get' method: 'get'
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/admin/role/' + id, url: '/admin/role/' + id,
method: 'get' method: 'get'
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/admin/role', url: '/admin/role',
method: 'post', method: 'post',
...@@ -54,7 +54,7 @@ export function addObj(obj) { ...@@ -54,7 +54,7 @@ export function addObj(obj) {
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/admin/role', url: '/admin/role',
method: 'put', method: 'put',
...@@ -62,14 +62,14 @@ export function putObj(obj) { ...@@ -62,14 +62,14 @@ export function putObj(obj) {
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/admin/role/' + id, url: '/admin/role/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function permissionUpd(roleId, menuIds) { export function permissionUpd (roleId, menuIds) {
return request({ return request({
url: '/admin/role/menu', url: '/admin/role/menu',
method: 'put', method: 'put',
...@@ -80,7 +80,7 @@ export function permissionUpd(roleId, menuIds) { ...@@ -80,7 +80,7 @@ export function permissionUpd(roleId, menuIds) {
}) })
} }
export function fetchRoleTree(roleName) { export function fetchRoleTree (roleName) {
return request({ return request({
url: '/admin/menu/tree/' + roleName, url: '/admin/menu/tree/' + roleName,
method: 'get' method: 'get'
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/admin/route', url: '/admin/route',
method: 'get', method: 'get',
...@@ -25,7 +25,7 @@ export function fetchList(query) { ...@@ -25,7 +25,7 @@ export function fetchList(query) {
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/admin/route', url: '/admin/route',
method: 'put', method: 'put',
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/admin/social/page', url: '/admin/social/page',
method: 'get', method: 'get',
...@@ -25,7 +25,7 @@ export function fetchList(query) { ...@@ -25,7 +25,7 @@ export function fetchList(query) {
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/admin/social/', url: '/admin/social/',
method: 'post', method: 'post',
...@@ -33,21 +33,21 @@ export function addObj(obj) { ...@@ -33,21 +33,21 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/admin/social/' + id, url: '/admin/social/' + id,
method: 'get' method: 'get'
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/admin/social/' + id, url: '/admin/social/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/admin/social/', url: '/admin/social/',
method: 'put', method: 'put',
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/admin/token/page', url: '/admin/token/page',
method: 'get', method: 'get',
...@@ -25,7 +25,7 @@ export function fetchList(query) { ...@@ -25,7 +25,7 @@ export function fetchList(query) {
}) })
} }
export function delObj(token) { export function delObj (token) {
return request({ return request({
url: '/admin/token/' + token, url: '/admin/token/' + token,
method: 'delete' method: 'delete'
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/admin/user/page', url: '/admin/user/page',
method: 'get', method: 'get',
...@@ -25,7 +25,7 @@ export function fetchList(query) { ...@@ -25,7 +25,7 @@ export function fetchList(query) {
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/admin/user', url: '/admin/user',
method: 'post', method: 'post',
...@@ -33,21 +33,21 @@ export function addObj(obj) { ...@@ -33,21 +33,21 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/admin/user/' + id, url: '/admin/user/' + id,
method: 'get' method: 'get'
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/admin/user/' + id, url: '/admin/user/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/admin/user', url: '/admin/user',
method: 'put', method: 'put',
...@@ -55,7 +55,7 @@ export function putObj(obj) { ...@@ -55,7 +55,7 @@ export function putObj(obj) {
}) })
} }
export function getDetails(obj) { export function getDetails (obj) {
return request({ return request({
url: '/admin/user/details/' + obj, url: '/admin/user/details/' + obj,
method: 'get' method: 'get'
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/daemon/execution-log/page', url: '/daemon/execution-log/page',
method: 'get', method: 'get',
...@@ -25,7 +25,7 @@ export function fetchList(query) { ...@@ -25,7 +25,7 @@ export function fetchList(query) {
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/daemon/execution-log', url: '/daemon/execution-log',
method: 'post', method: 'post',
...@@ -33,21 +33,21 @@ export function addObj(obj) { ...@@ -33,21 +33,21 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/daemon/execution-log/' + id, url: '/daemon/execution-log/' + id,
method: 'get' method: 'get'
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/daemon/execution-log/' + id, url: '/daemon/execution-log/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/daemon/execution-log', url: '/daemon/execution-log',
method: 'put', method: 'put',
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/daemon/status-trace-log/page', url: '/daemon/status-trace-log/page',
method: 'get', method: 'get',
...@@ -25,7 +25,7 @@ export function fetchList(query) { ...@@ -25,7 +25,7 @@ export function fetchList(query) {
}) })
} }
export function addObj(obj) { export function addObj (obj) {
return request({ return request({
url: '/daemon/status-trace-log', url: '/daemon/status-trace-log',
method: 'post', method: 'post',
...@@ -33,21 +33,21 @@ export function addObj(obj) { ...@@ -33,21 +33,21 @@ export function addObj(obj) {
}) })
} }
export function getObj(id) { export function getObj (id) {
return request({ return request({
url: '/daemon/status-trace-log/' + id, url: '/daemon/status-trace-log/' + id,
method: 'get' method: 'get'
}) })
} }
export function delObj(id) { export function delObj (id) {
return request({ return request({
url: '/daemon/statustracelog/' + id, url: '/daemon/statustracelog/' + id,
method: 'delete' method: 'delete'
}) })
} }
export function putObj(obj) { export function putObj (obj) {
return request({ return request({
url: '/daemon/status-trace-log', url: '/daemon/status-trace-log',
method: 'put', method: 'put',
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function fetchList(query) { export function fetchList (query) {
return request({ return request({
url: '/gen/generator/page', url: '/gen/generator/page',
method: 'get', method: 'get',
...@@ -25,23 +25,23 @@ export function fetchList(query) { ...@@ -25,23 +25,23 @@ export function fetchList(query) {
}) })
} }
export function handleDown(table) { export function handleDown (table) {
return request({ return request({
url: '/gen/generator/code', url: '/gen/generator/code',
method: 'post', method: 'post',
data: table, data: table,
responseType: 'arraybuffer' responseType: 'arraybuffer'
}).then((response) => { // 处理返回的文件流 }).then((response) => { // 处理返回的文件流
let blob = new Blob([response.data], {type: 'application/zip'}) let blob = new Blob([response.data], { type: 'application/zip' })
let filename = table.tableName + '.zip' let filename = table.tableName + '.zip'
let link = document.createElement('a'); let link = document.createElement('a')
link.href = URL.createObjectURL(blob); link.href = URL.createObjectURL(blob)
link.download = filename; link.download = filename
document.body.appendChild(link); document.body.appendChild(link)
link.click(); link.click()
window.setTimeout(function () { window.setTimeout(function () {
URL.revokeObjectURL(blob); URL.revokeObjectURL(blob)
document.body.removeChild(link); document.body.removeChild(link)
}, 0); }, 0)
}) })
} }
...@@ -26,7 +26,7 @@ export const loginByUsername = (username, password, code, randomStr) => { ...@@ -26,7 +26,7 @@ export const loginByUsername = (username, password, code, randomStr) => {
'Authorization': 'Basic cGlnOnBpZw==' 'Authorization': 'Basic cGlnOnBpZw=='
}, },
method: 'post', method: 'post',
params: {username, password, randomStr, code, grant_type, scope} params: { username, password, randomStr, code, grant_type, scope }
}) })
} }
...@@ -39,7 +39,7 @@ export const loginByMobile = (mobile, code) => { ...@@ -39,7 +39,7 @@ export const loginByMobile = (mobile, code) => {
'Authorization': 'Basic cGlnOnBpZw==' 'Authorization': 'Basic cGlnOnBpZw=='
}, },
method: 'post', method: 'post',
params: {mobile: 'SMS@' + mobile, code: code, grant_type} params: { mobile: 'SMS@' + mobile, code: code, grant_type }
}) })
} }
...@@ -52,7 +52,7 @@ export const loginBySocial = (state, code) => { ...@@ -52,7 +52,7 @@ export const loginBySocial = (state, code) => {
'Authorization': 'Basic cGlnOnBpZw==' 'Authorization': 'Basic cGlnOnBpZw=='
}, },
method: 'post', method: 'post',
params: {mobile: state + '@' + code, grant_type} params: { mobile: state + '@' + code, grant_type }
}) })
} }
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
import request from '@/router/axios' import request from '@/router/axios'
export function getToken() { export function getToken () {
return request({ return request({
url: '/zuul/admin/user/upload', // 假地址,自行替换 url: '/zuul/admin/user/upload', // 假地址,自行替换
method: 'post' method: 'post'
......
// 配置编译环境和线上环境之间的切换 // 配置编译环境和线上环境之间的切换
const env = process.env const env = process.env
let baseUrl = ''; let baseUrl = ''
// 图表库为avue和pig2套地址 // 图表库为avue和pig2套地址
let iconfontVersion = ['667895_4y8d30c1og', '567566_qo5lxgtishg'] let iconfontVersion = ['667895_4y8d30c1og', '567566_qo5lxgtishg']
let iconfontUrl = `//at.alicdn.com/t/font_$key.css`; let iconfontUrl = `//at.alicdn.com/t/font_$key.css`
let codeUrl = `/code` let codeUrl = `/code`
let actUrl = `${window.origin}/act/modeler.html?modelId=`; let actUrl = `${window.origin}/act/modeler.html?modelId=`
if (env.NODE_ENV == 'development') { if (env.NODE_ENV == 'development') {
} else if (env.NODE_ENV == 'production') { } else if (env.NODE_ENV == 'production') {
......
...@@ -47,34 +47,34 @@ export const tableOption = { ...@@ -47,34 +47,34 @@ export const tableOption = {
label: '模型名称', label: '模型名称',
prop: 'name' prop: 'name'
}, },
{ {
label: '描述', label: '描述',
prop: 'desc', prop: 'desc',
hide: true, hide: true,
editDisabled: false, editDisabled: false,
addVisdiplay: true addVisdiplay: true
}, { }, {
label: '版本号', label: '版本号',
prop: 'version', prop: 'version',
editDisabled: true, editDisabled: true,
addVisdiplay: false addVisdiplay: false
}, { }, {
width: 150, width: 150,
label: '创建时间', label: '创建时间',
prop: 'createTime', prop: 'createTime',
type: 'datetime', type: 'datetime',
format: 'yyyy-MM-dd HH:mm', format: 'yyyy-MM-dd HH:mm',
valueFormat: 'timestamp', valueFormat: 'timestamp',
editDisabled: true, editDisabled: true,
addVisdiplay: false addVisdiplay: false
}, { }, {
width: 150, width: 150,
label: '最后更新时间', label: '最后更新时间',
prop: 'lastUpdateTime', prop: 'lastUpdateTime',
type: 'datetime', type: 'datetime',
format: 'yyyy-MM-dd HH:mm', format: 'yyyy-MM-dd HH:mm',
valueFormat: 'timestamp', valueFormat: 'timestamp',
editDisabled: true, editDisabled: true,
addVisdiplay: false addVisdiplay: false
}] }]
} }
...@@ -51,7 +51,7 @@ export const tableOption = { ...@@ -51,7 +51,7 @@ export const tableOption = {
type: 'datetime', type: 'datetime',
overHidden: true, overHidden: true,
format: 'yyyy-MM-dd HH:mm', format: 'yyyy-MM-dd HH:mm',
valueFormat: "yyyy-MM-dd hh:mm:ss" valueFormat: 'yyyy-MM-dd hh:mm:ss'
}, },
{ {
label: '提交时间', label: '提交时间',
......
...@@ -54,28 +54,28 @@ export const formOption = { ...@@ -54,28 +54,28 @@ export const formOption = {
span: 12, span: 12,
column: [ column: [
{ {
label: "任务编号", label: '任务编号',
prop: "taskId", prop: 'taskId',
disabled: true disabled: true
}, },
{ {
label: "任务名称", label: '任务名称',
prop: "taskName", prop: 'taskName',
disabled: true disabled: true
}, },
{ {
label: "申请人", label: '申请人',
prop: "username", prop: 'username',
disabled: true disabled: true
}, },
{ {
label: "请假时长", label: '请假时长',
prop: "days", prop: 'days',
disabled: true disabled: true
}, },
{ {
label: "请假时间", label: '请假时间',
prop: "createTime", prop: 'createTime',
type: 'datetime', type: 'datetime',
format: 'yyyy-MM-dd HH:mm', format: 'yyyy-MM-dd HH:mm',
disabled: true disabled: true
...@@ -105,8 +105,8 @@ export const formOption = { ...@@ -105,8 +105,8 @@ export const formOption = {
span: 24, span: 24,
rules: [{ rules: [{
required: true, required: true,
message: "请输入备注", message: '请输入备注',
trigger: "blur" trigger: 'blur'
}] }]
} }
] ]
...@@ -132,11 +132,11 @@ export const taskOption = { ...@@ -132,11 +132,11 @@ export const taskOption = {
label: '批注', label: '批注',
prop: 'fullMessage' prop: 'fullMessage'
}, { }, {
label: "操作时间", label: '操作时间',
prop: "time", prop: 'time',
type: "datetime", type: 'datetime',
format: "yyyy-MM-dd hh:mm:ss", format: 'yyyy-MM-dd hh:mm:ss',
valueFormat: "yyyy-MM-dd hh:mm:ss", valueFormat: 'yyyy-MM-dd hh:mm:ss'
} }
] ]
} }
...@@ -30,7 +30,7 @@ export const tableOption = { ...@@ -30,7 +30,7 @@ export const tableOption = {
prop: 'roleId', prop: 'roleId',
span: 24, span: 24,
editDisabled: true, editDisabled: true,
addVisdiplay: false, addVisdiplay: false
}, { }, {
fixed: true, fixed: true,
label: '角色名称', label: '角色名称',
...@@ -41,12 +41,12 @@ export const tableOption = { ...@@ -41,12 +41,12 @@ export const tableOption = {
message: '角色名称不能为空', message: '角色名称不能为空',
trigger: 'blur' trigger: 'blur'
}, },
{ {
min: 3, min: 3,
max: 20, max: 20,
message: '长度在 3 到 20 个字符', message: '长度在 3 到 20 个字符',
trigger: 'blur' trigger: 'blur'
} }
] ]
}, { }, {
width: 150, width: 150,
...@@ -59,12 +59,12 @@ export const tableOption = { ...@@ -59,12 +59,12 @@ export const tableOption = {
message: '角色标识不能为空', message: '角色标识不能为空',
trigger: 'blur' trigger: 'blur'
}, },
{ {
min: 3, min: 3,
max: 20, max: 20,
message: '长度在 3 到 20 个字符', message: '长度在 3 到 20 个字符',
trigger: 'blur' trigger: 'blur'
} }
] ]
}, { }, {
width: 180, width: 180,
...@@ -73,7 +73,7 @@ export const tableOption = { ...@@ -73,7 +73,7 @@ export const tableOption = {
overHidden: true, overHidden: true,
type: 'textarea', type: 'textarea',
minRows: 6, minRows: 6,
span: 24, span: 24
}, { }, {
width: 180, width: 180,
label: '创建时间', label: '创建时间',
...@@ -83,6 +83,6 @@ export const tableOption = { ...@@ -83,6 +83,6 @@ export const tableOption = {
valueFormat: 'yyyy-MM-dd HH:mm:ss', valueFormat: 'yyyy-MM-dd HH:mm:ss',
editDisabled: true, editDisabled: true,
addVisdiplay: false, addVisdiplay: false,
span: 24, span: 24
}] }]
} }
...@@ -33,60 +33,60 @@ export const tableOption = { ...@@ -33,60 +33,60 @@ export const tableOption = {
addVisdiplay: false, addVisdiplay: false,
editDisabled: true editDisabled: true
}, },
{ {
label: '类型', label: '类型',
prop: 'type', prop: 'type',
type: 'select', type: 'select',
dicData: 'social_type', dicData: 'social_type',
search: true, search: true,
rules: [{ rules: [{
required: true, required: true,
message: '请选择类型', message: '请选择类型',
trigger: 'blur' trigger: 'blur'
}] }]
}, },
{ {
label: '描述', label: '描述',
prop: 'remark' prop: 'remark'
}, },
{ {
label: 'appId', label: 'appId',
prop: 'appId', prop: 'appId',
overHidden: true, overHidden: true,
rules: [{ rules: [{
required: true, required: true,
message: '请输入appId', message: '请输入appId',
trigger: 'blur' trigger: 'blur'
}] }]
}, },
{ {
label: 'appSecret', label: 'appSecret',
prop: 'appSecret', prop: 'appSecret',
overHidden: true, overHidden: true,
rules: [{ rules: [{
required: true, required: true,
message: '请输入appSecret', message: '请输入appSecret',
trigger: 'blur' trigger: 'blur'
}] }]
}, },
{ {
label: '回调地址', label: '回调地址',
prop: 'redirectUrl', prop: 'redirectUrl',
hide: true, hide: true,
rules: [{ rules: [{
required: true, required: true,
message: '请输入回调地址', message: '请输入回调地址',
trigger: 'blur' trigger: 'blur'
}] }]
}, },
{ {
valueFormat: 'timestamp', valueFormat: 'timestamp',
format: 'yyyy-MM-dd hh:mm:ss', format: 'yyyy-MM-dd hh:mm:ss',
label: '创建时间', label: '创建时间',
prop: 'createTime', prop: 'createTime',
align: 'center', align: 'center',
addVisdiplay: false, addVisdiplay: false,
editDisabled: true editDisabled: true
} }
] ]
} }
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
* this software without specific prior written permission. * this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com) * Author: lengleng (wangiegie@gmail.com)
*/ */
import {getDetails} from "@/api/admin/user"; import { getDetails } from '@/api/admin/user'
var validateUsername = (rule, value, callback) => { var validateUsername = (rule, value, callback) => {
getDetails(value).then(response => { getDetails(value).then(response => {
...@@ -25,8 +25,8 @@ var validateUsername = (rule, value, callback) => { ...@@ -25,8 +25,8 @@ var validateUsername = (rule, value, callback) => {
} else { } else {
callback() callback()
} }
}); })
}; }
export const tableOption = { export const tableOption = {
border: true, border: true,
index: true, index: true,
...@@ -44,7 +44,7 @@ export const tableOption = { ...@@ -44,7 +44,7 @@ export const tableOption = {
span: 24, span: 24,
hide: true, hide: true,
editDisabled: true, editDisabled: true,
addVisdiplay: false, addVisdiplay: false
}, { }, {
fixed: true, fixed: true,
label: '用户名', label: '用户名',
...@@ -55,15 +55,15 @@ export const tableOption = { ...@@ -55,15 +55,15 @@ export const tableOption = {
span: 24, span: 24,
rules: [{ rules: [{
required: true, required: true,
message: "请输入用户名", message: '请输入用户名'
},
{
min: 3,
max: 20,
message: '长度在 3 到 20 个字符',
trigger: 'blur'
}, },
{ { validator: validateUsername, trigger: 'blur' }
min: 3,
max: 20,
message: "长度在 3 到 20 个字符",
trigger: "blur"
},
{validator: validateUsername, trigger: 'blur'}
] ]
}, { }, {
label: '密码', label: '密码',
...@@ -75,8 +75,8 @@ export const tableOption = { ...@@ -75,8 +75,8 @@ export const tableOption = {
rules: [{ rules: [{
min: 6, min: 6,
max: 20, max: 20,
message: "长度在 6 到 20 个字符", message: '长度在 6 到 20 个字符',
trigger: "blur" trigger: 'blur'
}] }]
}, { }, {
label: '所属部门', label: '所属部门',
...@@ -87,8 +87,8 @@ export const tableOption = { ...@@ -87,8 +87,8 @@ export const tableOption = {
hide: true, hide: true,
rules: [{ rules: [{
required: true, required: true,
message: "请选择部门", message: '请选择部门',
trigger: "blur" trigger: 'blur'
}] }]
}, { }, {
label: '手机号', label: '手机号',
...@@ -99,8 +99,8 @@ export const tableOption = { ...@@ -99,8 +99,8 @@ export const tableOption = {
rules: [{ rules: [{
min: 6, min: 6,
max: 20, max: 20,
message: "长度在 11 个字符", message: '长度在 11 个字符',
trigger: "blur" trigger: 'blur'
}] }]
}, { }, {
label: '角色', label: '角色',
...@@ -111,26 +111,26 @@ export const tableOption = { ...@@ -111,26 +111,26 @@ export const tableOption = {
span: 24, span: 24,
rules: [{ rules: [{
required: true, required: true,
message: "请选择角色", message: '请选择角色',
trigger: "blur" trigger: 'blur'
}], }]
}, { }, {
label: '状态', label: '状态',
prop: "lockFlag", prop: 'lockFlag',
type: "select", type: 'select',
solt: true, solt: true,
span: 24, span: 24,
rules: [{ rules: [{
required: true, required: true,
message: "请选择状态", message: '请选择状态',
trigger: "blur" trigger: 'blur'
}], }],
dicData: [{ dicData: [{
label: '有效', label: '有效',
value: "0" value: '0'
}, { }, {
label: '锁定', label: '锁定',
value: "9" value: '9'
}] }]
}, { }, {
width: 180, width: 180,
......
...@@ -19,10 +19,10 @@ const DIC = { ...@@ -19,10 +19,10 @@ const DIC = {
label: '成功', label: '成功',
value: 1 value: 1
}, },
{ {
label: '失败', label: '失败',
value: 0 value: 0
} }
] ]
} }
...@@ -83,7 +83,7 @@ export const tableOption = { ...@@ -83,7 +83,7 @@ export const tableOption = {
label: '执行结果', label: '执行结果',
prop: 'isSuccess', prop: 'isSuccess',
type: 'select', type: 'select',
dicData: DIC.isSuccess, dicData: DIC.isSuccess
}, },
{ {
label: '开始时间', label: '开始时间',
...@@ -93,6 +93,6 @@ export const tableOption = { ...@@ -93,6 +93,6 @@ export const tableOption = {
{ {
label: '完成时间', label: '完成时间',
prop: 'completeTime' prop: 'completeTime'
}, }
] ]
} }
...@@ -20,13 +20,13 @@ const DIC = { ...@@ -20,13 +20,13 @@ const DIC = {
label: '准备中', label: '准备中',
value: 'TASK_STAGING' value: 'TASK_STAGING'
}, },
{ {
label: '执行中', label: '执行中',
value: 'TASK_RUNNING' value: 'TASK_RUNNING'
}, { }, {
label: '已经完成', label: '已经完成',
value: 'TASK_FINISHED' value: 'TASK_FINISHED'
} }
] ]
} }
...@@ -46,59 +46,59 @@ export const tableOption = { ...@@ -46,59 +46,59 @@ export const tableOption = {
prop: 'id', prop: 'id',
hide: true hide: true
}, },
{ {
label: '作业名称', label: '作业名称',
prop: 'jobName', prop: 'jobName',
search: true search: true
}, },
{ {
label: '原任务', label: '原任务',
prop: 'originalTaskId', prop: 'originalTaskId',
hide: true, hide: true,
width: 100 width: 100
}, },
{ {
label: '任务ID', label: '任务ID',
prop: 'taskId', prop: 'taskId',
hide: true hide: true
}, },
{ {
label: '服务器IP', label: '服务器IP',
prop: 'slaveId' prop: 'slaveId'
}, },
{ {
label: '资源', label: '资源',
prop: 'source', prop: 'source',
hide: true hide: true
}, },
{ {
label: '执行类型', label: '执行类型',
prop: 'executionType', prop: 'executionType',
hide: true hide: true
}, },
{ {
width: 100, width: 100,
label: '分片项', label: '分片项',
prop: 'shardingItem' prop: 'shardingItem'
}, },
{ {
width: 100, width: 100,
label: '状态', label: '状态',
prop: 'state', prop: 'state',
type: 'select', type: 'select',
dicData: DIC.state, dicData: DIC.state,
search: true search: true
}, },
{ {
label: '消息', label: '消息',
prop: 'message', prop: 'message',
width: 100, width: 100,
overHidden: true, overHidden: true,
hide: true hide: true
}, },
{ {
label: '创建时间', label: '创建时间',
prop: 'creationTime' prop: 'creationTime'
} }
] ]
} }
...@@ -20,11 +20,11 @@ export default { ...@@ -20,11 +20,11 @@ export default {
label: '地址', label: '地址',
width: 200, width: 200,
prop: 'url', prop: 'url',
overHidden: true, overHidden: true
}, { }, {
label: '内容', label: '内容',
prop: 'message', prop: 'message',
overHidden: true, overHidden: true
}, { }, {
label: '错误堆栈', label: '错误堆栈',
prop: 'stack', prop: 'stack',
...@@ -33,6 +33,6 @@ export default { ...@@ -33,6 +33,6 @@ export default {
label: '时间', label: '时间',
align: 'center', align: 'center',
prop: 'time', prop: 'time',
width: 200, width: 200
}] }]
} }
...@@ -34,7 +34,7 @@ export const list = [{ ...@@ -34,7 +34,7 @@ export const list = [{
commit: 'SET_SHOWMENU' commit: 'SET_SHOWMENU'
}] }]
export const option = (safe) => { export const option = (safe) => {
const _safe = safe; const _safe = safe
return { return {
submitBtn: false, submitBtn: false,
column: [{ column: [{
...@@ -43,8 +43,8 @@ export const option = (safe) => { ...@@ -43,8 +43,8 @@ export const option = (safe) => {
type: 'switch', type: 'switch',
span: 24, span: 24,
dicData: dicData, dicData: dicData,
click: ({column}) => { click: ({ column }) => {
_safe.set(column.prop); _safe.set(column.prop)
} }
}, { }, {
label: '日志', label: '日志',
...@@ -52,8 +52,8 @@ export const option = (safe) => { ...@@ -52,8 +52,8 @@ export const option = (safe) => {
type: 'switch', type: 'switch',
span: 24, span: 24,
dicData: dicData, dicData: dicData,
click: ({column}) => { click: ({ column }) => {
_safe.set(column.prop); _safe.set(column.prop)
} }
}, { }, {
label: '主题', label: '主题',
...@@ -61,8 +61,8 @@ export const option = (safe) => { ...@@ -61,8 +61,8 @@ export const option = (safe) => {
type: 'switch', type: 'switch',
span: 24, span: 24,
dicData: dicData, dicData: dicData,
click: ({column}) => { click: ({ column }) => {
_safe.set(column.prop); _safe.set(column.prop)
} }
}, { }, {
label: '主题色', label: '主题色',
...@@ -70,8 +70,8 @@ export const option = (safe) => { ...@@ -70,8 +70,8 @@ export const option = (safe) => {
type: 'switch', type: 'switch',
span: 24, span: 24,
dicData: dicData, dicData: dicData,
click: ({column}) => { click: ({ column }) => {
_safe.set(column.prop); _safe.set(column.prop)
} }
}, { }, {
label: '全屏', label: '全屏',
...@@ -79,8 +79,8 @@ export const option = (safe) => { ...@@ -79,8 +79,8 @@ export const option = (safe) => {
type: 'switch', type: 'switch',
span: 24, span: 24,
dicData: dicData, dicData: dicData,
click: ({column}) => { click: ({ column }) => {
_safe.set(column.prop); _safe.set(column.prop)
} }
}, { }, {
label: '锁屏', label: '锁屏',
...@@ -88,8 +88,8 @@ export const option = (safe) => { ...@@ -88,8 +88,8 @@ export const option = (safe) => {
type: 'switch', type: 'switch',
span: 24, span: 24,
dicData: dicData, dicData: dicData,
click: ({column}) => { click: ({ column }) => {
_safe.set(column.prop); _safe.set(column.prop)
} }
}, { }, {
label: '搜索', label: '搜索',
...@@ -97,8 +97,8 @@ export const option = (safe) => { ...@@ -97,8 +97,8 @@ export const option = (safe) => {
type: 'switch', type: 'switch',
span: 24, span: 24,
dicData: dicData, dicData: dicData,
click: ({column}) => { click: ({ column }) => {
_safe.set(column.prop); _safe.set(column.prop)
} }
}, { }, {
label: '缩放', label: '缩放',
...@@ -106,8 +106,8 @@ export const option = (safe) => { ...@@ -106,8 +106,8 @@ export const option = (safe) => {
type: 'switch', type: 'switch',
span: 24, span: 24,
dicData: dicData, dicData: dicData,
click: ({column}) => { click: ({ column }) => {
_safe.set(column.prop); _safe.set(column.prop)
} }
}, { }, {
label: '顶部菜单', label: '顶部菜单',
...@@ -115,8 +115,8 @@ export const option = (safe) => { ...@@ -115,8 +115,8 @@ export const option = (safe) => {
type: 'switch', type: 'switch',
span: 24, span: 24,
dicData: dicData, dicData: dicData,
click: ({column}) => { click: ({ column }) => {
_safe.set(column.prop); _safe.set(column.prop)
} }
}] }]
} }
......
export default { export default {
title: "PigX", title: 'PigX',
logo: "PigX", logo: 'PigX',
indexTitle: 'PigX Pro 快速开发框架', indexTitle: 'PigX Pro 快速开发框架',
whiteList: ["/login", "/404", "/401", "/lock"], //配置无权限可以访问的页面 whiteList: ['/login', '/404', '/401', '/lock'], // 配置无权限可以访问的页面
whiteTagList: ["/login", "/404", "/401", "/lock",], //配置不添加tags页面 ('/advanced-router/mutative-detail/*'——*为通配符) whiteTagList: ['/login', '/404', '/401', '/lock' ], // 配置不添加tags页面 ('/advanced-router/mutative-detail/*'——*为通配符)
lockPage: '/lock', lockPage: '/lock',
tokenTime: 6000, tokenTime: 6000,
info: { info: {
title: "PigX Pro 快速开发框架", title: 'PigX Pro 快速开发框架',
list: [ list: [
'一个基于Spring Cloud、OAuth2.0开发基于Vue前后分离的开发平台。', '一个基于Spring Cloud、OAuth2.0开发基于Vue前后分离的开发平台。',
'一个基于Avue2 开发无需前端知识,即可快速上手的开发平台。', '一个基于Avue2 开发无需前端知识,即可快速上手的开发平台。',
'最大程度上帮助企业节省时间成本和费用开支。', '最大程度上帮助企业节省时间成本和费用开支。',
'QQ群:23754102', 'QQ群:23754102',
'当前版本:v2.0.0', '当前版本:v2.0.0'
] ]
}, },
//http的status默认放行不才用统一处理的, // http的status默认放行不才用统一处理的,
statusWhiteList: [400, 500, 401], statusWhiteList: [400, 500, 401],
//配置首页不可关闭 // 配置首页不可关闭
isFirstPage: false, isFirstPage: false,
fistPage: { fistPage: {
label: "首页", label: '首页',
value: "/wel/index", value: '/wel/index',
params: {}, params: {},
query: {}, query: {},
group: [], group: [],
close: false close: false
}, },
//配置菜单的属性 // 配置菜单的属性
menu: { menu: {
props: { props: {
label: 'label', label: 'label',
......
import Vue from 'vue'; import Vue from 'vue'
import store from './store' import store from './store'
Vue.config.errorHandler = function (err, vm, info) { Vue.config.errorHandler = function (err, vm, info) {
Vue.nextTick(() => { Vue.nextTick(() => {
store.commit('ADD_LOGS', { store.commit('ADD_LOGS', {
type: 'error', type: 'error',
...@@ -13,13 +12,13 @@ Vue.config.errorHandler = function (err, vm, info) { ...@@ -13,13 +12,13 @@ Vue.config.errorHandler = function (err, vm, info) {
if (process.env.NODE_ENV === 'development') { if (process.env.NODE_ENV === 'development') {
console.group('>>>>>> 错误信息 >>>>>>') console.group('>>>>>> 错误信息 >>>>>>')
console.log(info) console.log(info)
console.groupEnd(); console.groupEnd()
console.group('>>>>>> Vue 实例 >>>>>>') console.group('>>>>>> Vue 实例 >>>>>>')
console.log(vm) console.log(vm)
console.groupEnd(); console.groupEnd()
console.group('>>>>>> Error >>>>>>') console.group('>>>>>> Error >>>>>>')
console.log(err) console.log(err)
console.groupEnd(); console.groupEnd()
} }
}) })
} }
function pluralize(time, label) { function pluralize (time, label) {
if (time === 1) { if (time === 1) {
return time + label return time + label
} }
...@@ -8,32 +8,35 @@ function pluralize(time, label) { ...@@ -8,32 +8,35 @@ function pluralize(time, label) {
/** /**
* 日期格式化 * 日期格式化
*/ */
export function dateFormat(date) { export function dateFormat (date) {
let format = 'yyyy-MM-dd hh:mm:ss'; let format = 'yyyy-MM-dd hh:mm:ss'
if (date != 'Invalid Date') { if (date != 'Invalid Date') {
var o = { var o = {
"M+": date.getMonth() + 1, //month 'M+': date.getMonth() + 1, // month
"d+": date.getDate(), //day 'd+': date.getDate(), // day
"h+": date.getHours(), //hour 'h+': date.getHours(), // hour
"m+": date.getMinutes(), //minute 'm+': date.getMinutes(), // minute
"s+": date.getSeconds(), //second 's+': date.getSeconds(), // second
"q+": Math.floor((date.getMonth() + 3) / 3), //quarter 'q+': Math.floor((date.getMonth() + 3) / 3), // quarter
"S": date.getMilliseconds() //millisecond 'S': date.getMilliseconds() // millisecond
} }
if (/(y+)/.test(format)) format = format.replace(RegExp.$1, if (/(y+)/.test(format)) {
(date.getFullYear() + "").substr(4 - RegExp.$1.length)); format = format.replace(RegExp.$1,
for (var k in o) (date.getFullYear() + '').substr(4 - RegExp.$1.length))
if (new RegExp("(" + k + ")").test(format)) }
for (var k in o) {
if (new RegExp('(' + k + ')').test(format)) {
format = format.replace(RegExp.$1, format = format.replace(RegExp.$1,
RegExp.$1.length == 1 ? o[k] : RegExp.$1.length == 1 ? o[k]
("00" + o[k]).substr(("" + o[k]).length)); : ('00' + o[k]).substr(('' + o[k]).length))
return format; }
}
return format
} }
return ''; return ''
} }
export function timeAgo(time) { export function timeAgo (time) {
const between = Date.now() / 1000 - Number(time) const between = Date.now() / 1000 - Number(time)
if (between < 3600) { if (between < 3600) {
return pluralize(~~(between / 60), ' minute') return pluralize(~~(between / 60), ' minute')
...@@ -44,7 +47,7 @@ export function timeAgo(time) { ...@@ -44,7 +47,7 @@ export function timeAgo(time) {
} }
} }
export function parseTime(time, cFormat) { export function parseTime (time, cFormat) {
if (arguments.length === 0) { if (arguments.length === 0) {
return null return null
} }
...@@ -80,7 +83,7 @@ export function parseTime(time, cFormat) { ...@@ -80,7 +83,7 @@ export function parseTime(time, cFormat) {
return time_str return time_str
} }
export function formatTime(time, option) { export function formatTime (time, option) {
time = +time * 1000 time = +time * 1000
const d = new Date(time) const d = new Date(time)
const now = Date.now() const now = Date.now()
...@@ -103,15 +106,15 @@ export function formatTime(time, option) { ...@@ -103,15 +106,15 @@ export function formatTime(time, option) {
} }
} }
/* 数字 格式化*/ /* 数字 格式化 */
export function nFormatter(num, digits) { export function nFormatter (num, digits) {
const si = [ const si = [
{value: 1E18, symbol: 'E'}, { value: 1E18, symbol: 'E' },
{value: 1E15, symbol: 'P'}, { value: 1E15, symbol: 'P' },
{value: 1E12, symbol: 'T'}, { value: 1E12, symbol: 'T' },
{value: 1E9, symbol: 'G'}, { value: 1E9, symbol: 'G' },
{value: 1E6, symbol: 'M'}, { value: 1E6, symbol: 'M' },
{value: 1E3, symbol: 'k'} { value: 1E3, symbol: 'k' }
] ]
for (let i = 0; i < si.length; i++) { for (let i = 0; i < si.length; i++) {
if (num >= si[i].value) { if (num >= si[i].value) {
...@@ -121,12 +124,12 @@ export function nFormatter(num, digits) { ...@@ -121,12 +124,12 @@ export function nFormatter(num, digits) {
return num.toString() return num.toString()
} }
export function html2Text(val) { export function html2Text (val) {
const div = document.createElement('div') const div = document.createElement('div')
div.innerHTML = val div.innerHTML = val
return div.textContent || div.innerText return div.textContent || div.innerText
} }
export function toThousandslsFilter(num) { export function toThousandslsFilter (num) {
return (+num || 0).toString().replace(/^-?\d+/g, m => m.replace(/(?=(?!\b)(\d{3})+$)/g, ',')) return (+num || 0).toString().replace(/^-?\d+/g, m => m.replace(/(?=(?!\b)(\d{3})+$)/g, ','))
} }
import 'babel-polyfill'; import 'babel-polyfill'
import 'classlist-polyfill'; import 'classlist-polyfill'
import Vue from 'vue'; import Vue from 'vue'
import axios from './router/axios'; import axios from './router/axios'
import VueAxios from 'vue-axios'; import VueAxios from 'vue-axios'
import App from './App'; import App from './App'
import './permission'; // 权限 import './permission' // 权限
import './error'; // 日志 import './error' // 日志
import router from './router/router'; import router from './router/router'
import 'avue-plugin-transfer/packages' //引入avue-plugin-transfer插件 import 'avue-plugin-transfer/packages' // 引入avue-plugin-transfer插件
// import 'avue-plugin-ueditor/packages' //引入avue-plugin-ueditor插件(如果要兼容ie自行换掉富文本编辑器,此款插件不兼容ie) // import 'avue-plugin-ueditor/packages' //引入avue-plugin-ueditor插件(如果要兼容ie自行换掉富文本编辑器,此款插件不兼容ie)
import store from './store'; import store from './store'
import {loadStyle} from './util/util' import { loadStyle } from './util/util'
import * as urls from '@/config/env'; import * as urls from '@/config/env'
import {iconfontUrl, iconfontVersion} from '@/config/env'; import { iconfontUrl, iconfontVersion } from '@/config/env'
import * as filters from './filters' // 全局filter import * as filters from './filters' // 全局filter
import './styles/common.scss'; import './styles/common.scss'
// // 引入avue的包 // // 引入avue的包
import Avue from '@smallwei/avue/lib/index.js'; import Avue from '@smallwei/avue/lib/index.js'
// // 引入avue的样式文件 // // 引入avue的样式文件
import '@smallwei/avue/lib/theme-chalk/index.css'; import '@smallwei/avue/lib/theme-chalk/index.css'
import basicContainer from './components/basic-container/main' import basicContainer from './components/basic-container/main'
import VueClipboard from 'vue-clipboard2' import VueClipboard from 'vue-clipboard2'
// 插件 json 展示 // 插件 json 展示
...@@ -28,8 +28,7 @@ import vueJsonTreeView from 'vue-json-tree-view' ...@@ -28,8 +28,7 @@ import vueJsonTreeView from 'vue-json-tree-view'
// import '../packages/index.js'; // import '../packages/index.js';
// import '../packages/theme-chalk/src/index.scss'; // import '../packages/theme-chalk/src/index.scss';
Vue.use(Avue, { menuType: 'text' })
Vue.use(Avue, {menuType: 'text'});
Vue.use(router) Vue.use(router)
...@@ -42,7 +41,7 @@ Vue.use(VueAxios, axios) ...@@ -42,7 +41,7 @@ Vue.use(VueAxios, axios)
Vue.component('basicContainer', basicContainer) Vue.component('basicContainer', basicContainer)
Object.keys(urls).forEach(key => { Object.keys(urls).forEach(key => {
Vue.prototype[key] = urls[key]; Vue.prototype[key] = urls[key]
}) })
Object.keys(filters).forEach(key => { Object.keys(filters).forEach(key => {
...@@ -50,10 +49,10 @@ Object.keys(filters).forEach(key => { ...@@ -50,10 +49,10 @@ Object.keys(filters).forEach(key => {
}) })
iconfontVersion.forEach(ele => { iconfontVersion.forEach(ele => {
loadStyle(iconfontUrl.replace('$key', ele)); loadStyle(iconfontUrl.replace('$key', ele))
}) })
Vue.config.productionTip = false; Vue.config.productionTip = false
new Vue({ new Vue({
router, router,
......
This diff is collapsed.
export default { export default {
propsDefault: { propsDefault: {
label: 'label', label: 'label',
path: 'path', path: 'path',
icon: 'icon', icon: 'icon',
children: 'children' children: 'children'
} }
} }
\ No newline at end of file
...@@ -4,44 +4,44 @@ ...@@ -4,44 +4,44 @@
*/ */
import router from './router/router' import router from './router/router'
import store from './store' import store from './store'
import {validatenull} from '@/util/validate' import { validatenull } from '@/util/validate'
import {getToken} from '@/util/auth' import { getToken } from '@/util/auth'
import NProgress from 'nprogress' // progress bar import NProgress from 'nprogress' // progress bar
import 'nprogress/nprogress.css' // progress bar style import 'nprogress/nprogress.css' // progress bar style
NProgress.configure({showSpinner: false}); NProgress.configure({ showSpinner: false })
const lockPage = store.getters.website.lockPage; //锁屏页 const lockPage = store.getters.website.lockPage // 锁屏页
router.beforeEach((to, from, next) => { router.beforeEach((to, from, next) => {
//缓冲设置 // 缓冲设置
if (to.meta.keepAlive === true && store.state.tags.tagList.some(ele => { if (to.meta.keepAlive === true && store.state.tags.tagList.some(ele => {
return ele.value === to.fullPath; return ele.value === to.fullPath
})) { })) {
to.meta.$keepAlive = true; to.meta.$keepAlive = true
} else { } else {
NProgress.start() NProgress.start()
if (to.meta.keepAlive === true && validatenull(to.meta.$keepAlive)) { if (to.meta.keepAlive === true && validatenull(to.meta.$keepAlive)) {
to.meta.$keepAlive = true; to.meta.$keepAlive = true
} else { } else {
to.meta.$keepAlive = false; to.meta.$keepAlive = false
} }
} }
const meta = to.meta || {}; const meta = to.meta || {}
if (getToken()) { if (getToken()) {
if (store.getters.isLock && to.path != lockPage) { if (store.getters.isLock && to.path != lockPage) {
next({path: lockPage}) next({ path: lockPage })
} else if (to.path === '/login') { } else if (to.path === '/login') {
next({path: '/'}) next({ path: '/' })
} else { } else {
if (store.getters.roles.length === 0) { if (store.getters.roles.length === 0) {
store.dispatch('GetUserInfo').then(() => { store.dispatch('GetUserInfo').then(() => {
next({...to, replace: true}) next({ ...to, replace: true })
}).catch(() => { }).catch(() => {
store.dispatch('FedLogOut').then(() => { store.dispatch('FedLogOut').then(() => {
next({path: '/login'}) next({ path: '/login' })
}) })
}) })
} else { } else {
const value = to.query.src || to.fullPath; const value = to.query.src || to.fullPath
const label = to.query.name || to.name; const label = to.query.name || to.name
if (meta.isTab !== false && !validatenull(value) && !validatenull(label)) { if (meta.isTab !== false && !validatenull(value) && !validatenull(label)) {
store.commit('ADD_TAG', { store.commit('ADD_TAG', {
label: label, label: label,
...@@ -49,7 +49,7 @@ router.beforeEach((to, from, next) => { ...@@ -49,7 +49,7 @@ router.beforeEach((to, from, next) => {
params: to.params, params: to.params,
query: to.query, query: to.query,
group: router.$avueRouter.group || [] group: router.$avueRouter.group || []
}); })
} }
next() next()
} }
...@@ -64,7 +64,7 @@ router.beforeEach((to, from, next) => { ...@@ -64,7 +64,7 @@ router.beforeEach((to, from, next) => {
}) })
router.afterEach(() => { router.afterEach(() => {
NProgress.done(); NProgress.done()
const title = store.getters.tag.label; const title = store.getters.tag.label
router.$avueRouter.setTitle(title); router.$avueRouter.setTitle(title)
}); })
let RouterPlugin = function() { let RouterPlugin = function () {
this.$router = null; this.$router = null
this.$store = null; this.$store = null
}
RouterPlugin.install = function (router, store) {
this.$router = router
this.$store = store
}; function objToform (obj) {
RouterPlugin.install = function(router, store) { let result = []
this.$router = router; Object.keys(obj).forEach(ele => {
this.$store = store; result.push(`${ele}=${obj[ele]}`)
})
return result.join('&')
}
this.$router.$avueRouter = {
// 全局配置
$website: this.$store.getters.website,
routerList: [],
group: '',
safe: this,
// 设置标题
setTitle: function (title) {
title = title ? `${title}——PigX微服务快速开发框架` : 'PigX微服务快速开发框架'
document.title = title
},
closeTag: (value) => {
const tag = value || this.$store.getters.tag
this.$store.commit('DEL_TAG', tag)
},
// 处理路由
getPath: function (params) {
let { src } = params
let result = src || '/'
if (src.includes('http') || src.includes('https')) {
result = `/myiframe/urlPath?${objToform(params)}`
}
return result
},
// 正则处理路由
vaildPath: function (list, path) {
let result = false
list.forEach(ele => {
if (new RegExp('^' + ele + '.*', 'g').test(path)) {
result = true
}
})
return result
},
// 设置路由值
getValue: function (route) {
let value = ''
if (route.query.src) {
value = route.query.src
} else {
value = route.path
}
return value
},
// 动态路由
formatRoutes: function (aMenu = [], first) {
const aRouter = []
const propsConfig = this.$website.menu.props
const propsDefault = {
label: propsConfig.label || 'label',
path: propsConfig.path || 'path',
icon: propsConfig.icon || 'icon',
children: propsConfig.children || 'children',
meta: propsConfig.meta || 'meta'
}
if (aMenu.length === 0) return
for (let i = 0; i < aMenu.length; i++) {
const oMenu = aMenu[i]
if (this.routerList.includes(oMenu[propsDefault.path])) return
const path = (() => {
if (first) {
return oMenu[propsDefault.path].replace('/index', '')
} else {
return oMenu[propsDefault.path]
}
})()
function objToform(obj) { const component = oMenu.component
let result = [];
Object.keys(obj).forEach(ele => { const name = oMenu[propsDefault.label]
result.push(`${ele}=${obj[ele]}`);
}) const icon = oMenu[propsDefault.icon]
return result.join('&');
} const children = oMenu[propsDefault.children]
this.$router.$avueRouter = {
//全局配置 const meta = {
$website: this.$store.getters.website, keepAlive: Number(oMenu['keepAlive']) === 0
routerList: [], }
group: '', const isChild = children.length !== 0
safe: this, const oRouter = {
// 设置标题 path: path,
setTitle: function(title) { component (resolve) {
title = title ? `${title}——PigX微服务快速开发框架` : 'PigX微服务快速开发框架'; // 判断是否为首路由
document.title = title; if (first) {
}, require(['../page/index'], resolve)
closeTag: (value) => {
const tag = value || this.$store.getters.tag;
this.$store.commit('DEL_TAG', tag)
},
//处理路由
getPath: function(params) {
let { src } = params;
let result = src || '/';
if (src.includes("http") || src.includes("https")) {
result = `/myiframe/urlPath?${objToform(params)}`;
}
return result;
},
//正则处理路由
vaildPath: function(list, path) {
let result = false;
list.forEach(ele => {
if (new RegExp("^" + ele + ".*", "g").test(path)) {
result = true
}
}) // 判断是否为多层路由
return result; } else if (isChild && !first) {
}, require(['../page/index/layout'], resolve)
//设置路由值
getValue: function(route) { // 判断是否为最终的页面视图
let value = "";
if (route.query.src) {
value = route.query.src;
} else { } else {
value = route.path; require([`../${component}.vue`], resolve)
}
return value;
},
//动态路由
formatRoutes: function(aMenu = [], first) {
const aRouter = []
const propsConfig = this.$website.menu.props;
const propsDefault = {
label: propsConfig.label || 'label',
path: propsConfig.path || 'path',
icon: propsConfig.icon || 'icon',
children: propsConfig.children || 'children',
meta: propsConfig.meta || 'meta',
}
if (aMenu.length === 0) return;
for (let i = 0; i < aMenu.length; i++) {
const oMenu = aMenu[i];
if (this.routerList.includes(oMenu[propsDefault.path])) return;
const path = (() => {
if (first) {
return oMenu[propsDefault.path].replace('/index', '')
} else {
return oMenu[propsDefault.path]
}
})(),
component = oMenu.component,
name = oMenu[propsDefault.label],
icon = oMenu[propsDefault.icon],
children = oMenu[propsDefault.children],
meta = {
keepAlive: Number(oMenu['keepAlive']) === 0
}
const isChild = children.length !== 0;
const oRouter = {
path: path,
component(resolve) {
// 判断是否为首路由
if (first) {
require(['../page/index'], resolve)
return
// 判断是否为多层路由
} else if (isChild && !first) {
require(['../page/index/layout'], resolve)
return
// 判断是否为最终的页面视图
} else {
require([`../${component}.vue`], resolve)
}
},
name: name,
icon: icon,
meta: meta,
redirect: (() => {
if (!isChild && first) return `${path}/index`
else return '';
})(),
// 处理是否为一级路由
children: !isChild ? (() => {
if (first) {
oMenu[propsDefault.path] = `${path}/index`;
return [{
component(resolve) { require([`../${component}.vue`], resolve) },
icon: icon,
name: name,
meta: meta,
path: 'index'
}]
}
return [];
})() : (() => {
return this.formatRoutes(children, false)
})()
}
aRouter.push(oRouter)
} }
},
name: name,
icon: icon,
meta: meta,
redirect: (() => {
if (!isChild && first) return `${path}/index`
else return ''
})(),
// 处理是否为一级路由
children: !isChild ? (() => {
if (first) { if (first) {
if (!this.routerList.includes(aRouter[0][propsDefault.path])) { oMenu[propsDefault.path] = `${path}/index`
this.safe.$router.addRoutes(aRouter) return [{
this.routerList.push(aRouter[0][propsDefault.path]) component (resolve) { require([`../${component}.vue`], resolve) },
} icon: icon,
} else { name: name,
return aRouter meta: meta,
path: 'index'
}]
} }
return []
})() : (() => {
return this.formatRoutes(children, false)
})()
}
aRouter.push(oRouter)
}
if (first) {
if (!this.routerList.includes(aRouter[0][propsDefault.path])) {
this.safe.$router.addRoutes(aRouter)
this.routerList.push(aRouter[0][propsDefault.path])
} }
} else {
return aRouter
}
} }
}
} }
export default RouterPlugin; export default RouterPlugin
...@@ -15,55 +15,55 @@ import NProgress from 'nprogress' // progress bar ...@@ -15,55 +15,55 @@ import NProgress from 'nprogress' // progress bar
import errorCode from '@/const/errorCode' import errorCode from '@/const/errorCode'
import { Message } from 'element-ui' import { Message } from 'element-ui'
import 'nprogress/nprogress.css' // progress bar style import 'nprogress/nprogress.css' // progress bar style
axios.defaults.timeout = 30000; axios.defaults.timeout = 30000
//返回其他状态吗 // 返回其他状态吗
axios.defaults.validateStatus = function(status) { axios.defaults.validateStatus = function (status) {
return status >= 200 && status <= 500; // 默认的 return status >= 200 && status <= 500 // 默认的
}; }
//跨域请求,允许保存cookie // 跨域请求,允许保存cookie
axios.defaults.withCredentials = true; axios.defaults.withCredentials = true
// NProgress Configuration // NProgress Configuration
NProgress.configure({ NProgress.configure({
showSpinner: false showSpinner: false
}); })
//HTTPrequest拦截 // HTTPrequest拦截
axios.interceptors.request.use(config => { axios.interceptors.request.use(config => {
NProgress.start() // start progress bar NProgress.start() // start progress bar
const isToken = (config.data || {}).isToken === false const isToken = (config.data || {}).isToken === false
if (store.getters.access_token && !isToken) { if (store.getters.access_token && !isToken) {
config.headers['Authorization'] = 'Bearer ' + getToken() // 让每个请求携带token--['X-Token']为自定义key 请根据实际情况自行修改 config.headers['Authorization'] = 'Bearer ' + getToken() // 让每个请求携带token--['X-Token']为自定义key 请根据实际情况自行修改
} }
const TENANT_ID = getStore({ name: 'tenantId' }); const TENANT_ID = getStore({ name: 'tenantId' })
if (TENANT_ID) { if (TENANT_ID) {
config.headers['TENANT_ID'] = TENANT_ID // 租户ID config.headers['TENANT_ID'] = TENANT_ID // 租户ID
} }
//headers中配置serialize为true开启序列化 // headers中配置serialize为true开启序列化
if (config.methods === 'post' && config.headers.serialize) { if (config.methods === 'post' && config.headers.serialize) {
config.data = serialize(config.data); config.data = serialize(config.data)
delete config.data.serialize; delete config.data.serialize
} }
return config return config
}, error => { }, error => {
return Promise.reject(error) return Promise.reject(error)
}); })
//HTTPresponse拦截 // HTTPresponse拦截
axios.interceptors.response.use(res => { axios.interceptors.response.use(res => {
NProgress.done(); NProgress.done()
const status = Number(res.status) || 200; const status = Number(res.status) || 200
const statusWhiteList = website.statusWhiteList || []; const statusWhiteList = website.statusWhiteList || []
const message = res.data.message || errorCode[status] || errorCode['default']; const message = res.data.message || errorCode[status] || errorCode['default']
if (status !== 200 & !statusWhiteList.includes(status)) { if (status !== 200 & !statusWhiteList.includes(status)) {
Message({ Message({
message: message, message: message,
type: 'error' type: 'error'
}) })
return Promise.reject(new Error(message)) return Promise.reject(new Error(message))
} }
if (status !== 200) return Promise.reject(res); if (status !== 200) return Promise.reject(res)
return res; return res
}, error => { }, error => {
NProgress.done() NProgress.done()
return Promise.reject(new Error(error)) return Promise.reject(new Error(error))
}) })
export default axios export default axios
\ No newline at end of file
import VueRouter from 'vue-router'; import VueRouter from 'vue-router'
import PageRouter from './page/' import PageRouter from './page/'
import ViewsRouter from './views/' import ViewsRouter from './views/'
import AvueRouter from './avue-router'; import AvueRouter from './avue-router'
import Store from '../store/'; import Store from '../store/'
let Router = new VueRouter({ let Router = new VueRouter({
scrollBehavior(to, from, savedPosition) { scrollBehavior (to, from, savedPosition) {
if (savedPosition) { if (savedPosition) {
return savedPosition return savedPosition
} else { } else {
if (from.meta.keepAlive) { if (from.meta.keepAlive) {
from.meta.savedPosition = document.body.scrollTop; from.meta.savedPosition = document.body.scrollTop
} }
return { return {
x: 0, x: 0,
y: to.meta.savedPosition || 0 y: to.meta.savedPosition || 0
} }
} }
}, },
routes: [].concat([]) routes: [].concat([])
}); })
AvueRouter.install(Router, Store); AvueRouter.install(Router, Store)
Router.$avueRouter.formatRoutes(Store.state.user.menu, true); Router.$avueRouter.formatRoutes(Store.state.user.menu, true)
Router.addRoutes([...PageRouter, ...ViewsRouter]); Router.addRoutes([...PageRouter, ...ViewsRouter])
export default Router; export default Router
\ No newline at end of file
...@@ -14,7 +14,7 @@ const store = new Vuex.Store({ ...@@ -14,7 +14,7 @@ const store = new Vuex.Store({
logs, logs,
tags tags
}, },
getters, getters
}) })
export default store export default store
import {getStore, removeStore, setStore} from '@/util/store' import { getStore, removeStore, setStore } from '@/util/store'
import website from '@/const/website' import website from '@/const/website'
const common = { const common = {
...@@ -8,97 +8,97 @@ const common = { ...@@ -8,97 +8,97 @@ const common = {
isFullScren: false, isFullScren: false,
isShade: false, isShade: false,
screen: -1, screen: -1,
isLock: getStore({name: 'isLock'}) || false, isLock: getStore({ name: 'isLock' }) || false,
showTag: getStore({name: 'showTag'}), showTag: getStore({ name: 'showTag' }),
showDebug: getStore({name: 'showDebug'}), showDebug: getStore({ name: 'showDebug' }),
showCollapse: getStore({name: 'showCollapse'}), showCollapse: getStore({ name: 'showCollapse' }),
showSearch: getStore({name: 'showSearch'}), showSearch: getStore({ name: 'showSearch' }),
showLock: getStore({name: 'showLock'}), showLock: getStore({ name: 'showLock' }),
showFullScren: getStore({name: 'showFullScren'}), showFullScren: getStore({ name: 'showFullScren' }),
showTheme: getStore({name: 'showTheme'}), showTheme: getStore({ name: 'showTheme' }),
showColor: getStore({name: 'showColor'}), showColor: getStore({ name: 'showColor' }),
showMenu: getStore({name: 'showMenu'}), showMenu: getStore({ name: 'showMenu' }),
theme: getStore({name: 'theme'}) || '#409EFF', theme: getStore({ name: 'theme' }) || '#409EFF',
themeName: getStore({name: 'themeName'}) || '', themeName: getStore({ name: 'themeName' }) || '',
lockPasswd: getStore({name: 'lockPasswd'}) || '', lockPasswd: getStore({ name: 'lockPasswd' }) || '',
website: website, website: website
}, },
actions: {}, actions: {},
mutations: { mutations: {
SET_SHADE: (state, active) => { SET_SHADE: (state, active) => {
state.isShade = active; state.isShade = active
}, },
SET_COLLAPSE: (state) => { SET_COLLAPSE: (state) => {
state.isCollapse = !state.isCollapse; state.isCollapse = !state.isCollapse
}, },
SET_FULLSCREN: (state) => { SET_FULLSCREN: (state) => {
state.isFullScren = !state.isFullScren; state.isFullScren = !state.isFullScren
}, },
SET_SHOWCOLLAPSE: (state, active) => { SET_SHOWCOLLAPSE: (state, active) => {
state.showCollapse = active; state.showCollapse = active
setStore({ setStore({
name: 'showCollapse', name: 'showCollapse',
content: state.showCollapse content: state.showCollapse
}) })
}, },
SET_SHOWTAG: (state, active) => { SET_SHOWTAG: (state, active) => {
state.showTag = active; state.showTag = active
setStore({ setStore({
name: 'showTag', name: 'showTag',
content: state.showTag content: state.showTag
}) })
}, },
SET_SHOWMENU: (state, active) => { SET_SHOWMENU: (state, active) => {
state.showMenu = active; state.showMenu = active
setStore({ setStore({
name: 'showMenu', name: 'showMenu',
content: state.showMenu content: state.showMenu
}) })
}, },
SET_SHOWLOCK: (state, active) => { SET_SHOWLOCK: (state, active) => {
state.showLock = active; state.showLock = active
setStore({ setStore({
name: 'showLock', name: 'showLock',
content: state.showLock content: state.showLock
}) })
}, },
SET_SHOWSEARCH: (state, active) => { SET_SHOWSEARCH: (state, active) => {
state.showSearch = active; state.showSearch = active
setStore({ setStore({
name: 'showSearch', name: 'showSearch',
content: state.showSearch content: state.showSearch
}) })
}, },
SET_SHOWFULLSCREN: (state, active) => { SET_SHOWFULLSCREN: (state, active) => {
state.showFullScren = active; state.showFullScren = active
setStore({ setStore({
name: 'showFullScren', name: 'showFullScren',
content: state.showFullScren content: state.showFullScren
}) })
}, },
SET_SHOWDEBUG: (state, active) => { SET_SHOWDEBUG: (state, active) => {
state.showDebug = active; state.showDebug = active
setStore({ setStore({
name: 'showDebug', name: 'showDebug',
content: state.showDebug content: state.showDebug
}) })
}, },
SET_SHOWTHEME: (state, active) => { SET_SHOWTHEME: (state, active) => {
state.showTheme = active; state.showTheme = active
setStore({ setStore({
name: 'showTheme', name: 'showTheme',
content: state.showTheme content: state.showTheme
}) })
}, },
SET_SHOWCOLOR: (state, active) => { SET_SHOWCOLOR: (state, active) => {
state.showColor = active; state.showColor = active
setStore({ setStore({
name: 'showColor', name: 'showColor',
content: state.showColor content: state.showColor
}) })
}, },
SET_LOCK: (state) => { SET_LOCK: (state) => {
state.isLock = true; state.isLock = true
setStore({ setStore({
name: 'isLock', name: 'isLock',
content: state.isLock, content: state.isLock,
...@@ -106,24 +106,24 @@ const common = { ...@@ -106,24 +106,24 @@ const common = {
}) })
}, },
SET_SCREEN: (state, screen) => { SET_SCREEN: (state, screen) => {
state.screen = screen; state.screen = screen
}, },
SET_THEME: (state, color) => { SET_THEME: (state, color) => {
state.theme = color; state.theme = color
setStore({ setStore({
name: 'theme', name: 'theme',
content: state.theme, content: state.theme
}) })
}, },
SET_THEME_NAME: (state, themeName) => { SET_THEME_NAME: (state, themeName) => {
state.themeName = themeName; state.themeName = themeName
setStore({ setStore({
name: 'themeName', name: 'themeName',
content: state.themeName, content: state.themeName
}) })
}, },
SET_LOCK_PASSWD: (state, lockPasswd) => { SET_LOCK_PASSWD: (state, lockPasswd) => {
state.lockPasswd = lockPasswd; state.lockPasswd = lockPasswd
setStore({ setStore({
name: 'lockPasswd', name: 'lockPasswd',
content: state.lockPasswd, content: state.lockPasswd,
...@@ -131,15 +131,15 @@ const common = { ...@@ -131,15 +131,15 @@ const common = {
}) })
}, },
CLEAR_LOCK: (state) => { CLEAR_LOCK: (state) => {
state.isLock = false; state.isLock = false
state.lockPasswd = ''; state.lockPasswd = ''
removeStore({ removeStore({
name: 'lockPasswd' name: 'lockPasswd'
}); })
removeStore({ removeStore({
name: 'isLock' name: 'isLock'
}); })
}, }
} }
} }
export default common export default common
import {getStore, setStore} from '@/util/store' import { getStore, setStore } from '@/util/store'
import {dateFormat} from '@/filters/' import { dateFormat } from '@/filters/'
import {sendLogs} from '@/api/admin/log' import { sendLogs } from '@/api/admin/log'
const logs = { const logs = {
state: { state: {
logsList: getStore({name: 'logsList'}) || [], logsList: getStore({ name: 'logsList' }) || []
}, },
actions: { actions: {
//发送错误日志 // 发送错误日志
SendLogs({state, commit}) { SendLogs ({ state, commit }) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
sendLogs(state.logsList).then(() => { sendLogs(state.logsList).then(() => {
commit('CLEAR_LOGS'); commit('CLEAR_LOGS')
resolve(); resolve()
}).catch(error => { }).catch(error => {
reject(error) reject(error)
}) })
}) })
}, }
}, },
mutations: { mutations: {
ADD_LOGS: (state, {type, message, stack, info}) => { ADD_LOGS: (state, { type, message, stack, info }) => {
state.logsList.push(Object.assign({ state.logsList.push(Object.assign({
url: window.location.href, url: window.location.href,
time: dateFormat(new Date()) time: dateFormat(new Date())
...@@ -30,14 +30,14 @@ const logs = { ...@@ -30,14 +30,14 @@ const logs = {
stack, stack,
info: info.toString() info: info.toString()
})) }))
setStore({name: 'logsList', content: state.logsList}) setStore({ name: 'logsList', content: state.logsList })
}, },
CLEAR_LOGS: (state) => { CLEAR_LOGS: (state) => {
state.logsList = []; state.logsList = []
setStore({name: 'logsList', content: state.logsList}) setStore({ name: 'logsList', content: state.logsList })
} }
} }
}; }
export default logs; export default logs
import {getStore, setStore} from '@/util/store' import { getStore, setStore } from '@/util/store'
import {diff} from '@/util/util' import { diff } from '@/util/util'
import website from '@/const/website' import website from '@/const/website'
const isFirstPage = website.isFirstPage; const isFirstPage = website.isFirstPage
const tagWel = website.fistPage; const tagWel = website.fistPage
const tagObj = { const tagObj = {
label: '', //标题名称 label: '', // 标题名称
value: '', //标题的路径 value: '', // 标题的路径
params: '', //标题的路径参数 params: '', // 标题的路径参数
query: '', //标题的参数 query: '', // 标题的参数
group: [], //分组 group: [] // 分组
} }
//处理首个标签 // 处理首个标签
function setFistTag(list) { function setFistTag (list) {
if (list.length == 1) { if (list.length == 1) {
list[0].close = false; list[0].close = false
} else { } else {
list.forEach(ele => { list.forEach(ele => {
if (ele.value === tagWel.value && isFirstPage === false) { if (ele.value === tagWel.value && isFirstPage === false) {
...@@ -27,39 +27,38 @@ function setFistTag(list) { ...@@ -27,39 +27,38 @@ function setFistTag(list) {
} }
} }
const navs = { const navs = {
state: { state: {
tagList: getStore({name: 'tagList'}) || [], tagList: getStore({ name: 'tagList' }) || [],
tag: getStore({name: 'tag'}) || tagObj, tag: getStore({ name: 'tag' }) || tagObj,
tagWel: tagWel tagWel: tagWel
}, },
actions: {}, actions: {},
mutations: { mutations: {
ADD_TAG: (state, action) => { ADD_TAG: (state, action) => {
state.tag = action; state.tag = action
setStore({name: 'tag', content: state.tag, type: 'session'}) setStore({ name: 'tag', content: state.tag, type: 'session' })
if (state.tagList.some(ele => diff(ele, action))) return if (state.tagList.some(ele => diff(ele, action))) return
state.tagList.push(action) state.tagList.push(action)
setFistTag(state.tagList); setFistTag(state.tagList)
setStore({name: 'tagList', content: state.tagList, type: 'session'}) setStore({ name: 'tagList', content: state.tagList, type: 'session' })
}, },
DEL_TAG: (state, action) => { DEL_TAG: (state, action) => {
state.tagList = state.tagList.filter(item => { state.tagList = state.tagList.filter(item => {
return !diff(item, action); return !diff(item, action)
}) })
setFistTag(state.tagList); setFistTag(state.tagList)
setStore({name: 'tagList', content: state.tagList, type: 'session'}) setStore({ name: 'tagList', content: state.tagList, type: 'session' })
}, },
DEL_ALL_TAG: (state) => { DEL_ALL_TAG: (state) => {
state.tagList = [state.tagWel]; state.tagList = [state.tagWel]
setStore({name: 'tagList', content: state.tagList, type: 'session'}) setStore({ name: 'tagList', content: state.tagList, type: 'session' })
}, },
DEL_TAG_OTHER: (state) => { DEL_TAG_OTHER: (state) => {
state.tagList = state.tagList.filter(item => item.value === state.tag.value) state.tagList = state.tagList.filter(item => item.value === state.tag.value)
setFistTag(state.tagList); setFistTag(state.tagList)
setStore({name: 'tagList', content: state.tagList, type: 'session'}) setStore({ name: 'tagList', content: state.tagList, type: 'session' })
}, }
} }
} }
export default navs export default navs
import {removeToken, setToken} from '@/util/auth' import { removeToken, setToken } from '@/util/auth'
import {getStore, setStore} from '@/util/store' import { getStore, setStore } from '@/util/store'
import {isURL} from '@/util/validate' import { isURL } from '@/util/validate'
import {getUserInfo, loginByMobile, loginBySocial, loginByUsername, logout} from '@/api/login' import { getUserInfo, loginByMobile, loginBySocial, loginByUsername, logout } from '@/api/login'
import {deepClone, encryption} from '@/util/util' import { deepClone, encryption } from '@/util/util'
import webiste from '@/const/website'; import webiste from '@/const/website'
import {GetMenu} from '@/api/admin/menu' import { GetMenu } from '@/api/admin/menu'
function addPath(ele, first) { function addPath (ele, first) {
const propsConfig = webiste.menu.props; const propsConfig = webiste.menu.props
const propsDefault = { const propsDefault = {
label: propsConfig.label || 'label', label: propsConfig.label || 'label',
path: propsConfig.path || 'path', path: propsConfig.path || 'path',
icon: propsConfig.icon || 'icon', icon: propsConfig.icon || 'icon',
children: propsConfig.children || 'children' children: propsConfig.children || 'children'
} }
const isChild = ele[propsDefault.children] && ele[propsDefault.children].length !== 0; const isChild = ele[propsDefault.children] && ele[propsDefault.children].length !== 0
if (!isChild && first) { if (!isChild && first) {
ele[propsDefault.path] = ele[propsDefault.path] + '/index' ele[propsDefault.path] = ele[propsDefault.path] + '/index'
return return
...@@ -23,7 +23,7 @@ function addPath(ele, first) { ...@@ -23,7 +23,7 @@ function addPath(ele, first) {
if (!isURL(child[propsDefault.path])) { if (!isURL(child[propsDefault.path])) {
child[propsDefault.path] = `${ele[propsDefault.path]}/${child[propsDefault.path] ? child[propsDefault.path] : 'index'}` child[propsDefault.path] = `${ele[propsDefault.path]}/${child[propsDefault.path] ? child[propsDefault.path] : 'index'}`
} }
addPath(child); addPath(child)
}) })
} }
...@@ -44,8 +44,8 @@ const user = { ...@@ -44,8 +44,8 @@ const user = {
}) || '' }) || ''
}, },
actions: { actions: {
//根据用户名登录 // 根据用户名登录
LoginByUsername({commit}, userInfo) { LoginByUsername ({ commit }, userInfo) {
const user = encryption({ const user = encryption({
data: userInfo, data: userInfo,
key: 'pigxpigxpigxpigx', key: 'pigxpigxpigxpigx',
...@@ -64,8 +64,8 @@ const user = { ...@@ -64,8 +64,8 @@ const user = {
}) })
}) })
}, },
//根据手机号登录 // 根据手机号登录
LoginByPhone({commit}, userInfo) { LoginByPhone ({ commit }, userInfo) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
loginByMobile(userInfo.mobile, userInfo.code).then(response => { loginByMobile(userInfo.mobile, userInfo.code).then(response => {
const data = response.data const data = response.data
...@@ -80,7 +80,7 @@ const user = { ...@@ -80,7 +80,7 @@ const user = {
}) })
}, },
// 根据OpenId登录 // 根据OpenId登录
LoginBySocial({commit}, param) { LoginBySocial ({ commit }, param) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
loginBySocial(param.state, param.code).then(response => { loginBySocial(param.state, param.code).then(response => {
const data = response.data const data = response.data
...@@ -94,33 +94,33 @@ const user = { ...@@ -94,33 +94,33 @@ const user = {
}) })
}) })
}, },
GetUserInfo({commit}) { GetUserInfo ({ commit }) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
getUserInfo().then((res) => { getUserInfo().then((res) => {
const data = res.data.data || {}; const data = res.data.data || {}
commit('SET_USERIFNO', data.sysUser); commit('SET_USERIFNO', data.sysUser)
commit('SET_ROLES', data.roles || []); commit('SET_ROLES', data.roles || [])
commit('SET_PERMISSIONS', data.permissions || []) commit('SET_PERMISSIONS', data.permissions || [])
resolve(data); resolve(data)
}).catch((err) => { }).catch((err) => {
reject(); reject()
}) })
}) })
}, },
//刷新token // 刷新token
RefeshToken({commit}) { RefeshToken ({ commit }) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
logout().then(() => { logout().then(() => {
commit('SET_TOKEN', new Date().getTime()); commit('SET_TOKEN', new Date().getTime())
setToken(); setToken()
resolve(); resolve()
}).catch(error => { }).catch(error => {
reject(error) reject(error)
}) })
}) })
}, },
// 登出 // 登出
LogOut({commit}) { LogOut ({ commit }) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
logout().then(() => { logout().then(() => {
commit('SET_MENU', []) commit('SET_MENU', [])
...@@ -130,7 +130,7 @@ const user = { ...@@ -130,7 +130,7 @@ const user = {
commit('SET_REFRESH_TOKEN', '') commit('SET_REFRESH_TOKEN', '')
commit('SET_ROLES', []) commit('SET_ROLES', [])
commit('DEL_ALL_TAG') commit('DEL_ALL_TAG')
commit('CLEAR_LOCK'); commit('CLEAR_LOCK')
removeToken() removeToken()
resolve() resolve()
}).catch(error => { }).catch(error => {
...@@ -138,8 +138,8 @@ const user = { ...@@ -138,8 +138,8 @@ const user = {
}) })
}) })
}, },
//注销session // 注销session
FedLogOut({commit}) { FedLogOut ({ commit }) {
return new Promise(resolve => { return new Promise(resolve => {
commit('SET_MENU', []) commit('SET_MENU', [])
commit('SET_PERMISSIONS', []) commit('SET_PERMISSIONS', [])
...@@ -148,21 +148,21 @@ const user = { ...@@ -148,21 +148,21 @@ const user = {
commit('SET_REFRESH_TOKEN', '') commit('SET_REFRESH_TOKEN', '')
commit('SET_ROLES', []) commit('SET_ROLES', [])
commit('DEL_ALL_TAG') commit('DEL_ALL_TAG')
commit('CLEAR_LOCK'); commit('CLEAR_LOCK')
removeToken() removeToken()
resolve() resolve()
}) })
}, },
//获取系统菜单 // 获取系统菜单
GetMenu({ GetMenu ({
commit commit
}) { }) {
return new Promise(resolve => { return new Promise(resolve => {
GetMenu().then((res) => { GetMenu().then((res) => {
const data = res.data.data const data = res.data.data
let menu = deepClone(data); let menu = deepClone(data)
menu.forEach(ele => { menu.forEach(ele => {
addPath(ele); addPath(ele)
}) })
commit('SET_MENU', menu) commit('SET_MENU', menu)
resolve(menu) resolve(menu)
...@@ -189,7 +189,7 @@ const user = { ...@@ -189,7 +189,7 @@ const user = {
}) })
}, },
SET_USERIFNO: (state, userInfo) => { SET_USERIFNO: (state, userInfo) => {
state.userInfo = userInfo; state.userInfo = userInfo
}, },
SET_MENU: (state, menu) => { SET_MENU: (state, menu) => {
state.menu = menu state.menu = menu
...@@ -198,13 +198,12 @@ const user = { ...@@ -198,13 +198,12 @@ const user = {
content: state.menu, content: state.menu,
type: 'session' type: 'session'
}) })
}, },
SET_MENU_ALL: (state, menuAll) => { SET_MENU_ALL: (state, menuAll) => {
state.menuAll = menuAll; state.menuAll = menuAll
}, },
SET_ROLES: (state, roles) => { SET_ROLES: (state, roles) => {
state.roles = roles; state.roles = roles
}, },
SET_PERMISSIONS: (state, permissions) => { SET_PERMISSIONS: (state, permissions) => {
const list = {} const list = {}
......
export default { export default {
getScreen: function () { getScreen: function () {
var width = document.body.clientWidth; var width = document.body.clientWidth
if (width >= 1200) { if (width >= 1200) {
return 3; //大屏幕 return 3 // 大屏幕
} else if (width >= 992) { } else if (width >= 992) {
return 2; //中屏幕 return 2 // 中屏幕
} else if (width >= 768) { } else if (width >= 768) {
return 1; //小屏幕 return 1 // 小屏幕
} else { } else {
return 0; //超小屏幕 return 0 // 超小屏幕
} }
} }
} }
...@@ -2,14 +2,14 @@ import Cookies from 'js-cookie' ...@@ -2,14 +2,14 @@ import Cookies from 'js-cookie'
const TokenKey = 'x-access-token' const TokenKey = 'x-access-token'
export function getToken() { export function getToken () {
return Cookies.get(TokenKey) return Cookies.get(TokenKey)
} }
export function setToken(token) { export function setToken (token) {
return Cookies.set(TokenKey, token) return Cookies.set(TokenKey, token)
} }
export function removeToken() { export function removeToken () {
return Cookies.remove(TokenKey) return Cookies.remove(TokenKey)
} }
export const calcDate = (date1, date2) => { export const calcDate = (date1, date2) => {
var date3 = date2 - date1; var date3 = date2 - date1
var days = Math.floor(date3 / (24 * 3600 * 1000)) var days = Math.floor(date3 / (24 * 3600 * 1000))
var leave1 = date3 % (24 * 3600 * 1000) //计算天数后剩余的毫秒数 var leave1 = date3 % (24 * 3600 * 1000) // 计算天数后剩余的毫秒数
var hours = Math.floor(leave1 / (3600 * 1000)) var hours = Math.floor(leave1 / (3600 * 1000))
var leave2 = leave1 % (3600 * 1000) //计算小时数后剩余的毫秒数 var leave2 = leave1 % (3600 * 1000) // 计算小时数后剩余的毫秒数
var minutes = Math.floor(leave2 / (60 * 1000)) var minutes = Math.floor(leave2 / (60 * 1000))
var leave3 = leave2 % (60 * 1000) //计算分钟数后剩余的毫秒数 var leave3 = leave2 % (60 * 1000) // 计算分钟数后剩余的毫秒数
var seconds = Math.round(date3 / 1000) var seconds = Math.round(date3 / 1000)
return { return {
leave1, leave1,
...@@ -18,6 +18,6 @@ export const calcDate = (date1, date2) => { ...@@ -18,6 +18,6 @@ export const calcDate = (date1, date2) => {
days: days, days: days,
hours: hours, hours: hours,
minutes: minutes, minutes: minutes,
seconds: seconds, seconds: seconds
} }
} }
import {validatenull} from '@/util/validate'; import { validatenull } from '@/util/validate'
/** /**
* 存储localStorage * 存储localStorage
...@@ -7,16 +7,16 @@ export const setStore = (params) => { ...@@ -7,16 +7,16 @@ export const setStore = (params) => {
let { let {
name, name,
content, content,
type, type
} = params; } = params
let obj = { let obj = {
dataType: typeof (content), dataType: typeof (content),
content: content, content: content,
type: type, type: type,
datetime: new Date().getTime() datetime: new Date().getTime()
} }
if (type) window.sessionStorage.setItem(name, JSON.stringify(obj)); if (type) window.sessionStorage.setItem(name, JSON.stringify(obj))
else window.localStorage.setItem(name, JSON.stringify(obj)); else window.localStorage.setItem(name, JSON.stringify(obj))
} }
/** /**
* 获取localStorage * 获取localStorage
...@@ -26,26 +26,27 @@ export const getStore = (params) => { ...@@ -26,26 +26,27 @@ export const getStore = (params) => {
let { let {
name, name,
debug debug
} = params; } = params
let obj = {}, let obj = {}
content;
obj = window.sessionStorage.getItem(name); let content
if (validatenull(obj)) obj = window.localStorage.getItem(name); obj = window.sessionStorage.getItem(name)
if (validatenull(obj)) return; if (validatenull(obj)) obj = window.localStorage.getItem(name)
obj = JSON.parse(obj); if (validatenull(obj)) return
obj = JSON.parse(obj)
if (debug) { if (debug) {
return obj; return obj
} }
if (obj.dataType == 'string') { if (obj.dataType == 'string') {
content = obj.content; content = obj.content
} else if (obj.dataType == 'number') { } else if (obj.dataType == 'number') {
content = Number(obj.content); content = Number(obj.content)
} else if (obj.dataType == 'boolean') { } else if (obj.dataType == 'boolean') {
content = eval(obj.content); content = eval(obj.content)
} else if (obj.dataType == 'object') { } else if (obj.dataType == 'object') {
content = obj.content; content = obj.content
} }
return content; return content
} }
/** /**
* 删除localStorage * 删除localStorage
...@@ -53,19 +54,19 @@ export const getStore = (params) => { ...@@ -53,19 +54,19 @@ export const getStore = (params) => {
export const removeStore = params => { export const removeStore = params => {
let { let {
name name
} = params; } = params
window.localStorage.removeItem(name); window.localStorage.removeItem(name)
window.sessionStorage.removeItem(name); window.sessionStorage.removeItem(name)
} }
/** /**
* 获取全部localStorage * 获取全部localStorage
*/ */
export const getAllStore = (params) => { export const getAllStore = (params) => {
let list = []; let list = []
let { let {
type type
} = params; } = params
for (let i = 1; i <= window.sessionStorage.length; i++) { for (let i = 1; i <= window.sessionStorage.length; i++) {
if (type) { if (type) {
list.push({ list.push({
...@@ -79,14 +80,13 @@ export const getAllStore = (params) => { ...@@ -79,14 +80,13 @@ export const getAllStore = (params) => {
list.push(getStore({ list.push(getStore({
name: window.localStorage.key(i), name: window.localStorage.key(i),
content: getStore({ content: getStore({
name: window.localStorage.key(i), name: window.localStorage.key(i)
}) })
})) }))
} }
} }
return list; return list
} }
/** /**
...@@ -95,9 +95,9 @@ export const getAllStore = (params) => { ...@@ -95,9 +95,9 @@ export const getAllStore = (params) => {
export const clearStore = (params) => { export const clearStore = (params) => {
let { let {
type type
} = params; } = params
if (type) { if (type) {
window.sessionStorage.clear(); window.sessionStorage.clear()
return return
} }
window.localStorage.clear() window.localStorage.clear()
......
import {validatenull} from './validate' import { validatenull } from './validate'
//表单序列化 // 表单序列化
export const serialize = data => { export const serialize = data => {
let list = []; let list = []
Object.keys(data).forEach(ele => { Object.keys(data).forEach(ele => {
list.push(`${ele}=${data[ele]}`) list.push(`${ele}=${data[ele]}`)
}) })
return list.join('&'); return list.join('&')
}; }
export const getObjType = obj => { export const getObjType = obj => {
var toString = Object.prototype.toString; var toString = Object.prototype.toString
var map = { var map = {
'[object Boolean]': 'boolean', '[object Boolean]': 'boolean',
'[object Number]': 'number', '[object Number]': 'number',
...@@ -20,79 +20,79 @@ export const getObjType = obj => { ...@@ -20,79 +20,79 @@ export const getObjType = obj => {
'[object Undefined]': 'undefined', '[object Undefined]': 'undefined',
'[object Null]': 'null', '[object Null]': 'null',
'[object Object]': 'object' '[object Object]': 'object'
}; }
if (obj instanceof Element) { if (obj instanceof Element) {
return 'element'; return 'element'
} }
return map[toString.call(obj)]; return map[toString.call(obj)]
}; }
/** /**
* 对象深拷贝 * 对象深拷贝
*/ */
export const deepClone = data => { export const deepClone = data => {
var type = getObjType(data); var type = getObjType(data)
var obj; var obj
if (type === 'array') { if (type === 'array') {
obj = []; obj = []
} else if (type === 'object') { } else if (type === 'object') {
obj = {}; obj = {}
} else { } else {
//不再具有下一层次 // 不再具有下一层次
return data; return data
} }
if (type === 'array') { if (type === 'array') {
for (var i = 0, len = data.length; i < len; i++) { for (var i = 0, len = data.length; i < len; i++) {
obj.push(deepClone(data[i])); obj.push(deepClone(data[i]))
} }
} else if (type === 'object') { } else if (type === 'object') {
for (var key in data) { for (var key in data) {
obj[key] = deepClone(data[key]); obj[key] = deepClone(data[key])
} }
} }
return obj; return obj
}; }
/** /**
* 判断路由是否相等 * 判断路由是否相等
*/ */
export const diff = (obj1, obj2) => { export const diff = (obj1, obj2) => {
delete obj1.close; delete obj1.close
var o1 = obj1 instanceof Object; var o1 = obj1 instanceof Object
var o2 = obj2 instanceof Object; var o2 = obj2 instanceof Object
if (!o1 || !o2) { /* 判断不是对象 */ if (!o1 || !o2) { /* 判断不是对象 */
return obj1 === obj2; return obj1 === obj2
} }
if (Object.keys(obj1).length !== Object.keys(obj2).length) { if (Object.keys(obj1).length !== Object.keys(obj2).length) {
return false; return false
//Object.keys() 返回一个由对象的自身可枚举属性(key值)组成的数组,例如:数组返回下表:let arr = ["a", "b", "c"];console.log(Object.keys(arr))->0,1,2; // Object.keys() 返回一个由对象的自身可枚举属性(key值)组成的数组,例如:数组返回下表:let arr = ["a", "b", "c"];console.log(Object.keys(arr))->0,1,2;
} }
for (var attr in obj1) { for (var attr in obj1) {
var t1 = obj1[attr] instanceof Object; var t1 = obj1[attr] instanceof Object
var t2 = obj2[attr] instanceof Object; var t2 = obj2[attr] instanceof Object
if (t1 && t2) { if (t1 && t2) {
return diff(obj1[attr], obj2[attr]); return diff(obj1[attr], obj2[attr])
} else if (obj1[attr] !== obj2[attr]) { } else if (obj1[attr] !== obj2[attr]) {
return false; return false
} }
} }
return true; return true
} }
/** /**
* 设置灰度模式 * 设置灰度模式
*/ */
export const toggleGrayMode = (status) => { export const toggleGrayMode = (status) => {
if (status) { if (status) {
document.body.className = document.body.className + ' grayMode'; document.body.className = document.body.className + ' grayMode'
} else { } else {
document.body.className = document.body.className.replace(' grayMode', ''); document.body.className = document.body.className.replace(' grayMode', '')
} }
}; }
/** /**
* 设置主题 * 设置主题
*/ */
export const setTheme = (name) => { export const setTheme = (name) => {
document.body.className = name; document.body.className = name
} }
/** /**
...@@ -129,38 +129,37 @@ export const encryption = (params) => { ...@@ -129,38 +129,37 @@ export const encryption = (params) => {
return result return result
} }
/** /**
* 浏览器判断是否全屏 * 浏览器判断是否全屏
*/ */
export const fullscreenToggel = () => { export const fullscreenToggel = () => {
if (fullscreenEnable()) { if (fullscreenEnable()) {
exitFullScreen(); exitFullScreen()
} else { } else {
reqFullScreen(); reqFullScreen()
} }
}; }
/** /**
* esc监听全屏 * esc监听全屏
*/ */
export const listenfullscreen = (callback) => { export const listenfullscreen = (callback) => {
function listen() { function listen () {
callback() callback()
} }
document.addEventListener("fullscreenchange", function () { document.addEventListener('fullscreenchange', function () {
listen(); listen()
}); })
document.addEventListener("mozfullscreenchange", function () { document.addEventListener('mozfullscreenchange', function () {
listen(); listen()
}); })
document.addEventListener("webkitfullscreenchange", function () { document.addEventListener('webkitfullscreenchange', function () {
listen(); listen()
}); })
document.addEventListener("msfullscreenchange", function () { document.addEventListener('msfullscreenchange', function () {
listen(); listen()
}); })
}; }
/** /**
* 浏览器判断是否全屏 * 浏览器判断是否全屏
*/ */
...@@ -168,8 +167,8 @@ export const fullscreenEnable = () => { ...@@ -168,8 +167,8 @@ export const fullscreenEnable = () => {
var isFullscreen = document.fullscreenEnabled || var isFullscreen = document.fullscreenEnabled ||
window.fullScreen || window.fullScreen ||
document.mozFullscreenEnabled || document.mozFullscreenEnabled ||
document.webkitIsFullScreen; document.webkitIsFullScreen
return isFullscreen; return isFullscreen
} }
/** /**
...@@ -177,25 +176,25 @@ export const fullscreenEnable = () => { ...@@ -177,25 +176,25 @@ export const fullscreenEnable = () => {
*/ */
export const reqFullScreen = () => { export const reqFullScreen = () => {
if (document.documentElement.requestFullScreen) { if (document.documentElement.requestFullScreen) {
document.documentElement.requestFullScreen(); document.documentElement.requestFullScreen()
} else if (document.documentElement.webkitRequestFullScreen) { } else if (document.documentElement.webkitRequestFullScreen) {
document.documentElement.webkitRequestFullScreen(); document.documentElement.webkitRequestFullScreen()
} else if (document.documentElement.mozRequestFullScreen) { } else if (document.documentElement.mozRequestFullScreen) {
document.documentElement.mozRequestFullScreen(); document.documentElement.mozRequestFullScreen()
} }
}; }
/** /**
* 浏览器退出全屏 * 浏览器退出全屏
*/ */
export const exitFullScreen = () => { export const exitFullScreen = () => {
if (document.documentElement.requestFullScreen) { if (document.documentElement.requestFullScreen) {
document.exitFullScreen(); document.exitFullScreen()
} else if (document.documentElement.webkitRequestFullScreen) { } else if (document.documentElement.webkitRequestFullScreen) {
document.webkitCancelFullScreen(); document.webkitCancelFullScreen()
} else if (document.documentElement.mozRequestFullScreen) { } else if (document.documentElement.mozRequestFullScreen) {
document.mozCancelFullScreen(); document.mozCancelFullScreen()
} }
}; }
/** /**
* 递归寻找子类的父类 * 递归寻找子类的父类
*/ */
...@@ -205,16 +204,16 @@ export const findParent = (menu, id) => { ...@@ -205,16 +204,16 @@ export const findParent = (menu, id) => {
if (menu[i].children.length != 0) { if (menu[i].children.length != 0) {
for (let j = 0; j < menu[i].children.length; j++) { for (let j = 0; j < menu[i].children.length; j++) {
if (menu[i].children[j].id == id) { if (menu[i].children[j].id == id) {
return menu[i]; return menu[i]
} else { } else {
if (menu[i].children[j].children.length != 0) { if (menu[i].children[j].children.length != 0) {
return findParent(menu[i].children[j].children, id); return findParent(menu[i].children[j].children, id)
} }
} }
} }
} }
} }
}; }
/** /**
* 判断2个对象属性和值是否相等 * 判断2个对象属性和值是否相等
*/ */
...@@ -224,74 +223,74 @@ export const findParent = (menu, id) => { ...@@ -224,74 +223,74 @@ export const findParent = (menu, id) => {
*/ */
export const loadStyle = url => { export const loadStyle = url => {
const link = document.createElement('link'); const link = document.createElement('link')
link.type = 'text/css'; link.type = 'text/css'
link.rel = 'stylesheet'; link.rel = 'stylesheet'
link.href = url; link.href = url
const head = document.getElementsByTagName('head')[0]; const head = document.getElementsByTagName('head')[0]
head.appendChild(link); head.appendChild(link)
}; }
/** /**
* 判断路由是否相等 * 判断路由是否相等
*/ */
export const isObjectValueEqual = (a, b) => { export const isObjectValueEqual = (a, b) => {
let result = true; let result = true
Object.keys(a).forEach(ele => { Object.keys(a).forEach(ele => {
const type = typeof (a[ele]); const type = typeof (a[ele])
if (type === 'string' && a[ele] !== b[ele]) result = false; if (type === 'string' && a[ele] !== b[ele]) result = false
else if (type === 'object' && JSON.stringify(a[ele]) !== JSON.stringify(b[ele])) result = false; else if (type === 'object' && JSON.stringify(a[ele]) !== JSON.stringify(b[ele])) result = false
}) })
return result; return result
} }
/** /**
* 根据字典的value显示label * 根据字典的value显示label
*/ */
export const findByvalue = (dic, value) => { export const findByvalue = (dic, value) => {
let result = ''; let result = ''
if (validatenull(dic)) return value; if (validatenull(dic)) return value
if (typeof (value) == 'string' || typeof (value) == 'number' || typeof (value) == 'boolean') { if (typeof (value) === 'string' || typeof (value) === 'number' || typeof (value) === 'boolean') {
let index = 0; let index = 0
index = findArray(dic, value); index = findArray(dic, value)
if (index != -1) { if (index != -1) {
result = dic[index].label; result = dic[index].label
} else { } else {
result = value; result = value
} }
} else if (value instanceof Array) { } else if (value instanceof Array) {
result = []; result = []
let index = 0; let index = 0
value.forEach(ele => { value.forEach(ele => {
index = findArray(dic, ele); index = findArray(dic, ele)
if (index != -1) { if (index != -1) {
result.push(dic[index].label); result.push(dic[index].label)
} else { } else {
result.push(value); result.push(value)
} }
}); })
result = result.toString(); result = result.toString()
} }
return result; return result
}; }
/** /**
* 根据字典的value查找对应的index * 根据字典的value查找对应的index
*/ */
export const findArray = (dic, value) => { export const findArray = (dic, value) => {
for (let i = 0; i < dic.length; i++) { for (let i = 0; i < dic.length; i++) {
if (dic[i].value == value) { if (dic[i].value == value) {
return i; return i
} }
} }
return -1; return -1
}; }
/** /**
* 生成随机len位数字 * 生成随机len位数字
*/ */
export const randomLenNum = (len, date) => { export const randomLenNum = (len, date) => {
let random = ''; let random = ''
random = Math.ceil(Math.random() * 100000000000000).toString().substr(0, len ? len : 4); random = Math.ceil(Math.random() * 100000000000000).toString().substr(0, len || 4)
if (date) random = random + Date.now(); if (date) random = random + Date.now()
return random; return random
}; }
/** /**
* 打开小窗口 * 打开小窗口
*/ */
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* 邮箱 * 邮箱
* @param {*} s * @param {*} s
*/ */
export function isEmail(s) { export function isEmail (s) {
return /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(s) return /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(s)
} }
...@@ -10,7 +10,7 @@ export function isEmail(s) { ...@@ -10,7 +10,7 @@ export function isEmail(s) {
* 手机号码 * 手机号码
* @param {*} s * @param {*} s
*/ */
export function isMobile(s) { export function isMobile (s) {
return /^1[0-9]{10}$/.test(s) return /^1[0-9]{10}$/.test(s)
} }
...@@ -18,7 +18,7 @@ export function isMobile(s) { ...@@ -18,7 +18,7 @@ export function isMobile(s) {
* 电话号码 * 电话号码
* @param {*} s * @param {*} s
*/ */
export function isPhone(s) { export function isPhone (s) {
return /^([0-9]{3,4}-)?[0-9]{7,8}$/.test(s) return /^([0-9]{3,4}-)?[0-9]{7,8}$/.test(s)
} }
...@@ -26,54 +26,54 @@ export function isPhone(s) { ...@@ -26,54 +26,54 @@ export function isPhone(s) {
* URL地址 * URL地址
* @param {*} s * @param {*} s
*/ */
export function isURL(s) { export function isURL (s) {
return /^http[s]?:\/\/.*/.test(s) return /^http[s]?:\/\/.*/.test(s)
} }
export function isvalidUsername(str) { export function isvalidUsername (str) {
const valid_map = ['admin', 'editor'] const valid_map = ['admin', 'editor']
return valid_map.indexOf(str.trim()) >= 0 return valid_map.indexOf(str.trim()) >= 0
} }
/* 合法uri*/ /* 合法uri */
export function validateURL(textval) { export function validateURL (textval) {
const urlregex = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/ const urlregex = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/
return urlregex.test(textval) return urlregex.test(textval)
} }
/* 小写字母*/ /* 小写字母 */
export function validateLowerCase(str) { export function validateLowerCase (str) {
const reg = /^[a-z]+$/ const reg = /^[a-z]+$/
return reg.test(str) return reg.test(str)
} }
/* 大写字母*/ /* 大写字母 */
export function validateUpperCase(str) { export function validateUpperCase (str) {
const reg = /^[A-Z]+$/ const reg = /^[A-Z]+$/
return reg.test(str) return reg.test(str)
} }
/* 大小写字母*/ /* 大小写字母 */
export function validatAlphabets(str) { export function validatAlphabets (str) {
const reg = /^[A-Za-z]+$/ const reg = /^[A-Za-z]+$/
return reg.test(str) return reg.test(str)
} }
/*验证pad还是pc*/ /* 验证pad还是pc */
export const vaildatePc = function () { export const vaildatePc = function () {
const userAgentInfo = navigator.userAgent; const userAgentInfo = navigator.userAgent
const Agents = ["Android", "iPhone", const Agents = ['Android', 'iPhone',
"SymbianOS", "Windows Phone", 'SymbianOS', 'Windows Phone',
"iPad", "iPod" 'iPad', 'iPod'
]; ]
let flag = true; let flag = true
for (var v = 0; v < Agents.length; v++) { for (var v = 0; v < Agents.length; v++) {
if (userAgentInfo.indexOf(Agents[v]) > 0) { if (userAgentInfo.indexOf(Agents[v]) > 0) {
flag = false; flag = false
break; break
} }
} }
return flag; return flag
} }
/** /**
...@@ -81,7 +81,7 @@ export const vaildatePc = function () { ...@@ -81,7 +81,7 @@ export const vaildatePc = function () {
* @param email * @param email
* @returns {boolean} * @returns {boolean}
*/ */
export function validateEmail(email) { export function validateEmail (email) {
const re = /^(([^<>()\\[\]\\.,;:\s@"]+(\.[^<>()\\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ const re = /^(([^<>()\\[\]\\.,;:\s@"]+(\.[^<>()\\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
return re.test(email) return re.test(email)
} }
...@@ -89,169 +89,167 @@ export function validateEmail(email) { ...@@ -89,169 +89,167 @@ export function validateEmail(email) {
/** /**
* 判断身份证号码 * 判断身份证号码
*/ */
export function cardid(code) { export function cardid (code) {
let list = []; let list = []
let result = true; let result = true
let msg = ''; let msg = ''
var city = { var city = {
11: "北京", 11: '北京',
12: "天津", 12: '天津',
13: "河北", 13: '河北',
14: "山西", 14: '山西',
15: "内蒙古", 15: '内蒙古',
21: "辽宁", 21: '辽宁',
22: "吉林", 22: '吉林',
23: "黑龙江 ", 23: '黑龙江 ',
31: "上海", 31: '上海',
32: "江苏", 32: '江苏',
33: "浙江", 33: '浙江',
34: "安徽", 34: '安徽',
35: "福建", 35: '福建',
36: "江西", 36: '江西',
37: "山东", 37: '山东',
41: "河南", 41: '河南',
42: "湖北 ", 42: '湖北 ',
43: "湖南", 43: '湖南',
44: "广东", 44: '广东',
45: "广西", 45: '广西',
46: "海南", 46: '海南',
50: "重庆", 50: '重庆',
51: "四川", 51: '四川',
52: "贵州", 52: '贵州',
53: "云南", 53: '云南',
54: "西藏 ", 54: '西藏 ',
61: "陕西", 61: '陕西',
62: "甘肃", 62: '甘肃',
63: "青海", 63: '青海',
64: "宁夏", 64: '宁夏',
65: "新疆", 65: '新疆',
71: "台湾", 71: '台湾',
81: "香港", 81: '香港',
82: "澳门", 82: '澳门',
91: "国外 " 91: '国外 '
}; }
if (!validatenull(code)) { if (!validatenull(code)) {
if (code.length == 18) { if (code.length == 18) {
if (!code || !/(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(code)) { if (!code || !/(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(code)) {
msg = "证件号码格式错误"; msg = '证件号码格式错误'
} else if (!city[code.substr(0, 2)]) { } else if (!city[code.substr(0, 2)]) {
msg = "地址编码错误"; msg = '地址编码错误'
} else { } else {
//18位身份证需要验证最后一位校验位 // 18位身份证需要验证最后一位校验位
code = code.split(''); code = code.split('')
//∑(ai×Wi)(mod 11) // ∑(ai×Wi)(mod 11)
//加权因子 // 加权因子
var factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; var factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]
//校验位 // 校验位
var parity = [1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2, 'x']; var parity = [1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2, 'x']
var sum = 0; var sum = 0
var ai = 0; var ai = 0
var wi = 0; var wi = 0
for (var i = 0; i < 17; i++) { for (var i = 0; i < 17; i++) {
ai = code[i]; ai = code[i]
wi = factor[i]; wi = factor[i]
sum += ai * wi; sum += ai * wi
} }
if (parity[sum % 11] != code[17]) { if (parity[sum % 11] != code[17]) {
msg = "证件号码校验位错误"; msg = '证件号码校验位错误'
} else { } else {
result = false; result = false
} }
} }
} else { } else {
msg = "证件号码长度不为18位"; msg = '证件号码长度不为18位'
} }
} else { } else {
msg = "证件号码不能为空"; msg = '证件号码不能为空'
} }
list.push(result); list.push(result)
list.push(msg); list.push(msg)
return list; return list
} }
/** /**
* 判断手机号码是否正确 * 判断手机号码是否正确
*/ */
export function isvalidatemobile(phone) { export function isvalidatemobile (phone) {
let list = []; let list = []
let result = true; let result = true
let msg = ''; let msg = ''
var isPhone = /^0\d{2,3}-?\d{7,8}$/; var isPhone = /^0\d{2,3}-?\d{7,8}$/
//增加134 减少|1349[0-9]{7},增加181,增加145,增加17[678] // 增加134 减少|1349[0-9]{7},增加181,增加145,增加17[678]
if (!validatenull(phone)) { if (!validatenull(phone)) {
if (phone.length == 11) { if (phone.length == 11) {
if (isPhone.test(phone)) { if (isPhone.test(phone)) {
msg = '手机号码格式不正确'; msg = '手机号码格式不正确'
} else { } else {
result = false; result = false
} }
} else { } else {
msg = '手机号码长度不为11位'; msg = '手机号码长度不为11位'
} }
} else { } else {
msg = '手机号码不能为空'; msg = '手机号码不能为空'
} }
list.push(result); list.push(result)
list.push(msg); list.push(msg)
return list; return list
} }
/** /**
* 判断姓名是否正确 * 判断姓名是否正确
*/ */
export function validatename(name) { export function validatename (name) {
var regName = /^[\u4e00-\u9fa5]{2,4}$/; var regName = /^[\u4e00-\u9fa5]{2,4}$/
if (!regName.test(name)) return false; if (!regName.test(name)) return false
return true; return true
} }
/** /**
* 判断是否为整数 * 判断是否为整数
*/ */
export function validatenum(num, type) { export function validatenum (num, type) {
let regName = /[^\d.]/g; let regName = /[^\d.]/g
if (type == 1) { if (type == 1) {
if (!regName.test(num)) return false; if (!regName.test(num)) return false
} else if (type == 2) { } else if (type == 2) {
regName = /[^\d]/g; regName = /[^\d]/g
if (!regName.test(num)) return false; if (!regName.test(num)) return false
} }
return true; return true
} }
/** /**
* 判断是否为小数 * 判断是否为小数
*/ */
export function validatenumord(num, type) { export function validatenumord (num, type) {
let regName = /[^\d.]/g; let regName = /[^\d.]/g
if (type == 1) { if (type == 1) {
if (!regName.test(num)) return false; if (!regName.test(num)) return false
} else if (type == 2) { } else if (type == 2) {
regName = /[^\d.]/g; regName = /[^\d.]/g
if (!regName.test(num)) return false; if (!regName.test(num)) return false
} }
return true; return true
} }
/** /**
* 判断是否为空 * 判断是否为空
*/ */
export function validatenull(val) { export function validatenull (val) {
if (typeof val == 'boolean') { if (typeof val === 'boolean') {
return false; return false
} }
if (typeof val == 'number') { if (typeof val === 'number') {
return false; return false
} }
if (val instanceof Array) { if (val instanceof Array) {
if (val.length == 0) return true; if (val.length == 0) return true
} else if (val instanceof Object) { } else if (val instanceof Object) {
if (JSON.stringify(val) === '{}') return true; if (JSON.stringify(val) === '{}') return true
} else { } else {
if (val == 'null' || val == null || val == 'undefined' || val == undefined || val == '') return true; if (val == 'null' || val == null || val == 'undefined' || val == undefined || val == '') return true
return false; return false
} }
return false; return false
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment