Commit 538101da by 黄志甲

修改添加接口

parent 463377bc
ENV = 'development'
# 接口地址
VUE_APP_BASE_API = 'http://106.53.98.217:10003'
VUE_APP_WS_API = 'ws://106.53.98.217:10003'
VUE_APP_BASE_API = 'http://192.168.7.176:9888'
VUE_APP_WS_API = 'ws://192.168.7.176:9888'
# 是否启用 babel-plugin-dynamic-import-node插件
VUE_CLI_BABEL_TRANSPILE_MODULES = true
import request from '@/utils/request'
let baseUrl = 'http://portal.project.gxdpf.org.cn/portal'
// 获取区域地址
export const getCityAreaList = data => {
return request({
url: 'portal/stats/getCityAreaList',
method: 'POST',
data
})
}
// 获取年份
export const getYearList = data => {
return request({
url: 'portal/stats/getYearList',
method: 'POST',
data
})
}
// 获取项目状态
export const getStatusCyclicList = data => {
return request({
url: 'portal/stats/getStatusCyclicList',
method: 'POST',
data
})
}
// 底部柱形图数据/portal/stats/getWorkSituationMonthList
export const getWorkSituationMonthList = data => {
return request({
url: 'portal/stats/getWorkSituationMonthList',
method: 'POST',
data
})
}
/* 任务地图 */
// 列表
export const getWorkSituationList = data => {
return request({
url: 'portal/stats/getWorkSituationList',
method: 'POST',
data
})
}
// 地图数据
export const getMapJson = data => {
return request({
url: `static/portal/${data}.json`,
method: 'GET'
})
}
export const getBanner = data => {
return request({
baseURL: `json/banner.json`,
method: 'GET'
})
}
// 实时统计残疾人
export const getIDTKindCountList = data => {
return request({
url: 'portal/people/getIDTKindCountList',
method: 'GET',
data
})
}
// 广西残疾人小康进程实现程度数据
export const getPeopleFairly = data => {
return request({
url: 'portal/stats/getPeopleFairly',
method: 'GET',
data
})
}
/* 数据库统计 */
// 全区持证残疾人
export const getPeopleBaseDataNum = data => {
return request({
url: 'portal/stats/getPeopleBaseDataNum',
method: 'GET',
data
})
}
// 残疾人动态更新数据库2018
export const getPeopleUpdateDataNum = data => {
return request({
url: 'portal/stats/getPeopleUpdateDataNum',
method: 'GET',
data
})
}
//查地址
export function getCityAreaList(data) {
// 残疾人动态更新数据库2017
export const getPeopleUpdateData2017Num = data => {
return request({
baseUrl:baseUrl,
url: `${baseUrl}/stats/getCityAreaList`,
method: 'post',
url: 'portal/stats/getPeopleUpdateData2017Num',
method: 'GET',
data
})
}
}
......@@ -6,6 +6,21 @@ import { getToken } from '@/utils/auth'
import Config from '@/settings'
import Cookies from 'js-cookie'
// 微服务 前缀判断添加服务名
const addTopName = (data) => {
const urlTopName = data.url.split('/')[0]
switch (urlTopName) {
case 'api':
return `/AUTH-SERVER/${data.url}`
case 'auth':
return `/AUTH-SERVER/${data.url}`
case 'portal':
return `/PORTAL-SERVER/${data.url}`
default:
return `${data.url}`
}
}
// 创建axios实例
const service = axios.create({
baseURL: process.env.NODE_ENV === 'production' ? process.env.VUE_APP_BASE_API : '/', // api 的 base_url
......@@ -19,6 +34,7 @@ service.interceptors.request.use(
config.headers['Authorization'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
config.headers['Content-Type'] = 'application/json'
config.url = addTopName(config)
return config
},
error => {
......
......@@ -4,7 +4,15 @@
<div class="head-container">
<div v-if="crud.props.searchToggle">
<!-- 搜索 -->
<el-input v-model="query.blurry" size="small" clearable placeholder="输入名称或者描述搜索" style="width: 200px;" class="filter-item" @keyup.enter.native="crud.toQuery" />
<el-input
v-model="query.blurry"
size="small"
clearable
placeholder="输入名称或者描述搜索"
style="width: 200px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"
/>
<el-date-picker
v-model="query.createTime"
:default-time="['00:00:00','23:59:59']"
......@@ -21,22 +29,41 @@
<crudOperation :permission="permission" />
</div>
<!-- 表单渲染 -->
<el-dialog append-to-body :close-on-click-modal="false" :before-close="crud.cancelCU" :visible.sync="crud.status.cu > 0" :title="crud.status.title" width="520px">
<el-form ref="form" :inline="true" :model="form" :rules="rules" size="small" label-width="80px">
<el-dialog
append-to-body
:close-on-click-modal="false"
:before-close="crud.cancelCU"
:visible.sync="crud.status.cu > 0"
:title="crud.status.title"
width="520px"
>
<el-form
ref="form"
:inline="true"
:model="form"
:rules="rules"
size="small"
label-width="80px"
>
<el-form-item label="角色名称" prop="name">
<el-input v-model="form.name" style="width: 380px;" />
</el-form-item>
<el-form-item label="角色级别" prop="level">
<el-input-number v-model.number="form.level" :min="1" controls-position="right" style="width: 145px;" />
<el-input-number
v-model.number="form.level"
:min="1"
controls-position="right"
style="width: 145px;"
/>
</el-form-item>
<el-form-item label="数据范围" prop="dataScope">
<el-select v-model="form.dataScope" style="width: 140px" placeholder="请选择数据范围" @change="changeScope">
<el-option
v-for="item in dateScopes"
:key="item"
:label="item"
:value="item"
/>
<el-select
v-model="form.dataScope"
style="width: 140px"
placeholder="请选择数据范围"
@change="changeScope"
>
<el-option v-for="item in dateScopes" :key="item" :label="item" :value="item" />
</el-select>
</el-form-item>
<el-form-item v-if="form.dataScope === '自定义'" label="数据权限" prop="depts">
......@@ -65,18 +92,37 @@
<div slot="header" class="clearfix">
<span class="role-span">角色列表</span>
</div>
<el-table ref="table" v-loading="crud.loading" highlight-current-row style="width: 100%;" :data="crud.data" @selection-change="crud.selectionChangeHandler" @current-change="handleCurrentChange">
<el-table
ref="table"
v-loading="crud.loading"
highlight-current-row
style="width: 100%;"
:data="crud.data"
@selection-change="crud.selectionChangeHandler"
@current-change="handleCurrentChange"
>
<el-table-column :selectable="checkboxT" type="selection" width="55" />
<el-table-column prop="name" label="名称" />
<el-table-column prop="dataScope" label="数据权限" />
<el-table-column prop="level" label="角色级别" />
<el-table-column :show-overflow-tooltip="true" prop="description" label="描述" />
<el-table-column :show-overflow-tooltip="true" width="135px" prop="createTime" label="创建日期">
<el-table-column
:show-overflow-tooltip="true"
width="135px"
prop="createTime"
label="创建日期"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column v-permission="['admin','roles:edit','roles:del']" label="操作" width="130px" align="center" fixed="right">
<el-table-column
v-permission="['admin','roles:edit','roles:del']"
label="操作"
width="130px"
align="center"
fixed="right"
>
<template slot-scope="scope">
<udOperation
v-if="scope.row.level >= level"
......@@ -139,29 +185,50 @@ import Treeselect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import { LOAD_CHILDREN_OPTIONS } from '@riophae/vue-treeselect'
const defaultForm = { id: null, name: null, depts: [], description: null, dataScope: '全部', level: 3 }
const defaultForm = {
id: null,
name: null,
depts: [],
description: null,
dataScope: '全部',
level: 3
}
export default {
name: 'Role',
components: { Treeselect, pagination, crudOperation, rrOperation, udOperation },
components: {
Treeselect,
pagination,
crudOperation,
rrOperation,
udOperation
},
cruds() {
return CRUD({ title: '角色', url: 'api/roles', sort: 'level,asc', crudMethod: { ...crudRoles }})
return CRUD({
title: '角色',
url: 'api/roles',
sort: 'level,asc',
crudMethod: { ...crudRoles }
})
},
mixins: [presenter(), header(), form(defaultForm), crud()],
data() {
return {
defaultProps: { children: 'children', label: 'label', isLeaf: 'leaf' },
dateScopes: ['全部', '本级', '自定义'], level: 3,
currentId: 0, menuLoading: false, showButton: false,
menus: [], menuIds: [], depts: [],
dateScopes: ['全部', '本级', '自定义'],
level: 3,
currentId: 0,
menuLoading: false,
showButton: false,
menus: [],
menuIds: [],
depts: [],
permission: {
add: ['admin', 'roles:add'],
edit: ['admin', 'roles:edit'],
del: ['admin', 'roles:del']
},
rules: {
name: [
{ required: true, message: '请输入名称', trigger: 'blur' }
],
name: [{ required: true, message: '请输入名称', trigger: 'blur' }],
permission: [
{ required: true, message: '请输入权限', trigger: 'blur' }
]
......@@ -169,14 +236,14 @@ export default {
}
},
created() {
crudRoles.getLevel().then(data => {
crudRoles.getLevel().then((data) => {
this.level = data.level
})
},
methods: {
getMenuDatas(node, resolve) {
setTimeout(() => {
getMenusTree(node.data.id ? node.data.id : 0).then(res => {
getMenusTree(node.data.id ? node.data.id : 0).then((res) => {
resolve(res)
})
}, 100)
......@@ -247,15 +314,16 @@ export default {
val.menus.forEach(function(data, index) {
_this.menuIds.push(data.id)
})
getMenuSuperior(this.menuIds).then(res => {
getMenuSuperior(this.menuIds).then((res) => {
this.menus = res
})
}
},
// 保存菜单
saveMenu() {
this.menuLoading = true
// this.menuLoading = true;
const role = { id: this.currentId, menus: [] }
// 得到半选的父节点数据,保存起来
this.$refs.menu.getHalfCheckedNodes().forEach(function(data, index) {
const menu = { id: data.id }
......@@ -266,11 +334,14 @@ export default {
const menu = { id: data }
role.menus.push(menu)
})
crudRoles.editMenu(role).then(res => {
crudRoles
.editMenu(role)
.then((res) => {
this.crud.notify('保存成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
this.menuLoading = false
this.update()
}).catch(err => {
})
.catch((err) => {
this.menuLoading = false
console.log(err.response.data.message)
})
......@@ -278,7 +349,7 @@ export default {
// 改变数据
update() {
// 无刷新更新 表格数据
crudRoles.get(this.currentId).then(res => {
crudRoles.get(this.currentId).then((res) => {
for (let i = 0; i < this.crud.data.length; i++) {
if (res.id === this.crud.data[i].id) {
this.crud.data[i] = res
......@@ -289,7 +360,7 @@ export default {
},
// 获取部门数据
getDepts() {
getDepts({ enabled: true }).then(res => {
getDepts({ enabled: true }).then((res) => {
this.depts = res.content.map(function(obj) {
if (obj.hasChildren) {
obj.children = null
......@@ -300,10 +371,10 @@ export default {
},
getSupDepts(depts) {
const ids = []
depts.forEach(dept => {
depts.forEach((dept) => {
ids.push(dept.id)
})
getDeptSuperior(ids).then(res => {
getDeptSuperior(ids).then((res) => {
this.depts = res.content.map(function(obj) {
if (obj.hasChildren && !obj.children) {
obj.children = null
......@@ -315,7 +386,7 @@ export default {
// 获取弹窗内部门数据
loadDepts({ action, parentNode, callback }) {
if (action === LOAD_CHILDREN_OPTIONS) {
getDepts({ enabled: true, pid: parentNode.id }).then(res => {
getDepts({ enabled: true, pid: parentNode.id }).then((res) => {
parentNode.children = res.content.map(function(obj) {
if (obj.hasChildren) {
obj.children = null
......@@ -342,21 +413,22 @@ export default {
</script>
<style rel="stylesheet/scss" lang="scss">
.role-span {
font-weight: bold;color: #303133;
.role-span {
font-weight: bold;
color: #303133;
font-size: 15px;
}
}
</style>
<style rel="stylesheet/scss" lang="scss" scoped>
/deep/ .el-input-number .el-input__inner {
/deep/ .el-input-number .el-input__inner {
text-align: left;
}
/deep/ .vue-treeselect__multi-value{
}
/deep/ .vue-treeselect__multi-value {
margin-bottom: 0;
}
/deep/ .vue-treeselect__multi-value-item{
}
/deep/ .vue-treeselect__multi-value-item {
border: 0;
padding: 0;
}
}
</style>
......@@ -40,6 +40,20 @@ module.exports = {
pathRewrite: {
'^/auth': 'auth'
}
},
'/ADMIN-SERVER':{
target: process.env.VUE_APP_BASE_API,
changeOrigin: true,
pathRewrite: {
'^/ADMIN-SERVER': 'ADMIN-SERVER'
}
},
'/AUTH-SERVER':{
target: process.env.VUE_APP_BASE_API,
changeOrigin: true,
pathRewrite: {
'^/AUTH-SERVER': 'AUTH-SERVER'
}
}
}
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment