Merge branch 'forge' of https://bdgit.educoder.net/Hjqreturn/educoder into forge
commit
83cdc12591
@ -0,0 +1,56 @@
|
||||
import React , {Component} from 'react';
|
||||
import {Link} from 'react-router-dom';
|
||||
|
||||
import axios from 'axios';
|
||||
import Nav from './Nav';
|
||||
|
||||
|
||||
class Detail extends Component{
|
||||
constructor(props){
|
||||
super(props);
|
||||
this.state={
|
||||
data:undefined
|
||||
}
|
||||
}
|
||||
|
||||
componentDidMount=()=>{
|
||||
this.getDetail();
|
||||
}
|
||||
|
||||
getDetail=()=>{
|
||||
const { projectsId , orderId} = this.props.match.params;
|
||||
const url = `/projects/${projectsId}/issues/${orderId}.json`;
|
||||
axios.get(url).then((result)=>{
|
||||
if(result){
|
||||
|
||||
}
|
||||
}).catch((error)=>{
|
||||
console.log(error);
|
||||
})
|
||||
}
|
||||
|
||||
render(){
|
||||
const { projectsId } = this.props.match.params;
|
||||
|
||||
return(
|
||||
<div className="main">
|
||||
<div className="topWrapper">
|
||||
<Nav {...this.props} {...this.state}/>
|
||||
<Link to={`/projects/${projectsId}/orders/new`} className="topWrapper_btn">创建工单</Link>
|
||||
</div>
|
||||
<div>
|
||||
<div className="detailContent">
|
||||
<p>
|
||||
<span className="font-16">科技生活</span>
|
||||
<a onClick={this.editOrder} className="color-blue fr">编辑</a>
|
||||
</p>
|
||||
<p className="mt10">
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
}
|
||||
export default Detail;
|
@ -0,0 +1,134 @@
|
||||
import React , {Component} from 'react';
|
||||
import { Dropdown , Icon , Menu , Pagination } from 'antd';
|
||||
import { Link } from 'react-router-dom';
|
||||
import Nav from './Nav';
|
||||
import NoneData from '../../modules/courses/coursesPublic/NoneData';
|
||||
|
||||
import axios from 'axios';
|
||||
class Tags extends Component{
|
||||
constructor(props){
|
||||
super(props);
|
||||
this.state={
|
||||
data:undefined,
|
||||
limit:15,
|
||||
page:1,
|
||||
order_name:undefined,
|
||||
order_type:undefined
|
||||
}
|
||||
}
|
||||
|
||||
componentDidMount=()=>{
|
||||
this.getList();
|
||||
}
|
||||
|
||||
getList=(page,order_name,order_type)=>{
|
||||
const { projectsId } = this.props.match.params;
|
||||
const { limit } = this.state;
|
||||
const url = `/projects/${projectsId}/issue_tags.json`;
|
||||
axios.get(url,{
|
||||
params:{
|
||||
page,limit,order_name,order_type
|
||||
}
|
||||
}).then((result)=>{
|
||||
if(result){
|
||||
this.setState({
|
||||
data:result.data
|
||||
})
|
||||
}
|
||||
}).catch((error)=>{
|
||||
console.log(error);
|
||||
})
|
||||
}
|
||||
|
||||
ChangePage=(page)=>{
|
||||
this.setState({
|
||||
page
|
||||
})
|
||||
|
||||
this.getList(page);
|
||||
}
|
||||
|
||||
// 排序
|
||||
arrayList=(e)=>{
|
||||
this.setState({
|
||||
order_name:e.key,
|
||||
order_type:e.item.props.value
|
||||
})
|
||||
|
||||
this.getList(1,e.key,e.item.props.value);
|
||||
}
|
||||
|
||||
render(){
|
||||
const { data , limit , page } = this.state;
|
||||
const { projectsId } = this.props.match.params;
|
||||
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">按issue个数降序排序</Menu.Item>
|
||||
<Menu.Item key={'issues_count'} value="asc">按issue个数升序排序</Menu.Item>
|
||||
</Menu>
|
||||
)
|
||||
const Paginations = (
|
||||
<React.Fragment>
|
||||
{
|
||||
data && data.issue_tags_count > limit ?
|
||||
<div className="mt30 mb50 edu-txt-center">
|
||||
<Pagination simple defaultCurrent={page} total={data && data.issue_tags_count} pageSize={limit} onChange={this.ChangePage}></Pagination>
|
||||
</div>:""
|
||||
}
|
||||
</React.Fragment>
|
||||
)
|
||||
|
||||
const renderList =()=>{
|
||||
if(data && data.issue_tags && data.issue_tags.length>0 ){
|
||||
return(
|
||||
<div className="tagList">
|
||||
{
|
||||
data.issue_tags.map((item,key)=>{
|
||||
return(
|
||||
<div>
|
||||
<span className="f-wrap-alignCenter">
|
||||
<span style={{backgroundColor:`${item.color}`}} className="tagColor"></span>
|
||||
{item.name}
|
||||
</span>
|
||||
<span className="hide-1">{item.description}</span>
|
||||
<span>{item.issues_count}个开启的工单</span>
|
||||
</div>
|
||||
)
|
||||
})
|
||||
}
|
||||
</div>
|
||||
)
|
||||
}else{
|
||||
return(
|
||||
<NoneData />
|
||||
)
|
||||
}
|
||||
}
|
||||
return(
|
||||
<div className="main">
|
||||
<div>
|
||||
<div className="topWrapper">
|
||||
<Nav {...this.props} {...this.state} />
|
||||
<Link to={`/projects/${projectsId}/orders/new`} className="topWrapper_btn">新建标签</Link>
|
||||
</div>
|
||||
<div className="topWrapper">
|
||||
<span>共{ data && data.issue_tags_count }个标签</span>
|
||||
<ul className="topWrapper_select">
|
||||
<li>
|
||||
<Dropdown className="topWrapperSelect" overlay={menu} trigger={['click']} placement="bottomCenter">
|
||||
<span>标签<Icon type="caret-down" className="ml5" /></span>
|
||||
</Dropdown>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
{ renderList() }
|
||||
{ Paginations }
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
}
|
||||
export default Tags;
|
Loading…
Reference in new issue