|
@@ -1,5 +1,5 @@
|
|
|
import React from 'react';
|
|
|
-import { Radio, Icon, Button, Input, Select, Spin, Table, Switch, message, DatePicker, Modal, Upload } from 'antd';
|
|
|
+import {Radio, Icon, Button, Input, Select, Spin, Table, Switch, message, DatePicker, Modal, Upload, Tabs} from 'antd';
|
|
|
import ajax from 'jquery/src/ajax/xhr.js';
|
|
|
import $ from 'jquery/src/ajax';
|
|
|
import moment from 'moment';
|
|
@@ -8,6 +8,9 @@ import TechDemandDesc from './techDemandDesc.jsx';
|
|
|
import { demandTypeList } from '../../dataDic.js';
|
|
|
import { companySearch, getDemandType, getSearchUrl, beforeUploadFile ,getboutique,gethot} from '../../tools.js';
|
|
|
import BatchImport from './batchImport';
|
|
|
+import {ChooseList} from "../order/orderNew/chooseList";
|
|
|
+
|
|
|
+const TabPane = Tabs.TabPane;
|
|
|
|
|
|
const DemandList = React.createClass({
|
|
|
loadData(pageNo, apiUrl) {
|
|
@@ -410,6 +413,19 @@ const DemandList = React.createClass({
|
|
|
searchMore: !this.state.searchMore
|
|
|
});
|
|
|
},
|
|
|
+ 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 rowSelection = {
|
|
|
selectedRowKeys: this.state.selectedRowKeys,
|
|
@@ -454,105 +470,128 @@ const DemandList = React.createClass({
|
|
|
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div className="user-search">
|
|
|
- <Input placeholder="需求编号"
|
|
|
- value={this.state.serialNumber}
|
|
|
- onChange={(e) => { this.setState({ serialNumber: e.target.value }); }} />
|
|
|
- <Input placeholder="需求名称"
|
|
|
- value={this.state.name}
|
|
|
- onChange={(e) => { this.setState({ name: e.target.value }); }} />
|
|
|
- <Input placeholder="关键字"
|
|
|
- value={this.state.keyword}
|
|
|
- onChange={(e) => { this.setState({ keyword: e.target.value }); }} />
|
|
|
- <Input placeholder="录入人名称"
|
|
|
- value={this.state.recordPerson}
|
|
|
- onChange={(e) => { this.setState({ recordPerson: e.target.value }); }} />
|
|
|
- <Input placeholder="需求雇主名称"
|
|
|
- value={this.state.employerName}
|
|
|
- onChange={(e) => { this.setState({ employerName: e.target.value }); }} />
|
|
|
- <Radio.Group value={this.state.searchType} onChange={(e) => {
|
|
|
- this.setState({ searchType: e.target.value })
|
|
|
- }}>
|
|
|
- <Radio value={0}>认证用户</Radio>
|
|
|
- <Radio value={1}>非认证用户</Radio>
|
|
|
- </Radio.Group>
|
|
|
- <Button type="primary" onClick={this.search}>搜索</Button>
|
|
|
- <Button onClick={this.reset}>重置</Button>
|
|
|
- <Button style={{ background: "#3fcf9e", border: "none", color: "#fff" }}
|
|
|
- disabled={!hasSelected}
|
|
|
- onClick={this.delectRow}>删除<Icon type="minus" /></Button>
|
|
|
- <span>更多搜索<Switch defaultChecked={false} onChange={this.searchSwitch} /></span>
|
|
|
- <div className="search-more" style={this.state.searchMore ? { display: 'none' } : {}}>
|
|
|
- <Radio.Group value={this.state.boutique} onChange={(e) => {
|
|
|
- this.setState({ boutique: e.target.value })
|
|
|
- }}>
|
|
|
- <Radio value={1}>精品</Radio>
|
|
|
- <Radio value={0}>非精品</Radio>
|
|
|
- </Radio.Group>
|
|
|
- <Select placeholder="选择信息来源" style={{ width: 120 }}
|
|
|
- value={this.state.infoSources}
|
|
|
- onChange={(e) => { this.setState({ infoSources: e }) }}>
|
|
|
- <Select.Option value="0" >平台采集</Select.Option>
|
|
|
- <Select.Option value="1" >客户发布</Select.Option>
|
|
|
- <Select.Option value="2" >批量导入</Select.Option>
|
|
|
- <Select.Option value="3" >三方对接</Select.Option>
|
|
|
- </Select>
|
|
|
- <Select placeholder="选择需求类型"
|
|
|
- style={{ width: 120 }}
|
|
|
- value={this.state.demandType}
|
|
|
- onChange={(e) => { this.setState({ demandType: e }) }}>
|
|
|
- {this.state.demandTypeOption}
|
|
|
- </Select>
|
|
|
- <Select placeholder="选择需求状态" style={{ width: 120 }}
|
|
|
- value={this.state.status}
|
|
|
- onChange={(e) => { this.setState({ status: e }) }}>
|
|
|
- <Select.Option value="0" >进行中</Select.Option>
|
|
|
- <Select.Option value="1" >未解决</Select.Option>
|
|
|
- <Select.Option value="2" >已解决</Select.Option>
|
|
|
- </Select>
|
|
|
- <Select placeholder="选择审核状态" style={{ width: 160 }}
|
|
|
- value={this.state.auditStatus}
|
|
|
- onChange={(e) => { this.setState({ auditStatus: e }) }}>
|
|
|
- <Select.Option value="0" >未提交审核(草稿)</Select.Option>
|
|
|
- <Select.Option value="1" >提交审核</Select.Option>
|
|
|
- <Select.Option value="2" >审核中</Select.Option>
|
|
|
- <Select.Option value="3" >审核通过</Select.Option>
|
|
|
- <Select.Option value="4" >审核未通过</Select.Option>
|
|
|
- </Select>
|
|
|
- <Select placeholder="选择是否发布" style={{ width: 120 }}
|
|
|
- value={this.state.releaseStatus}
|
|
|
- onChange={(e) => { this.setState({ releaseStatus: e }) }}>
|
|
|
- <Select.Option value="0" >未发布</Select.Option>
|
|
|
- <Select.Option value="1" >已发布</Select.Option>
|
|
|
- </Select>
|
|
|
- <Select placeholder="选择需求类别" style={{ width: 120 }}
|
|
|
- value={this.state.dataCategory}
|
|
|
- onChange={(e) => { this.setState({ dataCategory: e }) }}>
|
|
|
- <Select.Option value="0" >个人</Select.Option>
|
|
|
- <Select.Option value="1" >组织</Select.Option>
|
|
|
- </Select>
|
|
|
- <div style={{ marginTop: '10px' }}>
|
|
|
- <span style={{ marginLeft: '10px' }}>有效期限 : </span>
|
|
|
- <RangePicker
|
|
|
- value={[this.state.validityPeriodDate[0] ? moment(this.state.validityPeriodDate[0]) : null,
|
|
|
- this.state.validityPeriodDate[1] ? moment(this.state.validityPeriodDate[1]) : null]}
|
|
|
- onChange={(data, dataString) => { this.setState({ validityPeriodDate: dataString }); }} />
|
|
|
- <span style={{ marginLeft: '10px' }}>发布时间 : </span>
|
|
|
- <RangePicker
|
|
|
- value={[this.state.releaseDate[0] ? moment(this.state.releaseDate[0]) : null,
|
|
|
- this.state.releaseDate[1] ? moment(this.state.releaseDate[1]) : null]}
|
|
|
- onChange={(data, dataString) => { this.setState({ releaseDate: dataString }); }} />
|
|
|
- <span style={{ marginLeft: '10px' }}>录入时间 : </span>
|
|
|
- <RangePicker
|
|
|
- value={[this.state.releaseDateS[0] ? moment(this.state.releaseDateS[0]) : null,
|
|
|
- this.state.releaseDateS[1] ? moment(this.state.releaseDateS[1]) : null]}
|
|
|
- onChange={(data, dataString) => { this.setState({ releaseDateS: dataString }); }} />
|
|
|
+ <Tabs
|
|
|
+ defaultActiveKey="1"
|
|
|
+ onChange={this.callback}
|
|
|
+ className="test"
|
|
|
+ >
|
|
|
+ <TabPane tab="搜索" key="1">
|
|
|
+ <div className="user-search">
|
|
|
+ <Input placeholder="需求编号"
|
|
|
+ value={this.state.serialNumber}
|
|
|
+ onChange={(e) => { this.setState({ serialNumber: e.target.value }); }} />
|
|
|
+ <Input placeholder="需求名称"
|
|
|
+ value={this.state.name}
|
|
|
+ onChange={(e) => { this.setState({ name: e.target.value }); }} />
|
|
|
+ <Input placeholder="关键字"
|
|
|
+ value={this.state.keyword}
|
|
|
+ onChange={(e) => { this.setState({ keyword: e.target.value }); }} />
|
|
|
+ <Input placeholder="录入人名称"
|
|
|
+ value={this.state.recordPerson}
|
|
|
+ onChange={(e) => { this.setState({ recordPerson: e.target.value }); }} />
|
|
|
+ <Input placeholder="需求雇主名称"
|
|
|
+ value={this.state.employerName}
|
|
|
+ onChange={(e) => { this.setState({ employerName: e.target.value }); }} />
|
|
|
+ <Radio.Group value={this.state.searchType} onChange={(e) => {
|
|
|
+ this.setState({ searchType: e.target.value })
|
|
|
+ }}>
|
|
|
+ <Radio value={0}>认证用户</Radio>
|
|
|
+ <Radio value={1}>非认证用户</Radio>
|
|
|
+ </Radio.Group>
|
|
|
+ <Button type="primary" onClick={this.search}>搜索</Button>
|
|
|
+ <Button onClick={this.reset}>重置</Button>
|
|
|
+ <Button style={{ background: "#3fcf9e", border: "none", color: "#fff" }}
|
|
|
+ disabled={!hasSelected}
|
|
|
+ onClick={this.delectRow}>删除<Icon type="minus" /></Button>
|
|
|
+ <span>更多搜索<Switch defaultChecked={false} onChange={this.searchSwitch} /></span>
|
|
|
+ <div className="search-more" style={this.state.searchMore ? { display: 'none' } : {}}>
|
|
|
+ <Radio.Group value={this.state.boutique} onChange={(e) => {
|
|
|
+ this.setState({ boutique: e.target.value })
|
|
|
+ }}>
|
|
|
+ <Radio value={1}>精品</Radio>
|
|
|
+ <Radio value={0}>非精品</Radio>
|
|
|
+ </Radio.Group>
|
|
|
+ <Select placeholder="选择信息来源" style={{ width: 120 }}
|
|
|
+ value={this.state.infoSources}
|
|
|
+ onChange={(e) => { this.setState({ infoSources: e }) }}>
|
|
|
+ <Select.Option value="0" >平台采集</Select.Option>
|
|
|
+ <Select.Option value="1" >客户发布</Select.Option>
|
|
|
+ <Select.Option value="2" >批量导入</Select.Option>
|
|
|
+ <Select.Option value="3" >三方对接</Select.Option>
|
|
|
+ </Select>
|
|
|
+ <Select placeholder="选择需求类型"
|
|
|
+ style={{ width: 120 }}
|
|
|
+ value={this.state.demandType}
|
|
|
+ onChange={(e) => { this.setState({ demandType: e }) }}>
|
|
|
+ {this.state.demandTypeOption}
|
|
|
+ </Select>
|
|
|
+ <Select placeholder="选择需求状态" style={{ width: 120 }}
|
|
|
+ value={this.state.status}
|
|
|
+ onChange={(e) => { this.setState({ status: e }) }}>
|
|
|
+ <Select.Option value="0" >进行中</Select.Option>
|
|
|
+ <Select.Option value="1" >未解决</Select.Option>
|
|
|
+ <Select.Option value="2" >已解决</Select.Option>
|
|
|
+ </Select>
|
|
|
+ <Select placeholder="选择审核状态" style={{ width: 160 }}
|
|
|
+ value={this.state.auditStatus}
|
|
|
+ onChange={(e) => { this.setState({ auditStatus: e }) }}>
|
|
|
+ <Select.Option value="0" >未提交审核(草稿)</Select.Option>
|
|
|
+ <Select.Option value="1" >提交审核</Select.Option>
|
|
|
+ <Select.Option value="2" >审核中</Select.Option>
|
|
|
+ <Select.Option value="3" >审核通过</Select.Option>
|
|
|
+ <Select.Option value="4" >审核未通过</Select.Option>
|
|
|
+ </Select>
|
|
|
+ <Select placeholder="选择是否发布" style={{ width: 120 }}
|
|
|
+ value={this.state.releaseStatus}
|
|
|
+ onChange={(e) => { this.setState({ releaseStatus: e }) }}>
|
|
|
+ <Select.Option value="0" >未发布</Select.Option>
|
|
|
+ <Select.Option value="1" >已发布</Select.Option>
|
|
|
+ </Select>
|
|
|
+ <Select placeholder="选择需求类别" style={{ width: 120 }}
|
|
|
+ value={this.state.dataCategory}
|
|
|
+ onChange={(e) => { this.setState({ dataCategory: e }) }}>
|
|
|
+ <Select.Option value="0" >个人</Select.Option>
|
|
|
+ <Select.Option value="1" >组织</Select.Option>
|
|
|
+ </Select>
|
|
|
+ <div style={{ marginTop: '10px' }}>
|
|
|
+ <span style={{ marginLeft: '10px' }}>有效期限 : </span>
|
|
|
+ <RangePicker
|
|
|
+ value={[this.state.validityPeriodDate[0] ? moment(this.state.validityPeriodDate[0]) : null,
|
|
|
+ this.state.validityPeriodDate[1] ? moment(this.state.validityPeriodDate[1]) : null]}
|
|
|
+ onChange={(data, dataString) => { this.setState({ validityPeriodDate: dataString }); }} />
|
|
|
+ <span style={{ marginLeft: '10px' }}>发布时间 : </span>
|
|
|
+ <RangePicker
|
|
|
+ value={[this.state.releaseDate[0] ? moment(this.state.releaseDate[0]) : null,
|
|
|
+ this.state.releaseDate[1] ? moment(this.state.releaseDate[1]) : null]}
|
|
|
+ onChange={(data, dataString) => { this.setState({ releaseDate: dataString }); }} />
|
|
|
+ <span style={{ marginLeft: '10px' }}>录入时间 : </span>
|
|
|
+ <RangePicker
|
|
|
+ value={[this.state.releaseDateS[0] ? moment(this.state.releaseDateS[0]) : null,
|
|
|
+ this.state.releaseDateS[1] ? moment(this.state.releaseDateS[1]) : null]}
|
|
|
+ onChange={(data, dataString) => { this.setState({ releaseDateS: dataString }); }} />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ </TabPane>
|
|
|
+ <TabPane tab="更改表格显示数据" key="2">
|
|
|
+ <div style={{ marginLeft: 10 }}>
|
|
|
+ <ChooseList
|
|
|
+ columns={this.state.columns}
|
|
|
+ changeFn={this.changeList}
|
|
|
+ changeList={this.state.changeList}
|
|
|
+ top={55}
|
|
|
+ margin={11}
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </TabPane>
|
|
|
+ </Tabs>
|
|
|
<div className="patent-table">
|
|
|
<Spin spinning={this.state.loading}>
|
|
|
- <Table columns={this.state.columns}
|
|
|
+ <Table columns={
|
|
|
+ this.state.changeList
|
|
|
+ ? this.state.changeList
|
|
|
+ : this.state.columns
|
|
|
+ }
|
|
|
dataSource={this.state.dataSource}
|
|
|
rowSelection={rowSelection}
|
|
|
pagination={this.state.pagination}
|