feat: 开始项目token

This commit is contained in:
gaoxiaolin.gao 2018-02-09 10:34:43 +08:00
parent 17fa45ffd2
commit 87902b93d1
9 changed files with 48 additions and 7 deletions

View File

@ -188,7 +188,7 @@ class TimeTree extends Component {
other: "其他"
};
console.log('apiList',this.state.apiList);
const children = this.state.apiList.map((item) => {
let methodColor = variable.METHOD_COLOR[item.method ? item.method.toLowerCase() : 'get'];

View File

@ -14,7 +14,7 @@ import { fetchNewsData } from '../../reducer/modules/news.js';
import './Group.scss';
@connect(
state => {
return {
return {
curGroupId: state.group.currGroup._id,
curUserRole: state.user.role,
curUserRoleInGroup: state.group.currGroup.role || state.group.role,

View File

@ -362,6 +362,10 @@ export default class InterfaceColMenu extends Component {
this.setState({ delIcon: id })
}
leaveItem = () => {
this.setState({ delIcon: null })
}
render() {
// const { currColId, currCaseId, isShowCol } = this.props;
const { colModalType, colModalVisible, importInterVisible } = this.state;
@ -420,7 +424,7 @@ export default class InterfaceColMenu extends Component {
style={{ width: '100%' }}
key={'case_' + interfaceCase._id}
title={
<div className="menu-title" onMouseEnter={() => this.enterItem(interfaceCase._id)} title={interfaceCase.casename}>
<div className="menu-title" onMouseEnter={() => this.enterItem(interfaceCase._id)} onMouseLeave={this.leaveItem} title={interfaceCase.casename}>
<span className="casename">{interfaceCase.casename}</span>
<Tooltip title="删除用例">
<Icon type='delete' className="case-delete-icon" onClick={(e) => { e.stopPropagation(); this.showDelCaseConfirm(interfaceCase._id) }} style={{ display: this.state.delIcon == interfaceCase._id ? 'block' : 'none' }} />

View File

@ -951,7 +951,7 @@ class InterfaceEditForm extends Component {
label={(
<span>
开放接口&nbsp;
<Tooltip title={'用户可以在数据导出时选择导出全部接口或者只导出公开接口'}>
<Tooltip title={'用户可以在 数据导出 时选择只导出公开接口'}>
<Icon type="question-circle-o" style={{ width: "10px" }} />
</Tooltip>

View File

@ -316,7 +316,6 @@ class ProjectData extends Component {
// console.log('inter', this.state.exportContent);
return (
<div className="g-row">
<div className="m-panel">
<div className="postman-dataImport">
<div className="dataImportCon">

View File

@ -1,6 +1,6 @@
.m-env-panel {
// padding-top: 8px;
min-height: 4.68px;
min-height: 4.68rem;
margin-top: 0;
background-color: #fff;
}

View File

@ -0,0 +1,15 @@
import React, {Component} from 'react'
import PropTypes from 'prop-types'
import './ProjectToken.scss'
class ProjectToken extends Component {
render() {
return (
<div className="project-token"></div>
)
}
}
export default ProjectToken

View File

@ -0,0 +1,5 @@
.project-token {
background: #fff;
padding: 15px;
min-height: 4.68rem;
}

View File

@ -4,16 +4,28 @@ import PropTypes from 'prop-types';
import ProjectMessage from './ProjectMessage/ProjectMessage.js';
import ProjectEnv from './ProjectEnv/index.js';
import ProjectRequest from './ProjectRequest/ProjectRequest';
import ProjectToken from './ProjectToken/ProjectToken';
import { connect } from 'react-redux'
const TabPane = Tabs.TabPane;
import './Setting.scss';
@connect(
state => {
return {
curProjectRole: state.project.currProject.role
}
}
)
class Setting extends Component {
static propTypes = {
match: PropTypes.object
match: PropTypes.object,
curProjectRole: PropTypes.string
}
render () {
const id = this.props.match.params.id;
console.log('curProjectRole',this.props.curProjectRole);
return (
<div className="g-row">
<Tabs size="large" type="card" className="has-affix-footer">
@ -26,6 +38,12 @@ class Setting extends Component {
<TabPane tab="请求配置" key="3">
<ProjectRequest projectId={+id} />
</TabPane>
{
(this.props.curProjectRole === "admin" || this.props.curProjectRole === 'owner') ?
<TabPane tab="token" key="4">
<ProjectToken projectId={+id} />
</TabPane> : null
}
</Tabs>
</div>
)