import React from 'react';
import {
Icon,
Button,
Input,
Select,
Spin,
Checkbox,
Cascader,
Table,
Form,
Switch,
message,
DatePicker,
Modal,
Row,
Col,
InputNumber, Tabs,
} from 'antd';
import { citySelect, provinceList ,areaSelect} from '@/NewDicProvinceList';
import {demandProfile} from '../../../dataDic.js';
import ajax from 'jquery/src/ajax/xhr.js';
import $ from 'jquery/src/ajax';
//import axios from 'axios';
import 'antd/dist/antd.css';
const FormItem = Form.Item;
import './sichuan.css';
import {ChooseList} from "../../order/orderNew/chooseList";
const { TextArea } = Input;
const CheckboxGroup = Checkbox.Group;
const TabPane = Tabs.TabPane;
class Achievement extends React.Component {
loadData(pageNo) {
this.setState({
page: pageNo,
loading: true
});
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/open/api/demandList",
data: {
pageNo: pageNo || 1,
pageSize: this.state.pagination.pageSize,
type:0,
orgName:this.state.seachName,//企业名称
name:this.state.seachNames,//需求名称
reserveButtUnit:this.state.seachReserveButtUnit,//对接单位
},
success: function (data) {
let theArr = [];
if (!data.data || !data.data.list) {
if (data.error && data.error.length) {
message.warning(data.error[0].message);
};
} else {
for (let i = 0; i < data.data.list.length; i++) {
let thisdata = data.data.list[i];
theArr.push({
key: i,
id: thisdata.id,//需求编号
name: thisdata.name,//需求名称
industry: thisdata.industry,//行业
reserveButtUnit:thisdata.reserveButtUnit,//对接单位
orgName:thisdata.orgName,//企业名称
});
};
this.state.pagination.current = data.data.pageNo;
this.state.pagination.total = data.data.totalCount;
};
this.setState({
dataSource: theArr,
pagination: this.state.pagination
});
}.bind(this),
}).always(function () {
this.setState({
loading: false
});
}.bind(this));
}
constructor(props) {
super(props);
this.state = {
loading:false,
publishPages: [],
nature:'',
visible: false,
pagination: {
defaultCurrent: 1,
defaultPageSize: 10,
showQuickJumper: true,
pageSize: 10,
onChange: function(page) {
this.loadData(page);
}.bind(this),
showTotal: function(total) {
return '共' + total + '条数据';
}
},
columns: [
{
title: '需求名称',
dataIndex: 'name',
key: 'name'
},
{
title: '行业领域',
dataIndex: 'industry',
key: 'industry'
},
{
title: '企业名称',
dataIndex: 'orgName',
key: 'orgName'
},
{
title: '拟对接单位',
dataIndex: 'reserveButtUnit',
key: 'reserveButtUnit'
},
{
title: '操作',
dataIndex: 'caozuo',
key: 'caozuo',
render: (text, recard) => {
return (
);
}
}
]
};
this.changeList = this.changeList.bind(this);
}
//删除
delectRow(recard) {
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/open/api/delectDemand",
data: {
id:recard.id
},
success: function (data) {
if (!data.error.length) {
message.success('删除成功!');
this.setState({
loading: false,
});
this.loadData();
} else {
message.warning(data.error[0].message);
};
}.bind(this),
}).always(function () {
this.setState({
loading: false
});
}.bind(this));
}
details(recard){
this.state({
loading:true
})
}
add() {
this.setState({
id:"",
uid: '',
visible: true,
addState: true,
name: '',
introduce: '',
industry: '',
summary: [],
ownerName: '',
reserveButtMode: '',
patentNumber: '',
transferPrice: '',
telephone: '',
cname: ''
});
}
search() {
this.loadData(1);
}
reset() {
this.state.seachName = '';
this.state.seachNames = '';
this.state.seachReserveButtUnit = '';
this.loadData(1);
}
tableRowClick(record, index) {
this.setState({
visible: true,
addState: false,
id:record.id,
});
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/open/api/demandDetails",
data: {
id: record.id,//需求名称
}
}).done(function (data) {
if (!data.error.length) {
let thisData=data.data;
let ProvinceCityArr = [];
let ProvinceS =thisData.province? parseInt(thisData.province):""; //省
let citys = thisData.city?parseInt(thisData.city):"";//市
ProvinceCityArr.push(ProvinceS, citys);
this.setState({
id:thisData.id,
name: thisData.name,//需求名称
industry:(thisData.industry||thisData.industry==0)?thisData.industry.toString():undefined,//行业
investmentCost: thisData.investmentCost,//经费投入
reserveButtUnit: thisData.reserveButtUnit,//拟对接单位
reserveButtMode: (thisData.reserveButtMode||thisData.reserveButtMode==0)?thisData.reserveButtMode.toString():undefined,//拟对接方式
reserveSolveMode:(thisData.reserveSolveMode||thisData.reserveSolveMode==0)?thisData.reserveSolveMode.toString():undefined ,//拟解决方式
publisherName: thisData.publisherName,//联系人
telephone: thisData.telephone,//联系方式
summary: thisData.summary?thisData.summary.split(","):[],//需求项目概况this.state.shehui?this.state.shehui.join(","):undefined
introduce: thisData.introduce,//需求内容
Pname: thisData.pname,//企业名称
nature: thisData.nature,//企业特质
feature: thisData.feature,//企业特征
ProvinceCity:ProvinceCityArr[0]!=null?ProvinceCityArr:undefined,//地区
zipCode: thisData.zipCode,//邮政编码
legalPerson: thisData.legalPerson,//法人名称
website: thisData.website,//企业网址
email: thisData.email,//企业邮箱
pintroduce:thisData.pintroduce,//企业简介
});
} else {
message.warning(data.error[0].message);
};
this.setState({
loading: false,
});
}.bind(this));
}
handleOk() {
this.handleSubmit();
}
handleCancel() {
this.resets();
this.setState({
visible: false
});
}
handleSubmit() {
this.setState({
loading: true
});
if(!this.state.name){
message.warning("需求名称必须填写");
this.setState({
loading: false
});
return;
}
console.log(this.state.ProvinceCity);
if(!this.state.ProvinceCity||this.state.ProvinceCity.length==0||this.state.ProvinceCity[0]==""){
message.warning("地区必须选择");
this.setState({
loading: false
});
return;
}
$.ajax({
method: "POST",
dataType: "json",
crossDomain: false,
url: globalConfig.context +( this.state.addState?"/open/api/addDemand":"/open/api/updateDemand"),
data: {
id:this.state.id,//需求ID
name: this.state.name,//需求名称
type:0,//需求类型
industry:this.state.industry,//行业
investmentCost: this.state.investmentCost,//经费投入
reserveButtUnit: this.state.reserveButtUnit,//拟对接单位
reserveButtMode: this.state.reserveButtMode,//拟对接方式
reserveSolveMode: this.state.reserveSolveMode,//拟解决方式
publisherName: this.state.publisherName,//联系人
telephone: this.state.telephone,//联系方式
summary: this.state.summary?this.state.summary.join(","):undefined,//需求项目概况this.state.shehui?this.state.shehui.join(","):undefined
introduce: this.state.introduce,//需求内容
pname: this.state.Pname,//企业名称
nature: this.state.nature,//企业特质
feature: this.state.feature,//企业特征
province: this.state.ProvinceCity?this.state.ProvinceCity[0]:"",//省
city: this.state.ProvinceCity?this.state.ProvinceCity[1]:"",//市
zipCode: this.state.zipCode,//邮政编码
legalPerson: this.state.legalPerson,//法人名称
website: this.state.website,//企业网址
email: this.state.email,//企业邮箱
pintroduce: this.state.pintroduce,//企业简介
}
}).done(function (data) {
if (!data.error.length) {
message.success(this.state.addState?'新建成功!':"修改成功!");
this.setState({
visible: false,
});
this.loadData();
this.resets();
} else {
message.warning(data.error[0].message);
};
this.setState({
loading: false,
});
}.bind(this));
}
resets(){
this.state.name = '',//需求名称
this.state.industry = undefined,//行业
this.state.investmentCost = '',//经费投入
this.state.reserveButtUnit = '',//拟对接单位
this.state.reserveButtMode = '',//拟对接方式
this.state.reserveSolveMode = '',//拟解决方式
this.state.publisherName = '',//联系人
this.state.telephone = '',//联系方式
this.state.summary = '',
this.state.introduce = '',//需求内容
this.state.Pname = '',//企业名称
this.state.nature = undefined,//企业特质
this.state.feature = '',//企业特征
this.state.ProvinceCity =undefined,//省
this.state.zipCode = '',//邮政编码
this.state.legalPerson = '',//法人名称
this.state.website = '',//企业网址
this.state.email = '',//企业邮箱
this.state.pintroduce = ''//企业简介
}
componentWillMount() {
this.loadData(1);
}
changeList(arr) {
const newArr = [];
this.state.columns.forEach(item => {
arr.forEach(val => {
if (val === item.title) {
newArr.push(item);
}
});
});
this.setState({
changeList: newArr
});
}
render() {
const url="https://api.qrserver.com/v1/create-qr-code/?data=http://"+window.location.host+"/open/demandDetails?id="+this.state.id+"&size=100x100"
const rowSelection = {
selectedRowKeys: this.state.selectedRowKeys,
onChange: (selectedRowKeys, selectedRows) => {
this.setState({
selectedRows: selectedRows.slice(-1),
selectedRowKeys: selectedRowKeys.slice(-1)
});
}
};
const formItemLayout = {
labelCol: { span: 6 },
wrapperCol: { span: 12 }
};
return (
);
}
}
export default Achievement;