|
@@ -1,5 +1,19 @@
|
|
|
import React,{Component} from "react";
|
|
|
-import {Button, Form, Input, message, Modal, Popconfirm, Select, Spin, Table, Tabs, Upload,AutoComplete} from "antd";
|
|
|
+import {
|
|
|
+ Button,
|
|
|
+ Form,
|
|
|
+ Input,
|
|
|
+ message,
|
|
|
+ Modal,
|
|
|
+ Popconfirm,
|
|
|
+ Select,
|
|
|
+ Spin,
|
|
|
+ Table,
|
|
|
+ Tabs,
|
|
|
+ Upload,
|
|
|
+ AutoComplete,
|
|
|
+ Tooltip
|
|
|
+} from "antd";
|
|
|
import {ChooseList} from "../../order/orderNew/chooseList";
|
|
|
import $ from "jquery/src/ajax";
|
|
|
import { patentTypeList} from '@/dataDic.js';
|
|
@@ -61,6 +75,19 @@ class List extends Component{
|
|
|
title: "权利人",
|
|
|
dataIndex: "holders",
|
|
|
key: "holders",
|
|
|
+ width: 120,
|
|
|
+ render: (text) => {
|
|
|
+ return (
|
|
|
+ <Tooltip title={text}>
|
|
|
+ <div style={{
|
|
|
+ maxWidth:'120px',
|
|
|
+ overflow:'hidden',
|
|
|
+ textOverflow: "ellipsis",
|
|
|
+ whiteSpace:'nowrap',
|
|
|
+ }}>{text}</div>
|
|
|
+ </Tooltip>
|
|
|
+ )
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
title: "授权日期",
|
|
@@ -71,6 +98,19 @@ class List extends Component{
|
|
|
title: "发明人",
|
|
|
dataIndex: "inventor",
|
|
|
key: "inventor",
|
|
|
+ width: 120,
|
|
|
+ render: (text) => {
|
|
|
+ return (
|
|
|
+ <Tooltip title={text}>
|
|
|
+ <div style={{
|
|
|
+ maxWidth:'120px',
|
|
|
+ overflow:'hidden',
|
|
|
+ textOverflow: "ellipsis",
|
|
|
+ whiteSpace:'nowrap',
|
|
|
+ }}>{text}</div>
|
|
|
+ </Tooltip>
|
|
|
+ )
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
title: "收费截止日",
|
|
@@ -78,6 +118,16 @@ class List extends Component{
|
|
|
key: "endDates",
|
|
|
},
|
|
|
{
|
|
|
+ title: "费减状态",
|
|
|
+ dataIndex: "costReduction",
|
|
|
+ key: "costReduction",
|
|
|
+ render: (text,record) => {
|
|
|
+ return (
|
|
|
+ record.tid ? (text === 1 ? '有费减' : text === 0 ? '无费减' : '') : '无'
|
|
|
+ )
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
title: "年费状态",
|
|
|
dataIndex: "annualFeeStatus",
|
|
|
key: "annualFeeStatus",
|
|
@@ -160,6 +210,19 @@ class List extends Component{
|
|
|
title: "录入人",
|
|
|
dataIndex: "inputName",
|
|
|
key: "inputName",
|
|
|
+ width: 120,
|
|
|
+ render: (text) => {
|
|
|
+ return (
|
|
|
+ <Tooltip title={text}>
|
|
|
+ <div style={{
|
|
|
+ maxWidth:'120px',
|
|
|
+ overflow:'hidden',
|
|
|
+ textOverflow: "ellipsis",
|
|
|
+ whiteSpace:'nowrap',
|
|
|
+ }}>{text}</div>
|
|
|
+ </Tooltip>
|
|
|
+ )
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
title: "录入时间",
|
|
@@ -170,6 +233,19 @@ class List extends Component{
|
|
|
title: "跟进人",
|
|
|
dataIndex: "aname",
|
|
|
key: "aname",
|
|
|
+ width: 120,
|
|
|
+ render: (text) => {
|
|
|
+ return (
|
|
|
+ <Tooltip title={text}>
|
|
|
+ <div style={{
|
|
|
+ maxWidth:'120px',
|
|
|
+ overflow:'hidden',
|
|
|
+ textOverflow: "ellipsis",
|
|
|
+ whiteSpace:'nowrap',
|
|
|
+ }}>{text}</div>
|
|
|
+ </Tooltip>
|
|
|
+ )
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
title: "操作",
|
|
@@ -289,6 +365,7 @@ class List extends Component{
|
|
|
this.onReset = this.onReset.bind(this);
|
|
|
this.updateBatch = this.updateBatch.bind(this);
|
|
|
this.getAdminList = this.getAdminList.bind(this);
|
|
|
+ this.downloadFile = this.downloadFile.bind(this);
|
|
|
}
|
|
|
|
|
|
componentWillReceiveProps(prevProps) {
|
|
@@ -399,6 +476,14 @@ class List extends Component{
|
|
|
}
|
|
|
|
|
|
downloadFile() {
|
|
|
+ this.setState({
|
|
|
+ downloadFileLoading:true
|
|
|
+ })
|
|
|
+ setTimeout(()=>{
|
|
|
+ this.setState({
|
|
|
+ downloadFileLoading:false
|
|
|
+ })
|
|
|
+ },1500)
|
|
|
window.location.href =
|
|
|
globalConfig.context +
|
|
|
"/api/admin/patentNew/exportTemplate?" +
|
|
@@ -435,6 +520,9 @@ class List extends Component{
|
|
|
}
|
|
|
|
|
|
exportExec(){
|
|
|
+ this.setState({
|
|
|
+ exportExecLoading: true
|
|
|
+ })
|
|
|
let loading = message.loading('加载中...');
|
|
|
let data = {
|
|
|
name:this.state.name,
|
|
@@ -457,15 +545,20 @@ class List extends Component{
|
|
|
url: globalConfig.context + "/api/admin/patentNew/export",
|
|
|
data,
|
|
|
success: function(data) {
|
|
|
+ loading();
|
|
|
+ this.setState({
|
|
|
+ exportExecLoading: false
|
|
|
+ })
|
|
|
if(data.error.length === 0){
|
|
|
- loading();
|
|
|
this.download(data.data.data);
|
|
|
}else{
|
|
|
- loading();
|
|
|
message.warning(data.error[0].message);
|
|
|
}
|
|
|
}.bind(this),
|
|
|
}).always(function() {
|
|
|
+ this.setState({
|
|
|
+ exportExecLoading: false
|
|
|
+ })
|
|
|
}.bind(this));
|
|
|
}
|
|
|
|
|
@@ -522,7 +615,7 @@ class List extends Component{
|
|
|
annualFeeStatus:undefined,
|
|
|
userName:undefined,
|
|
|
salesmanRemind:undefined,
|
|
|
- isFollow:undefined,
|
|
|
+ isFollow:1,
|
|
|
aname:undefined,
|
|
|
patentNo:undefined,
|
|
|
},()=>{this.loadData();})
|
|
@@ -564,7 +657,7 @@ class List extends Component{
|
|
|
success: function(data) {
|
|
|
loading();
|
|
|
if(data.error.length === 0){
|
|
|
- message.success(type === 0 ? '批量通知成功' : type === 1 ? '批量发邮件成功' : type === 2 ? '转入成功' : '');
|
|
|
+ message.success(type === 0 ? '成功批量标记为已通知' : type === 1 ? '批量发邮件成功' : type === 2 ? '转入成功' : '');
|
|
|
if(type === 2){
|
|
|
this.setState({
|
|
|
adminVisible:false
|
|
@@ -608,18 +701,18 @@ class List extends Component{
|
|
|
>
|
|
|
<div style={{display:'flex',alignItems:'center',flexFlow:'wrap'}}>
|
|
|
<Form.Item>
|
|
|
- <Input style={{ width: '130px' }} value={this.state.name} onChange={(e)=>{this.setState({name:e.target.value})}} placeholder="请输入专利名称"/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item>
|
|
|
<Input style={{ width: '130px' }} value={this.state.patentNo} onChange={(e)=>{this.setState({patentNo:e.target.value})}} placeholder="请输入专利号"/>
|
|
|
</Form.Item>
|
|
|
<Form.Item>
|
|
|
- <Input style={{ width: '130px' }} value={this.state.aname} onChange={(e)=>{this.setState({aname:e.target.value})}} placeholder="请输入跟进人名称"/>
|
|
|
+ <Input style={{ width: '130px' }} value={this.state.name} onChange={(e)=>{this.setState({name:e.target.value})}} placeholder="请输入专利名称"/>
|
|
|
</Form.Item>
|
|
|
<Form.Item>
|
|
|
<Input style={{ width: '130px' }} value={this.state.userName} onChange={(e)=>{this.setState({userName:e.target.value})}} placeholder="请输入客户名称"/>
|
|
|
</Form.Item>
|
|
|
<Form.Item>
|
|
|
+ <Input style={{ width: '130px' }} value={this.state.aname} onChange={(e)=>{this.setState({aname:e.target.value})}} placeholder="请输入跟进人名称"/>
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item>
|
|
|
<Select
|
|
|
placeholder="请选择专利类型"
|
|
|
style={{ width: "140px" }}
|
|
@@ -739,7 +832,7 @@ class List extends Component{
|
|
|
})
|
|
|
}}
|
|
|
>
|
|
|
- 转入营销管理
|
|
|
+ 转交专利
|
|
|
</Button>
|
|
|
<Upload {...this.state.upLoad} disabled={this.state.upLoadFileLoading}>
|
|
|
<Button
|
|
@@ -752,6 +845,7 @@ class List extends Component{
|
|
|
</Upload>
|
|
|
<Button
|
|
|
type="primary"
|
|
|
+ loading={this.state.downloadFileLoading}
|
|
|
onClick={(e) => {
|
|
|
e.stopPropagation();
|
|
|
this.downloadFile();
|
|
@@ -763,6 +857,7 @@ class List extends Component{
|
|
|
<Button
|
|
|
type="primary"
|
|
|
style={{ margin: "11px 0px 10px 10px" }}
|
|
|
+ loading={this.state.exportExecLoading}
|
|
|
onClick={()=>{
|
|
|
this.exportExec();
|
|
|
}}
|
|
@@ -857,7 +952,7 @@ class List extends Component{
|
|
|
})
|
|
|
}}
|
|
|
>
|
|
|
- <div style={{paddingBottom:'15px'}}>下列选项不能批量发邮件,请取消后再批量发邮件</div>
|
|
|
+ <div style={{paddingBottom:'15px'}}>下列专利,不在专利需缴费的90天提醒之内,不可发送邮件</div>
|
|
|
<Table
|
|
|
columns={[
|
|
|
{
|
|
@@ -877,10 +972,18 @@ class List extends Component{
|
|
|
bordered
|
|
|
size="small"
|
|
|
/>
|
|
|
+ <div style={{display:'flex',justifyContent:'center',paddingTop:'20px'}}>
|
|
|
+ <Button type="primary" onClick={()=>{
|
|
|
+ this.setState({
|
|
|
+ unSelectedRowsVisible:false,
|
|
|
+ unSelectedRows:[]
|
|
|
+ })
|
|
|
+ }}>关闭</Button>
|
|
|
+ </div>
|
|
|
</Modal> : null}
|
|
|
|
|
|
{this.state.adminVisible ? <Modal
|
|
|
- title='选择营销管理员'
|
|
|
+ title='请选择需转交的跟进人'
|
|
|
className='payRecordComponent'
|
|
|
width={300}
|
|
|
maskClosable={false}
|
|
@@ -894,11 +997,11 @@ class List extends Component{
|
|
|
>
|
|
|
<div style={{display:'flex',flexFlow:"column",justifyContent:'center',alignItems:'center'}}>
|
|
|
<div style={{display:'flex',alignItems:'center'}}>
|
|
|
- <span style={{paddingRight:'15px'}}>营销管理:</span>
|
|
|
+ <span style={{paddingRight:'15px'}}>跟进人:</span>
|
|
|
<Select
|
|
|
showSearch
|
|
|
style={{ width: 200 }}
|
|
|
- placeholder="请选择营销管理"
|
|
|
+ placeholder="请选择跟进人"
|
|
|
optionFilterProp="children"
|
|
|
onSelect={(aid)=>{
|
|
|
this.setState({
|