forgeplus-react/src/forge/Merge/UpdateMerge.js

120 lines
3.9 KiB
JavaScript
Raw Normal View History

2020-06-12 17:58:58 +08:00
import React, { Component } from "react";
import { Input, Select, Button, Spin, Empty } from "antd";
import axios from "axios";
import "../Order/order.css";
import "./merge.css";
import MergeForm from "./merge_form";
import MergeFooter from "./merge_footer";
2020-03-16 14:12:11 +08:00
const Option = Select.Option;
2020-05-07 10:10:13 +08:00
class UpdateMerge extends Component {
constructor(props) {
2020-03-16 14:12:11 +08:00
super(props);
2020-05-07 10:10:13 +08:00
this.state = {
data: undefined,
2020-06-12 17:58:58 +08:00
merge: undefined,
pull: undefined,
isSpin: false,
};
2020-03-16 14:12:11 +08:00
}
2020-05-07 10:10:13 +08:00
componentDidMount = () => {
2020-06-12 17:58:58 +08:00
this.getmergelist();
};
2020-03-16 14:12:11 +08:00
2020-06-12 17:58:58 +08:00
//获取新建分枝数据
getmergelist = () => {
this.setState({ isSpin: true });
2020-08-12 18:13:18 +08:00
const { projectsId, mergeId , owner } = this.props.match.params;
const url = `/${owner}/${projectsId}/pulls/${mergeId}/edit.json`;
2020-06-12 17:58:58 +08:00
axios
.get(url)
.then((result) => {
if (result) {
this.setState({
isSpin: false,
data: result.data,
pull: result.data.head,
merge: result.data.base,
});
} else {
this.setState({
isSpin: false,
});
2020-05-07 10:10:13 +08:00
}
2020-06-12 17:58:58 +08:00
})
.catch((error) => {
this.setState({
isSpin: false,
});
2020-06-12 17:58:58 +08:00
console.log(error);
});
};
2020-03-16 14:12:11 +08:00
2020-05-07 10:10:13 +08:00
render() {
2020-06-12 17:58:58 +08:00
const { data, isSpin, pull, merge } = this.state;
2020-05-07 10:10:13 +08:00
return (
2020-06-12 17:58:58 +08:00
<div>
<div className="main">
<Spin spinning={isSpin}>
{" "}
2020-06-12 17:58:58 +08:00
{data ? (
<div>
<div className="merge-header width100 inline-block">
<div className="width45 pull-left">
<div className="color-grey-3 mb10 fwb">源分支:</div>
2020-06-30 10:08:36 +08:00
2020-06-12 18:46:55 +08:00
<Input.Group compact className="display-flex">
2021-10-20 16:26:23 +08:00
<Button className="merge-header-button flex1 maxW50 hide-1 task-hide" disabled>
2020-06-30 10:08:36 +08:00
{data.is_original ? `${data.fork_project_user_name}/${data.fork_project_identifier}` : `${data.project_author}/${data.project_name}`}
2020-06-12 17:58:58 +08:00
</Button>
<Select
2020-06-30 10:08:36 +08:00
defaultValue={data.is_original ? `${data.fork_project_user}:${pull}` : `${pull}`}
2021-10-20 16:26:23 +08:00
className="minW50 merge-flex1 flex1 matchwidth"
2020-06-12 17:58:58 +08:00
disabled
></Select>{" "}
</Input.Group>{" "}
</div>{" "}
2020-06-12 17:58:58 +08:00
<div className="width10 pull-left text-center mt25">
<i
className={"iconfont icon-youjiang color-grey-c font-32"}
></i>{" "}
</div>{" "}
2020-06-12 17:58:58 +08:00
<div className="width45 pull-left">
<div>
<div className="color-grey-3 mb10 fwb"> 目标分支 : </div>{" "}
2020-06-12 18:46:55 +08:00
<Input.Group compact className="display-flex">
2021-10-20 16:26:23 +08:00
<Button className="merge-header-button flex1 maxW50 hide-1 task-hide" disabled>
2020-06-30 10:08:36 +08:00
{`${data.project_author}/${data.project_name}`}
2020-06-12 17:58:58 +08:00
</Button>
<Select
2020-06-30 10:08:36 +08:00
defaultValue={data.is_original ? `${data.project_login}:${merge}` : `${merge}`}
2021-10-20 16:26:23 +08:00
className="minW50 merge-flex1 flex1 matchwidth"
2020-06-12 17:58:58 +08:00
disabled
></Select>{" "}
</Input.Group>{" "}
</div>{" "}
</div>{" "}
2020-05-07 10:10:13 +08:00
</div>
2020-06-12 17:58:58 +08:00
<MergeForm
{...this.props}
merge_type="edit"
data={data}
merge={merge}
pull={pull}
></MergeForm>{" "}
2020-05-07 10:10:13 +08:00
</div>
2020-06-12 17:58:58 +08:00
) : (
""
)}
</Spin>
</div>
2020-06-30 10:08:36 +08:00
{/* <div className=" main">
2020-06-12 17:58:58 +08:00
<MergeFooter footer_type="new" {...this.props}></MergeFooter>
2020-06-30 10:08:36 +08:00
</div> */}
2020-03-16 14:12:11 +08:00
</div>
2020-06-12 17:58:58 +08:00
);
2020-03-16 14:12:11 +08:00
}
}
2020-06-12 17:58:58 +08:00
export default UpdateMerge;