import React,{Component} from 'react';
import {Button, Input, Spin, Table, Select, message, Popconfirm, Modal, Tag} from "antd";
import $ from "jquery/src/ajax";
import {
getPicPath
} from "@/tools.js";
import ActivityOperation from './components/activityOperation';
class Activity extends Component{
constructor(props) {
super(props);
this.state={
loading: false,
title: '',
releaseStatus: '',
pageNo: 1,
dataSource: [],
imgeditvisible: false,
maximg: '',
pagination: {
defaultCurrent: 1,
defaultPageSize: 10,
showQuickJumper: true,
pageSize: 10,
onChange: function(page) {
this.loadData(page);
}.bind(this),
showTotal: function(total) {
return "共" + total + "条数据";
}
},
activityId:'',
columns: [
{
title: "序号",
dataIndex: "key",
key: "key",
render: (v,a,k) => {
return (
(this.state.pageNo-1)*10+k+1
)
}
},
{
title: "标题",
dataIndex: "title",
key: "title"
},
{
title: "缩略图",
dataIndex: "pictureUrl",
key: "pictureUrl",
render: url => {
let path = getPicPath(globalConfig.avatarUploadHost, url);
return (
);
}
},
{
title: "是否发布",
dataIndex: "releaseStatus",
key: "releaseStatus",
render: text => {
return (
{text === 0 ? 未发布 : text === 1 ? 已发布 : 未知}
)
}
},
{
title: "排序",
dataIndex: "sort",
key: "sort"
},
{
title: "操作",
dataIndex: "id",
key: "id",
render: (text,record) => {
return (
{e.stopPropagation();this.delete(text);}}
okText="是"
cancelText="否"
>
{(record.releaseStatus === 0 || record.releaseStatus === 1) && }
)
}
},
],
visible: false,
}
this.loadData = this.loadData.bind(this);
this.reset = this.reset.bind(this);
}
imghandleCancel() {
this.setState({
imgeditvisible: false
});
}
loadData(pageNo) {
this.setState({
loading: true,
});
//发送请求
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/activity/list",
data: {
pageNo: pageNo || 1,
pageSize: this.state.pagination.pageSize,
title: this.state.title || undefined,
releaseStatus: this.state.releaseStatus || undefined,
},
success: function(data) {
if (!data.data || !data.data.list) {
if (data.error && data.error.length) {
message.warning(data.error[0].message);
}
} else {
this.state.pagination.current = data.data.pageNo;
this.state.pagination.total = data.data.totalCount;
this.setState({
pageNo:data.data.pageNo,
dataSource: data.data.list,
pagination: this.state.pagination
});
}
}.bind(this)
}).always(
function() {
this.setState({
loading: false
});
}.bind(this)
);
}
reset(){
this.setState({
title: '',
releaseStatus: '',
pageNo: 1,
},()=>{
this.loadData();
})
}
delete(id){
this.setState({
loading: true
});
$.ajax({
method: "post",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/activity/delete",
data: {
id
},
success: function(data) {
if (data.error && data.error.length) {
message.warning(data.error[0].message);
} else {
message.success('删除成功')
this.loadData(this.state.pageNo);
}
}.bind(this)
}).always(
function() {
this.setState({
loading: false
});
}.bind(this)
);
}
update(id,releaseStatus){
this.setState({
loading: true
});
$.ajax({
method: "post",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/activity/update",
data: {
id,
releaseStatus
},
success: function(data) {
if (data.error && data.error.length) {
message.warning(data.error[0].message);
} else {
message.success('修改成功')
this.loadData(this.state.pageNo);
}
}.bind(this)
}).always(
function() {
this.setState({
loading: false
});
}.bind(this)
);
}
componentDidMount() {
this.loadData();
}
render() {
return (
活动列表
{
this.setState({ title: e.target.value });
}}
/>
{/* 新闻表单 */}
{
this.setState({
activityId: value.id,
visible:true,
})
}}
bordered
size="small"
ellipsis="true"
/>
{this.imghandleCancel()}}
onOk={()=>{this.imghandleCancel()}}
footer={false}
>
{this.state.visible && {
this.loadData(this.state.pageNo);
this.setState({
activityId: '',
visible:false,
})
}}
/>}
)
}
}
export default Activity;