
@ -0,0 +1,14 @@ |
|||||
|
# http://editorconfig.org |
||||
|
root = true |
||||
|
|
||||
|
[*] |
||||
|
charset = utf-8 |
||||
|
indent_style = space |
||||
|
indent_size = 2 |
||||
|
end_of_line = lf |
||||
|
insert_final_newline = true |
||||
|
trim_trailing_whitespace = true |
||||
|
|
||||
|
[*.md] |
||||
|
insert_final_newline = false |
||||
|
trim_trailing_whitespace = false |
@ -0,0 +1,9 @@ |
|||||
|
# just a flag |
||||
|
ENV = 'development' |
||||
|
|
||||
|
# base api |
||||
|
VUE_APP_BASE_API = '/api' |
||||
|
|
||||
|
## 配置测试和本地开发时的 接口地址 |
||||
|
##VUE_APP_URL = "http://8.130.39.13:8112" |
||||
|
VUE_APP_URL = "http://192.168.3.173:8112" |
@ -0,0 +1,9 @@ |
|||||
|
# just a flag |
||||
|
ENV = 'production' |
||||
|
|
||||
|
# base api |
||||
|
VUE_APP_BASE_API = '/api/service' |
||||
|
|
||||
|
## 配置 正式接口地址 |
||||
|
VUE_APP_URL = "http://120.46.131.15:8111" |
||||
|
|
@ -0,0 +1,8 @@ |
|||||
|
NODE_ENV = production |
||||
|
|
||||
|
# just a flag |
||||
|
ENV = 'staging' |
||||
|
|
||||
|
# base api |
||||
|
VUE_APP_BASE_API = '/stage-api' |
||||
|
|
@ -0,0 +1,5 @@ |
|||||
|
build/*.js |
||||
|
src/assets |
||||
|
public |
||||
|
dist |
||||
|
src/* |
@ -0,0 +1,199 @@ |
|||||
|
module.exports = { |
||||
|
root: true, |
||||
|
parserOptions: { |
||||
|
parser: 'babel-eslint', |
||||
|
sourceType: 'module' |
||||
|
}, |
||||
|
env: { |
||||
|
browser: true, |
||||
|
node: true, |
||||
|
es6: true, |
||||
|
}, |
||||
|
extends: ['plugin:vue/recommended', 'eslint:recommended'], |
||||
|
|
||||
|
// add your custom rules here
|
||||
|
//it is base on https://github.com/vuejs/eslint-config-vue
|
||||
|
rules: { |
||||
|
"vue/max-attributes-per-line": [2, { |
||||
|
"singleline": 10, |
||||
|
"multiline": { |
||||
|
"max": 1, |
||||
|
"allowFirstLine": false |
||||
|
} |
||||
|
}], |
||||
|
"vue/singleline-html-element-content-newline": "off", |
||||
|
"vue/multiline-html-element-content-newline":"off", |
||||
|
"vue/name-property-casing": ["error", "PascalCase"], |
||||
|
"vue/no-v-html": "off", |
||||
|
'accessor-pairs': 2, |
||||
|
'arrow-spacing': [2, { |
||||
|
'before': true, |
||||
|
'after': true |
||||
|
}], |
||||
|
'block-spacing': [2, 'always'], |
||||
|
'brace-style': [2, '1tbs', { |
||||
|
'allowSingleLine': true |
||||
|
}], |
||||
|
'camelcase': [0, { |
||||
|
'properties': 'always' |
||||
|
}], |
||||
|
'comma-dangle': [2, 'never'], |
||||
|
'comma-spacing': [2, { |
||||
|
'before': false, |
||||
|
'after': true |
||||
|
}], |
||||
|
'comma-style': [2, 'last'], |
||||
|
'constructor-super': 2, |
||||
|
'curly': [2, 'multi-line'], |
||||
|
'dot-location': [2, 'property'], |
||||
|
'eol-last': 2, |
||||
|
'eqeqeq': ["error", "always", {"null": "ignore"}], |
||||
|
'generator-star-spacing': [2, { |
||||
|
'before': true, |
||||
|
'after': true |
||||
|
}], |
||||
|
'handle-callback-err': [2, '^(err|error)$'], |
||||
|
// 'indent': [2, 2, {
|
||||
|
// 'SwitchCase': 1
|
||||
|
// }],
|
||||
|
'indent': 'off', |
||||
|
'jsx-quotes': [2, 'prefer-single'], |
||||
|
'key-spacing': [2, { |
||||
|
'beforeColon': false, |
||||
|
'afterColon': true |
||||
|
}], |
||||
|
'keyword-spacing': [2, { |
||||
|
'before': true, |
||||
|
'after': true |
||||
|
}], |
||||
|
'new-cap': [2, { |
||||
|
'newIsCap': true, |
||||
|
'capIsNew': false |
||||
|
}], |
||||
|
'new-parens': 2, |
||||
|
'no-array-constructor': 2, |
||||
|
'no-caller': 2, |
||||
|
'no-console': 'off', |
||||
|
'no-class-assign': 2, |
||||
|
'no-cond-assign': 2, |
||||
|
'no-const-assign': 2, |
||||
|
'no-control-regex': 0, |
||||
|
'no-delete-var': 2, |
||||
|
'no-dupe-args': 2, |
||||
|
'no-dupe-class-members': 2, |
||||
|
'no-dupe-keys': 2, |
||||
|
'no-duplicate-case': 2, |
||||
|
'no-empty-character-class': 2, |
||||
|
'no-empty-pattern': 2, |
||||
|
'no-eval': 2, |
||||
|
'no-ex-assign': 2, |
||||
|
'no-extend-native': 2, |
||||
|
'no-extra-bind': 2, |
||||
|
'no-extra-boolean-cast': 2, |
||||
|
'no-extra-parens': [2, 'functions'], |
||||
|
'no-fallthrough': 2, |
||||
|
'no-floating-decimal': 2, |
||||
|
'no-func-assign': 2, |
||||
|
'no-implied-eval': 2, |
||||
|
'no-inner-declarations': [2, 'functions'], |
||||
|
'no-invalid-regexp': 2, |
||||
|
'no-irregular-whitespace': 2, |
||||
|
'no-iterator': 2, |
||||
|
'no-label-var': 2, |
||||
|
'no-labels': [2, { |
||||
|
'allowLoop': false, |
||||
|
'allowSwitch': false |
||||
|
}], |
||||
|
'no-lone-blocks': 2, |
||||
|
'no-mixed-spaces-and-tabs': 2, |
||||
|
'no-multi-spaces': 2, |
||||
|
'no-multi-str': 2, |
||||
|
'no-multiple-empty-lines': [2, { |
||||
|
'max': 1 |
||||
|
}], |
||||
|
'no-native-reassign': 2, |
||||
|
'no-negated-in-lhs': 2, |
||||
|
'no-new-object': 2, |
||||
|
'no-new-require': 2, |
||||
|
'no-new-symbol': 2, |
||||
|
'no-new-wrappers': 2, |
||||
|
'no-obj-calls': 2, |
||||
|
'no-octal': 2, |
||||
|
'no-octal-escape': 2, |
||||
|
'no-path-concat': 2, |
||||
|
'no-proto': 2, |
||||
|
'no-redeclare': 2, |
||||
|
'no-regex-spaces': 2, |
||||
|
'no-return-assign': [2, 'except-parens'], |
||||
|
'no-self-assign': 2, |
||||
|
'no-self-compare': 2, |
||||
|
'no-sequences': 2, |
||||
|
'no-shadow-restricted-names': 2, |
||||
|
'no-spaced-func': 2, |
||||
|
'no-sparse-arrays': 2, |
||||
|
'no-this-before-super': 2, |
||||
|
'no-throw-literal': 2, |
||||
|
'no-trailing-spaces': 2, |
||||
|
'no-undef': 2, |
||||
|
'no-undef-init': 2, |
||||
|
'no-unexpected-multiline': 2, |
||||
|
'no-unmodified-loop-condition': 2, |
||||
|
'no-unneeded-ternary': [2, { |
||||
|
'defaultAssignment': false |
||||
|
}], |
||||
|
'no-unreachable': 2, |
||||
|
'no-unsafe-finally': 2, |
||||
|
'no-unused-vars': [2, { |
||||
|
'vars': 'all', |
||||
|
'args': 'none' |
||||
|
}], |
||||
|
'no-useless-call': 2, |
||||
|
'no-useless-computed-key': 2, |
||||
|
'no-useless-constructor': 2, |
||||
|
'no-useless-escape': 0, |
||||
|
'no-whitespace-before-property': 2, |
||||
|
'no-with': 2, |
||||
|
'one-var': [2, { |
||||
|
'initialized': 'never' |
||||
|
}], |
||||
|
'operator-linebreak': [2, 'after', { |
||||
|
'overrides': { |
||||
|
'?': 'before', |
||||
|
':': 'before' |
||||
|
} |
||||
|
}], |
||||
|
'padded-blocks': [2, 'never'], |
||||
|
'quotes': [2, 'single', { |
||||
|
'avoidEscape': true, |
||||
|
'allowTemplateLiterals': true |
||||
|
}], |
||||
|
'semi': [2, 'never'], |
||||
|
'semi-spacing': [2, { |
||||
|
'before': false, |
||||
|
'after': true |
||||
|
}], |
||||
|
'space-before-blocks': [2, 'always'], |
||||
|
'space-before-function-paren': [2, 'never'], |
||||
|
'space-in-parens': [2, 'never'], |
||||
|
'space-infix-ops': 2, |
||||
|
'space-unary-ops': [2, { |
||||
|
'words': true, |
||||
|
'nonwords': false |
||||
|
}], |
||||
|
'spaced-comment': [2, 'always', { |
||||
|
'markers': ['global', 'globals', 'eslint', 'eslint-disable', '*package', '!', ','] |
||||
|
}], |
||||
|
'template-curly-spacing': [2, 'never'], |
||||
|
'use-isnan': 2, |
||||
|
'valid-typeof': 2, |
||||
|
'wrap-iife': [2, 'any'], |
||||
|
'yield-star-spacing': [2, 'both'], |
||||
|
'yoda': [2, 'never'], |
||||
|
'prefer-const': 2, |
||||
|
'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0, |
||||
|
'object-curly-spacing': [2, 'always', { |
||||
|
objectsInObjects: false |
||||
|
}], |
||||
|
'array-bracket-spacing': [2, 'never'] |
||||
|
} |
||||
|
} |
@ -0,0 +1,5 @@ |
|||||
|
language: node_js |
||||
|
node_js: 10 |
||||
|
script: npm run test |
||||
|
notifications: |
||||
|
email: false |
@ -0,0 +1,21 @@ |
|||||
|
MIT License |
||||
|
|
||||
|
Copyright (c) 2017-present PanJiaChen |
||||
|
|
||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy |
||||
|
of this software and associated documentation files (the "Software"), to deal |
||||
|
in the Software without restriction, including without limitation the rights |
||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
||||
|
copies of the Software, and to permit persons to whom the Software is |
||||
|
furnished to do so, subject to the following conditions: |
||||
|
|
||||
|
The above copyright notice and this permission notice shall be included in all |
||||
|
copies or substantial portions of the Software. |
||||
|
|
||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
||||
|
SOFTWARE. |
@ -0,0 +1,16 @@ |
|||||
|
module.exports = { |
||||
|
presets: [ |
||||
|
// https://github.com/vuejs/vue-cli/tree/master/packages/@vue/babel-preset-app
|
||||
|
// '@vue/cli-plugin-babel/preset',
|
||||
|
['@vue/app', { useBuiltIns: 'entry' }] |
||||
|
], |
||||
|
"ignore" : ["./src/api/hikvision/webVideoCtrl.js"], |
||||
|
'env': { |
||||
|
'development': { |
||||
|
// babel-plugin-dynamic-import-node plugin only does one thing by converting all import() to require().
|
||||
|
// This plugin can significantly increase the speed of hot updates, when you have a large number of pages.
|
||||
|
// https://panjiachen.github.io/vue-element-admin-site/guide/advanced/lazy-loading.html
|
||||
|
'plugins': ['dynamic-import-node'] |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,24 @@ |
|||||
|
module.exports = { |
||||
|
moduleFileExtensions: ['js', 'jsx', 'json', 'vue'], |
||||
|
transform: { |
||||
|
'^.+\\.vue$': 'vue-jest', |
||||
|
'.+\\.(css|styl|less|sass|scss|svg|png|jpg|ttf|woff|woff2)$': |
||||
|
'jest-transform-stub', |
||||
|
'^.+\\.jsx?$': 'babel-jest' |
||||
|
}, |
||||
|
moduleNameMapper: { |
||||
|
'^@/(.*)$': '<rootDir>/src/$1' |
||||
|
}, |
||||
|
snapshotSerializers: ['jest-serializer-vue'], |
||||
|
testMatch: [ |
||||
|
'**/tests/unit/**/*.spec.(js|jsx|ts|tsx)|**/__tests__/*.(js|jsx|ts|tsx)' |
||||
|
], |
||||
|
collectCoverageFrom: ['src/utils/**/*.{js,vue}', '!src/utils/auth.js', '!src/utils/request.js', 'src/components/**/*.{js,vue}'], |
||||
|
coverageDirectory: '<rootDir>/tests/unit/coverage', |
||||
|
// 'collectCoverage': true,
|
||||
|
'coverageReporters': [ |
||||
|
'lcov', |
||||
|
'text-summary' |
||||
|
], |
||||
|
testURL: 'http://localhost/' |
||||
|
} |
@ -0,0 +1,9 @@ |
|||||
|
{ |
||||
|
"compilerOptions": { |
||||
|
"baseUrl": "./", |
||||
|
"paths": { |
||||
|
"@/*": ["src/*"] |
||||
|
} |
||||
|
}, |
||||
|
"exclude": ["node_modules", "dist"] |
||||
|
} |
@ -0,0 +1,57 @@ |
|||||
|
const Mock = require('mockjs') |
||||
|
const { param2Obj } = require('./utils') |
||||
|
|
||||
|
const user = require('./user') |
||||
|
const table = require('./table') |
||||
|
|
||||
|
const mocks = [ |
||||
|
...user, |
||||
|
...table |
||||
|
] |
||||
|
|
||||
|
// for front mock
|
||||
|
// please use it cautiously, it will redefine XMLHttpRequest,
|
||||
|
// which will cause many of your third-party libraries to be invalidated(like progress event).
|
||||
|
function mockXHR() { |
||||
|
// mock patch
|
||||
|
// https://github.com/nuysoft/Mock/issues/300
|
||||
|
Mock.XHR.prototype.proxy_send = Mock.XHR.prototype.send |
||||
|
Mock.XHR.prototype.send = function() { |
||||
|
if (this.custom.xhr) { |
||||
|
this.custom.xhr.withCredentials = this.withCredentials || false |
||||
|
|
||||
|
if (this.responseType) { |
||||
|
this.custom.xhr.responseType = this.responseType |
||||
|
} |
||||
|
} |
||||
|
this.proxy_send(...arguments) |
||||
|
} |
||||
|
|
||||
|
function XHR2ExpressReqWrap(respond) { |
||||
|
return function(options) { |
||||
|
let result = null |
||||
|
if (respond instanceof Function) { |
||||
|
const { body, type, url } = options |
||||
|
// https://expressjs.com/en/4x/api.html#req
|
||||
|
result = respond({ |
||||
|
method: type, |
||||
|
body: JSON.parse(body), |
||||
|
query: param2Obj(url) |
||||
|
}) |
||||
|
} else { |
||||
|
result = respond |
||||
|
} |
||||
|
return Mock.mock(result) |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
for (const i of mocks) { |
||||
|
Mock.mock(new RegExp(i.url), i.type || 'get', XHR2ExpressReqWrap(i.response)) |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
module.exports = { |
||||
|
mocks, |
||||
|
mockXHR |
||||
|
} |
||||
|
|
@ -0,0 +1,81 @@ |
|||||
|
const chokidar = require('chokidar') |
||||
|
const bodyParser = require('body-parser') |
||||
|
const chalk = require('chalk') |
||||
|
const path = require('path') |
||||
|
const Mock = require('mockjs') |
||||
|
|
||||
|
const mockDir = path.join(process.cwd(), 'mock') |
||||
|
|
||||
|
function registerRoutes(app) { |
||||
|
let mockLastIndex |
||||
|
const { mocks } = require('./index.js') |
||||
|
const mocksForServer = mocks.map(route => { |
||||
|
return responseFake(route.url, route.type, route.response) |
||||
|
}) |
||||
|
for (const mock of mocksForServer) { |
||||
|
app[mock.type](mock.url, mock.response) |
||||
|
mockLastIndex = app._router.stack.length |
||||
|
} |
||||
|
const mockRoutesLength = Object.keys(mocksForServer).length |
||||
|
return { |
||||
|
mockRoutesLength: mockRoutesLength, |
||||
|
mockStartIndex: mockLastIndex - mockRoutesLength |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
function unregisterRoutes() { |
||||
|
Object.keys(require.cache).forEach(i => { |
||||
|
if (i.includes(mockDir)) { |
||||
|
delete require.cache[require.resolve(i)] |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// for mock server
|
||||
|
const responseFake = (url, type, respond) => { |
||||
|
return { |
||||
|
url: new RegExp(`${process.env.VUE_APP_BASE_API}${url}`), |
||||
|
type: type || 'get', |
||||
|
response(req, res) { |
||||
|
console.log('request invoke:' + req.path) |
||||
|
res.json(Mock.mock(respond instanceof Function ? respond(req, res) : respond)) |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
module.exports = app => { |
||||
|
// parse app.body
|
||||
|
// https://expressjs.com/en/4x/api.html#req.body
|
||||
|
app.use(bodyParser.json()) |
||||
|
app.use(bodyParser.urlencoded({ |
||||
|
extended: true |
||||
|
})) |
||||
|
|
||||
|
const mockRoutes = registerRoutes(app) |
||||
|
var mockRoutesLength = mockRoutes.mockRoutesLength |
||||
|
var mockStartIndex = mockRoutes.mockStartIndex |
||||
|
|
||||
|
// watch files, hot reload mock server
|
||||
|
chokidar.watch(mockDir, { |
||||
|
ignored: /mock-server/, |
||||
|
ignoreInitial: true |
||||
|
}).on('all', (event, path) => { |
||||
|
if (event === 'change' || event === 'add') { |
||||
|
try { |
||||
|
// remove mock routes stack
|
||||
|
app._router.stack.splice(mockStartIndex, mockRoutesLength) |
||||
|
|
||||
|
// clear routes cache
|
||||
|
unregisterRoutes() |
||||
|
|
||||
|
const mockRoutes = registerRoutes(app) |
||||
|
mockRoutesLength = mockRoutes.mockRoutesLength |
||||
|
mockStartIndex = mockRoutes.mockStartIndex |
||||
|
|
||||
|
console.log(chalk.magentaBright(`\n > Mock Server hot reload success! changed ${path}`)) |
||||
|
} catch (error) { |
||||
|
console.log(chalk.redBright(error)) |
||||
|
} |
||||
|
} |
||||
|
}) |
||||
|
} |
@ -0,0 +1,29 @@ |
|||||
|
const Mock = require('mockjs') |
||||
|
|
||||
|
const data = Mock.mock({ |
||||
|
'items|30': [{ |
||||
|
id: '@id', |
||||
|
title: '@sentence(10, 20)', |
||||
|
'status|1': ['published', 'draft', 'deleted'], |
||||
|
author: 'name', |
||||
|
display_time: '@datetime', |
||||
|
pageviews: '@integer(300, 5000)' |
||||
|
}] |
||||
|
}) |
||||
|
|
||||
|
module.exports = [ |
||||
|
{ |
||||
|
url: '/vue-admin-template/table/list', |
||||
|
type: 'get', |
||||
|
response: config => { |
||||
|
const items = data.items |
||||
|
return { |
||||
|
code: 20000, |
||||
|
data: { |
||||
|
total: items.length, |
||||
|
items: items |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
] |
@ -0,0 +1,84 @@ |
|||||
|
|
||||
|
const tokens = { |
||||
|
admin: { |
||||
|
token: 'admin-token' |
||||
|
}, |
||||
|
editor: { |
||||
|
token: 'editor-token' |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
const users = { |
||||
|
'admin-token': { |
||||
|
roles: ['admin'], |
||||
|
introduction: 'I am a super administrator', |
||||
|
avatar: 'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif', |
||||
|
name: 'Super Admin' |
||||
|
}, |
||||
|
'editor-token': { |
||||
|
roles: ['editor'], |
||||
|
introduction: 'I am an editor', |
||||
|
avatar: 'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif', |
||||
|
name: 'Normal Editor' |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
module.exports = [ |
||||
|
// user login
|
||||
|
{ |
||||
|
url: '/vue-admin-template/user/login', |
||||
|
type: 'post', |
||||
|
response: config => { |
||||
|
const { username } = config.body |
||||
|
const token = tokens[username] |
||||
|
|
||||
|
// mock error
|
||||
|
if (!token) { |
||||
|
return { |
||||
|
code: 60204, |
||||
|
message: 'Account and password are incorrect.' |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
return { |
||||
|
code: 20000, |
||||
|
data: token |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
// get user info
|
||||
|
{ |
||||
|
url: '/vue-admin-template/user/info\.*', |
||||
|
type: 'get', |
||||
|
response: config => { |
||||
|
const { token } = config.query |
||||
|
const info = users[token] |
||||
|
|
||||
|
// mock error
|
||||
|
if (!info) { |
||||
|
return { |
||||
|
code: 50008, |
||||
|
message: 'Login failed, unable to get user details.' |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
return { |
||||
|
code: 20000, |
||||
|
data: info |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
// user logout
|
||||
|
{ |
||||
|
url: '/vue-admin-template/user/logout', |
||||
|
type: 'post', |
||||
|
response: _ => { |
||||
|
return { |
||||
|
code: 20000, |
||||
|
data: 'success' |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
] |
@ -0,0 +1,25 @@ |
|||||
|
/** |
||||
|
* @param {string} url |
||||
|
* @returns {Object} |
||||
|
*/ |
||||
|
function param2Obj(url) { |
||||
|
const search = decodeURIComponent(url.split('?')[1]).replace(/\+/g, ' ') |
||||
|
if (!search) { |
||||
|
return {} |
||||
|
} |
||||
|
const obj = {} |
||||
|
const searchArr = search.split('&') |
||||
|
searchArr.forEach(v => { |
||||
|
const index = v.indexOf('=') |
||||
|
if (index !== -1) { |
||||
|
const name = v.substring(0, index) |
||||
|
const val = v.substring(index + 1, v.length) |
||||
|
obj[name] = val |
||||
|
} |
||||
|
}) |
||||
|
return obj |
||||
|
} |
||||
|
|
||||
|
module.exports = { |
||||
|
param2Obj |
||||
|
} |
@ -0,0 +1,74 @@ |
|||||
|
{ |
||||
|
"name": "admin-template", |
||||
|
"version": "4.4.0", |
||||
|
"description": "A vue admin template with Element UI & axios & iconfont & permission control & lint", |
||||
|
"author": "Pan <panfree23@gmail.com>", |
||||
|
"scripts": { |
||||
|
"dev": "vue-cli-service serve", |
||||
|
"build:prod": "vue-cli-service build", |
||||
|
"build:stage": "vue-cli-service build --mode staging", |
||||
|
"preview": "node build/index.js --preview", |
||||
|
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml", |
||||
|
"lint": "eslint --ext .js,.vue src", |
||||
|
"test:unit": "jest --clearCache && vue-cli-service test:unit", |
||||
|
"test:ci": "npm run lint && npm run test:unit" |
||||
|
}, |
||||
|
"dependencies": { |
||||
|
"axios": "^0.24.0", |
||||
|
"bpmn-js": "^9.2.2", |
||||
|
"core-js": "^2.6.12", |
||||
|
"ejs": "^2.7.4", |
||||
|
"element-ui": "2.15.13", |
||||
|
"js-cookie": "2.2.0", |
||||
|
"moment": "^2.29.1", |
||||
|
"normalize.css": "7.0.0", |
||||
|
"nprogress": "0.2.0", |
||||
|
"path-to-regexp": "2.4.0", |
||||
|
"portfinder": "^1.0.21", |
||||
|
"qs": "^6.9.4", |
||||
|
"sass-resources-loader": "^2.1.1", |
||||
|
"viewerjs": "^1.9.0", |
||||
|
"vue": "2.6.10", |
||||
|
"vue-amap": "^0.5.10", |
||||
|
"vue-router": "3.0.6", |
||||
|
"vuex": "3.1.0", |
||||
|
"vuex-persistedstate": "^4.0.0", |
||||
|
"xcrud": "^0.4.19", |
||||
|
"web-control": "^1.0.2" |
||||
|
}, |
||||
|
"devDependencies": { |
||||
|
"@vue/cli-plugin-babel": "4.4.4", |
||||
|
"@vue/cli-plugin-eslint": "4.4.4", |
||||
|
"@vue/cli-plugin-unit-jest": "4.4.4", |
||||
|
"@vue/cli-service": "4.4.4", |
||||
|
"@vue/test-utils": "1.0.0-beta.29", |
||||
|
"autoprefixer": "9.5.1", |
||||
|
"babel-eslint": "10.1.0", |
||||
|
"babel-jest": "23.6.0", |
||||
|
"babel-plugin-dynamic-import-node": "2.3.3", |
||||
|
"babel-polyfill": "^6.26.0", |
||||
|
"chalk": "2.4.2", |
||||
|
"connect": "3.6.6", |
||||
|
"eslint": "6.7.2", |
||||
|
"eslint-plugin-vue": "6.2.2", |
||||
|
"html-webpack-plugin": "3.2.0", |
||||
|
"mockjs": "1.0.1-beta3", |
||||
|
"runjs": "4.3.2", |
||||
|
"sass": "1.26.8", |
||||
|
"sass-loader": "8.0.2", |
||||
|
"script-ext-html-webpack-plugin": "2.1.3", |
||||
|
"serve-static": "1.13.2", |
||||
|
"svg-sprite-loader": "4.1.3", |
||||
|
"svgo": "1.2.2", |
||||
|
"vue-template-compiler": "2.6.10" |
||||
|
}, |
||||
|
"browserslist": [ |
||||
|
"> 1%", |
||||
|
"last 2 versions" |
||||
|
], |
||||
|
"engines": { |
||||
|
"node": ">=8.9", |
||||
|
"npm": ">= 3.0.0" |
||||
|
}, |
||||
|
"license": "MIT" |
||||
|
} |
@ -0,0 +1,8 @@ |
|||||
|
// https://github.com/michael-ciniawsky/postcss-load-config
|
||||
|
|
||||
|
module.exports = { |
||||
|
'plugins': { |
||||
|
// to edit target browsers: use "browserslist" field in package.json
|
||||
|
'autoprefixer': {} |
||||
|
} |
||||
|
} |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 30 KiB |
@ -0,0 +1,17 @@ |
|||||
|
<!DOCTYPE html> |
||||
|
<html> |
||||
|
<head> |
||||
|
<meta charset="utf-8"> |
||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> |
||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> |
||||
|
<link rel="icon" href="<%= BASE_URL %>favicon.ico"> |
||||
|
<title><%= webpackConfig.name %></title> |
||||
|
</head> |
||||
|
<body> |
||||
|
<noscript> |
||||
|
<strong>We're sorry but <%= webpackConfig.name %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong> |
||||
|
</noscript> |
||||
|
<div id="app"></div> |
||||
|
<!-- built files will be auto injected --> |
||||
|
</body> |
||||
|
</html> |
@ -0,0 +1,14 @@ |
|||||
|
<template> |
||||
|
<div id="app"> |
||||
|
<router-view /> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
export default { |
||||
|
name: 'App', |
||||
|
mounted() { |
||||
|
|
||||
|
}, |
||||
|
} |
||||
|
</script> |
@ -0,0 +1,13 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
// 上传图片
|
||||
|
export function imageUpload(data){ |
||||
|
return request({ |
||||
|
url: '/jlcyry/file/upload', |
||||
|
method: 'post', |
||||
|
data, |
||||
|
headers:{'Content-Type':'multipart/form-data'} |
||||
|
}) |
||||
|
} |
||||
|
export const uploadFile = '/api/base/v1/basemanufactorsubscription/pictureUpload' |
||||
|
|
||||
|
export const uploadimg_tuiku = '/api/base/v1/basemanufacturerretwareveh/pictureUpload' |
@ -0,0 +1,25 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
|
||||
|
//区域获取省
|
||||
|
export function getProvince(data) { |
||||
|
return request({ |
||||
|
url: '/system/region/getProvince', |
||||
|
method: 'get' |
||||
|
}) |
||||
|
} |
||||
|
//根据省sid获取该省的所有市
|
||||
|
export function getCity(data) { |
||||
|
return request({ |
||||
|
url: '/system/region/getCity', |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
//根据市sid获取该市的所有县区
|
||||
|
export function getCounty(data) { |
||||
|
return request({ |
||||
|
url: '/system/region/getCounty', |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
@ -0,0 +1,13 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
// 请求按钮权限
|
||||
|
export default { |
||||
|
|
||||
|
// 查询分页列表,输入当前路径和userSid,返回
|
||||
|
buttonPermission: function(params) { |
||||
|
return request({ |
||||
|
url: '/demopackage/v1/demo/buttonPermission', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
} |
||||
|
} |
@ -0,0 +1,35 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
|
||||
|
class User { |
||||
|
login(data) { // 登录
|
||||
|
return request({ |
||||
|
url: '/system/user/login', |
||||
|
method: 'post', |
||||
|
data |
||||
|
}) |
||||
|
} |
||||
|
logout(data) { // 退出
|
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/signOut', |
||||
|
method: 'post', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
updatePassword(data) { // 退出修改密码
|
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/updatePassword', |
||||
|
method: 'post', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
reGetPwd(data) { |
||||
|
return request({ |
||||
|
url: `/system/user/reGetPwd/${data.userName}/${data.userPhone}`, |
||||
|
method: 'post', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
export default new User() |
@ -0,0 +1,66 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
|
||||
|
export default { |
||||
|
// 流程审批(同意)
|
||||
|
agreeTask: function(params) { |
||||
|
return request({ |
||||
|
url: 'scm/v1/scmvehiclegression/complete', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 流程审批(驳回)
|
||||
|
rejectTask: function(params) { |
||||
|
return request({ |
||||
|
url: 'scm/v1/scmvehiclegression/reject', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 流程审批(终止)
|
||||
|
breakTask: function(params) { |
||||
|
return request({ |
||||
|
url: 'scm/v1/scmvehiclegression/breakProcess', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 流程审批(撤回)
|
||||
|
revokeTask: function(params) { |
||||
|
return request({ |
||||
|
url: 'scm/v1/scmvehiclegression/revokeProcess', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 审批流程(同意)获取下一环节
|
||||
|
getNextNodesForSubmit: function(data) { |
||||
|
return request({ |
||||
|
url: 'scm/v1/scmvehiclegression/getNextNodesForSubmit', |
||||
|
method: 'post', |
||||
|
data: data |
||||
|
}) |
||||
|
}, |
||||
|
// 审批流程(驳回、终止)获取下一环节
|
||||
|
getPreviousNodesForReject: function(data) { |
||||
|
return request({ |
||||
|
url: 'scm/v1/scmvehiclegression/getPreviousNodesForReject', |
||||
|
method: 'post', |
||||
|
data: data |
||||
|
}) |
||||
|
}, |
||||
|
// 读取xml文件
|
||||
|
readXml: function(deployId) { |
||||
|
return request({ |
||||
|
url: '/flowable/v1/flowable/task/readXml/' + deployId, |
||||
|
method: 'get' |
||||
|
}) |
||||
|
}, |
||||
|
// 读取image文件
|
||||
|
getFlowViewer: function(procInsId) { |
||||
|
return request({ |
||||
|
url: '/flowable/v1/flowable/task/flowViewer/' + procInsId, |
||||
|
method: 'get' |
||||
|
}) |
||||
|
} |
||||
|
} |
@ -0,0 +1,33 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
// 外采申请表
|
||||
|
export default { |
||||
|
getNextNodes: function(taskid) { |
||||
|
return request({ |
||||
|
url: '/base/baseoutsourcingapplication/getNextTasks/' + taskid, |
||||
|
method: 'post', |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
getNextNodesForSubmit: function(data) { |
||||
|
return request({ |
||||
|
url: '/base/baseoutsourcingapplication/getNextNodesForSubmit', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
getPreviousNodesForReject(formobj) { |
||||
|
return request({ |
||||
|
url: '/base/baseoutsourcingapplication/getPreviousNodesForReject', |
||||
|
method: 'post', |
||||
|
data: formobj, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
} |
@ -0,0 +1,80 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
|
||||
|
export default { |
||||
|
// 流程审批(同意)
|
||||
|
agreeTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseshuntinginvoicingapply/complete', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
agreeTaskCallInToCallOut: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseshuntinginvoicingapply/callInOrgToCallOutOrg', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
callOutSaleManageExa: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseshuntinginvoicingapply/callOutSaleManageExa', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 流程审批(驳回)
|
||||
|
rejectTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseshuntinginvoicingapply/reject', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 流程审批(终止)
|
||||
|
breakTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseshuntinginvoicingapply/breakProcess', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 流程审批(撤回)
|
||||
|
revokeTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseshuntinginvoicingapply/revokeProcess', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 审批流程(同意)获取下一环节
|
||||
|
getNextNodesForSubmit: function(data) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseshuntinginvoicingapply/getNextNodesForSubmit', |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
}, |
||||
|
// 审批流程(驳回、终止)获取上一环节
|
||||
|
getPreviousNodesForReject: function(data) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseshuntinginvoicingapply/getPreviousNodesForReject', |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
}, |
||||
|
// 读取xml文件
|
||||
|
readXml: function(deployId) { |
||||
|
return request({ |
||||
|
url: '/flowable/v1/flowable/task/readXml/' + deployId, |
||||
|
method: 'get' |
||||
|
}) |
||||
|
}, |
||||
|
// 读取image文件
|
||||
|
getFlowViewer: function(procInsId) { |
||||
|
return request({ |
||||
|
url: '/flowable/v1/flowable/task/flowViewer/' + procInsId, |
||||
|
method: 'get' |
||||
|
}) |
||||
|
} |
||||
|
} |
@ -0,0 +1,80 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
|
||||
|
export default { |
||||
|
// 流程审批(同意)
|
||||
|
agreeTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseaccadjapply/complete', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
agreeTaskCallInOrCallOut: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseaccadjapply/InitiatorToAnswer', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
agreeTaskOrgChange: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseaccadjapply/companyToFinancialCenter', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 流程审批(驳回)
|
||||
|
rejectTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseaccadjapply/reject', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 流程审批(终止)
|
||||
|
breakTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseaccadjapply/breakProcess', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 流程审批(撤回)
|
||||
|
revokeTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseaccadjapply/revokeProcess', |
||||
|
method: 'post', |
||||
|
data: params |
||||
|
}) |
||||
|
}, |
||||
|
// 审批流程(同意)获取下一环节
|
||||
|
getNextNodesForSubmit: function(data) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseaccadjapply/getNextNodesForSubmit', |
||||
|
method: 'post', |
||||
|
data: data |
||||
|
}) |
||||
|
}, |
||||
|
// 审批流程(驳回、终止)获取上一环节
|
||||
|
getPreviousNodesForReject: function(data) { |
||||
|
return request({ |
||||
|
url: '/base/v1/baseaccadjapply/getPreviousNodesForReject', |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
}, |
||||
|
// 读取xml文件
|
||||
|
readXml: function(deployId) { |
||||
|
return request({ |
||||
|
url: '/flowable/v1/flowable/task/readXml/' + deployId, |
||||
|
method: 'get' |
||||
|
}) |
||||
|
}, |
||||
|
// 读取image文件
|
||||
|
getFlowViewer: function(procInsId) { |
||||
|
return request({ |
||||
|
url: '/flowable/v1/flowable/task/flowViewer/' + procInsId, |
||||
|
method: 'get' |
||||
|
}) |
||||
|
} |
||||
|
} |
@ -0,0 +1,50 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
|
||||
|
// 代办任务同意办理
|
||||
|
export function businessAgree(params) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/flow/complete', |
||||
|
method: 'post', |
||||
|
data: params, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 代办任务驳回任务
|
||||
|
export function rejectTask(params) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/flow/reject/' + params.businessSid, |
||||
|
method: 'post', |
||||
|
data: params, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 代办任务终止任务
|
||||
|
export function breakTask(params) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/flow/breakProcess/' + params.businessSid, |
||||
|
method: 'post', |
||||
|
data: params, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 代办任务撤回任务
|
||||
|
export function revokeTask(params) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/flow/revokeProcess/' + params.userSid + '/' + params.businessSid, |
||||
|
method: 'post', |
||||
|
data: params, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
@ -0,0 +1,70 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
|
||||
|
|
||||
|
///scm/v1/scmvehiclereturn/listPage'
|
||||
|
export default { |
||||
|
getPreviousNodesForReject: function(formobj) { |
||||
|
return request({ |
||||
|
url: '/scm/v1/scmvehiclereturn/getPreviousNodesForReject', |
||||
|
method: 'post', |
||||
|
data: formobj, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
getNextNodesForSubmit: function(data) { |
||||
|
return request({ |
||||
|
url: '/scm/v1/scmvehiclereturn/getNextNodesForSubmit', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 同意任务
|
||||
|
agreeTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/scm/v1/scmvehiclereturn/complete', |
||||
|
method: 'post', |
||||
|
data: params, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 驳回任务
|
||||
|
rejectTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/scm/v1/scmvehiclereturn/reject', |
||||
|
method: 'post', |
||||
|
data: params, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 终止任务
|
||||
|
breakTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/scm/v1/scmvehiclereturn/breakProcess', |
||||
|
method: 'post', |
||||
|
data: params, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 撤回任务
|
||||
|
revokeTask: function(params) { |
||||
|
return request({ |
||||
|
url: '/scm/v1/scmvehiclereturn/revokeProcess', |
||||
|
method: 'post', |
||||
|
data: params, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
} |
@ -0,0 +1,430 @@ |
|||||
|
import { Message } from "element-ui"; |
||||
|
|
||||
|
var webVideoCtrl = window.WebVideoCtrl; |
||||
|
var $ = window.$; |
||||
|
/** |
||||
|
* 初始化 |
||||
|
* @param {number} iWndowType 分屏类型:1 - 1*1,2 - 2*2,3 - 3*3,4 - 4*4,默认值1,单画面 |
||||
|
* @param {number} width 插件的宽度(单位为”px”, 100%表示撑满插件容器) |
||||
|
* @param {number} height 插件的高度(单位为”px”, 100%表示撑满插件容器) |
||||
|
* @returns null |
||||
|
*/ |
||||
|
let init = (iWndowType, width, height) => { |
||||
|
// 检查浏览器是否支持无插件
|
||||
|
if (!webVideoCtrl.I_SupportNoPlugin()) { |
||||
|
Message.warning( |
||||
|
"当前浏览器不支持无插件预览监控视频,已自动切换成插件模式,如果还未安装插件请安装" |
||||
|
); |
||||
|
// 检查插件是否已经安装
|
||||
|
const isInstall = webVideoCtrl.I_CheckPluginInstall(); |
||||
|
if (isInstall == -1) { |
||||
|
Message.warning( |
||||
|
"您还未安装过插件,请先下载WebComponentsKit.exe双击安装!" |
||||
|
); |
||||
|
return; |
||||
|
} |
||||
|
} |
||||
|
// 初始化插件
|
||||
|
webVideoCtrl.I_InitPlugin(width, height, { |
||||
|
szColorProperty: |
||||
|
"plugin-background:ffffff; sub-background:00000; sub-border:D0DAE4; sub-border-select:409EFF", // 表示插件的背景颜色,插件子窗口的背景颜色,窗口边框的颜色,窗口边框选中后的颜色
|
||||
|
iWndowType, |
||||
|
bNoPlugin: true, // 支持无插件
|
||||
|
cbSelWnd: (xmlDoc) => { |
||||
|
let iWndIndex = parseInt($(xmlDoc)?.find("SelectWnd").eq(0).text(), 10); |
||||
|
console.log("当前选择的窗口编号:" + iWndIndex); |
||||
|
}, |
||||
|
cbDoubleClickWnd: (iWndIndex, bFullScreen) => { |
||||
|
let szInfo = "当前放大的窗口编号:" + iWndIndex; |
||||
|
if (!bFullScreen) { |
||||
|
szInfo = "当前还原的窗口编号:" + iWndIndex; |
||||
|
} |
||||
|
console.log(szInfo); |
||||
|
}, // 无插件模式不起效
|
||||
|
cbInitPluginComplete: () => { |
||||
|
// 嵌入播放插件
|
||||
|
webVideoCtrl.I_InsertOBJECTPlugin("divPlugin"); |
||||
|
console.log("初始化成功--------"); |
||||
|
resize(); |
||||
|
// 检查插件是否最新
|
||||
|
if (webVideoCtrl.I_CheckPluginVersion() == -1) { |
||||
|
Message.warning("检测到新的插件版本,双击WebComponentsKit.exe升级!"); |
||||
|
return; |
||||
|
} |
||||
|
// login(
|
||||
|
// global.hk_ip, // 设备的 IP 地址或者普通域名
|
||||
|
// global.hk_prototocol,// http 协议,1 表示 http 协议 2 表示 https 协议
|
||||
|
// global.hk_port,//登录设备的 http/https 端口号,根据 iPrototocol 选择传入不同的端口
|
||||
|
// global.hk_username,//登录用户名称
|
||||
|
// global.hk_password//用户密码
|
||||
|
// );
|
||||
|
|
||||
|
login( |
||||
|
"192.168.3.175", // 设备的 IP 地址或者普通域名
|
||||
|
"1",// http 协议,1 表示 http 协议 2 表示 https 协议
|
||||
|
"80",//登录设备的 http/https 端口号,根据 iPrototocol 选择传入不同的端口
|
||||
|
"admin",//登录用户名称
|
||||
|
"Yxt123456"//用户密码
|
||||
|
); |
||||
|
}, // 插件初始化完成回调,必须要定义
|
||||
|
}); |
||||
|
}; |
||||
|
|
||||
|
let destroy = () => {}; |
||||
|
|
||||
|
/** |
||||
|
* 调整大小 |
||||
|
*/ |
||||
|
let resize = () => { |
||||
|
webVideoCtrl.I_Resize($("#divPlugin").width(), $("#divPlugin").height()); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 登录 |
||||
|
* @param {string} ip 设备的 IP 地址或者普通域名 |
||||
|
* @param {number} prototocol http 协议,1 表示 http 协议 2 表示 https 协议 |
||||
|
* @param {number} port 登录设备的 http/https 端口号,根据 iPrototocol 选择传入不同的端口 |
||||
|
* @param {string} userName 登录用户名称 |
||||
|
* @param {string} password 用户密码 |
||||
|
*/ |
||||
|
let login = (ip, prototocol, port, userName, password) => { |
||||
|
webVideoCtrl.I_Login(ip, prototocol, port, userName, password, { |
||||
|
async: true, // http 交互方式,true 表示异步,false 表示同步
|
||||
|
cgi: 1, // CGI 协议选择,1 表示 ISAPI,2 表示 PSIA,如果不传这个参数,会自动选择一种设备支持的协议.
|
||||
|
// 登录成功回调
|
||||
|
success: (xmlDoc) => { |
||||
|
console.log("login success-----------", xmlDoc); |
||||
|
// getAnalogChannelInfo(`${ip}_${port}`, {
|
||||
|
// async: true,
|
||||
|
// success: (analogChannelInfo) => {
|
||||
|
// let analogCameras = analysisAnalogChannelInfo(analogChannelInfo);
|
||||
|
// console.log(
|
||||
|
// "获取模拟通道----------",
|
||||
|
// analogChannelInfo,
|
||||
|
// analogCameras
|
||||
|
// );
|
||||
|
// },
|
||||
|
// error: (statusA, xmlDocA) => {
|
||||
|
// console.log("获取模拟通道 error-----------", statusA, xmlDocA);
|
||||
|
// },
|
||||
|
// });
|
||||
|
getDigitalChannelInfo(`${ip}_${port}`, { |
||||
|
async: true, |
||||
|
success: (digitalChannelInfo) => { |
||||
|
let digitalCameras = analysisDigitalChannelInfo(digitalChannelInfo); |
||||
|
console.log( |
||||
|
"获取数字通道----------", |
||||
|
digitalChannelInfo, |
||||
|
digitalCameras |
||||
|
); |
||||
|
}, |
||||
|
error: (statusD, xmlDocD) => { |
||||
|
console.log("获取数字通道 error-----------", statusD, xmlDocD); |
||||
|
}, |
||||
|
}); |
||||
|
// getZeroChannelInfo(`${ip}_${port}`, {
|
||||
|
// async: true,
|
||||
|
// success: (zeroChannelInfo) => {
|
||||
|
// let zeroCameras = analysisZeroChannelInfo(zeroChannelInfo);
|
||||
|
// console.log("获取零通道----------", zeroChannelInfo, zeroCameras);
|
||||
|
// },
|
||||
|
// error: (statusZ, xmlDocZ) => {
|
||||
|
// console.log("获取零通道 error-----------", statusZ, xmlDocZ);
|
||||
|
// },
|
||||
|
// });
|
||||
|
}, |
||||
|
// 失败函数回调
|
||||
|
error: () => { |
||||
|
console.log("login error-----------"); |
||||
|
}, |
||||
|
}); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 登出 |
||||
|
* @param {string} deviceIdentify 设备标识(IP_Port) |
||||
|
* @returns 成功返回 0,失败返回-1 |
||||
|
*/ |
||||
|
let logout = (deviceIdentify) => { |
||||
|
return webVideoCtrl.I_Logout(deviceIdentify); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 获取设备基本信息 |
||||
|
* @param {string} deviceIdentify 设备标识(IP_Port) |
||||
|
* @param {*} options 可选参数对象: |
||||
|
* * async http 交互方式,true 表示异步,false 表示同步; |
||||
|
* * success 成功回调函数,有一个参数,表示返回的 XML 内容。; |
||||
|
* * error 失败回调函数,有两个参数,第一个是 http 状态码,第二个是设备返回的 XML(可能为空) |
||||
|
*/ |
||||
|
let getDeviceInfo = (deviceIdentify, options) => { |
||||
|
webVideoCtrl.I_GetDeviceInfo(deviceIdentify, options); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 获取模拟通道 |
||||
|
* @param {string} deviceIdentify 设备标识(IP_Port) |
||||
|
* @param {*} options 可选参数对象: |
||||
|
* * async http 交互方式,true 表示异步,false 表示同步; |
||||
|
* * success 成功回调函数,有一个参数,表示返回的 XML 内容。; |
||||
|
* * error 失败回调函数,有两个参数,第一个是 http 状态码,第二个是设备返回的 XML(可能为空) |
||||
|
*/ |
||||
|
let getAnalogChannelInfo = (deviceIdentify, options) => { |
||||
|
webVideoCtrl.I_GetAnalogChannelInfo(deviceIdentify, options); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 解析模拟通道XML内容 |
||||
|
* @param {XMLDocument} xmlDoc XML内容 |
||||
|
* @returns cameraList: 监控列表 |
||||
|
*/ |
||||
|
let analysisAnalogChannelInfo = (xmlDoc) => { |
||||
|
let cameraList = []; |
||||
|
let channels = $(xmlDoc)?.find("VideoInputChannel"); |
||||
|
$.each(channels, (i, channel) => { |
||||
|
let id = $(channel).find("id").eq(0).text(); |
||||
|
let name = $(channel).find("name").eq(0).text(); |
||||
|
if (name == "") { |
||||
|
name = "Camera " + (i < 9 ? "0" + (i + 1) : i + 1); |
||||
|
} |
||||
|
cameraList.push({ |
||||
|
id, |
||||
|
name, |
||||
|
}); |
||||
|
}); |
||||
|
return cameraList; |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 获取数字通道 |
||||
|
* @param {string} deviceIdentify 设备标识(IP_Port) |
||||
|
* @param {*} options 可选参数对象: |
||||
|
* * async http 交互方式,true 表示异步,false 表示同步; |
||||
|
* * success 成功回调函数,有一个参数,表示返回的 XML 内容。; |
||||
|
* * error 失败回调函数,有两个参数,第一个是 http 状态码,第二个是设备返回的 XML(可能为空) |
||||
|
*/ |
||||
|
let getDigitalChannelInfo = (deviceIdentify, options) => { |
||||
|
webVideoCtrl.I_GetDigitalChannelInfo(deviceIdentify, options); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 解析数字通道XML内容 |
||||
|
* @param {XMLDocument} xmlDoc XML内容 |
||||
|
* @param {boolean} filterOnline 是否过滤禁用的数字通道 |
||||
|
* @returns cameraList: 监控列表 |
||||
|
*/ |
||||
|
let analysisDigitalChannelInfo = (xmlDoc, filterOnline) => { |
||||
|
let cameraList = []; |
||||
|
let channels = $(xmlDoc)?.find("InputProxyChannelStatus"); |
||||
|
|
||||
|
$.each(channels, (i, channel) => { |
||||
|
let id = $(channel).find("id").eq(0).text(); |
||||
|
let name = $(channel).find("name").eq(0).text(); |
||||
|
let online = $(channel).find("online").eq(0).text(); |
||||
|
if (filterOnline && online == "false") { |
||||
|
// 过滤禁用的数字通道
|
||||
|
return true; |
||||
|
} |
||||
|
if (name == "") { |
||||
|
name = "IPCamera " + (i < 9 ? "0" + (i + 1) : i + 1); |
||||
|
} |
||||
|
cameraList.push({ |
||||
|
id, |
||||
|
name, |
||||
|
online, |
||||
|
}); |
||||
|
}); |
||||
|
return cameraList; |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 获取零通道 |
||||
|
* @param {string} deviceIdentify 设备标识(IP_Port) |
||||
|
* @param {*} options 可选参数对象: |
||||
|
* * async http 交互方式,true 表示异步,false 表示同步; |
||||
|
* * success 成功回调函数,有一个参数,表示返回的 XML 内容。; |
||||
|
* * error 失败回调函数,有两个参数,第一个是 http 状态码,第二个是设备返回的 XML(可能为空) |
||||
|
*/ |
||||
|
let getZeroChannelInfo = (deviceIdentify, options) => { |
||||
|
webVideoCtrl.I_GetZeroChannelInfo(deviceIdentify, options); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 解析零通道XML内容 |
||||
|
* @param {XMLDocument} xmlDoc XML内容 |
||||
|
* @param {boolean} filterEnabled 是否过滤禁用的零通道 |
||||
|
* @returns cameraList: 监控列表 |
||||
|
*/ |
||||
|
let analysisZeroChannelInfo = (xmlDoc, filterEnabled) => { |
||||
|
let cameraList = []; |
||||
|
let channels = $(xmlDoc)?.find("ZeroVideoChannel"); |
||||
|
|
||||
|
$.each(channels, (i, channel) => { |
||||
|
let id = $(channel).find("id").eq(0).text(); |
||||
|
let name = $(channel).find("name").eq(0).text(); |
||||
|
if (name == "") { |
||||
|
name = "Zero Channel " + (i < 9 ? "0" + (i + 1) : i + 1); |
||||
|
} |
||||
|
let enabled = $(channel).find("enabled").eq(0).text(); |
||||
|
if (filterEnabled && enabled == "false") { |
||||
|
// 过滤禁用的零通道
|
||||
|
return true; |
||||
|
} |
||||
|
cameraList.push({ |
||||
|
id, |
||||
|
name, |
||||
|
enabled, |
||||
|
}); |
||||
|
}); |
||||
|
return cameraList; |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 录像搜索 |
||||
|
* @param {string} deviceIdentify 设备标识(IP_Port) |
||||
|
* @param {string} channelId 通道 ID |
||||
|
* @param {string} startTime 开始时间:如:2013-12-23 00:00:00 |
||||
|
* @param {string} endTime 结束时间:如:2013-12-23 23:59:59 |
||||
|
* @param {*} options 可选参数对象: |
||||
|
* * async http 交互方式,true 表示异步,false 表示同步 |
||||
|
* * iSearchPos 搜索录像的位置(默认为 0),0 表示返回结果的第 0-40 条,40 表示 40-80 条,依次类推 |
||||
|
* * success 成功回调函数,有一个参数,表示返回的 XML 内容。 |
||||
|
* * error 失败回调函数,有两个参数,第一个是 http 状态码,第二个是设备返回的 XML(可能为空) |
||||
|
* * iStreamType 码流类型 1-主码流,2-子码流,默认主码流 |
||||
|
*/ |
||||
|
let recordSearch = (deviceIdentify, channelId, startTime, endTime, options) => { |
||||
|
webVideoCtrl.I_RecordSearch( |
||||
|
deviceIdentify, |
||||
|
channelId, |
||||
|
startTime, |
||||
|
endTime, |
||||
|
options |
||||
|
); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 开始预览 |
||||
|
* @param {string} deviceIdentify 设备标识(IP_Port) |
||||
|
* @param {*} options 可选参数对象: |
||||
|
* * iWndIndex 播放窗口,如果不传,则默认使用当前选择窗口播放(默认选中窗口 0) |
||||
|
* * iStreamType 码流类型 1-主码流,2-子码流,默认使用主码流预览 |
||||
|
* * iChannelID 播放通道号,默认通道 1 |
||||
|
* * bZeroChannel 是否播放零通道,默认为 false |
||||
|
* * iPort RTSP 端口号,可以选择传入,如果不传,开发包会自动判断设备的 RTSP 端口 |
||||
|
* * success 成功回调函数 |
||||
|
* * error 失败回调函数 |
||||
|
*/ |
||||
|
let startRealPlay = (deviceIdentify, options) => { |
||||
|
webVideoCtrl.I_StartRealPlay(deviceIdentify, options); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 开始回放 |
||||
|
* @param {string} deviceIdentify 设备标识(IP_Port) |
||||
|
* @param {*} options 可选参数对象: |
||||
|
* * iWndIndex 播放窗口,如果不传,则默认使用当前选择窗口播放(默认选中窗口 0) |
||||
|
* * iStreamType 码流类型 1-主码流,2-子码流,默认使用主码流预览 |
||||
|
* * szStartTime 开始时间,默认为当天 00:00:00,格式如:2013-12-23 00:00:00 |
||||
|
* * szEndTime 结束时间,默认为当天 23:59:59,格式如:2013-12-23 23:59:59 |
||||
|
* * iChannelID 播放通道号,默认通道 1 |
||||
|
* * iPort RTSP 端口号,可以选择传入,如果不传,开发包会自动判断设备的 RTSP 端口 |
||||
|
* * oTransCodeParam 转码回放参数对象,传入此参数,将按照此对象中的编码参数进行转码回放(转码回放需要设备支持,如果不支持,则不要传入这个参数)。 |
||||
|
* * iStreamType 码流类型 1-主码流,2-子码流,默认主码流 |
||||
|
* * success 成功回调函数 |
||||
|
* * error 失败回调函数 |
||||
|
*/ |
||||
|
let startPlayBack = (deviceIdentify, options) => { |
||||
|
webVideoCtrl.I_StartPlayback(deviceIdentify, options); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 停止播放 |
||||
|
* @param {*} options 可选参数对象: |
||||
|
* * iWndIndex 播放窗口号,可不传,表示操作当前选中窗口 |
||||
|
* * success 成功回调函数 |
||||
|
* * error 失败回调函数 |
||||
|
*/ |
||||
|
let stopPlay = (options) => { |
||||
|
webVideoCtrl.I_Stop(options); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 暂停 |
||||
|
* @param {*} options 可选参数对象: |
||||
|
* * iWndIndex 播放窗口号,可不传,表示操作当前选中窗口 |
||||
|
* * success 成功回调函数 |
||||
|
* * error 失败回调函数 |
||||
|
*/ |
||||
|
let pause = (options) => { |
||||
|
webVideoCtrl.I_Pause(options); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 打开声音 |
||||
|
* @param {number} iWndIndex 播放窗口号,可不传,表示操作当前选中窗口 |
||||
|
* @returns 成功返回 0,失败返回-1 |
||||
|
*/ |
||||
|
let openSound = (iWndIndex) => { |
||||
|
return webVideoCtrl.I_OpenSound(iWndIndex); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 关闭声音 |
||||
|
* @param {number} iWndIndex 播放窗口号,可不传,表示操作当前选中窗口 |
||||
|
* @returns 成功返回 0,失败返回-1 |
||||
|
*/ |
||||
|
let closeSound = (iWndIndex) => { |
||||
|
return webVideoCtrl.I_CloseSound(iWndIndex); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 设置音量 |
||||
|
* @param {number} iVolume 音量大小 |
||||
|
* @param {number} iWndIndex 播放窗口号,可不传,表示操作当前选中窗口 |
||||
|
* @returns 成功返回 0,失败返回-1 |
||||
|
*/ |
||||
|
let setVolume = (iVolume, iWndIndex) => { |
||||
|
return webVideoCtrl.I_SetVolume(iVolume, iWndIndex); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 修改画面分割类型 |
||||
|
* @param {number} iWndType 画面分割类型:1- 1*1,2- 2*2,3- 3*3,4- 4*4,5- 5*5,6- 6*6,7- 7*7,8- 8*8 |
||||
|
* @returns 成功返回 0,失败返回-1 |
||||
|
*/ |
||||
|
let changeWndNum = (iWndType) => { |
||||
|
return webVideoCtrl.I_ChangeWndNum(iWndType); |
||||
|
}; |
||||
|
|
||||
|
/** |
||||
|
* 全屏播放 |
||||
|
* @param {boolean} full 是否全屏:true-全屏 false-退出全屏 |
||||
|
*/ |
||||
|
let fullScreen = (full) => { |
||||
|
webVideoCtrl.I_FullScreen(full); |
||||
|
}; |
||||
|
|
||||
|
export default { |
||||
|
init, |
||||
|
destroy, |
||||
|
resize, |
||||
|
login, |
||||
|
logout, |
||||
|
getDeviceInfo, |
||||
|
getAnalogChannelInfo, |
||||
|
analysisAnalogChannelInfo, |
||||
|
getDigitalChannelInfo, |
||||
|
analysisDigitalChannelInfo, |
||||
|
getZeroChannelInfo, |
||||
|
analysisZeroChannelInfo, |
||||
|
recordSearch, |
||||
|
startRealPlay, |
||||
|
startPlayBack, |
||||
|
stopPlay, |
||||
|
pause, |
||||
|
openSound, |
||||
|
closeSound, |
||||
|
setVolume, |
||||
|
changeWndNum, |
||||
|
fullScreen, |
||||
|
}; |
@ -0,0 +1,47 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
const tokens = window.sessionStorage.getItem('token') |
||||
|
//
|
||||
|
export function rolemenus(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/rolemenus/' + data.roleSid, |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 获取左侧菜单
|
||||
|
export function getrolemenus(data) { |
||||
|
return request({ |
||||
|
baseURL: '/api', |
||||
|
url: '/portal/v1/sysmenu/sourcemenutree', |
||||
|
method: 'POST', |
||||
|
async: false, |
||||
|
// data: {userSid: data.userSid, sourceSid: '000011'},
|
||||
|
data: data, |
||||
|
headers: { 'Content-Type': 'application/json', |
||||
|
'token': tokens } |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 获取角色的主页菜单
|
||||
|
export function sourcesofrole(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/rolemenus/sourcesofrole', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: { 'Content-Type': 'application/json' } |
||||
|
}) |
||||
|
} |
||||
|
// 根据token值获取登录后的用户信息
|
||||
|
export function loginDetails(data) { |
||||
|
return request({ |
||||
|
baseURL: '/api', |
||||
|
url: '/portal/v1/sysuser/loginDetails', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: { |
||||
|
'Content-Type': 'application/json' |
||||
|
} |
||||
|
}) |
||||
|
} |
@ -0,0 +1,69 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
|
||||
|
// 获取角色 不分页列表
|
||||
|
export function roleList(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/roles/list/', |
||||
|
method: 'post', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
//获取角色 分页列表
|
||||
|
export function rolePageList(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/roles/pagelist', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//保存 角色信息
|
||||
|
export function saveRoleInfo(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/roles', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//根据sid 获取单个角色 信息
|
||||
|
export function getRoleInfo(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/roles/' + data.sid, |
||||
|
method: 'GET', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//根据sid 修改单个角色 信息
|
||||
|
export function putRoleInfo(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/roles/' + data.sid, |
||||
|
method: 'PUT', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//根据sid 删除单个角色 信息
|
||||
|
export function delRole(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/roles/' + data.sid, |
||||
|
method: 'DELETE', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//根据sid 设置单个角色 的状态
|
||||
|
export function setRoleEnable(data) { |
||||
|
return request({ |
||||
|
url: `/system/v1/roles/setIsEnable/${data.sid}/${data.isEnable}`, |
||||
|
method: 'POST', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
@ -0,0 +1,138 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
// 用户列表
|
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
export function userList(data){ |
||||
|
return request({ |
||||
|
url: '/base/v1/basefinbank/listPage', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 根据sid查询一条信息
|
||||
|
export function userSingle(data){ |
||||
|
return request({ |
||||
|
url: '/base/v1/basefinbank/fetchSid/' +data.sid, |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 新增
|
||||
|
export function userAdd(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/save', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 更新
|
||||
|
export function userUpdata(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/update/' +data.sid, |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 删除
|
||||
|
export function delUser(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/delBySid/' +data.sid, |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 初始化密码
|
||||
|
export function initPwd(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/initPwd/' +data.sid, |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 单条用户的角色列表
|
||||
|
export function setRole(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysrole/listAllByUserSid/' +data.sid, |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 角色列表
|
||||
|
export function saveOrgRole(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuserrole/update', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 查询角色列表
|
||||
|
export function roleList(data){ |
||||
|
return request({ |
||||
|
url: '/base/v1/basefinpolicy/listAll', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 查询部门列表
|
||||
|
export function orgList(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysorganization/list', |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 查询岗位列表
|
||||
|
export function postList(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/syspost/fetchByOrgSid/'+data.sid, |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 获取验证码
|
||||
|
export function getCode(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/sendMessageCode/'+data.phone, |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
@ -0,0 +1,32 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
//获取单位级别
|
||||
|
export function getDwJb(data) { |
||||
|
return request({ |
||||
|
url: '/system/dictCommon/getDwJb', |
||||
|
method: 'GET', |
||||
|
}) |
||||
|
} |
||||
|
// 获取机构单位类别
|
||||
|
export function getDwType(data) { |
||||
|
return request({ |
||||
|
url: '/system/dictCommon/getDwType', |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
//获取机构人员类别
|
||||
|
export function getRylb(data) { |
||||
|
return request({ |
||||
|
url: '/system/dictCommon/getRylb', |
||||
|
method: 'get' |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 根据Type值获取数据对象
|
||||
|
export function getDicts(typeCode) { |
||||
|
return request({ |
||||
|
url: '/system/dictCommon/dicts/'+typeCode, |
||||
|
method: 'get' |
||||
|
}) |
||||
|
} |
@ -0,0 +1,120 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs'; |
||||
|
|
||||
|
//let tokens = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI2IiwiaXNzIjoiV0JLIiwiZXhwIjoxNjMwMDI3MDA3fQ.9bEgBzFW2g1CUT7s5VXxhNCa10cyU_WTCFeqpQje0iY'
|
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
//获取菜单 分页列表
|
||||
|
export function pageList(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysorganization/listPage', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 查询左侧部门列表
|
||||
|
export function orgList(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysorganization/list', |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 编辑部门信息
|
||||
|
export function postOrgtree(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysorganization/update/' +data.sid, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 获取 机构分页列表
|
||||
|
export function putOrgtree(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysorganization/update/' +data.sid, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens} |
||||
|
}) |
||||
|
} |
||||
|
// 新增部门信息
|
||||
|
export function addOrgTree(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysorganization/save', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 树 节点名称 删除
|
||||
|
export function delOrgtree(data) { |
||||
|
return request({ |
||||
|
url: `/portal/v1/sysorganization/delBySid/`+data.sid, |
||||
|
method: 'get', |
||||
|
data: qs.stringify(data), |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
// 获取 机构树形
|
||||
|
export function getOrgTree(data) { |
||||
|
return request({ |
||||
|
url: `/system/v1/departments/departmentTreeList/`+ data.organizationSid, |
||||
|
method: 'GET', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
//// 添加 机构树形节点
|
||||
|
//export function addOrgTree(data) {
|
||||
|
//return request({
|
||||
|
// url: `/system/v1/departments`,
|
||||
|
// method: 'post',
|
||||
|
// data: data,
|
||||
|
// headers: {'Content-Type': 'application/json'}
|
||||
|
//})
|
||||
|
//}
|
||||
|
|
||||
|
// 获取 机构分页列表
|
||||
|
export function getPagelist(data) { |
||||
|
return request({ |
||||
|
url: `/system/v1/departments/pagelist`, |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
// 查看二维码
|
||||
|
export function getQrCode(data) { |
||||
|
return request({ |
||||
|
url: `/system/v1/departments/getQrCode/`+data.sid, |
||||
|
method: 'POST', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
@ -0,0 +1,52 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
|
||||
|
//获取字典子集 分页列表
|
||||
|
export function dictCommonList(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/dictcommons/pageList', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//保存 字典子级
|
||||
|
export function savedictCommon(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/dictcommons/save', |
||||
|
method: 'POST', |
||||
|
data: qs.stringify(data), |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//根据sid 获取单个菜单 信息
|
||||
|
export function getRoleInfo(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/menus/' + data.sid, |
||||
|
method: 'GET', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//根据sid 修改 数据字典
|
||||
|
export function putdictCommon(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/dictcommons/update/' + data.sid, |
||||
|
method: 'POST', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//根据sid 删除菜单 信息
|
||||
|
export function deldictCommon(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/dictcommons/delete/' + data.sid, |
||||
|
method: 'DELETE', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
@ -0,0 +1,72 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
//let tokens = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI2IiwiaXNzIjoiV0JLIiwiZXhwIjoxNjMwMDI3MDA3fQ.9bEgBzFW2g1CUT7s5VXxhNCa10cyU_WTCFeqpQje0iY'
|
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
|
||||
|
//获取菜单 分页列表
|
||||
|
export function pageList(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/dicttypes/pageList', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
//根据sid 修改
|
||||
|
export function putDictType(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/dicttypes/update/' + data.sid, |
||||
|
method: 'POST', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
////获取菜单 分页列表
|
||||
|
//export function dictTypeList(data) {
|
||||
|
//return request({
|
||||
|
// url: '/system/dicttype/pageList',
|
||||
|
// method: 'post',
|
||||
|
// data: data,
|
||||
|
// headers: {'Content-Type': 'application/json'}
|
||||
|
//})
|
||||
|
//}
|
||||
|
|
||||
|
//保存 角色信息
|
||||
|
export function saveDictType(data) { |
||||
|
return request({ |
||||
|
url: '/system/dicttype/save', |
||||
|
method: 'POST', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//根据sid 获取单个菜单 信息
|
||||
|
export function getRoleInfo(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/menus/' + data.sid, |
||||
|
method: 'GET', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
//根据sid 删除菜单 信息
|
||||
|
export function delDictType(data) { |
||||
|
return request({ |
||||
|
url: '/system/dicttype/delete/' + data.sid, |
||||
|
method: 'DELETE', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
@ -0,0 +1,84 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
//let tokens = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI2IiwiaXNzIjoiV0JLIiwiZXhwIjoxNjMwMDI3MDA3fQ.9bEgBzFW2g1CUT7s5VXxhNCa10cyU_WTCFeqpQje0iY'
|
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
//获取菜单 分页列表
|
||||
|
export function pageList(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysfunction/listAllVoForSource', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//新增
|
||||
|
export function savePost(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysfunction/save', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//模块名称
|
||||
|
export function sourceList(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/syssource/listAll', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 删除
|
||||
|
export function delOrgroles(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysfunction/delBySids/'+ data.sid, |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 修改
|
||||
|
export function getSingleData(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysfunction/fetchBySid/'+data.id, |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
export function putOrgroles(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysfunction/update/' +data.sid, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 功能是否可用状态
|
||||
|
export function IsEnable(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysfunction/updateIsEnable/' +data.sid, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
@ -0,0 +1,16 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
//let tokens = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI2IiwiaXNzIjoiV0JLIiwiZXhwIjoxNjMwMDI3MDA3fQ.9bEgBzFW2g1CUT7s5VXxhNCa10cyU_WTCFeqpQje0iY'
|
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
//获取菜单 分页列表
|
||||
|
export function logPageList(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/systemlog/listPage', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
@ -0,0 +1,115 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
//let tokens = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI2IiwiaXNzIjoiV0JLIiwiZXhwIjoxNjMwMDI3MDA3fQ.9bEgBzFW2g1CUT7s5VXxhNCa10cyU_WTCFeqpQje0iY'
|
||||
|
|
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
//获取菜单 分页列表
|
||||
|
export function pageList(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysmenu/listAllVoForSource', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 新增保存 菜单信息
|
||||
|
export function saveMenusInfo(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysmenu/save', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
// 修改保存 菜单信息
|
||||
|
export function putMenusInfo(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysmenu/update/'+ data.sid, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
//根据sid 删除单个 资源信息
|
||||
|
export function delMenus(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysmenu/delBySids/' + data.sid, |
||||
|
method: 'get', |
||||
|
data: qs.stringify(data), |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 修改状态
|
||||
|
export function IsEnable(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysmenu/updateIsEnable/' + data.sid, |
||||
|
method: 'POST', |
||||
|
data: qs.stringify(data), |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
// 获取菜单 不分页列表
|
||||
|
export function roleList(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/menus/list', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//获取菜单 分页列表
|
||||
|
export function menusPageList(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/menus/pagelist', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//获取菜单 树形分页列表
|
||||
|
export function menusTreelist(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/menus/treelist', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
//根据sid 获取单个菜单 信息
|
||||
|
export function getRoleInfo(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/menus/' + data.sid, |
||||
|
method: 'GET', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
@ -0,0 +1,36 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
class user{ |
||||
|
verifyList(data){ // 获取列表
|
||||
|
return request({ |
||||
|
url: '/system/organization/verifyList', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
orgRegisterDetails(data){ // 单位注册信息详情
|
||||
|
return request({ |
||||
|
url: '/system/organization/organizationRegisterDetails/'+data.organizationSid, |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
verify(data){ // 审核
|
||||
|
return request({ |
||||
|
url: '/system/organization/verify', |
||||
|
method: 'post', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
// 删除机构信息
|
||||
|
del(data) { |
||||
|
return request({ |
||||
|
url: '/system/organization/delete/'+data.sid, |
||||
|
method: 'DELETE', |
||||
|
data |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
export default new user() |
@ -0,0 +1,61 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
//let tokens = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI2IiwiaXNzIjoiV0JLIiwiZXhwIjoxNjMwMTE1MjUwfQ.gtn_mVsbwH6ztl835rWmIY4DxeNmRe_TOt-Q0TdldIE'
|
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
//获取菜单 分页列表
|
||||
|
export function pageList(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/syspost/listPage', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 查询部门列表
|
||||
|
export function orgList(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysorganization/list', |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 新增
|
||||
|
export function savePost(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/syspost/save', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 修改
|
||||
|
export function putOrgroles(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/syspost/update/' +data.sid, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 删除
|
||||
|
export function delOrgroles(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/syspost/delBySids/' + data.sids, |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
@ -0,0 +1,139 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
//let tokens = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI2IiwiaXNzIjoiV0JLIiwiZXhwIjoxNjI5OTQxNjI1fQ.aOFOz0h7c8YQs-ti2GLpqeWu4AE9mifx_043hLJQf8g'
|
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
// 业务角色 列表
|
||||
|
export function roleOrgList(data){ |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysrole/listPage', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 设置是否可用:isEnable:1可用,0不可用
|
||||
|
export function setRoleEnable(data) { |
||||
|
return request({ |
||||
|
url: `/system/v1/orgroles/setIsEnable/${data.sid}/${data.isEnable}`, |
||||
|
method: 'POST', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* <新增 保存角色> |
||||
|
* @orgSid 机构SID |
||||
|
* @remarks 备注 |
||||
|
* @roleName 角色名称 |
||||
|
* */ |
||||
|
export function saveOrgroles(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysrole/save', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
/** |
||||
|
* <根据SID 修改角色> |
||||
|
* @sid 角色SID |
||||
|
* @orgSid 机构SID |
||||
|
* @remarks 备注 |
||||
|
* @roleName 角色名称 |
||||
|
* */ |
||||
|
export function putOrgroles(data) { |
||||
|
return request({ |
||||
|
url: `/portal/v1/sysrole/update/${data.sid}`, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* <根据SID 删除角色> |
||||
|
* @sid 角色SID |
||||
|
* */ |
||||
|
export function delOrgroles(data) { |
||||
|
return request({ |
||||
|
url: `/portal/v1/sysrole/delBySids/${data.sid}`, |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 菜单授权
|
||||
|
export function roleMenuTree(data) { |
||||
|
return request({ |
||||
|
url: `/portal/v1/sysmenu/listAllByRoleSid`, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 菜单授权保存
|
||||
|
export function saveorgrolemenus(data) { |
||||
|
return request({ |
||||
|
url: `/portal/v1/sysmenurole/updateRoleAndMenu`, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 资源授权
|
||||
|
export function sourceMenuTree(data) { |
||||
|
return request({ |
||||
|
url: `/portal/v1/syssource/listAllByRoleSid`, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 资源授权保存
|
||||
|
export function saveSource(data) { |
||||
|
return request({ |
||||
|
url: `/portal/v1/syssourcerole/updateRoleAndSource`, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 功能授权
|
||||
|
export function funMenuTree(data) { |
||||
|
return request({ |
||||
|
url: `/portal/v1/sysfunction/listAllByRoleSid`, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 功能授权保存
|
||||
|
export function savefunMenu(data) { |
||||
|
return request({ |
||||
|
url: `/portal/v1/sysrolefunction/updateRoleAndFunction`, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
@ -0,0 +1,31 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
|
||||
|
/** |
||||
|
* < 业务角色授权时菜单列表(拥有的菜单选中)> |
||||
|
* @orgTypeKeys 单位性质(类别 |
||||
|
* @roleSid 业务角色sid |
||||
|
* @userType 用户类型只能为1或2 |
||||
|
* */ |
||||
|
export function roleMenuTree(data){ |
||||
|
return request({ |
||||
|
url: '/system/v1/orgrolemenus/menutree', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* < 保存角色授权的菜单项 > |
||||
|
* @roleMenus[] 角色权限列表 {menuSid 菜单sid} {orgSid 单位sid} {roleSid 角色sid} |
||||
|
* @roleSid 业务角色sid |
||||
|
* */ |
||||
|
export function saveorgrolemenus(data){ |
||||
|
return request({ |
||||
|
url: '/system/v1/orgrolemenus', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
@ -0,0 +1,21 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
|
||||
|
//角色授权时菜单列表(拥有的菜单选中)
|
||||
|
export function getrolemenus(data) { |
||||
|
return request({ |
||||
|
url: `/system/v1/rolemenus/${data.roleSid}`, |
||||
|
method: 'GET', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
//保存 角色授权时菜单列表
|
||||
|
export function saverolemenus(data) { |
||||
|
return request({ |
||||
|
url: `/system/v1/rolemenus`, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
@ -0,0 +1,111 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
//let tokens = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI2IiwiaXNzIjoiV0JLIiwiZXhwIjoxNjMwMDI3MDA3fQ.9bEgBzFW2g1CUT7s5VXxhNCa10cyU_WTCFeqpQje0iY'
|
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
//获取菜单 分页列表
|
||||
|
export function pageList(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/syssource/listPage', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
//保存 资源信息
|
||||
|
export function saveSourcesInfo(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/syssource/save', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 修改 保存 资源信息
|
||||
|
export function putSourcesInfo(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/syssource/update/' + data.sid, |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
//根据sid 删除单个 资源信息
|
||||
|
export function delSources(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/syssource/delBySids/' + data.sid, |
||||
|
method: 'get', |
||||
|
data: qs.stringify(data), |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 获取获取资源类别
|
||||
|
export function getZzylb(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/syssource/listAll', |
||||
|
method: 'post', |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
// 获取资源 不分页列表
|
||||
|
export function sourcesList(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/sources/list', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 获取资源列表 不分页下拉
|
||||
|
export function getsourceList(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/sources/sourceList', |
||||
|
method: 'post' |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
////获取资源 分页列表
|
||||
|
//export function sourcesPageList(data) {
|
||||
|
//return request({
|
||||
|
// url: '/system/v1/sources/pagelist',
|
||||
|
// method: 'POST',
|
||||
|
// data: data,
|
||||
|
// headers: {'Content-Type': 'application/json'}
|
||||
|
//})
|
||||
|
//}
|
||||
|
|
||||
|
|
||||
|
|
||||
|
//根据sid 获取单个 资源信息
|
||||
|
export function getSourcesInfo(data) { |
||||
|
return request({ |
||||
|
url: '/system/v1/sources/' + data.sid, |
||||
|
method: 'GET', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
@ -0,0 +1,84 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
|
||||
|
export function verifyList(data){ // 用户列表
|
||||
|
return request({ |
||||
|
url: '/system/user/verifyList', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
// admin用户列表
|
||||
|
export function userListByAdmin(data){ |
||||
|
return request({ |
||||
|
url: '/system/user/userListByAdmin', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 设置角色
|
||||
|
export function psotUserRole(data){ |
||||
|
return request({ |
||||
|
url: '/system/v1/userrole', |
||||
|
method: 'post', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 用户初始化密码
|
||||
|
export function initPwd(data){ |
||||
|
return request({ |
||||
|
url: 'system/user/initPwd/'+data.sid, |
||||
|
method: 'POST', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 用户删除接口
|
||||
|
export function delUser(data){ |
||||
|
return request({ |
||||
|
url: '/system/user/delete/'+data.sid, |
||||
|
method: 'DELETE', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 初始化设置角色
|
||||
|
export function initUserRole(data){ |
||||
|
return request({ |
||||
|
url: '/system/v1/userroles/initUserRole/'+ data.userSid, |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 保存角色
|
||||
|
export function saveUserRole(data){ |
||||
|
return request({ |
||||
|
url: '/system/v1/userroles', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 用户信息
|
||||
|
export function getUserINfo(data){ |
||||
|
return request({ |
||||
|
url: '/system/user/userRegisterDetails', |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 单位信息
|
||||
|
export function getOrgINfo(data){ |
||||
|
return request({ |
||||
|
url: '/system/organization/organizationRegisterDetails/'+ data.organizationSid, |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
@ -0,0 +1,38 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
|
||||
|
|
||||
|
//获取菜单 分页列表
|
||||
|
export function login1(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/login', |
||||
|
method: 'POST', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
// 'token':tokens
|
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
class user { |
||||
|
login(data) { // 登录
|
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/login', |
||||
|
method: 'post', |
||||
|
data |
||||
|
}) |
||||
|
} |
||||
|
logout() { // 退出
|
||||
|
return request({ |
||||
|
url: '/vue-admin-template/user/logout', |
||||
|
method: 'post' |
||||
|
}) |
||||
|
} |
||||
|
updatePassword(data) { // 退出修改密码
|
||||
|
return request({ |
||||
|
url: '/system/user/updatePassword', |
||||
|
method: 'post', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
} |
@ -0,0 +1,43 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
class user{ |
||||
|
verifyList(data){ // 请求审核列表
|
||||
|
return request({ |
||||
|
url: '/system/user/verifyList', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
userRegisterDetails(data){ // 获取审核内容
|
||||
|
console.log(data) |
||||
|
return request({ |
||||
|
url: '/system/user/userRegisterDetails', |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
verify(data){ // 审核通过不通过
|
||||
|
return request({ |
||||
|
url: '/system/user/verify', |
||||
|
method: 'post', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
userDelete(data){ // 删除
|
||||
|
return request({ |
||||
|
url: '/system/user/delete/{sid}', |
||||
|
method: 'delete', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
userNameDelete(data){ // 删除个人注册审核
|
||||
|
return request({ |
||||
|
url: '/system/staffApply/deleteByUserName', |
||||
|
method: 'delete', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
export default new user() |
@ -0,0 +1,32 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
|
||||
|
// 委托人分页列表
|
||||
|
export function clientList(data){ |
||||
|
return request({ |
||||
|
url: '/jlcyry/v1/clientalterrecords/pagerList', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 变更选择委托人列表
|
||||
|
export function setclientList(data){ |
||||
|
return request({ |
||||
|
url: '/jlcyry/v1/clientalterrecords/staffClientList', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 变更为被委托人
|
||||
|
export function doClientAlter(data){ |
||||
|
return request({ |
||||
|
url: '/jlcyry/v1/clientalterrecords/doClientAlter', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
@ -0,0 +1,69 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
// 单位用户列表
|
||||
|
export function orgUserList(data){ |
||||
|
return request({ |
||||
|
url: '/system/user/userListByOrg', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json'} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
|
||||
|
// 设置角色
|
||||
|
export function psotUserRole(data){ |
||||
|
return request({ |
||||
|
url: '/system/v1/userrole', |
||||
|
method: 'post', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 获取角色列表 |
||||
|
* orgSid 用户SID |
||||
|
* roleName 角色名称 |
||||
|
* */ |
||||
|
export function orgrolesList(data){ |
||||
|
return request({ |
||||
|
url: '/system/v1/orgroles/list', |
||||
|
method: 'post', |
||||
|
headers: {'Content-Type': 'application/json'}, |
||||
|
data |
||||
|
}) |
||||
|
} |
||||
|
/** |
||||
|
* 保存 设置角色 /system/v1/orguserroles |
||||
|
* */ |
||||
|
export function saveOrgRole(data){ |
||||
|
return request({ |
||||
|
url: '/system/v1/orguserroles', |
||||
|
method: 'post', |
||||
|
headers: {'Content-Type': 'application/json'}, |
||||
|
data |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 部门机构列表 /system/v1/departments/departmentOrgList/{organizationSid} |
||||
|
* */ |
||||
|
export function getOrgList(organizationSid){ |
||||
|
return request({ |
||||
|
url: '/system/v1/departments/departmentOrgList/' + organizationSid, |
||||
|
method: 'get' |
||||
|
}) |
||||
|
} |
||||
|
/** |
||||
|
* 保存 设置部门 /system/v1/orguserroles |
||||
|
* */ |
||||
|
export function saveDepartment(data){ |
||||
|
return request({ |
||||
|
url: '/system/v1/departmentStaffs/setUpDepartment', |
||||
|
method: 'post', |
||||
|
headers: {'Content-Type': 'application/json'}, |
||||
|
data |
||||
|
}) |
||||
|
} |
||||
|
|
@ -0,0 +1,60 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
import qs from 'qs' |
||||
|
// 用户列表
|
||||
|
|
||||
|
let tokens = window.sessionStorage.getItem('token'); |
||||
|
export function userList(data){ |
||||
|
return request({ |
||||
|
url: '/base/v1/basefinbank/listPage', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 根据sid查询一条信息
|
||||
|
export function userSingle(data){ |
||||
|
return request({ |
||||
|
url: '/base/v1/basefinpolicy/fetchSid/' +data.sid, |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 新增
|
||||
|
export function userListAdd(data){ |
||||
|
return request({ |
||||
|
url: '/base/v1/basefinbank/save/', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
// 更新
|
||||
|
export function userUpdata(data){ |
||||
|
return request({ |
||||
|
url: '/base/v1/basefinbank/update/' +data.sid, |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 删除
|
||||
|
export function delbank(data){ |
||||
|
return request({ |
||||
|
url: '/base/v1/basefinbank/deleteBySids/' +data.sid, |
||||
|
method: 'get', |
||||
|
data: data, |
||||
|
headers: {'Content-Type': 'application/json', |
||||
|
'token':tokens |
||||
|
} |
||||
|
}) |
||||
|
} |
@ -0,0 +1,56 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
// eslint-disable-next-line no-unused-vars
|
||||
|
import qs from 'qs' |
||||
|
|
||||
|
// 登录
|
||||
|
export function login(data) { |
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/login', |
||||
|
method: 'post', |
||||
|
data: data, |
||||
|
headers: { 'Content-Type': 'application/json' } |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 用户注册
|
||||
|
export function registUser(data) { |
||||
|
return request({ |
||||
|
url: '/system/user/save', |
||||
|
method: 'post', |
||||
|
data, |
||||
|
headers: { 'Content-Type': 'application/x-www-form-urlencoded;' } |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 获取手机验证码
|
||||
|
export function getVerificationCode(data) { |
||||
|
return request({ |
||||
|
url: '/system/user/getVerificationCode', |
||||
|
method: 'get', |
||||
|
params: data |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 获取登录验证码
|
||||
|
export function imgCode() { |
||||
|
return request({ |
||||
|
url: '/system/api/defaultBlendCode?temm=' + new Date().getTime(), |
||||
|
method: 'get' |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
// 获取用信息
|
||||
|
export function getInfo(token) { |
||||
|
return request({ |
||||
|
url: '/system/user/loginDetails', |
||||
|
method: 'post' |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
export function logout(data) { // 退出
|
||||
|
return request({ |
||||
|
url: '/portal/v1/sysuser/signOut', |
||||
|
method: 'post', |
||||
|
data: qs.stringify(data) |
||||
|
}) |
||||
|
} |
After Width: | Height: | Size: 96 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 97 KiB |
After Width: | Height: | Size: 5.5 KiB |
After Width: | Height: | Size: 8.4 KiB |
After Width: | Height: | Size: 7.4 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 8.4 KiB |
After Width: | Height: | Size: 8.2 KiB |
After Width: | Height: | Size: 3.8 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 43 KiB |
After Width: | Height: | Size: 91 B |
After Width: | Height: | Size: 21 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 4.1 KiB |
After Width: | Height: | Size: 944 B |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 4.5 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 3.5 KiB |