A web update

pull/22/head
雷二猛 2019-12-23 00:18:50 +08:00
parent 21d20ba42a
commit 2d14919cb4
2 changed files with 18 additions and 7 deletions

View File

@ -36,7 +36,7 @@ class Index extends React.Component {
this.setState({loading: true});
http.post(`/api/deploy/request/${this.id}/`)
.then(({token, outputs, targets}) => {
store.request.status = '3';
store.request.status = '2';
store.outputs = outputs;
store.targets = targets;
this.socket = new WebSocket(`ws://localhost:8000/ws/exec/${token}/`);
@ -74,7 +74,7 @@ class Index extends React.Component {
if (store.targets.length !== 0) {
for (let item of [{id: 'local'}, ...store.targets]) {
if (lds.get(store.outputs, `${item.id}.status`) === 'error') {
return <Tag color="orange">发布异常</Tag>
return <Tag color="red">发布异常</Tag>
} else if (lds.get(store.outputs, `${item.id}.step`, -1) < 5) {
return <Tag color="blue">发布中</Tag>
}
@ -94,7 +94,7 @@ class Index extends React.Component {
subTitle={`${app_name} - ${env_name}`}
style={{padding: 0}}
tags={this.getStatusAlias()}
extra={<Button loading={this.state.loading} type="primary" disabled={status !== '2'}
extra={<Button loading={this.state.loading} type="primary" disabled={!['1', '-3'].includes(status)}
onClick={this.handleDeploy}>发布</Button>}
onBack={() => history.goBack()}/>
<Collapse defaultActiveKey={1} className={styles.collapse}>

View File

@ -1,7 +1,7 @@
import React from 'react';
import { Link } from 'react-router-dom';
import { observer } from 'mobx-react';
import { Table, Divider, Modal, Icon, Popover, message } from 'antd';
import { Table, Divider, Modal, Icon, Popover, Tag, message } from 'antd';
import http from 'libs/http';
import store from './store';
import { LinkButton } from "components";
@ -48,10 +48,16 @@ class ComTable extends React.Component {
return <Popover title="驳回原因:" content={info.reason}>
<span style={{color: '#1890ff'}}>{info['status_alias']}</span>
</Popover>
} else if (info.status === '2' && info.reason) {
} else if (info.status === '1' && info.reason) {
return <Popover title="审核意见:" content={info.reason}>
<span style={{color: '#1890ff'}}>{info['status_alias']}</span>
</Popover>
} else if (info.status === '2') {
return <Tag color="blue">{info['status_alias']}</Tag>
} else if (info.status === '3') {
return <Tag color="green">{info['status_alias']}</Tag>
} else if (info.status === '-3') {
return <Tag color="red">{info['status_alias']}</Tag>
} else {
return info['status_alias']
}
@ -67,6 +73,11 @@ class ComTable extends React.Component {
render: info => {
switch (info.status) {
case '-3':
return <React.Fragment>
<Link to={`/deploy/do/${info.id}`}>发布</Link>
<Divider type="vertical"/>
<LinkButton onClick={() => store.showForm(info)}>回滚</LinkButton>
</React.Fragment>;
case '3':
return <LinkButton onClick={() => store.showForm(info)}>回滚</LinkButton>;
case '-1':
@ -75,7 +86,7 @@ class ComTable extends React.Component {
<Divider type="vertical"/>
<LinkButton onClick={() => this.handleDelete(info)}>删除</LinkButton>
</React.Fragment>;
case '1':
case '0':
return <React.Fragment>
<LinkButton onClick={() => store.showApprove(info)}>审核</LinkButton>
<Divider type="vertical"/>
@ -83,7 +94,7 @@ class ComTable extends React.Component {
<Divider type="vertical"/>
<LinkButton onClick={() => this.handleDelete(info)}>删除</LinkButton>
</React.Fragment>
case '2':
case '1':
return <React.Fragment>
<Link to={`/deploy/do/${info.id}`}>发布</Link>
<Divider type="vertical"/>