Commit 477758a7 authored by tangwei's avatar tangwei

Merge branch 'dev_upgrade' of http://172.16.10.76/station/amos-convertor-view into develop_x

parents 92130053 679166e8
...@@ -54,6 +54,7 @@ ...@@ -54,6 +54,7 @@
"amos-build": "^3.x", "amos-build": "^3.x",
"amos-framework": "^1.2.2", "amos-framework": "^1.2.2",
"amos-iot-3dgraph": "^1.0.0", "amos-iot-3dgraph": "^1.0.0",
"amos-designer": "^1.x",
"amos-iot-webstudio": "^1.0.4", "amos-iot-webstudio": "^1.0.4",
"eslint-config-ray": "^1.0.26", "eslint-config-ray": "^1.0.26",
"mockjs": "^1.0.1-beta3", "mockjs": "^1.0.1-beta3",
......
...@@ -152,7 +152,12 @@ export default { ...@@ -152,7 +152,12 @@ export default {
'blue-chang': '/src/assets/3dview/prePlan/jiaohuqu-2anniu-lan-chang.png', 'blue-chang': '/src/assets/3dview/prePlan/jiaohuqu-2anniu-lan-chang.png',
'yellow-chang': '/src/assets/3dview/prePlan/jiaohuqu-2anniu-cheng-chang.png', 'yellow-chang': '/src/assets/3dview/prePlan/jiaohuqu-2anniu-cheng-chang.png',
onlyOne: '/src/assets/3dview/prePlan/jiaohuqu-2anniu-cheng-chang.png' onlyOne: '/src/assets/3dview/prePlan/jiaohuqu-2anniu-cheng-chang.png'
} },
main: {
user: require('./../assets/main/user.png'),
notice: require('./../assets/main/notice.png'),
setting: require('./../assets/main/setting.png')
},
}; };
export const marker3DIoncMapper = { export const marker3DIoncMapper = {
......
import { SysConsts } from 'amos-processor';
/**
* 额外配置
*/
const security = {
USER: '__user__',
BIZ_PERMISSION: 'BIZ_PERMISSION'
};
const SecurityConsts = Object.assign({}, SysConsts, security);
export const UNIFIED_PLATFORM = {
token: 'token',
/** 应用 key,平台应用填入 `AMOS_ADMIN` */
appKey: 'appKey',
/** 应用,平台的应用填入 `AMOS-WEB-ADMIN` */
product: 'product'
};
export default SecurityConsts;
...@@ -33,6 +33,7 @@ export const secExtUrl = { ...@@ -33,6 +33,7 @@ export const secExtUrl = {
opSearchMenusUrl: completePrefix(securityBaseURI, 'permissionItem/searchPermission-tree?nodeName={nodeName}&type={type}'), opSearchMenusUrl: completePrefix(securityBaseURI, 'permissionItem/searchPermission-tree?nodeName={nodeName}&type={type}'),
// 根据父菜单 code 获取子菜单 // 根据父菜单 code 获取子菜单
opSearchBizMenusUrl: completePrefix(securityBaseURI, 'permissionItem/searchSubmenuPermission/{code}'), opSearchBizMenusUrl: completePrefix(securityBaseURI, 'permissionItem/searchSubmenuPermission/{code}'),
menusRoutesUrl: completePrefix(baseURI,'privilege/v1/permission/tree/me?menuAgent=WEB&permissionType=MENU,SUBMENU&path='),
// 获取厂区集合 get // 获取厂区集合 get
regionListUrl: completePrefix(patrolURI, 'api/group/queryAuthCompanyLeaves'), regionListUrl: completePrefix(patrolURI, 'api/group/queryAuthCompanyLeaves'),
...@@ -44,10 +45,7 @@ export const secExtUrl = { ...@@ -44,10 +45,7 @@ export const secExtUrl = {
// 登陆用户系统权限菜单- // 登陆用户系统权限菜单-
permissionsMenusUrl: completePrefix(securityBaseURI, `privilege/${secExVerson}/permission/tree/role?roleSeq={roleSeq}`), permissionsMenusUrl: completePrefix(securityBaseURI, `privilege/${secExVerson}/permission/tree/role?roleSeq={roleSeq}`),
loginOutUrl: completePrefix(baseURI,'privilege/v1/auth/token'), // 注销 delete
}; };
......
...@@ -43,24 +43,17 @@ class App extends Component { ...@@ -43,24 +43,17 @@ class App extends Component {
} }
componentWillMount() { componentWillMount() {
debugger
let token = LocationParam.getLocationParamByName('token'); let token = LocationParam.getLocationParamByName('token');
if (!token) { if (!token) {
// let systemMenu = JSON.parse(lsTool.read(sessionConsts.systemMenu)); AmosAlert.error('警告', 'toke已失效!');
// if (!systemMenu) {
// window.location.href = loginURI;
// return;
// }
// this.setState({ rootRoutes: rootRoutes(systemMenu), visible: true });
// return;
}else{ }else{
lsTool.write(SysConsts.token, token); lsTool.write(SysConsts.token, token);
lsTool.write('token', token);
} }
getSystemAllMenu().then( getSystemAllMenu().then(
menus => { menus => {
debugger
let systemMuens = this.filterSystemMenus(menus); let systemMuens = this.filterSystemMenus(menus);
let routeMenus = []; let routeMenus = [];
systemMuens.forEach(item => { systemMuens.forEach(item => {
......
...@@ -43,20 +43,19 @@ class App extends Component { ...@@ -43,20 +43,19 @@ class App extends Component {
} }
componentWillMount() { componentWillMount() {
debugger
let token = LocationParam.getLocationParamByName('token'); let token = LocationParam.getLocationParamByName('token');
if (!token) { if (!token) {
AmosAlert.error('警告', err || 'toke已失效!'); AmosAlert.error('警告', 'toke已失效!');
} else { } else {
lsTool.write(SysConsts.token, token); lsTool.write(SysConsts.token, token);
lsTool.write('token', token);
} }
getSystemAllMenu().then( getSystemAllMenu().then(
menus => { menus => {
debugger
let systemMuens = this.filterSystemMenus(menus); let systemMuens = this.filterSystemMenus(menus);
let routeMenus = []; let routeMenus = [];
systemMuens.forEach(item => { systemMuens.forEach(item => {
......
...@@ -53,7 +53,6 @@ const onEnterValidate = (next, replace, callback) => { ...@@ -53,7 +53,6 @@ const onEnterValidate = (next, replace, callback) => {
pathname pathname
}); });
console.log('pathname|flag', pathname, flag); console.log('pathname|flag', pathname, flag);
debugger
if (!flag ) { if (!flag ) {
replace('/login'); replace('/login');
} }
......
const compeleteMenus = (pageCompontent) => { const compeleteMenus = (pageCompontent) => {
debugger
return function convertMenus(menus, resRoutes, level) { return function convertMenus(menus, resRoutes, level) {
menus.map(menu => { menus.map(menu => {
if (menu.path) { if (menu.path) {
...@@ -47,7 +46,6 @@ const filterGroupMenus = (routes, groups) => { ...@@ -47,7 +46,6 @@ const filterGroupMenus = (routes, groups) => {
* @return {object|array} group存在: { main: [...], other: [...] }, group 不存在: [] * @return {object|array} group存在: { main: [...], other: [...] }, group 不存在: []
*/ */
export default function calcRoutes(menus = [], pageCompontent, groups) { export default function calcRoutes(menus = [], pageCompontent, groups) {
debugger
const _routes = []; const _routes = [];
if (menus && menus.length > 0) { if (menus && menus.length > 0) {
compeleteMenus(pageCompontent)(menus, _routes, 1); compeleteMenus(pageCompontent)(menus, _routes, 1);
......
...@@ -11,7 +11,6 @@ import TextPlan from './../view/planMgmt/view/TextPlan'; ...@@ -11,7 +11,6 @@ import TextPlan from './../view/planMgmt/view/TextPlan';
import PlanDrill from './../view/planMgmt/view/PlanDrill'; import PlanDrill from './../view/planMgmt/view/PlanDrill';
import LeaderStruct from './../view/planMgmt/view/leaderStruct'; import LeaderStruct from './../view/planMgmt/view/leaderStruct';
/** /**
* 系统自定义路由 * 系统自定义路由
*/ */
...@@ -24,12 +23,11 @@ export const customRoutes = [ ...@@ -24,12 +23,11 @@ export const customRoutes = [
{ path: 'checkdetail', parent: 'patrolpoint', component: CheckDetail }, { path: 'checkdetail', parent: 'patrolpoint', component: CheckDetail },
{ path: 'differentiateDetail', parent: 'biz', component: DifferentiateDetail }, { path: 'differentiateDetail', parent: 'biz', component: DifferentiateDetail },
{ path: 'leaderStruct', parent: 'biz', component: LeaderStruct }, { path: 'leaderStruct', parent: 'biz', component: LeaderStruct },
{ path: 'pubview', parent: 'planDrill', component: PlanDrill }, // { path: 'pubview', parent: 'planDrill', component: PlanDrill },
{ path: 'textview', parent: 'planDrill', component: TextPlan }, // { path: 'textview', parent: 'planDrill', component: TextPlan },
...parseCusotmRoutes() ...parseCusotmRoutes()
]; ];
/** /**
* path mapping * path mapping
* *
......
// @author ilex.h // @author ilex.h
import RProgress from 'ray-progress'; import RProgress from 'ray-progress';
import { genOnRouteEnter, genOnRouteChange } from 'amos-designer/lib/utils/routerValidate';
import PublishView from './../view/planMgmt/view'; import PublishView from './../view/planMgmt/view';
import AutoLogin from './../view/autoLogin/AutoLogin'; import AutoLogin from './../view/autoLogin/AutoLogin';
import calcRoutes from './calcRoutes'; import calcRoutes from './calcRoutes';
import addCustomRoutes, { customRoutes, customRoutesPubView } from './customRoutes'; import addCustomRoutes, { customRoutes } from './customRoutes';
import pageCompontent, { import pageCompontent, {
RootView, RootView,
Login, Login,
...@@ -22,7 +23,6 @@ const groups = [ ...@@ -22,7 +23,6 @@ const groups = [
]; ];
const injectRoutes = menus => { const injectRoutes = menus => {
debugger
const { main = [], biz = [], console: consoleRoutes = [] } = calcRoutes(menus, pageCompontent, groups) || {}; const { main = [], biz = [], console: consoleRoutes = [] } = calcRoutes(menus, pageCompontent, groups) || {};
const mainChilds = addCustomRoutes(main); const mainChilds = addCustomRoutes(main);
const bizChilds = addCustomRoutes(biz); const bizChilds = addCustomRoutes(biz);
...@@ -58,39 +58,19 @@ const injectRoutes = menus => { ...@@ -58,39 +58,19 @@ const injectRoutes = menus => {
return routes; return routes;
}; };
const progressStart = () => { const whiteList = ['login' ,'autologin' ,'signup'];
RProgress.start();
};
const onEnterValidate = (next, replace, callback) => { const loginLink = '/login';
debugger
progressStart();
const pathname = next.location.pathname;
const flag = routerFilter({
filterPath: [].concat(signupRouters, 'login', '/autologin', 'conver/patrol','/biz/assessment/'),
pathname
});
console.log('pathname|flag', pathname, flag);
// if (!checkLogin() && flag ) {
// replace('/login');
// }
if (!flag ) {
replace('/login');
}
callback();
};
const rootRoutes = menus => { const rootRoutes = menus => {
debugger
return { return {
path: '/', path: '/',
//onEnter: onEnterValidate, onEnter: genOnRouteEnter(whiteList, loginLink),
onChange: progressStart, onChange: genOnRouteChange(whiteList, loginLink),
indexRedirect: Login, indexRedirect: Login,
indexRoute: { indexRoute: {
// component: Login,
onEnter(nextState, replace) { onEnter(nextState, replace) {
replace('/login'); replace(loginLink);
} }
}, },
childRoutes: injectRoutes(menus) childRoutes: injectRoutes(menus)
......
...@@ -4,14 +4,13 @@ import { ...@@ -4,14 +4,13 @@ import {
} from 'amos-security/lib/services'; } from 'amos-security/lib/services';
import formatUrl from 'amos-processor/lib/utils/urlFormat'; import formatUrl from 'amos-processor/lib/utils/urlFormat';
import { Store } from 'amos-tool';
import { secExtUrl } from './../consts/urlConsts'; import { secExtUrl } from './../consts/urlConsts';
import { commonGet, commonPost } from './../utils/request'; import { commonGet, commonPost, commonDelete } from './../utils/request';
import { FasSerUrl } from './../consts/urlConsts'; import { FasSerUrl } from './../consts/urlConsts';
import SecurityConsts from './../consts/securityConsts';
// export const getMenusAction = () => { const lsTool = Store.lsTool;
// const url = formatUrl(secExtUrl.opSearchMenusUrl, { nodeName: '', type: window.V3DpermissionType });
// return opSearchMenusAction(url);
// };
export const getBizMenusAction = (parentKey) => { export const getBizMenusAction = (parentKey) => {
const url = formatUrl(secExtUrl.opSearchBizMenusUrl, { code: parentKey }); const url = formatUrl(secExtUrl.opSearchBizMenusUrl, { code: parentKey });
...@@ -28,7 +27,16 @@ export const getSystemAllMenu = () => { ...@@ -28,7 +27,16 @@ export const getSystemAllMenu = () => {
}; };
export const getCurrentUser = () => { export const getCurrentUser = () => {
return commonGet(secExtUrl.currentUserUrl); const user = getUser();
if (user) {
return new Promise(resolve => {
resolve(user);
});
}
return commonGet(secExtUrl.currentUserUrl).then(user => {
saveUser(user);
return user;
});
}; };
export const regionSelectAction = (body) => { export const regionSelectAction = (body) => {
...@@ -45,4 +53,70 @@ export const getSelectedOrgInfoAction = (id) => { ...@@ -45,4 +53,70 @@ export const getSelectedOrgInfoAction = (id) => {
*/ */
export const getPermissionsMenus = (roleSeq) => { export const getPermissionsMenus = (roleSeq) => {
return commonGet(formatUrl(secExtUrl.permissionsMenusUrl, { roleSeq })); return commonGet(formatUrl(secExtUrl.permissionsMenusUrl, { roleSeq }));
};
/**
* 获取Biz 用户 菜单
*/
export const currentUserBizPermissions = () => {
const perm = getBizPermissions();
if (perm) {
return new Promise(resolve => {
resolve(perm);
});
}
return commonGet(secExtUrl.menusRoutesUrl).then(perm => {
perm = perm.filter( e => e.frontComponent === "biz")
if(perm && perm.length > 0){
const bizMenu = perm[0].children;
saveBizPermissions(bizMenu);
return bizMenu;
}
});
};
export const getBizPermissions = () => {
const perm = lsTool.read(SecurityConsts.BIZ_PERMISSION);
if (perm){
return JSON.parse(perm);
}
return null;
};
export const saveBizPermissions = (perm) => {
lsTool.write(SecurityConsts.BIZ_PERMISSION, JSON.stringify(perm));
};
/**
* 获取当前用户信息
*/
export const currentUserAction = () => {
const user = getUser();
if (user) {
return new Promise(resolve => {
resolve(user);
});
}
return commonGet(secExtUrl.userInfoUrl).then(user => {
saveUser(user);
return user;
});
};
export const getUser = () => {
const user = lsTool.read(SecurityConsts.USER);
if (user){
return JSON.parse(user);
}
return null;
};
export const saveUser = (user) => {
lsTool.write(SecurityConsts.USER, JSON.stringify(user));
};
export const logoutAction = () => {
// 清空所有
lsTool.clearAll();
return commonDelete(secExtUrl.loginOutUrl);
}; };
\ No newline at end of file
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
background: $core-color; background: $core-color;
.sys-tools { .sys-tools {
display: none; //display: none;
} }
.header-row { .header-row {
......
export default function(data, delRequest){ export default function(data, delRequest){
window.setLoading && window.setLoading(false); window.setLoading && window.setLoading(false);
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
debugger
if (data) { if (data) {
if (data.dataList || data.dataList === null){ if (data.dataList || data.dataList === null){
if(data.result==='SUCCESS'){ if(data.result==='SUCCESS'){
......
...@@ -28,7 +28,6 @@ const compleHeaders = () => { ...@@ -28,7 +28,6 @@ const compleHeaders = () => {
* 获取 token * 获取 token
*/ */
const getToken = () => { const getToken = () => {
debugger
return lsTool.read(SysConsts.token); return lsTool.read(SysConsts.token);
} }
......
...@@ -43,14 +43,12 @@ class UserSetting extends Component { ...@@ -43,14 +43,12 @@ class UserSetting extends Component {
this.getSelectedOrgInfo(); this.getSelectedOrgInfo();
} }
componentWillReceiveProps(nextProps) { componentWillReceiveProps(nextProps) {
debugger
if (nextProps.isLoginout) { if (nextProps.isLoginout) {
browserHistory.push('/login'); browserHistory.push('/login');
} }
} }
getSelectedOrgInfo =()=>{ getSelectedOrgInfo =()=>{
debugger
getSelectedOrgInfoAction().then(data=>{ getSelectedOrgInfoAction().then(data=>{
// const { user } = this.state; // const { user } = this.state;
// user.company = data.company; // user.company = data.company;
......
...@@ -29,7 +29,6 @@ class StatisticsMarkerIcon extends Component { ...@@ -29,7 +29,6 @@ class StatisticsMarkerIcon extends Component {
}; };
renderTitle = statistics => { renderTitle = statistics => {
// debugger
const style = { const style = {
background: `url(${getIcon(statistics.level)}) no-repeat`, background: `url(${getIcon(statistics.level)}) no-repeat`,
backgroundSize: 'contain' backgroundSize: 'contain'
......
...@@ -37,7 +37,6 @@ class AutoLogin extends Component { ...@@ -37,7 +37,6 @@ class AutoLogin extends Component {
// } // }
componentWillMount() { componentWillMount() {
debugger
let token = LocationParam.getLocationParamByName('token'); let token = LocationParam.getLocationParamByName('token');
if (token) { if (token) {
browserHistory.push('/region'); browserHistory.push('/region');
......
import React, { Component } from 'react'; import React, { Component } from 'react';
import { browserHistory } from 'amos-react-router'; import { browserHistory } from 'amos-react-router';
import { utils, Store } from 'amos-tool'; import { utils, Store } from 'amos-tool';
import MainFrame from '../common/mainframe'; // import MainFrame from '../common/mainframe';
import { MainFrame } from 'amos-designer';
import formatUrl from 'amos-processor/lib/utils/urlFormat'; import formatUrl from 'amos-processor/lib/utils/urlFormat';
import { Connect, IFrame } from 'amos-framework'; import { Connect, IFrame, Toast, Menu } from 'amos-framework';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import storageConsts, { CONSTS } from './../../consts/storageConsts'; import storageConsts, { CONSTS } from './../../consts/storageConsts';
import { secExtUrl, SecurityUrl, getOutterURL } from './../../consts/urlConsts'; import { secExtUrl, SecurityUrl, getOutterURL } from './../../consts/urlConsts';
import { pathMapping } from './../../routes/customRoutes'; import { pathMapping } from './../../routes/customRoutes';
import { getCurrentUser, currentUserBizPermissions, logoutAction } from './../../services/securityService'
import imgStatic from './../../consts/imgStatic';
import '../../styles/view/mainframe/mainframe.scss'; import '../../styles/view/mainframe/mainframe.scss';
const enhanceStorage = Connect.enhanceStorage; const enhanceStorage = Connect.enhanceStorage;
const lsTool = Store.lsTool; const lsTool = Store.lsTool;
const MenuItem = Menu.Item;
@enhanceStorage({ @enhanceStorage({
storageItems: storageConsts(CONSTS) storageItems: storageConsts(CONSTS)
...@@ -147,7 +151,6 @@ class BizFrame extends Component { ...@@ -147,7 +151,6 @@ class BizFrame extends Component {
getFrameConfig = () => { getFrameConfig = () => {
debugger
return { return {
opSearchMenusUrl: formatUrl(secExtUrl.opSearchMenusUrl, { nodeName: '', type: window.BizPermissionType }), opSearchMenusUrl: formatUrl(secExtUrl.opSearchMenusUrl, { nodeName: '', type: window.BizPermissionType }),
defaultLink: '/biz', defaultLink: '/biz',
...@@ -158,18 +161,35 @@ class BizFrame extends Component { ...@@ -158,18 +161,35 @@ class BizFrame extends Component {
getSysToolProps = () => { getSysToolProps = () => {
return { return {
userPic: require('./../../assets/user/normal.png'), userPic: require('./../../assets/user/normal.png'),
loginOutUrl: SecurityUrl.loginOutUrl, // userExtra: true,
userInfoLink: '/main/securityConfig', loginLink: '/login',
userExtra: true, currentUserAction:getCurrentUser,
height: '350px' // 自行处理注销
handleLogout: this.handleLogOut
}; };
}; };
handleLogOut = () => {
logoutAction().then(d => {
browserHistory.push('/login');
Toast.success({
title: '注销成功'
});
}, err => {
Toast.error({
title: '错误',
cotnent: err || '注销错误!'
});
browserHistory.push('/login');
});
};
render() { render() {
const frameConfig = this.getFrameConfig(); const frameConfig = this.getFrameConfig();
const sysToolPorps = this.getSysToolProps(); const sysToolPorps = this.getSysToolProps();
const { siderMenusList, selectedSubMenuKey, showPrePlan } = this.state; const { siderMenusList, selectedSubMenuKey, showPrePlan } = this.state;
const url = formatUrl(getOutterURL('prePlan')); const url = formatUrl(getOutterURL('prePlan'));
if (showPrePlan) { if (showPrePlan) {
return ( return (
<IFrame <IFrame
...@@ -182,15 +202,22 @@ class BizFrame extends Component { ...@@ -182,15 +202,22 @@ class BizFrame extends Component {
scrolling="auto" scrolling="auto"
/>); />);
} else { } else {
return (<MainFrame return (
{...frameConfig} // <MainFrame
onMenuLoadCompleted={this.openDefaultPage} // {...frameConfig}
sysToolPorps={sysToolPorps} // onMenuLoadCompleted={this.openDefaultPage}
siderMenusList={siderMenusList} // sysToolPorps={sysToolPorps}
selectedSubMenuKey={selectedSubMenuKey} // siderMenusList={siderMenusList}
// menuWidth="160px" // selectedSubMenuKey={selectedSubMenuKey}
// // menuWidth="160px"
// {...this.props}
// />
<MainFrame
{...this.props} {...this.props}
/>); userMenusAction={currentUserBizPermissions}
sysToolPorps={sysToolPorps}
/>
);
} }
} }
} }
......
...@@ -34,7 +34,6 @@ class RootView extends Component { ...@@ -34,7 +34,6 @@ class RootView extends Component {
}; };
getFrameConfig = () => { getFrameConfig = () => {
debugger
return { return {
opSearchMenusUrl: formatUrl(secExtUrl.opSearchMenusUrl, { nodeName: '', type: window.V3DpermissionType }), opSearchMenusUrl: formatUrl(secExtUrl.opSearchMenusUrl, { nodeName: '', type: window.V3DpermissionType }),
//logoImg: require('./../../assets/logo/amos-logo.png'), //logoImg: require('./../../assets/logo/amos-logo.png'),
......
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