Merge remote-tracking branch 'origin/branch_20190822' into branch_20190822

# Conflicts:
#	ecp-mbu-web/src/main/java/com/murong/ecp/netpay/mbu/web/interceptor/BUIInterceptor.java
This commit is contained in:
xu_lw
2019-08-29 19:57:43 +08:00
5 changed files with 71 additions and 46 deletions
+10 -7
View File
@@ -1,18 +1,21 @@
import Vue from 'vue'
import App from '@/App'
import router from '@/router' // api: https://github.com/vuejs/vue-router
import store from '@/store' // api: https://github.com/vuejs/vuex
import VueCookie from 'vue-cookie' // api: https://github.com/alfhen/vue-cookie
import '@/element-ui' // api: https://github.com/ElemeFE/element
import '@/icons' // api: http://www.iconfont.cn/
import router from '@/router' // api: https://github.com/vuejs/vue-router
import store from '@/store' // api: https://github.com/vuejs/vuex
import VueCookie from 'vue-cookie' // api: https://github.com/alfhen/vue-cookie
import '@/element-ui' // api: https://github.com/ElemeFE/element
import '@/icons' // api: http://www.iconfont.cn/
import '@/element-ui-theme'
import '@/assets/scss/index.scss'
import httpRequest from '@/utils/httpRequest' // api: https://github.com/axios/axios
import { isAuth } from '@/utils'
import {isAuth} from '@/utils'
import cloneDeep from 'lodash/cloneDeep'
import './utils/directives.js'
import dict from './utils/dict'
import {Scrollbar} from 'element-ui' //滚动条
Vue.use(Scrollbar)
Vue.use(VueCookie)
Vue.config.productionTip = false
Vue.prototype.dict = dict
@@ -36,5 +39,5 @@ new Vue({
router,
store,
template: '<App/>',
components: { App }
components: {App}
})
+30 -18
View File
@@ -7,8 +7,10 @@
import Vue from 'vue'
import Router from 'vue-router'
import http from '@/utils/httpRequest'
import { isURL } from '@/utils/validate'
import { clearLoginInfo, isGDASucc } from '@/utils'
import {isURL} from '@/utils/validate'
import {clearLoginInfo, isGDASucc} from '@/utils'
Vue.use(Router)
@@ -17,8 +19,8 @@ const _import = require('./import-' + process.env.NODE_ENV)
// 全局路由(无需嵌套上左右整体布局)
const globalRoutes = [
{ path: '/404', component: _import('common/404'), name: '404', meta: { title: '404未找到' } },
{ path: '/login', component: _import('common/login'), name: 'login', meta: { title: '登录' } }
{path: '/404', component: _import('common/404'), name: '404', meta: {title: '404未找到'}},
{path: '/login', component: _import('common/login'), name: 'login', meta: {title: '登录'}}
]
// 主入口路由(需嵌套上左右整体布局)
@@ -26,23 +28,33 @@ const mainRoutes = {
path: '/',
component: _import('main'),
name: 'main',
redirect: { name: 'home' },
meta: { title: '主入口整体布局' },
redirect: {name: 'home'},
meta: {title: '主入口整体布局'},
children: [
// 通过meta对象设置路由展示方式
// 1. isTab: 是否通过tab展示内容, true: 是, false: 否
// 2. iframeUrl: 是否通过iframe嵌套展示内容, '以http[s]://开头': 是, '': 否
// 提示: 如需要通过iframe嵌套展示内容, 但不通过tab打开, 请自行创建组件使用iframe处理!
{ path: '/home', component: _import('common/home'), name: 'home', meta: { title: '首页' } },
{ path: '/theme', component: _import('common/theme'), name: 'theme', meta: { title: '主题' } },
{ path: '/demo-echarts', component: _import('demo/echarts'), name: 'demo-echarts', meta: { title: 'demo-echarts', isTab: true } },
{ path: '/demo-ueditor', component: _import('demo/ueditor'), name: 'demo-ueditor', meta: { title: 'demo-ueditor', isTab: true } }
{path: '/home', component: _import('common/home'), name: 'home', meta: {title: '首页'}},
{path: '/theme', component: _import('common/theme'), name: 'theme', meta: {title: '主题'}},
{
path: '/demo-echarts',
component: _import('demo/echarts'),
name: 'demo-echarts',
meta: {title: 'demo-echarts', isTab: true}
},
{
path: '/demo-ueditor',
component: _import('demo/ueditor'),
name: 'demo-ueditor',
meta: {title: 'demo-ueditor', isTab: true}
}
],
beforeEnter (to, from, next) {
beforeEnter(to, from, next) {
let token = Vue.cookie.get('token')
if (!token || !/\S/.test(token)) {
clearLoginInfo()
next({ name: 'login' })
next({name: 'login'})
}
next()
}
@@ -50,7 +62,7 @@ const mainRoutes = {
const router = new Router({
mode: 'hash',
scrollBehavior: () => ({ y: 0 }),
scrollBehavior: () => ({y: 0}),
isAddDynamicMenuRoutes: false, // 是否已经添加动态(菜单)路由
routes: globalRoutes.concat(mainRoutes)
})
@@ -72,7 +84,7 @@ router.beforeEach((to, from, next) => {
router.options.isAddDynamicMenuRoutes = true
sessionStorage.setItem('menuList', JSON.stringify(data.data.menulist || '[]'))
sessionStorage.setItem('permissions', data.data.permissions || '')
next({ ...to, replace: true })
next({...to, replace: true})
} else {
sessionStorage.setItem('menuList', '[]')
sessionStorage.setItem('permissions', '')
@@ -80,7 +92,7 @@ router.beforeEach((to, from, next) => {
}
}).catch((e) => {
console.log(`%c${e} 请求菜单列表和权限失败,跳转至登录页!!`, 'color:blue')
router.push({ name: 'login' })
router.push({name: 'login'})
})
}
})
@@ -89,7 +101,7 @@ router.beforeEach((to, from, next) => {
* 判断当前路由类型, global: 全局路由, main: 主入口路由
* @param {*} route 当前路由
*/
function fnCurrentRouteType (route, globalRoutes = []) {
function fnCurrentRouteType(route, globalRoutes = []) {
var temp = []
for (var i = 0; i < globalRoutes.length; i++) {
if (route.path === globalRoutes[i].path) {
@@ -106,7 +118,7 @@ function fnCurrentRouteType (route, globalRoutes = []) {
* @param {*} menuList 菜单列表
* @param {*} routes 递归创建的动态(菜单)路由
*/
function fnAddDynamicMenuRoutes (menuList = [], routes = []) {
function fnAddDynamicMenuRoutes(menuList = [], routes = []) {
var temp = []
for (var i = 0; i < menuList.length; i++) {
if (menuList[i].list && menuList[i].list.length >= 1) {
@@ -147,7 +159,7 @@ function fnAddDynamicMenuRoutes (menuList = [], routes = []) {
mainRoutes.children = routes
router.addRoutes([
mainRoutes,
{ path: '*', redirect: { name: '404' } }
{path: '*', redirect: {name: '404'}}
])
sessionStorage.setItem('dynamicMenuRoutes', JSON.stringify(mainRoutes.children || '[]'))
console.log('\n')
+10 -2
View File
@@ -5,7 +5,7 @@
<el-input v-model="dataForm.roleName" placeholder="角色名称" clearable></el-input>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">查询</el-button>
<el-button type="text" size="small" @click="queryHandle(scope.row.id)">查看</el-button>
<el-button v-if="isAuth('sys:role:save')" type="primary" @click="addOrUpdateHandle()">新增</el-button>
<el-button v-if="isAuth('sys:role:delete')" type="danger" @click="deleteHandle()" :disabled="dataListSelections.length <= 0">批量删除</el-button>
</el-form-item>
@@ -56,7 +56,7 @@
width="180"
label="操作">
<template slot-scope="scope">
<el-button v-if="isAuth('sys:role:info')" type="text" size="small" @click="getDataList()">查看</el-button>
<el-button type="text" size="small" @click="queryHandle(scope.row.id)">查看</el-button>
<el-button v-if="isAuth('sys:role:update')" type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">修改</el-button>
<el-button v-if="isAuth('sys:role:delete')" type="text" size="small" @click="deleteHandle(scope.row)">删除</el-button>
<el-button type="text" size="small" @click="queryOperHandle(scope.row.id)">关联</el-button>
@@ -148,6 +148,14 @@
this.$refs.addOrUpdate.init(id)
})
},
//查看
queryHandle(id) {
this.addOrUpdateVisible = true
this.$nextTick(() => {
this.$refs.addOrUpdate.readonly = true
this.$refs.addOrUpdate.init(id)
})
},
// 删除
deleteHandle (row) {
var ids = row ? [row.id] : this.dataListSelections.map(item => {
+9 -1
View File
@@ -88,7 +88,7 @@
width="200"
label="操作">
<template slot-scope="scope">
<el-button v-if="isAuth('sys:user:info')" type="text" size="small" @click="getDataList()">查看</el-button>
<el-button type="text" size="small" @click="queryHandle(scope.row.oper_id)">查看</el-button>
<el-button v-if="isAuth('sys:user:update')" type="text" size="small" @click="addOrUpdateHandle(scope.row.oper_id)">修改</el-button>
<el-button v-if="isAuth('sys:user:update')" type="text" size="small" @click="updatePasswordHandle(scope.row)">改密</el-button>
<el-button v-if="isAuth('sys:user:delete')" type="text" size="small" @click="deleteHandle(scope.row)">删除</el-button>
@@ -185,6 +185,14 @@
this.$refs.addOrUpdate.init(id)
})
},
//查看
queryHandle(id) {
this.addOrUpdateVisible = true
console.log(id + "id");
this.$nextTick(() => {
this.$refs.addOrUpdate.init(id)
})
},
// 更改用户密码
updatePasswordHandle (row) {
// this.addOrUpdateVisible = true
@@ -26,7 +26,7 @@ import javax.servlet.http.HttpServletRequest;
/**
* 公共处理
*/
//@ECPInterceptorMapping({".*"})
@ECPInterceptorMapping({".*"})
public class BUIInterceptor extends YGAbstractBizIntercetpor {
@Autowired
@@ -39,7 +39,6 @@ public class BUIInterceptor extends YGAbstractBizIntercetpor {
YGEDB edb = msg.getEDBBody();
bizCtx.setProperty("request_data", edb.toString());
bizCtx.getProperty("request_data");
Logger logger = YGLogger.getLogger(msg);
if (logger.isInfoEnabled()) {
@@ -62,15 +61,11 @@ public class BUIInterceptor extends YGAbstractBizIntercetpor {
@Override
public boolean onRequest(YGBizMessageContext bizCtx) throws YGException {
logger.info("bizCtx=====>" + bizCtx);
YGBizMessage msg = bizCtx.getCurrentMsg();
logger.info("msg======》" + msg);
YGEDB edb = msg.getEDBBody();
edb.setData("EDBBody", String.valueOf(edb));
bizCtx.setProperty("request_data", edb.toString());
logger.info("EDBBody Begin---->" + edb.getData("EDBBody"));
Logger logger = YGLogger.getLogger(msg);
if (logger.isInfoEnabled()) {
logger.info("执行前处理:[" + this.getClass().getSimpleName() + ".onRequest]");
}
@@ -80,6 +75,9 @@ public class BUIInterceptor extends YGAbstractBizIntercetpor {
logger.info("前处理结束:[" + this.getClass().getSimpleName() + ".onRequest]");
}
YGDatabaseUtil dbUtlil = bizCtx.getDataBaseUtil();
dbUtlil.insert("insert t(a,b) values(?,?)", new String[]{"a", "b"});
return true;
}
@@ -100,9 +98,6 @@ public class BUIInterceptor extends YGAbstractBizIntercetpor {
GDAUtil.setMsg_inf(msg, CommonMessageCode.FAIL.getMsgInf());
}
msg_cd = GDAUtil.getMsg_cd(msg);
logger.info("GDAUtil.getMsg_cd(msg)===》" + GDAUtil.getMsg_cd(msg));
logger.info("msg_cd=====>" + msg_cd);
logger.info("GDAUtil.getMsg_inf(msg)====>" + GDAUtil.getMsg_inf(msg));
edb.setData("msg_cd", msg_cd);
@@ -124,17 +119,16 @@ public class BUIInterceptor extends YGAbstractBizIntercetpor {
if (logger.isInfoEnabled()) {
logger.info("业务处理成功,提交数据库事务");
logDo.setTxnCd(edb.getData("txn_cd"));
logDo.setMsgCode(GDAUtil.getMsg_cd(msg));
logDo.setMsgInfo(GDAUtil.getMsg_inf(msg));
logDo.setMsgCode(msg_cd);
logDo.setTxnCd(msg_cd);
logDo.setOperNo(null);
if (operDTO != null) {
logDo.setOperNm(operDTO.getOperNm());
logDo.setOperNo(operDTO.getOperNo());
logDo.setIpAddr(request.getRemoteAddr());
logDo.setReqData(edb.getData("EDBBody"));
logger.info("EDBBody------>" + edb.getData("EDBBody"));
}
logDo.setIpAddr(request.getRemoteAddr());
logDo.setReqData(bizCtx.getProperty("request_data").toString());
buiOperlogMapper.insert(logDo);
logger.info("msg_cd----->" + msg_cd);
@@ -144,16 +138,16 @@ public class BUIInterceptor extends YGAbstractBizIntercetpor {
} else {
if (logger.isInfoEnabled()) {
logger.info("业务处理失败,回滚数据库事务");
logDo.setMsgCode(msg_cd);
logDo.setMsgCode(GDAUtil.getMsg_cd(msg));
logDo.setMsgInfo(GDAUtil.getMsg_inf(msg));
logDo.setTxnCd(msg_cd);
logDo.setOperNo(null);
if (operDTO != null) {
logDo.setOperNm(operDTO.getOperNm());
logDo.setOperNo(operDTO.getOperNo());
logDo.setIpAddr(request.getRemoteAddr());
logDo.setReqData(edb.getData("EDBBody"));
}
logDo.setIpAddr(request.getRemoteAddr());
logDo.setReqData(bizCtx.getProperty("request_data").toString());
buiOperlogMapper.insert(logDo);
edb.setData("gda.msg_typ", "E");
YGPUBATCUtil.rollbackWork(bizCtx);