Browse Source

咨询管理员新增统计

HW 4 years ago
parent
commit
72ceb5a4fe

+ 20 - 0
js/component/manageCenter/project/content.jsx

@@ -50,6 +50,26 @@ class Content extends Component {
               });
             });
             break;
+            //项目汇总表
+            case "highTech":
+                require.ensure([], () => {
+                    const ProjectQuery = require("./summary/highTech")
+                        .default;
+                    this.setState({
+                        component: <ProjectQuery ApiUrl={""} />
+                    });
+                });
+                break;
+             //项目统计
+            case "projecCount":
+                require.ensure([], () => {
+                    const ProjectQuery = require("./summary/projecCount")
+                        .default;
+                    this.setState({
+                        component: <ProjectQuery ApiUrl={""} />
+                    });
+                });
+                break;
           //外包派单
           case "zxsglyOutSourcingPaiDan":
             require.ensure([], () => {

+ 333 - 0
js/component/manageCenter/project/summary/highTech.jsx

@@ -0,0 +1,333 @@
+import React,{ Component } from 'react';
+import {Button, DatePicker, Input, message, Select, Spin, Table, Tabs} from "antd";
+import {
+    ShowModal
+} from "@/tools";
+import {ChooseList} from "../../order/orderNew/chooseList";
+import $ from "jquery/src/ajax";
+import moment from "moment";
+import {
+    highTechColumns,
+    doubleSoft,
+    softWriting,
+    patent
+} from './highTechConfig';
+
+const {TabPane} = Tabs;
+const { RangePicker } = DatePicker;
+const { Option } = Select;
+
+class HighTech extends Component{
+    constructor(props) {
+        super(props);
+        this.state={
+            loading:false,
+            changeList:[],
+            columns: highTechColumns,
+            pagination: {
+                defaultCurrent: 1,
+                defaultPageSize: 10,
+                showQuickJumper: true,
+                pageSize: 10,
+                onChange: function(page) {
+                    this.loadData(page);
+                }.bind(this),
+                showTotal: function(total) {
+                    return "共" + total + "条数据";
+                }
+            },
+            dataSource: [],
+
+            releaseDate:[],
+            searchOrderNo: '',
+            searchContractNo: '',
+            searchEnterpriseName: '',
+            declarationBatch: '',
+            depId:'',
+            projectType: 0,
+
+            departmentArr: [],
+        }
+        this.loadData = this.loadData.bind(this);
+        this.resetAll = this.resetAll.bind(this);
+        this.changeList = this.changeList.bind(this);
+        this.departmentList = this.departmentList.bind(this);
+        this.exportPending = this.exportPending.bind(this);
+    }
+
+    changeList(arr) {
+        const newArr = [];
+        this.state.columns.forEach(item => {
+            arr.forEach(val => {
+                if (val === item.title) {
+                    newArr.push(item);
+                }
+            });
+        });
+        this.setState({
+            changeList: newArr
+        });
+    }
+
+    loadData(pageNo) {
+        this.state.data = [];
+        this.setState({
+            page: pageNo,
+            loading: true
+        });
+        $.ajax({
+            method: "get",
+            dataType: "json",
+            crossDomain: false,
+            url: globalConfig.context + "/api/admin/newOrder/orderNewList",
+            data: {
+                pageNo: pageNo || 1,
+                pageSize: this.state.pagination.pageSize,
+                starTime: this.state.releaseDate[0], //开始时间
+                endTime: this.state.releaseDate[1], //结束时间
+            },
+            success: function(data) {
+                ShowModal(this);
+                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];
+                        thisdata.key=i;
+                        theArr.push(thisdata);
+                    }
+                }
+                this.state.pagination.current = data.data.pageNo;
+                this.state.pagination.total = data.data.totalCount;
+                if (data.data && data.data.list && !data.data.list.length) {
+                    this.state.pagination.current = 0;
+                    this.state.pagination.total = 0;
+                }
+                this.setState({
+                    dataSource: theArr,
+                    pagination: this.state.pagination
+                });
+            }.bind(this)
+        }).always(
+            function() {
+                this.setState({
+                    loading: false
+                });
+            }.bind(this)
+        );
+    }
+
+    resetAll() {
+        this.setState({
+            releaseDate: [],
+            searchOrderNo: '',
+            searchContractNo: '',
+            searchEnterpriseName: '',
+            declarationBatch: '',
+            depId:'',
+        },()=>{
+            this.loadData();
+        })
+    }
+
+    //部门
+    departmentList() {
+        $.ajax({
+            method: "get",
+            dataType: "json",
+            crossDomain: false,
+            url: globalConfig.context + "/api/admin/organization/selectSuperId",
+            data: {},
+            success: function (data) {
+                let thedata = data.data;
+                let theArr = [];
+                if (!thedata) {
+                    if (data.error && data.error.length) {
+                        message.warning(data.error[0].message);
+                    }
+                } else {
+                    thedata.map(function (item, index) {
+                        theArr.push({
+                            key: index,
+                            name: item.name,
+                            id: item.id,
+                        });
+                    });
+                }
+                this.setState({
+                    departmentArr: theArr,
+                });
+            }.bind(this),
+        })
+    }
+
+    exportPending() {
+        window.open(globalConfig.context + "/api/admin/patent/exportPending")
+    }
+
+    componentWillMount() {
+        this.loadData();
+        this.departmentList();
+    }
+
+    render() {
+        return (
+            <div className="user-content">
+                <div className="content-title">
+                    <span>项目汇总表</span>
+                </div>
+                <Tabs defaultActiveKey="1" className="test">
+                    <TabPane tab="搜索" key="1">
+                        <div className="user-search" style={{
+                            marginTop:'10px',
+                            marginLeft:'10px',
+                            marginRight:'10px'
+                        }}>
+                            <Input
+                                placeholder="订单编号"
+                                style={{ width: "150px",marginRight:'10px',marginBottom:'10px' }}
+                                value={this.state.searchOrderNo}
+                                onChange={e => {
+                                    this.setState({ searchOrderNo: e.target.value });
+                                }}
+                            />
+                            <Input
+                                placeholder="合同编号"
+                                style={{ width: "150px",marginRight:'10px',marginBottom:'10px' }}
+                                value={this.state.searchContractNo}
+                                onChange={e => {
+                                    this.setState({ searchContractNo: e.target.value });
+                                }}
+                            />
+                            <Input
+                                placeholder="企业名称"
+                                style={{ width: "150px",marginRight:'10px',marginBottom:'10px' }}
+                                value={this.state.searchEnterpriseName}
+                                onChange={e => {
+                                    this.setState({ searchEnterpriseName: e.target.value });
+                                }}
+                            />
+                            <span style={{display: "inline-block",marginRight:'10px',marginBottom:'10px'}}>
+                                <span>负责部门:</span>
+                                <Select
+                                    placeholder="请选择部门"
+                                    style={{ width: 200,marginRight:'10px',marginLeft:'10px',marginBottom:'10px' }}
+                                    value={this.state.depId}
+                                    onChange={e => {
+                                        this.setState({ depId: e });
+                                    }}
+                                >
+                                    {
+                                        this.state.departmentArr.map(function (item) {
+                                            return <Select.Option key={item.id} value={item.id}>{item.name}</Select.Option>
+                                        })
+                                    }
+                                </Select>
+                            </span>
+                            <span style={{display:"inline-block"}}>
+                                <span style={{marginRight:'10px',marginBottom:'10px'}}>时报批次 :</span>
+                                <Select
+                                    value={this.state.declarationBatch}
+                                    placeholder="请选择批次"
+                                    style={{ width: 200,marginRight:'10px',marginBottom:'10px' }}
+                                    onChange={(e) => {
+                                        this.setState({
+                                            declarationBatch: e,
+                                        });
+                                    }}
+                                >
+                                    <Option value={1}>第一批</Option>
+                                    <Option value={2}>第二批</Option>
+                                    <Option value={3}>第三批</Option>
+                                    <Option value={4}>第四批</Option>
+                                </Select>
+                            </span>
+                            <span style={{display:"inline-block"}}>
+                                <span style={{marginRight:'10px',marginBottom:'10px'}}>项目类别 :</span>
+                                <Select
+                                    value={this.state.projectType}
+                                    placeholder="请选择项目类别"
+                                    style={{ width: 200,marginRight:'10px',marginBottom:'10px' }}
+                                    onChange={(e) => {
+                                        this.setState({
+                                            columns:
+                                                e === 0 ? highTechColumns :
+                                                    e === 1 ? doubleSoft :
+                                                        e === 2 ? softWriting :
+                                                            e === 3 ? patent:[],
+                                            changeList: [],
+                                        },()=>{
+                                            this.resetAll();
+                                        })
+                                        this.setState({
+                                            projectType: e,
+                                        });
+                                    }}
+                                >
+                                    <Option value={0}>高新</Option>
+                                    <Option value={1}>双软</Option>
+                                    <Option value={2}>软著</Option>
+                                    <Option value={3}>专利</Option>
+                                </Select>
+                            </span>
+                            <span style={{display:"inline-block"}}>
+                                <span style={{marginRight:'10px',marginBottom:'10px'}}>派单时间 :</span>
+                                <RangePicker
+                                    style={{marginRight:'10px',marginBottom:'10px'}}
+                                    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>
+                            <Button type="primary" onClick={this.loadData} style={{marginRight:'10px',marginBottom:'10px'}}>搜索</Button>
+                            <Button onClick={this.resetAll} style={{marginRight:'10px',marginBottom:'10px'}}>重置</Button>
+                        </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>
+                    <TabPane tab="导出EXCEL" key="3">
+                        <Button type="primary" style={{margin: '10px'}} onClick={this.exportPending}>导出</Button>
+                    </TabPane>
+                </Tabs>
+                <div className="patent-table">
+                    <Spin spinning={this.state.loading}>
+                        <Table
+                            bordered
+                            size="middle"
+                            scroll={{ x: 2000, y: 0 }}
+                            columns={
+                                this.state.changeList.length > 0
+                                    ? this.state.changeList
+                                    : this.state.columns
+                            }
+                            dataSource={this.state.dataSource}
+                            pagination={this.state.pagination}
+                        />
+                    </Spin>
+                </div>
+            </div>
+        )
+    }
+}
+
+export default HighTech;

+ 427 - 0
js/component/manageCenter/project/summary/highTechConfig.jsx

@@ -0,0 +1,427 @@
+//高新
+const highTechColumns =[
+    {
+        title: "序号",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单时间",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "派单省份",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "订单部门",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "营销员",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "合同编号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "订单编号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "签单客户",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目类型",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目名称",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "负责部门",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "咨询师/咨询经理",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目状态",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "是否立项/时间",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "是否抽查",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "联系人电话",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "法人电话",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "证书编号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "申报批次",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "签单金额",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+];
+
+//双软
+const doubleSoft = [
+    {
+        title: "序号",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单时间",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "派单省份",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "订单部门",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "营销员",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "合同编号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "订单编号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "签单客户",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目类型",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目名称",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "负责部门",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "咨询师/咨询经理",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目状态",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "下证时间",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "签单金额",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+];
+
+//软著
+const softWriting = [
+    {
+        title: "序号",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单时间",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "派单省份",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "订单部门",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "营销员",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "合同编号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "订单编号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "签单客户",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目类型",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目名称",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "负责部门",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "咨询师/咨询经理",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目状态",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目数量/下证数",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "有无材料",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "加急天数",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "签单金额",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "下证时间",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "证书编号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目金额",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "成本金额",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "利润金额",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+];
+
+//专利
+const patent =[
+    {
+        title: "序号",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单时间",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "派单省份",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "订单部门",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "营销员",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "合同编号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "订单编号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "签单客户",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目类型",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目名称",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "负责部门",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "咨询师/咨询经理",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目状态",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "项目数量/下证数",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "是否高新",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "驳回数",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "专利号",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "专利名称",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "受理时间",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "授权时间",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "下证时间",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "签单金额",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "成本",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+    {
+        title: "利润",
+        dataIndex: "orderNo",
+        key: "orderNo"
+    },
+]
+
+export {
+    highTechColumns,
+    doubleSoft,
+    softWriting,
+    patent,
+}

+ 356 - 0
js/component/manageCenter/project/summary/projecCount.jsx

@@ -0,0 +1,356 @@
+import React,{ Component } from 'react';
+import {Button, DatePicker, Input, message, Select, Spin, Table, Tabs} from "antd";
+import {
+    ShowModal
+} from "@/tools";
+import {ChooseList} from "../../order/orderNew/chooseList";
+import $ from "jquery/src/ajax";
+import moment from "moment";
+import {
+    highTechColumns,
+    invention,
+    utilityModel,
+    softWriting,
+    otherTrademarks,
+} from './projecCountConfig';
+import {cityArr} from '@/dataDic.js';
+
+const {TabPane} = Tabs;
+const { RangePicker } = DatePicker;
+const { Option } = Select;
+
+class ProjecCount extends Component{
+    constructor(props) {
+        super(props);
+        this.state={
+            loading:false,
+            changeList:[],
+            columns: highTechColumns,
+            pagination: {
+                defaultCurrent: 1,
+                defaultPageSize: 10,
+                showQuickJumper: true,
+                pageSize: 10,
+                onChange: function(page) {
+                    this.loadData(page);
+                }.bind(this),
+                showTotal: function(total) {
+                    return "共" + total + "条数据";
+                }
+            },
+            dataSource: [],
+
+            releaseDate:[],
+            searchOrderNo: '',
+            searchContractNo: '',
+            searchEnterpriseName: '',
+            declarationBatch: '',
+            projectType: 0,
+            province: '',
+            depId: '',
+
+            departmentArr:[],
+        }
+        this.loadData = this.loadData.bind(this);
+        this.resetAll = this.resetAll.bind(this);
+        this.changeList = this.changeList.bind(this);
+        this.departmentList = this.departmentList.bind(this);
+        this.exportPending = this.exportPending.bind(this);
+    }
+
+    changeList(arr) {
+        const newArr = [];
+        this.state.columns.forEach(item => {
+            arr.forEach(val => {
+                if (val === item.title) {
+                    newArr.push(item);
+                }
+            });
+        });
+        this.setState({
+            changeList: newArr
+        });
+    }
+
+    loadData(pageNo) {
+        this.state.data = [];
+        this.setState({
+            page: pageNo,
+            loading: true
+        });
+        $.ajax({
+            method: "get",
+            dataType: "json",
+            crossDomain: false,
+            url: globalConfig.context + "/api/admin/newOrder/orderNewList",
+            data: {
+                pageNo: pageNo || 1,
+                pageSize: this.state.pagination.pageSize,
+                starTime: this.state.releaseDate[0], //开始时间
+                endTime: this.state.releaseDate[1], //结束时间
+            },
+            success: function(data) {
+                ShowModal(this);
+                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];
+                        thisdata.key=i;
+                        theArr.push(thisdata);
+                    }
+                }
+                this.state.pagination.current = data.data.pageNo;
+                this.state.pagination.total = data.data.totalCount;
+                if (data.data && data.data.list && !data.data.list.length) {
+                    this.state.pagination.current = 0;
+                    this.state.pagination.total = 0;
+                }
+                this.setState({
+                    dataSource: theArr,
+                    pagination: this.state.pagination
+                });
+            }.bind(this)
+        }).always(
+            function() {
+                this.setState({
+                    loading: false
+                });
+            }.bind(this)
+        );
+    }
+
+    //部门
+    departmentList() {
+        $.ajax({
+            method: "get",
+            dataType: "json",
+            crossDomain: false,
+            url: globalConfig.context + "/api/admin/organization/selectSuperId",
+            data: {},
+            success: function (data) {
+                let thedata = data.data;
+                let theArr = [];
+                if (!thedata) {
+                    if (data.error && data.error.length) {
+                        message.warning(data.error[0].message);
+                    }
+                } else {
+                    thedata.map(function (item, index) {
+                        theArr.push({
+                            key: index,
+                            name: item.name,
+                            id: item.id,
+                        });
+                    });
+                }
+                this.setState({
+                    departmentArr: theArr,
+                });
+            }.bind(this),
+        })
+    }
+
+    resetAll() {
+        this.setState({
+            releaseDate: [],
+            searchOrderNo: '',
+            searchContractNo: '',
+            searchEnterpriseName: '',
+            declarationBatch: '',
+            province: '',
+            depId: '',
+        },()=>{
+            this.loadData();
+        })
+    }
+
+    exportPending() {
+        window.open(globalConfig.context + "/api/admin/patent/exportPending")
+    }
+
+    componentWillMount() {
+        this.loadData();
+        this.departmentList();
+    }
+
+    render() {
+        return (
+            <div className="user-content">
+                <div className="content-title">
+                    <span>项目统计</span>
+                </div>
+                <Tabs defaultActiveKey="1" className="test">
+                    <TabPane tab="搜索" key="1">
+                        <div className="user-search" style={{
+                            marginTop:'10px',
+                            marginLeft:'10px',
+                            marginRight:'10px'
+                        }}>
+                            <Input
+                                placeholder="订单编号"
+                                style={{ width: "150px",marginRight:'10px',marginBottom:'10px' }}
+                                value={this.state.searchOrderNo}
+                                onChange={e => {
+                                    this.setState({ searchOrderNo: e.target.value });
+                                }}
+                            />
+                            <Input
+                                placeholder="合同编号"
+                                style={{ width: "150px",marginRight:'10px',marginBottom:'10px' }}
+                                value={this.state.searchContractNo}
+                                onChange={e => {
+                                    this.setState({ searchContractNo: e.target.value });
+                                }}
+                            />
+                            <Input
+                                placeholder="企业名称"
+                                style={{ width: "150px",marginRight:'10px',marginBottom:'10px' }}
+                                value={this.state.searchEnterpriseName}
+                                onChange={e => {
+                                    this.setState({ searchEnterpriseName: e.target.value });
+                                }}
+                            />
+                            <span style={{display:"inline-block"}}>
+                                <span style={{marginRight:'10px',marginBottom:'10px'}}>时报批次 :</span>
+                                <Select
+                                    value={this.state.declarationBatch}
+                                    placeholder="请选择批次"
+                                    style={{ width: 200,marginRight:'10px',marginBottom:'10px' }}
+                                    onChange={(e) => {
+                                        this.setState({
+                                            declarationBatch: e,
+                                        });
+                                    }}
+                                >
+                                    <Option value={1}>第一批</Option>
+                                    <Option value={2}>第二批</Option>
+                                    <Option value={3}>第三批</Option>
+                                    <Option value={4}>第四批</Option>
+                                </Select>
+                            </span>
+                            <span style={{display: "inline-block",marginRight:'10px',marginBottom:'10px'}}>
+                                <span>派单省份:</span>
+                                <Select
+                                    placeholder="请选择省份"
+                                    style={{ width: 200,marginRight:'10px',marginLeft:'10px',marginBottom:'10px' }}
+                                    value={this.state.province}
+                                    onChange={e => {
+                                        this.setState({ province: e });
+                                    }}
+                                >
+                                  {cityArr.map(function(item) {
+                                      return (
+                                          <Select.Option key={item.value}>{item.key}</Select.Option>
+                                      );
+                                  })}
+                                </Select>
+                            </span>
+                            <span style={{display: "inline-block",marginRight:'10px',marginBottom:'10px'}}>
+                                <span>负责部门:</span>
+                                <Select
+                                    placeholder="请选择部门"
+                                    style={{ width: 200,marginRight:'10px',marginLeft:'10px',marginBottom:'10px' }}
+                                    value={this.state.depId}
+                                    onChange={e => {
+                                        this.setState({ depId: e });
+                                    }}
+                                >
+                                    {
+                                        this.state.departmentArr.map(function (item) {
+                                            return <Select.Option key={item.id} value={item.id}>{item.name}</Select.Option>
+                                        })
+                                    }
+                                </Select>
+                            </span>
+                            <span style={{display:"inline-block"}}>
+                                <span style={{marginRight:'10px',marginBottom:'10px'}}>项目类别 :</span>
+                                <Select
+                                    value={this.state.projectType}
+                                    placeholder="请选择项目类别"
+                                    style={{ width: 200,marginRight:'10px',marginBottom:'10px' }}
+                                    onChange={(e) => {
+                                        this.setState({
+                                            columns:
+                                                e === 0 ? highTechColumns :
+                                                    e === 1 ? invention :
+                                                        e === 2 ? utilityModel :
+                                                            e === 3 ? softWriting:
+                                                                e === 4 ? otherTrademarks : [],
+                                            changeList: [],
+                                        },()=>{
+                                            this.resetAll();
+                                        })
+                                        this.setState({
+                                            projectType: e,
+                                        });
+                                    }}
+                                >
+                                    <Option value={0}>高新</Option>
+                                    <Option value={1}>发明专利</Option>
+                                    <Option value={2}>实用新型</Option>
+                                    <Option value={3}>软件著作权</Option>
+                                    <Option value={4}>其他商标</Option>
+                                </Select>
+                            </span>
+                            <span style={{display:"inline-block"}}>
+                                <span style={{marginRight:'10px',marginBottom:'10px'}}>派单时间 :</span>
+                                <RangePicker
+                                    style={{marginRight:'10px',marginBottom:'10px'}}
+                                    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>
+                            <Button type="primary" onClick={this.loadData} style={{marginRight:'10px',marginBottom:'10px'}}>搜索</Button>
+                            <Button onClick={this.resetAll} style={{marginRight:'10px',marginBottom:'10px'}}>重置</Button>
+                        </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>
+                    <TabPane tab="导出EXCEL" key="3">
+                        <Button type="primary" style={{margin: '10px'}} onClick={this.exportPending}>导出</Button>
+                    </TabPane>
+                </Tabs>
+                <div className="patent-table">
+                    <Spin spinning={this.state.loading}>
+                        <Table
+                            bordered
+                            size="middle"
+                            scroll={{ x: 2000, y: 0 }}
+                            columns={
+                                this.state.changeList.length > 0
+                                    ? this.state.changeList
+                                    : this.state.columns
+                            }
+                            dataSource={this.state.dataSource}
+                            pagination={this.state.pagination}
+                        />
+                    </Spin>
+                </div>
+            </div>
+        )
+    }
+}
+
+export default ProjecCount;

+ 327 - 0
js/component/manageCenter/project/summary/projecCountConfig.jsx

@@ -0,0 +1,327 @@
+//高新
+const highTechColumns = [
+    {
+        title: "序号",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单省份",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "负责部门",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "项目类别",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "库存数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "完成数",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "驳回数",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "签单额(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "成本(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "利润(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+];
+
+//发明
+const invention = [
+    {
+        title: "序号",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单省份",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "订单部门",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "负责部门",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "项目类别",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "库存数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "受理数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "完结总数",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "授权数",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "驳回数",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "签单额(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "成本(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "利润(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+];
+
+//实用新型
+const utilityModel = [
+    {
+        title: "序号",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单省份",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "负责部门",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "项目类型",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "库存数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "受理数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "完结总数",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "授权数",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "驳回数",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "签单额(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "成本(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "利润(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+];
+
+//软著
+const softWriting = [
+    {
+        title: "序号",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单省份",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "负责部门",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "项目类别",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "库存数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "下证数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "签单额(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "成本(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "利润(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+];
+
+//其他商标
+const otherTrademarks = [
+    {
+        title: "序号",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单省份",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "负责部门",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "项目类别",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "库存数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "派单数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "申请数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "驳回数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "下证数(个)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "签单额(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "成本(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+    {
+        title: "利润(万元)",
+        dataIndex: "orderNo",
+        key: "orderNo",
+    },
+];
+
+export {
+    highTechColumns,
+    invention,
+    utilityModel,
+    softWriting,
+    otherTrademarks,
+}