|
|
|
@ -43,6 +43,11 @@ class merge extends Component{
|
|
|
|
|
//设置选择高亮
|
|
|
|
|
openselect:1,
|
|
|
|
|
closeselect:undefined,
|
|
|
|
|
issue_tag_ids:'标签筛选',
|
|
|
|
|
issue_versions:'里程碑筛选',
|
|
|
|
|
assigned_to_ids:'指派人筛选',
|
|
|
|
|
paix:'排序'
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -67,12 +72,12 @@ class merge extends Component{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 获取列表数据
|
|
|
|
|
getIssueList=(page,limit,search,author_id,assigned_to_id,id,value,status_type)=>{
|
|
|
|
|
getIssueList=(page,limit,search,author_id,assigned_to_id,id,value,status_type,order_type,order_name)=>{
|
|
|
|
|
const { projectsId } = this.props.match.params;
|
|
|
|
|
const url = `/projects/${projectsId}/pull_requests.json`;
|
|
|
|
|
axios.get(url,{
|
|
|
|
|
params:{
|
|
|
|
|
page,limit,search,author_id,assigned_to_id,status_type,
|
|
|
|
|
page,limit,search,author_id,assigned_to_id,status_type,order_type,order_name,
|
|
|
|
|
[id]:value
|
|
|
|
|
}
|
|
|
|
|
}).then((result)=>{
|
|
|
|
@ -89,7 +94,25 @@ class merge extends Component{
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
getOption=(e,id)=>{
|
|
|
|
|
getOption=(e,id,name)=>{
|
|
|
|
|
if(id+'s'==="issue_tag_ids"){
|
|
|
|
|
this.setState({
|
|
|
|
|
[id]:e.key,
|
|
|
|
|
issue_tag_ids:name
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
if(id+'s'==="issue_versions"){
|
|
|
|
|
this.setState({
|
|
|
|
|
[id]:e.key,
|
|
|
|
|
issue_versions:name
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
if(id+'s'==="assigned_to_ids"){
|
|
|
|
|
this.setState({
|
|
|
|
|
[id]:e.key,
|
|
|
|
|
assigned_to_ids:name
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
this.setState({
|
|
|
|
|
[id]:e.key
|
|
|
|
|
})
|
|
|
|
@ -104,11 +127,11 @@ class merge extends Component{
|
|
|
|
|
renderMenu =(array,name,id)=>{
|
|
|
|
|
return(
|
|
|
|
|
<Menu>
|
|
|
|
|
<Menu.Item key={"all"} onClick={(e)=>this.getOption(e,id)}>{name}</Menu.Item>
|
|
|
|
|
<Menu.Item key={"all"} onClick={(e)=>this.getOption(e,id,name)}>{name}</Menu.Item>
|
|
|
|
|
{
|
|
|
|
|
array && array.length > 0 && array.map((item,key)=>{
|
|
|
|
|
return(
|
|
|
|
|
<Menu.Item key={item.id} onClick={(e)=>this.getOption(e,id)}>{item.name}</Menu.Item>
|
|
|
|
|
<Menu.Item key={item.id} onClick={(e)=>this.getOption(e,id,item.name)}>{item.name}</Menu.Item>
|
|
|
|
|
)
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
@ -160,39 +183,35 @@ class merge extends Component{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 筛选:全部、指派给我、由我创建
|
|
|
|
|
ChangeAssign=(type)=>{
|
|
|
|
|
arrayList=(e)=>{
|
|
|
|
|
const { limit, search} = this.state;
|
|
|
|
|
this.setState({
|
|
|
|
|
isSpin:true
|
|
|
|
|
})
|
|
|
|
|
if(type){
|
|
|
|
|
const { current_user } = this.props;
|
|
|
|
|
if(type===1){
|
|
|
|
|
if(e.key==='created_on'){
|
|
|
|
|
if(e.item.props.value==="desc"){
|
|
|
|
|
this.setState({
|
|
|
|
|
page:1,
|
|
|
|
|
author_id:undefined,
|
|
|
|
|
assigned_to_id:current_user.user_id
|
|
|
|
|
paix:'到期日从近到远'
|
|
|
|
|
})
|
|
|
|
|
this.getIssueList(1,limit,search,undefined,current_user.user_id);
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
this.setState({
|
|
|
|
|
page:1,
|
|
|
|
|
author_id:current_user.user_id,
|
|
|
|
|
assigned_to_id:undefined
|
|
|
|
|
paix:'到期日从远到近'
|
|
|
|
|
})
|
|
|
|
|
this.getIssueList(1,limit,search,current_user.user_id,undefined);
|
|
|
|
|
}
|
|
|
|
|
}else{
|
|
|
|
|
this.setState({
|
|
|
|
|
page:1,
|
|
|
|
|
author_id:undefined,
|
|
|
|
|
assigned_to_id:undefined
|
|
|
|
|
})
|
|
|
|
|
this.getIssueList(1,limit,search,undefined,undefined);
|
|
|
|
|
if(e.item.props.value==="desc"){
|
|
|
|
|
this.setState({
|
|
|
|
|
paix:'完成度从低到高'
|
|
|
|
|
})
|
|
|
|
|
}else{
|
|
|
|
|
this.setState({
|
|
|
|
|
paix:'完成度从高到低'
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.setState({
|
|
|
|
|
order_name:e.key,
|
|
|
|
|
order_type:e.item.props.value
|
|
|
|
|
})
|
|
|
|
|
this.getIssueList(1,limit,search,undefined,undefined,undefined,undefined,undefined, e.item.props.value,e.key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
render(){
|
|
|
|
@ -202,12 +221,10 @@ class merge extends Component{
|
|
|
|
|
|
|
|
|
|
const menu = (
|
|
|
|
|
<Menu onClick={this.arrayList}>
|
|
|
|
|
<Menu.Item key={'created_at'} value="desc">到期日从近到远</Menu.Item>
|
|
|
|
|
<Menu.Item key={'created_at'} value="asc">到期日从远到近</Menu.Item>
|
|
|
|
|
<Menu.Item key={'issues_count'} value="desc">完成度从低到高</Menu.Item>
|
|
|
|
|
<Menu.Item key={'issues_count'} value="asc">完成度从高到低</Menu.Item>
|
|
|
|
|
<Menu.Item key={'issues_count'} value="asc">工单从多到少</Menu.Item>
|
|
|
|
|
<Menu.Item key={'issues_count'} value="asc">工单从少到多</Menu.Item>
|
|
|
|
|
<Menu.Item key={'created_on'} value="desc">到期日从近到远</Menu.Item>
|
|
|
|
|
<Menu.Item key={'created_on'} value="asc">到期日从远到近</Menu.Item>
|
|
|
|
|
<Menu.Item key={'updated_on'} value="desc">完成度从低到高</Menu.Item>
|
|
|
|
|
<Menu.Item key={'updated_on'} value="asc">完成度从高到低</Menu.Item>
|
|
|
|
|
</Menu>
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
@ -251,27 +268,23 @@ class merge extends Component{
|
|
|
|
|
<ul className="topWrapper_select">
|
|
|
|
|
<li>
|
|
|
|
|
<Dropdown className="topWrapperSelect" overlay={this.renderMenu(issue_chosen && issue_chosen.issue_tag,'标签','issue_tag_id')} trigger={['click']} placement="bottomCenter">
|
|
|
|
|
<span>标签筛选<Icon type="caret-down" className="ml5" /></span>
|
|
|
|
|
<span>{this.state.issue_tag_ids}<Icon type="caret-down" className="ml5" /></span>
|
|
|
|
|
</Dropdown>
|
|
|
|
|
</li>
|
|
|
|
|
<li>
|
|
|
|
|
<Dropdown className="topWrapperSelect" overlay={this.renderMenu(issue_chosen && issue_chosen.issue_version,'里程碑','issue_version')} trigger={['click']} placement="bottomCenter">
|
|
|
|
|
<span>里程碑筛选<Icon type="caret-down" className="ml5" /></span>
|
|
|
|
|
<span>{this.state.issue_versions}<Icon type="caret-down" className="ml5" /></span>
|
|
|
|
|
</Dropdown>
|
|
|
|
|
</li>
|
|
|
|
|
<li>
|
|
|
|
|
<Dropdown className="topWrapperSelect" overlay={this.renderMenu(issue_chosen && issue_chosen.assign_user,'指派人','assigned_to_id')} trigger={['click']} placement="bottomCenter">
|
|
|
|
|
<span>指派人筛选<Icon type="caret-down" className="ml5" /></span>
|
|
|
|
|
</Dropdown>
|
|
|
|
|
</li>
|
|
|
|
|
<li>
|
|
|
|
|
<Dropdown className="topWrapperSelect" overlay={this.renderMenu(issue_chosen && issue_chosen.issue_type,'类型','issue_type')} trigger={['click']} placement="bottomCenter">
|
|
|
|
|
<span>类型筛选<Icon type="caret-down" className="ml5" /></span>
|
|
|
|
|
<span>{this.state.assigned_to_ids}<Icon type="caret-down" className="ml5" /></span>
|
|
|
|
|
</Dropdown>
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li>
|
|
|
|
|
<Dropdown className="topWrapperSelect" overlay={menu} trigger={['click']} placement="bottomCenter">
|
|
|
|
|
<span>排序<Icon type="caret-down" className="ml5" /></span>
|
|
|
|
|
<span>{this.state.paix}<Icon type="caret-down" className="ml5" /></span>
|
|
|
|
|
</Dropdown>
|
|
|
|
|
</li>
|
|
|
|
|
</ul>
|
|
|
|
|