Browse Source

人事管理开发

mentoswzq 4 years ago
parent
commit
a8ee20edaf

+ 16 - 0
js/admin/personnel.js

@@ -0,0 +1,16 @@
+import React from "react";
+import ReactDOM from "react-dom";
+import "../../css/base.less";
+
+import TopTab from "../component/manageCenter/topTab.jsx";
+import Footer from "../component/manageCenter/bottom.jsx";
+import Content from "../component/manageCenter/personnel/content.jsx";
+
+ReactDOM.render(
+  <div className="wrap clearfix">
+    <TopTab active={"personnel"} />
+    <Content />
+    <Footer />
+  </div>,
+  document.getElementById("root")
+);

+ 2 - 0
js/component/account/index/content.jsx

@@ -21,6 +21,8 @@ class Content extends Component {
         switch (key) {
             case 'normal':
                 require.ensure([], () => {
+                    // $("body").css("zoom", "0.8");
+                    // document.body.style.zoom = "0.8"
                     const Normal = require('./normal').default;
                     this.setState({
                         component: Normal

File diff suppressed because it is too large
+ 892 - 891
js/component/dataDic.js


+ 3 - 0
js/component/manageCenter/content.less

@@ -17,4 +17,7 @@
             }
         }
     }
+}
+.acc-top-user-name>a {
+    color: #58a3ff !important;
 }

+ 38 - 11
js/component/manageCenter/customer/NEW/intentionCustomer/followDetail.jsx

@@ -60,13 +60,23 @@ const FollowDetail = React.createClass({
 					dataIndex: 'followSituation',
 					key: 'followSituation',
 					render: (text, record, index) => {
-						return <Select  placeholder="选择最新进度" value={record.followSituation}  onChange={(e) => { record.followSituation = e; this.setState({ data: this.state.data }); }}>
+						if(text == 5 && !record.isEdit) {
+							return (
+								newFollow.map(function (item) {
+									if(item.value == text) {
+										return item.key
+									}
+								})
+							)
+						}else {
+							return <Select  placeholder="选择最新进度" value={record.followSituation}  onChange={(e) => { record.followSituation = e; record.isEdit=true; this.setState({ data: this.state.data }); }}>
                                     {
                                         newFollow.map(function (item) {
                                             return <Select.Option key={item.value} >{item.key}</Select.Option>
                                         })
                                     }
                                </Select>
+						}
 					}
 				}, {
 					title: '最新状态',
@@ -74,13 +84,23 @@ const FollowDetail = React.createClass({
 					dataIndex: 'customerStatus',
 					key: 'customerStatus',
 					render: (text, record, index) => {
-						return <Select value={record.customerStatus} placeholder="选择最新状态" onChange={(e) => { record.customerStatus = e; this.setState({ data: this.state.data }); }}>
-                                    {
-                                        customerStatus.map(function (item) {
-                                            return <Select.Option key={item.value} >{item.key}</Select.Option>
-                                        })
-                                    }
-                               </Select>
+						if(record.followSituation == 5 && !record.isEdit) {
+							return (
+								customerStatus.map(function (item) {
+									if(item.value == text) {
+										return item.key
+									}
+								})
+							)
+						}else {
+							return <Select value={record.customerStatus} placeholder="选择最新状态" onChange={(e) => { record.customerStatus = e; this.setState({ data: this.state.data }); }}>
+                                            {
+                                                customerStatus.map(function (item) {
+                                                    return <Select.Option key={item.value} >{item.key}</Select.Option>
+                                                })
+                                            }
+                                       </Select>
+						}
 					}
 				}, {
 					title: '跟进说明',
@@ -88,9 +108,15 @@ const FollowDetail = React.createClass({
 					dataIndex: 'remarks',
 					key: 'remarks',
 					render: (text, record, index) => {
-						return <Input value={record.remarks} placeholder="跟进说明" 
-	                             onChange={(e) => { record.remarks = e.target.value; this.setState({ data: this.state.data }); }}
-	                             />
+						if(record.followSituation == 5 && !record.isEdit) {
+							return (
+								text
+							)
+						}else {
+							return <Input value={record.remarks} placeholder="跟进说明"
+                                         onChange={(e) => { record.remarks = e.target.value; this.setState({ data: this.state.data }); }}
+                                         />
+						}
 					}
 				}, {
 					title: '操作',
@@ -340,6 +366,7 @@ const FollowDetail = React.createClass({
 	//添加新业务
 	addNew(){
 		this.state.data.push({
+			isEdit: true,
 			projectName:'选择',
 			businessName:'',
 			customerStatus: undefined,

+ 23 - 5
js/component/manageCenter/customer/NEW/intentionCustomer/intentionCustomer.jsx

@@ -1,5 +1,5 @@
 import React from 'react';
-import { Radio, Icon, Button, AutoComplete,Cascader,Input, Select, Spin, Popconfirm, Table, Switch, message, DatePicker, Upload, Form,Tabs } from 'antd';
+import { Radio, Icon, Button, AutoComplete,Cascader,Input, Select, Spin, Popconfirm, Table, Switch, message, DatePicker, Upload, Form,Tabs,Modal } from 'antd';
 import ajax from 'jquery/src/ajax/xhr.js';
 import $ from 'jquery/src/ajax';
 import moment from 'moment';
@@ -142,8 +142,8 @@ const IntentionCustomer = Form.create()(
         addressSearch: [],
         orgCodeUrl: [],
         companyLogoUrl: [],
-		visible: false,
-		zhuanjiaoVisible: false,
+        visible: false,
+        zhuanjiaoVisible: false,
         searchMore: true,
         releaseDate: [],
         categoryArr: [],
@@ -573,6 +573,20 @@ const IntentionCustomer = Form.create()(
         zhuanjiaoVisible: false,
       });
     },
+    showConfirm(fn, record) {
+      Modal.confirm({
+        title: "提示",
+        content: (
+          <span style={{ color: "red" }}>
+            确定转交此客户?
+          </span>
+        ),
+        onOk() {
+          fn(record);
+        },
+        onCancel() {},
+      });
+    },
     render() {
       const FormItem = Form.Item;
       const rowSelection = {
@@ -728,7 +742,11 @@ const IntentionCustomer = Form.create()(
                 </AutoComplete>
                 <Button
                   type="primary"
-                  onClick={this.changeAssigner}
+                  // onClick={this.changeAssigner}
+                  onClick={(e) => {
+                    e.stopPropagation();
+                    this.showConfirm(this.changeAssigner);
+                  }}
                   disabled={!hasSelected}
                   style={{ marginRight: 10 }}
                 >
@@ -779,7 +797,7 @@ const IntentionCustomer = Form.create()(
                   重点客户
                 </Button>
                 <Button
-				style={{ marginLeft: 10 }}
+                  style={{ marginLeft: 10 }}
                   onClick={(e) => {
                     e.stopPropagation(),
                       this.zhuanjiaoDetail(this.state.selectedRows[0]);

+ 1 - 1
js/component/manageCenter/index/content.jsx

@@ -31,7 +31,7 @@ const MessageModal = React.createClass({
                 defaultCurrent: 1,
                 defaultPageSize: 10,
                 showQuickJumper: true,
-                pageSize: 10,
+                pageSize: 9999,
                 onChange: function (page) {
                     this.loadUnread(page);
                 }.bind(this),

+ 33 - 23
js/component/manageCenter/operate/content.jsx

@@ -31,30 +31,40 @@ class Content extends Component {
     }
     getKey (key) {
         switch (key) {
-            case 'recommendMessage':
-                require.ensure([], () => {
-                    const JitaoMessage = require('./messagePush/jitaoMessage').default;
-                    this.setState({
-                        component: <JitaoMessage />
-                    });
-                });
-                break;
-            case 'systemMessage':
-                require.ensure([], () => {
-                    const SystemMessage = require('./messagePush/systemMessage').default;
-                    this.setState({
-                        component: <SystemMessage />
-                    });
-                });
-                break;
-            //订单新增空白
-            default:
+          case "recommendMessage":
             require.ensure([], () => {
-                const Module = require('../module').default;
-                this.setState({
-                    component:<Module />	    
-                	});
-                });  
+              const JitaoMessage = require("./messagePush/jitaoMessage")
+                .default;
+              this.setState({
+                component: <JitaoMessage />,
+              });
+            });
+            break;
+          case "systemMessage":
+            require.ensure([], () => {
+              const SystemMessage = require("./messagePush/systemMessage")
+                .default;
+              this.setState({
+                component: <SystemMessage />,
+              });
+            });
+            break;
+          //订单新增空白
+          case "personnelAll":
+            require.ensure([], () => {
+              const PersonnelAll = require("./personnel/personnelAll").default;
+              this.setState({
+                component: <PersonnelAll ApiUrl={""} />,
+              });
+            });
+            break;
+          default:
+            require.ensure([], () => {
+              const Module = require("../module").default;
+              this.setState({
+                component: <Module />,
+              });
+            });
         };
         window.location.hash = key;
     }

+ 773 - 0
js/component/manageCenter/operate/personnel/personnelAll.jsx

@@ -0,0 +1,773 @@
+import React from "react";
+import $ from "jquery/src/ajax";
+import "@/manageCenter/financialManage/distribute/public.less";
+import {
+  Button,
+  Form,
+  Input,
+  Select,
+  Spin,
+  Table,
+  message,
+  Modal,
+  Tabs,
+  Tag,
+} from "antd";
+import Assign from "@/manageCenter/publicComponent/assign";
+import ResolutionDetail from "@/resolutionDetail";
+import OrderRiZi from "@/orderRiZi.jsx";
+import {
+  getProcessStatus,
+  getLiquidationStatus,
+  getApprovedState,
+  splitUrl,
+  getProjectStatus,
+  getboutique,
+  ShowModal,
+} from "@/tools";
+import ShowModalDiv from "@/showModal.jsx";
+// import ResolutionPro from "../task/resolutionPro";
+const FormItem = Form.Item;
+const { TabPane } = Tabs;
+const PersonnelAll = React.createClass({
+  loadData(pageNo) {
+    this.state.data = [];
+    this.setState({
+      page: pageNo,
+      loading: true,
+    });
+    $.ajax({
+      method: "get",
+      dataType: "json",
+      crossDomain: false,
+      url: globalConfig.context + "/api/admin/orderProject/orderTaskList",
+      data: {
+        pageNo: pageNo || 1,
+        pageSize: this.state.pagination.pageSize,
+        specially: 1, //经理
+        name: this.state.nameSearch, //客户名称
+        orderNo: this.state.orderNoSearch, //订单编号
+        taskId: this.state.taskNoSearch, //任务编号
+        depId: this.state.departmenttSearch, //订单部门
+        taskStatus: this.state.taskStatus, //任务状态
+        adminName: this.state.adminName, //任务受理人
+        outsource: 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];
+            if (thisdata.splitList) {
+              thisdata.splitList.forEach((item) => {
+                item.key = item.id;
+              });
+            }
+            theArr.push({
+              key: thisdata.id,
+              orderNo: thisdata.orderNo, //订单编号
+              id: thisdata.id, //任务ID
+              taskName: thisdata.taskName, //名称
+              cname: thisdata.cname, //项目品类
+              receiverName: thisdata.receiverName, //受理人
+              projectStatus: thisdata.projectStatus, //项目状态
+              taskStatus: thisdata.taskStatus, //任务状态
+              taskDate: thisdata.taskDate, //分配时间
+              commodityQuantity: thisdata.commodityQuantity, //数量
+              userName: thisdata.userName, //用户名
+              depName: thisdata.depName, //部门名称
+              splitStatus: thisdata.splitStatus, //拆分状态
+              splitList: thisdata.splitList,
+            });
+          }
+        }
+        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)
+    );
+  },
+  getInitialState() {
+    return {
+      searchMore: true,
+      assignVisible: false,
+      releaseDate: [],
+      roleName: "",
+      boHuivisible: false,
+      departmentArr: [],
+      selectedRowKeys: [],
+      selectedRows: [],
+      paginations: false,
+      loading: 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: "id",
+          key: "id",
+        },
+        {
+          title: "任务名称",
+          dataIndex: "taskName",
+          key: "taskName",
+        },
+        {
+          title: "订单编号",
+          dataIndex: "orderNo",
+          key: "orderNo",
+        },
+        {
+          title: "业务类别",
+          dataIndex: "cname",
+          key: "cname",
+        },
+        {
+          title: "客户名称",
+          dataIndex: "userName",
+          key: "userName",
+        },
+        {
+          title: "项目状态",
+          dataIndex: "projectStatus",
+          key: "projectStatus",
+          render: (text) => {
+            return getProjectStatus(text);
+          },
+        },
+        {
+          title: "分配时间",
+          dataIndex: "taskDate",
+          key: "taskDate",
+        },
+        {
+          title: "任务数量",
+          dataIndex: "commodityQuantity",
+          key: "commodityQuantity",
+          render: (text, record) => {
+            if (record.splitStatus == 1) {
+              return (
+                <span>
+                  {text}{" "}
+                  <Tag color="#108ee9" style={{ float: "right" }}>
+                    已拆
+                  </Tag>
+                </span>
+              );
+            } else {
+              return text;
+            }
+          },
+        },
+        {
+          title: "订单部门",
+          dataIndex: "depName",
+          key: "depName",
+        },
+        {
+          title: "操作",
+          dataIndex: "caozuo",
+          key: "caouzo",
+          render: (text, record) => {
+            return (
+              <div>
+                <Button
+                  type="primary"
+                  style={{ margin: "0 10px" }}
+                  disabled={record.splitStatus == 1 ? true : false}
+                  onClick={(e) => {
+                    e.stopPropagation(), this.evaluate(record, "咨询师经理");
+                  }}
+                >
+                  转交
+                </Button>
+                <Button
+                  type="primary"
+                  style={{ margin: "0 10px" }}
+                  disabled={record.splitStatus == 1 ? true : false}
+                  onClick={(e) => {
+                    e.stopPropagation(), this.evaluate(record, "咨询师");
+                  }}
+                >
+                  分配任务
+                </Button>
+                {record.splitStatus == 0 ? (
+                  <Button
+                    type="primary"
+                    style={{ margin: "0 10px" }}
+                    onClick={(e) => {
+                      e.stopPropagation();
+                      this.setState({
+                        resolutionVisible: true,
+                        resolutionName: record.taskName,
+                        resolutionNumber: record.commodityQuantity,
+                        resolutionId: record.id,
+                      });
+                    }}
+                  >
+                    拆分项目
+                  </Button>
+                ) : (
+                  ""
+                )}
+              </div>
+            );
+          },
+        },
+      ],
+      dataSource: [],
+      searchTime: [],
+      columnsX: [
+        {
+          title: "业务项目名称",
+          dataIndex: "commodityName",
+          key: "commodityName",
+        },
+        {
+          title: "项目类别",
+          dataIndex: "cname",
+          key: "cname",
+        },
+        {
+          title: "项目数量",
+          dataIndex: "commodityQuantity",
+          key: "commodityQuantity",
+          render: (text, record) => {
+            if (record.splitStatus == 1) {
+              return (
+                <span>
+                  {text}{" "}
+                  <Tag
+                    color="#108ee9"
+                    onClick={(e) => {
+                      e.stopPropagation();
+                      this.showRes(record);
+                    }}
+                  >
+                    已拆
+                  </Tag>
+                </span>
+              );
+            } else {
+              return text;
+            }
+          },
+        },
+        {
+          title: "金额(万元)",
+          dataIndex: "commodityPrice",
+          key: "commodityPrice",
+        },
+        {
+          title: "负责人",
+          dataIndex: "contacts",
+          key: "contacts",
+        },
+        {
+          title: "负责人电话",
+          dataIndex: "contactsMobile",
+          key: "contactsMobile",
+        },
+        {
+          title: "主要项目",
+          dataIndex: "main",
+          key: "main",
+          render: (text) => {
+            return text ? "是" : "否";
+          },
+        },
+        {
+          title: "项目说明",
+          dataIndex: "taskComment",
+          key: "taskComment",
+          render: (text) => {
+            return text && text.length > 8 ? text.substr(0, 8) + "…" : text;
+          },
+        },
+      ],
+      dataSourceX: [],
+      resVisible: false,
+    };
+  },
+  /* 分派 */
+  evaluate(record, nub) {
+    this.state.assignData = record;
+    this.setState(
+      {
+        nub,
+      },
+      () => {
+        this.setState({
+          assignVisible: true,
+        });
+      }
+    );
+  },
+
+  componentWillMount() {
+    this.departmentList();
+    this.loadData();
+  },
+  tableRowClick(record) {
+    this.state.RowData = record;
+    this.setState({
+      visible: true,
+    });
+    this.xiangqing(record.orderNo);
+    this.xiangmu(record.orderNo);
+  },
+  // 拆分详细
+  showRes(record) {
+    this.setState({
+      resVisible: true,
+      resRecord: record,
+    });
+  },
+  resCancel() {
+    this.setState({
+      resVisible: false,
+    });
+  },
+  //订单详情
+  xiangqing(orderNos) {
+    $.ajax({
+      method: "get",
+      dataType: "json",
+      crossDomain: false,
+      url: globalConfig.context + "/api/admin/newOrder/getOrderNewDetail",
+      data: {
+        orderNo: orderNos,
+      },
+      success: function (data) {
+        if (data.error.length || data.data.list == "") {
+          if (data.error && data.error.length) {
+            message.warning(data.error[0].message);
+          }
+        } else {
+          let thisdata = data.data;
+          this.setState({
+            orderNo: thisdata.orderNo, //订单编号
+            contractNo: thisdata.contractNo, //合同编号
+            userName: thisdata.userName, //客户名称
+            signDate: thisdata.signDate, //签单时间
+            processStatus: thisdata.processStatus, //流程状态
+            liquidationStatus: thisdata.liquidationStatus, //结算状态
+            contacts: thisdata.contacts, //企业联系人
+            contactMobile: thisdata.contactMobile, //联系人电话
+            legalPerson: thisdata.legalPerson, //法人
+            legalPersonTel: thisdata.legalPersonTel, //法人电话
+            firstAmount: thisdata.firstAmount, //签单金额
+            totalAmount: thisdata.totalAmount, //首付金额
+            approval: thisdata.approval, //特批状态
+            settlementAmount: thisdata.settlementAmount, //已收款项
+            orderRemarks: thisdata.orderRemarks, //订单留言
+            orgCodeUrl: thisdata.contractPictureUrl
+              ? splitUrl(
+                  thisdata.contractPictureUrl,
+                  ",",
+                  globalConfig.avatarHost + "/upload"
+                )
+              : [], //图片地址
+            salesmanName: thisdata.salesmanName, //营销员名称
+            salesmanMobile: thisdata.salesmanMobile, //营销员电话
+            financeName: thisdata.financeName, //财务名称
+            financeMobile: thisdata.financeMobile, //财务电话
+            oldSalesmanName: thisdata.oldSalesmanName, //营销员名称
+            oldSalesmanMobile: thisdata.oldSalesmanMobile, //营销员电话
+            nowFinance: thisdata.nowFinance, //财务名称
+            nowFinanceMobile: thisdata.nowFinanceMobile, //财务电话
+            depName: thisdata.depName, //订单部门
+          });
+        }
+      }.bind(this),
+    }).always(
+      function () {
+        this.setState({
+          loading: false,
+        });
+      }.bind(this)
+    );
+  },
+  //项目列表
+  xiangmu(orderNos) {
+    $.ajax({
+      method: "get",
+      dataType: "json",
+      crossDomain: false,
+      url: globalConfig.context + "/api/admin/newOrder/getOrderTask",
+      data: {
+        orderNo: orderNos,
+      },
+      success: function (data) {
+        let theArr = [];
+
+        if (data.error.length || data.data.list == "") {
+          if (data.error && data.error.length) {
+            message.warning(data.error[0].message);
+          }
+        } else {
+          for (let i = 0; i < data.data.length; i++) {
+            let thisdata = data.data[i];
+            theArr.push({
+              key: i,
+              id: thisdata.id,
+              orderNo: thisdata.orderNo, //订单编号
+              commodityId: thisdata.commodityId, //项目ID
+              commodityName: thisdata.commodityName, //项目名称
+              cname: thisdata.cname, //项目类别
+              commodityPrice: thisdata.commodityPrice, //项目价格
+              commodityQuantity: thisdata.commodityQuantity, //项目数量
+              main: thisdata.main, //是否为主要任务
+              taskComment: thisdata.taskComment, //任务说明
+              contacts: thisdata.contacts, //联系人
+              contactsMobile: thisdata.contactsMobile, //联系人电话
+              taskStatus: thisdata.taskStatus, //是否分配
+              splitStatus: thisdata.splitStatus,
+            });
+          }
+        }
+        this.setState({
+          dataSourceX: theArr,
+        });
+      }.bind(this),
+    }).always(
+      function () {
+        this.setState({
+          loading: false,
+        });
+      }.bind(this)
+    );
+  },
+  //关闭详情
+  visitCancel() {
+    this.setState({
+      visible: false,
+    });
+    this.loadData();
+  },
+  visitOk() {
+    this.setState({
+      visible: false,
+    });
+    this.reset();
+  },
+  closeDesc(e, s) {
+    this.state.showDesc = e;
+    if (s) {
+      this.loadData(this.state.page);
+    }
+  },
+  closeAssign(e, s) {
+    this.state.roleName = "";
+    this.state.assignVisible = e;
+    if (s) {
+      this.loadData(this.state.page);
+    }
+  },
+  nextCancel() {
+    this.setState({
+      addnextVisible: false,
+    });
+  },
+  //点击打卡项目详情
+  tableRowClickX(record) {
+    this.setState({
+      jid: record.id, //项目ID
+      kid: record.commodityId, //商品ID
+      commodityName: record.commodityName, //金额
+      commodityPrice: record.commodityPrice, //金额
+      commodityQuantity: record.commodityQuantity, //数量
+      taskComment: record.taskComment, //备注
+      main: record.main.toString(), //是否为主要
+      addnextVisible: true,
+      addState: 0,
+    });
+  },
+  search() {
+    this.loadData();
+  },
+  reset() {
+    this.state.nameSearch = "";
+    this.state.releaseDate = [];
+    this.state.orderNoSearch = "";
+    this.state.taskNoSearch = "";
+    this.state.departmenttSearch = undefined;
+    this.state.distribution = undefined;
+    this.loadData(this.state.page);
+  },
+  searchSwitch() {
+    this.setState({
+      searchMore: !this.state.searchMore,
+    });
+  },
+  //部门
+  departmentList() {
+    this.setState({
+      loading: true,
+    });
+    $.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);
+          }
+          thedata = {};
+        } else {
+          thedata.map(function (item, index) {
+            theArr.push({
+              key: index,
+              name: item.name,
+              id: item.id,
+            });
+          });
+        }
+        this.setState({
+          departmentArr: theArr,
+        });
+      }.bind(this),
+    }).always(
+      function () {
+        this.setState({
+          loading: false,
+        });
+      }.bind(this)
+    );
+  },
+  resolutionCancel() {
+    this.setState({
+      resolutionVisible: false,
+    });
+  },
+  rizhi() {
+    this.setState({
+      loading: true,
+    });
+    $.ajax({
+      method: "get",
+      dataType: "json",
+      crossDomain: false,
+      url: "/api/admin/newOrder/selectOrderLog",
+      data: {
+        orderNo: this.state.orderNo,
+      },
+      success: function (data) {
+        let theArr = [];
+        let thisData = data.data;
+        if (!thisData.length) {
+          if (data.error && data.error.length) {
+            message.warning(data.error[0].message);
+          }
+          thisData = {};
+        } else {
+          for (let i = 0; i < data.data.length; i++) {
+            let thisdata = data.data[i];
+            theArr.push({
+              processName: thisdata.processName,
+              adminName: thisdata.adminName,
+              createDate: thisdata.createDate,
+              remarks: thisdata.remarks,
+            });
+          }
+        }
+        this.setState({
+          dataSourceY: theArr,
+        });
+      }.bind(this),
+    }).always(
+      function () {
+        this.setState({
+          loading: false,
+        });
+      }.bind(this)
+    );
+  },
+  closeOrderLog() {
+    this.setState({
+      avisible: false,
+    });
+  },
+  getOrderLog() {
+    this.setState({
+      avisible: true,
+    });
+    this.rizhi();
+  },
+  render() {
+    const expandedRowRender = (e) => {
+      const data = e.splitList;
+      let columns = [];
+      if (e.splitList instanceof Array && e.splitList.length) {
+        columns = [
+          {
+            title: "任务编号",
+            dataIndex: "splitSuper",
+            key: "splitSuper",
+            render: (text, record) => {
+              return text + "-" + record.splitId;
+            },
+          },
+          {
+            title: "任务名称",
+            dataIndex: "taskName",
+            key: "taskName",
+          },
+          {
+            title: "订单编号",
+            dataIndex: "orderNo",
+            key: "orderNo",
+          },
+          {
+            title: "业务类别",
+            dataIndex: "cname",
+            key: "cname",
+          },
+          {
+            title: "客户名称",
+            dataIndex: "userName",
+            key: "userName",
+          },
+          {
+            title: "项目状态",
+            dataIndex: "projectStatus",
+            key: "projectStatus",
+            render: (text) => {
+              return getProjectStatus(text);
+            },
+          },
+          {
+            title: "分配时间",
+            dataIndex: "taskDate",
+            key: "taskDate",
+          },
+          {
+            title: "任务数量",
+            dataIndex: "commodityQuantity",
+            key: "commodityQuantity",
+          },
+          {
+            title: "订单部门",
+            dataIndex: "depName",
+            key: "depName",
+          },
+          {
+            title: "拆分操作人",
+            dataIndex: "splitAname",
+            key: "splitAname",
+          },
+          {
+            title: "项目负责人",
+            dataIndex: "receiverName",
+            key: "receiverName",
+          },
+          {
+            title: "拆分时间",
+            dataIndex: "splitTimes",
+            key: "splitTimes",
+          },
+          {
+            title: "操作",
+            dataIndex: "caozuo",
+            key: "caouzo",
+            render: (text, record) => {
+              return (
+                <div>
+                  <Button
+                    type="primary"
+                    style={{ margin: "0 10px" }}
+                    disabled={record.distributeSign == 1 ? true : false}
+                    onClick={(e) => {
+                      e.stopPropagation(), this.evaluate(record, "咨询师经理");
+                    }}
+                  >
+                    转交
+                  </Button>
+                  <Button
+                    type="primary"
+                    style={{ margin: "0 10px" }}
+                    disabled={record.distributeSign == 1 ? true : false}
+                    onClick={(e) => {
+                      e.stopPropagation(), this.evaluate(record, "咨询师");
+                    }}
+                  >
+                    分配任务
+                  </Button>
+                </div>
+              );
+            },
+          },
+        ];
+        return (
+          <Table
+            columns={columns}
+            dataSource={data}
+            pagination={false}
+            onRowClick={this.tableRowClick.bind(this)}
+          />
+        );
+      } else {
+        columns = [];
+        return (
+          <p style={{ fontWeight: "bold", color: "red", textAlign: "center" }}>
+            此项目暂未拆分
+          </p>
+        );
+      }
+    };
+    const rowSelection = {
+      selectedRowKeys: this.state.selectedRowKeys,
+      onChange: (selectedRowKeys, selectedRows) => {
+        this.setState({
+          selectedRows: selectedRows.slice(-1),
+          selectedRowKeys: selectedRowKeys.slice(-1),
+        });
+      },
+    };
+    const formItemLayout = {
+      labelCol: { span: 8 },
+      wrapperCol: { span: 14 },
+    };
+    let departmentArr = this.state.departmentArr || [];
+    return (
+      <div className="user-content">
+        123
+      </div>
+    );
+  },
+});
+
+export default PersonnelAll;

+ 0 - 0
js/component/manageCenter/operate/personnel/personnelList.jsx


+ 10 - 2
js/component/manageCenter/order/orderNew/addService.jsx

@@ -3725,6 +3725,7 @@ const NewService = Form.create()(
           return (
             <Table
               columns={columns}
+              scroll={{ x: "max-content", y: 0 }}
               dataSource={data}
               pagination={false}
               onRowDoubleClick={this.state.listFlag ? this.not : this.editPro}
@@ -3857,6 +3858,7 @@ const NewService = Form.create()(
           return (
             <Table
               columns={columns}
+              scroll={{ x: "max-content", y: 0 }}
               dataSource={data}
               pagination={false}
             />
@@ -4636,6 +4638,7 @@ const NewService = Form.create()(
                             <Spin spinning={this.state.loading}>
                               <Table
                                 columns={this.state.columns}
+                                scroll={{ x: "max-content", y: 0 }}
                                 dataSource={this.state.dataSource}
                                 pagination={this.state.pagination}
                                 onRowClick={this.tableRowClick}
@@ -5047,10 +5050,13 @@ const NewService = Form.create()(
                                   <Table
                                     columns={this.state.proColumns}
                                     dataSource={this.state.proDataSource}
+                                    scroll={{ x: "max-content", y: 0 }}
                                     expandedRowRender={expandedRowRender}
                                     pagination={this.state.pagination}
                                     onRowDoubleClick={
-                                      this.state.listFlag ? this.not : this.editPro
+                                      this.state.listFlag
+                                        ? this.not
+                                        : this.editPro
                                     }
                                     bordered
                                     size="small"
@@ -5105,7 +5111,9 @@ const NewService = Form.create()(
                                       dataSource={this.state.cuiDataSource}
                                       scroll={{ x: "max-content", y: 0 }}
                                       onRowDoubleClick={
-                                        this.state.listCuiFlag ? this.not : this.editCui
+                                        this.state.listCuiFlag
+                                          ? this.not
+                                          : this.editCui
                                       }
                                       bordered
                                       size="small"

+ 20 - 5
js/component/manageCenter/order/orderNew/changeComponent/changeApply.js

@@ -1498,6 +1498,7 @@ class ChangeApply extends Component {
         id: this.state.data.id,
         status: this.state.data.status,
         processState: this.state.data.processState,
+        orderNo: this.state.data.orderNo
       },
     }).done(
       function (data) {
@@ -1658,6 +1659,7 @@ class ChangeApply extends Component {
           <Table
             columns={columns}
             dataSource={data}
+            scroll={{ x: "max-content", y: 0 }}
             pagination={false}
             onRowDoubleClick={this.state.listFlag ? this.not : this.editPro}
           />
@@ -1844,10 +1846,18 @@ class ChangeApply extends Component {
               >
                 重置
               </Button>
-                {this.state.data.status == 3 ? (
-                  <Button
+              {this.state.data.status == 3 ? (
+                <Button
                   type="danger"
-                  style={{ float: "right", backgroundColor: "red", color: "white", position: "absolute", right: 0, height: 50, borderRadius: 20 }}
+                  style={{
+                    float: "right",
+                    backgroundColor: "red",
+                    color: "white",
+                    position: "absolute",
+                    right: 0,
+                    height: 50,
+                    borderRadius: 20,
+                  }}
                   onClick={(e) => {
                     e.stopPropagation();
                     this.showConfirmChange(this.deleteChange);
@@ -1855,7 +1865,9 @@ class ChangeApply extends Component {
                 >
                   取消本次变更
                 </Button>
-                ) : ("")}
+              ) : (
+                ""
+              )}
             </FormItem>
           </div>
           <div className="clearfix">
@@ -1951,6 +1963,7 @@ class ChangeApply extends Component {
               <Table
                 columns={this.state.proColumns}
                 dataSource={this.state.proDataSource}
+                scroll={{ x: "max-content", y: 0 }}
                 expandedRowRender={expandedRowRender}
                 pagination={false}
                 onRowDoubleClick={this.state.listFlag ? this.not : this.editPro}
@@ -1995,7 +2008,9 @@ class ChangeApply extends Component {
                   columns={this.state.changeCuiList}
                   dataSource={this.state.cuiDataSource}
                   scroll={{ x: "max-content", y: 0 }}
-                  onRowDoubleClick={this.state.listCuiFlag ? this.not : this.editCui}
+                  onRowDoubleClick={
+                    this.state.listCuiFlag ? this.not : this.editCui
+                  }
                   bordered
                   size="small"
                 />

+ 72 - 0
js/component/manageCenter/personnel/content.jsx

@@ -0,0 +1,72 @@
+import React, { Component } from "react";
+import "../content.less";
+import LeftTab from "../leftTab";
+import { getMenu } from "../publicMenu.js";
+
+class Content extends Component {
+  constructor() {
+    super();
+    this.state = {
+      loading: false,
+      component: <div></div>,
+    };
+  }
+  componentWillMount() {
+    var ids = window.location.href.indexOf("rid=");
+    var idk = window.location.href.substr(ids + 4);
+    var rid = idk.split("#");
+    let menu = getMenu(rid);
+    let curry;
+    if (menu[0].subMenus.length > 0) {
+      curry = menu[0].subMenus[0].url.split("#");
+    } else {
+      curry = menu[0].url.split("#");
+    }
+    if (window.location.hash) {
+      this.getKey(window.location.hash.substr(1));
+    } else {
+      this.getKey(curry[1]);
+    }
+  }
+  getKey(key) {
+    switch (key) {
+      //项目派单
+      //   case "projectAssignment":
+      //     require.ensure([], () => {
+      //       const ProjectAssignment = require("./project/projectAssignment")
+      //         .default;
+      //       this.setState({
+      //         component: <ProjectAssignment ApiUrl={""} />,
+      //       });
+      //     });
+      //     break;
+      //   //项目查询
+      case "personnelAll":
+        require.ensure([], () => {
+          const PersonnelAll = require("./personnel/personnelAll").default;
+          this.setState({
+            component: <PersonnelAll ApiUrl={""} />,
+          });
+        });
+        break;
+      default:
+        require.ensure([], () => {
+          const Module = require("../module").default;
+          this.setState({
+            component: <Module ApiUrl={""} />,
+          });
+        });
+    }
+    window.location.hash = key;
+  }
+  render() {
+    return (
+      <div className="manage-content">
+        <LeftTab handlekey={this.getKey.bind(this)} />
+        <div className="content-right">{this.state.component}</div>
+      </div>
+    );
+  }
+}
+
+export default Content;

File diff suppressed because it is too large
+ 1185 - 0
js/component/manageCenter/personnel/personnel/personnelAll.jsx


+ 0 - 0
js/component/manageCenter/personnel/personnel/personnelList.jsx


+ 23 - 16
js/component/manageCenter/statistics/content.jsx

@@ -1,6 +1,5 @@
 import React, { Component } from 'react';
-import '../content.less';
-import './content.less';
+import "../content.less";
 import LeftTab from '../leftTab';
 import {getMenu} from '../publicMenu.js'
 
@@ -31,21 +30,29 @@ class Content extends Component {
     }
     getKey(key) {
         switch (key) {
-            case 'order': //派单管理
-                require.ensure([], () => {
-                    let Module = require('./order/index').default;
-                    this.setState({
-                        component: <Module />,
-                    });
-                });
-                break;
-            default:
+          case "order": //派单管理
             require.ensure([], () => {
-                let Module = require('../module').default;
-                this.setState({
-                    component:<Module />	    
-                	});
-               });  
+              let Module = require("./order/index").default;
+              this.setState({
+                component: <Module />,
+              });
+            });
+            break;
+          case "personnelAll":
+            require.ensure([], () => {
+              const PersonnelAll = require("./personnel/personnelAll").default;
+              this.setState({
+                component: <PersonnelAll ApiUrl={""} />,
+              });
+            });
+            break;
+          default:
+            require.ensure([], () => {
+              let Module = require("../module").default;
+              this.setState({
+                component: <Module />,
+              });
+            });
         };
         window.location.hash = key;
     }

+ 496 - 0
js/component/manageCenter/statistics/personnel/personnelAll.jsx

@@ -0,0 +1,496 @@
+import React from "react";
+import $ from "jquery/src/ajax";
+import "@/manageCenter/financialManage/distribute/public.less";
+import { ChooseList } from "../../order/orderNew/chooseList";
+import "./personnelList.less"
+import {
+  Button,
+  Form,
+  Input,
+  Select,
+  Spin,
+  Table,
+  message,
+  Modal,
+  Tabs,
+  Tag,
+  RangePicker,
+  DatePicker,
+  Radio,
+} from "antd";
+import {} from "@/tools";
+const FormItem = Form.Item;
+const { TabPane } = Tabs;
+const { TextArea } = Input;
+const PersonnelAll = React.createClass({
+  loadData(pageNo) {
+    this.state.data = [];
+    this.setState({
+      page: pageNo,
+      loading: true,
+    });
+    $.ajax({
+      method: "get",
+      dataType: "json",
+      crossDomain: false,
+      url: globalConfig.context + "/api/admin/orderProject/orderTaskList",
+      data: {
+        pageNo: pageNo || 1,
+        pageSize: this.state.pagination.pageSize,
+        specially: 1, //经理
+        name: this.state.nameSearch, //客户名称
+        orderNo: this.state.orderNoSearch, //订单编号
+        taskId: this.state.taskNoSearch, //任务编号
+        depId: this.state.departmenttSearch, //订单部门
+        taskStatus: this.state.taskStatus, //任务状态
+        adminName: this.state.adminName, //任务受理人
+        outsource: 1,
+      },
+      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];
+            if (thisdata.splitList) {
+              thisdata.splitList.forEach((item) => {
+                item.key = item.id;
+              });
+            }
+            theArr.push({
+              key: thisdata.id,
+              orderNo: thisdata.orderNo, //订单编号
+              id: thisdata.id, //任务ID
+              taskName: thisdata.taskName, //名称
+              cname: thisdata.cname, //项目品类
+              receiverName: thisdata.receiverName, //受理人
+              projectStatus: thisdata.projectStatus, //项目状态
+              taskStatus: thisdata.taskStatus, //任务状态
+              taskDate: thisdata.taskDate, //分配时间
+              commodityQuantity: thisdata.commodityQuantity, //数量
+              userName: thisdata.userName, //用户名
+              depName: thisdata.depName, //部门名称
+              splitStatus: thisdata.splitStatus, //拆分状态
+              splitList: thisdata.splitList,
+            });
+          }
+        }
+        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)
+    );
+  },
+  getInitialState() {
+    return {
+      peoVisible: false,
+      isAddPeo: false,
+      searchMore: true,
+      assignVisible: false,
+      releaseDate: [],
+      roleName: "",
+      shouKuanDate: [],
+      boHuivisible: false,
+      departmentArr: [],
+      selectedRowKeys: [],
+      selectedRows: [],
+      paginations: false,
+      loading: 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: "id",
+          key: "id",
+        },
+        {
+          title: "员工姓名",
+          dataIndex: "name",
+          key: "name",
+        },
+      ],
+      dataSource: [],
+      resVisible: false,
+    };
+  },
+  /* 分派 */
+  evaluate(record, nub) {
+    this.state.assignData = record;
+    this.setState(
+      {
+        nub,
+      },
+      () => {
+        this.setState({
+          assignVisible: true,
+        });
+      }
+    );
+  },
+
+  componentWillMount() {
+    this.loadData();
+  },
+  changeList(arr) {
+    const newArr = [];
+    this.state.columns.forEach((item) => {
+      arr.forEach((val) => {
+        if (val === item.title) {
+          newArr.push(item);
+        }
+      });
+    });
+    this.setState({
+      changeList: newArr,
+    });
+  },
+  addPeo() {
+    this.setState({
+      peoVisible: true,
+      isAddPeo: true
+    })
+  },
+  addPeoCancel() {
+    this.setState({
+      peoVisible: false,
+      isAddPeo: false
+    })
+  },
+  render() {
+    const rowSelection = {
+      selectedRowKeys: this.state.selectedRowKeys,
+      onChange: (selectedRowKeys, selectedRows) => {
+        this.setState({
+          selectedRows: selectedRows.slice(-1),
+          selectedRowKeys: selectedRowKeys.slice(-1),
+        });
+      },
+    };
+    const { RangePicker } = DatePicker;
+    const formItemLayout = {
+      labelCol: { span: 8 },
+      wrapperCol: { span: 14 },
+    };
+    let departmentArr = this.state.departmentArr || [];
+    return (
+      <div className="user-content">
+        <div className="content-title" style={{ marginBottom: 10 }}>
+          <span style={{ fontWeight: 900, fontSize: 16 }}>人事档案统计</span>
+        </div>
+        <Tabs defaultActiveKey="2" onChange={this.callback} className="test">
+          <TabPane tab="更改表格显示数据" key="1">
+            <div style={{ marginLeft: 10 }}>
+              <ChooseList
+                columns={this.state.columns}
+                changeFn={this.changeList}
+                changeList={this.state.changeList}
+                top={55}
+                margin={11}
+              />
+            </div>
+          </TabPane>
+          <TabPane tab="搜索" key="2">
+            <div className="user-search" style={{ marginLeft: 10 }}>
+              <Input
+                placeholder="订单编号"
+                value={this.state.orderNoSearch}
+                onChange={(e) => {
+                  this.setState({ orderNoSearch: e.target.value });
+                }}
+              />
+              <Input
+                placeholder="客户名称"
+                value={this.state.nameSearch}
+                onChange={(e) => {
+                  this.setState({ nameSearch: e.target.value });
+                }}
+              />
+              <Select
+                placeholder="订单部门"
+                style={{ width: 120, marginRight: 10 }}
+                value={this.state.departmenttList}
+                onChange={(e) => {
+                  this.setState({ departmenttList: e });
+                }}
+              >
+                {departmentArr.map(function (item) {
+                  return (
+                    <Select.Option key={item.id}>{item.name}</Select.Option>
+                  );
+                })}
+              </Select>
+              <Input
+                placeholder="合同编号"
+                value={this.state.contractNoSearch}
+                onChange={(e) => {
+                  this.setState({
+                    contractNoSearch: e.target.value,
+                  });
+                }}
+              />
+              <Select
+                placeholder="流程状态"
+                onChange={(e) => {
+                  this.setState({ processStatusSearch: e });
+                }}
+                style={{ width: 120, marginRight: 5 }}
+                value={this.state.processStatusSearch}
+              >
+                <Option value="3">未分配</Option>
+                <Option value="4">已分配</Option>
+                <Option value="9">已驳回</Option>
+              </Select>
+              <Select
+                placeholder="结算状态"
+                onChange={(e) => {
+                  this.setState({ liquidationStatus: e });
+                }}
+                style={{ width: 120, marginRight: 5 }}
+                value={this.state.liquidationStatus}
+              >
+                <Option value="0">首付待付清</Option>
+                <Option value="1">尾款待付清</Option>
+                <Option value="2">已付清</Option>
+              </Select>
+              <Select
+                style={{ width: 120 }}
+                placeholder="签单金额"
+                value={this.state.amountStatus}
+                onChange={(e) => {
+                  this.setState({
+                    amountStatus: e,
+                  });
+                }}
+              >
+                <Option value="0">10万元以下</Option>
+                <Option value="1">10~20万元</Option>
+                <Option value="2">20~30万元</Option>
+                <Option value="3">30~40万元</Option>
+                <Option value="4">40万元以上</Option>
+              </Select>
+              <span style={{}}>下单日期:</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={{}}>最近收款:</span>
+              <RangePicker
+                value={[
+                  this.state.shouKuanDate[0]
+                    ? moment(this.state.shouKuanDate[0])
+                    : null,
+                  this.state.shouKuanDate[1]
+                    ? moment(this.state.shouKuanDate[1])
+                    : null,
+                ]}
+                onChange={(data, dataString) => {
+                  this.setState({ shouKuanDate: dataString });
+                }}
+              />
+              <Button
+                type="primary"
+                onClick={this.search}
+                style={{ marginLeft: 10 }}
+              >
+                搜索
+              </Button>
+              <Button onClick={this.reset}>重置</Button>
+            </div>
+          </TabPane>
+          <TabPane tab="新增员工档案" key="3">
+            <Button
+              type="primary"
+              onClick={this.addPeo}
+              style={{ margin: "11px 0px 10px 10px" }}
+            >
+              新增员工档案
+            </Button>
+          </TabPane>
+          <TabPane tab="导出Excel" key="4">
+            <Button type="primary" style={{ margin: "11px 0px 10px 10px" }}>
+              导出当前列表
+            </Button>
+          </TabPane>
+          <TabPane tab="查看" key="5">
+            <Button
+              type="primary"
+              style={{ margin: "11px 0px 10px 10px" }}
+              onClick={() => {}}
+            >
+              详情收款流水
+            </Button>
+          </TabPane>
+        </Tabs>
+        <div className="patent-table">
+          <Spin spinning={this.state.loading}>
+            <Table
+              bordered
+              columns={
+                this.state.changeList == undefined
+                  ? this.state.columns
+                  : this.state.changeList
+              }
+              dataSource={this.state.dataSource}
+              scroll={{ x: "max-content", y: 0 }}
+              pagination={this.state.pagination}
+              size="small"
+            />
+          </Spin>
+        </div>
+
+        <Modal
+          visible={this.state.peoVisible}
+          onOk={this.checkOk}
+          width={800}
+          okText={"保存"}
+          onCancel={() => {
+            this.loadData();
+            this.addPeoCancel();
+          }}
+        >
+          <Spin spinning={this.state.loading}>
+            <h2
+              style={{
+                textAlign: "center",
+                paddingBottom: 10,
+                marginBottom: 10,
+              }}
+            >
+              {this.state.isAddPeo ? "新增人事档案" : "修改人事档案"}
+            </h2>
+            <div className="clearfix">
+              <FormItem
+                className="half-item"
+                {...formItemLayout}
+                label="员工编号"
+              >
+                <Input
+                  placeholder=""
+                  style={{ width: 200 }}
+                  value={this.state.contractNoSearch}
+                  onChange={(e) => {
+                    this.setState({
+                      contractNoSearch: e.target.value,
+                    });
+                  }}
+                />
+              </FormItem>
+              <FormItem
+                className="half-item"
+                {...formItemLayout}
+                label="门禁编号"
+              >
+                <Input
+                  style={{ width: 200 }}
+                  placeholder="请输入门禁编号"
+                  value={this.state.contractNoSearch}
+                  onChange={(e) => {
+                    this.setState({
+                      contractNoSearch: e.target.value,
+                    });
+                  }}
+                />
+              </FormItem>
+            </div>
+            <div className="clearfix">
+              <FormItem className="half-item" {...formItemLayout} label="姓名">
+                <Input
+                  placeholder=""
+                  style={{ width: 200 }}
+                  value={this.state.contractNoSearch}
+                  onChange={(e) => {
+                    this.setState({
+                      contractNoSearch: e.target.value,
+                    });
+                  }}
+                />
+              </FormItem>
+              <FormItem
+                className="half-item"
+                {...formItemLayout}
+                label="出生日期"
+              >
+                <RangePicker
+                  value={[
+                    this.state.shouKuanDate[0]
+                      ? moment(this.state.shouKuanDate[0])
+                      : null,
+                    this.state.shouKuanDate[1]
+                      ? moment(this.state.shouKuanDate[1])
+                      : null,
+                  ]}
+                  onChange={(data, dataString) => {
+                    this.setState({ shouKuanDate: dataString });
+                  }}
+                />
+              </FormItem>
+            </div>
+            <div className="clearfix">
+              <FormItem className="half-item" {...formItemLayout} label="性别">
+                <Radio.Group
+                  onChange={(e) => {
+                    this.setState({ sex: e.target.value });
+                  }}
+                  value={this.state.sex}
+                >
+                  <Radio value={1}>男</Radio>
+                  <Radio value={2}>女</Radio>
+                </Radio.Group>
+              </FormItem>
+              <FormItem className="half-item" {...formItemLayout} label="民族">
+                <Input
+                  placeholder="输入民族(例:汉族)"
+                  style={{ width: 200 }}
+                  value={this.state.contractNoSearch}
+                  onChange={(e) => {
+                    this.setState({
+                      contractNoSearch: e.target.value,
+                    });
+                  }}
+                />
+              </FormItem>
+            </div>
+          </Spin>
+        </Modal>
+      </div>
+    );
+  },
+});
+
+export default PersonnelAll;

+ 0 - 0
js/component/manageCenter/statistics/personnel/personnelList.jsx


+ 9 - 0
js/component/manageCenter/statistics/personnel/personnelList.less

@@ -0,0 +1,9 @@
+.ant-tabs.ant-tabs-top.test.ant-tabs-line {
+    background-color: #f5f5f5;
+}
+.ant-tabs-tab {
+    font-weight: 900;
+}
+.ant-tabs-bar {
+    margin-bottom: 0;
+}

+ 1 - 1
js/component/manageCenter/topTab.jsx

@@ -486,7 +486,7 @@ const TopTab = React.createClass({
 		            		<Col key={i} className={this.props.active === getActives(menu[i].name) ? 'active' : ''} span={3}><a href={globalConfig.context + menu[i].url+'?rid='+menu[i].id}>{menu[i].name}</a></Col>
 		            	)
 	            	}
-	            }
+                }
 	            this.setState({
 	            	htmlMenus:htmlMenu
 	            })

+ 1 - 1
package.json

@@ -1,6 +1,6 @@
 {
   "name": "afanti",
-  "version": "1.1.38",
+  "version": "1.1.39",
   "description": "",
   "main": "index.js",
   "scripts": {

+ 263 - 257
webpack.config.js

@@ -30,263 +30,269 @@ module.exports = (function () {
             break;
     }
     let plugins = [
-        //把入口文件里面的数组打包成verdors.js
-        new webpack.optimize.CommonsChunkPlugin({
-            name: 'vendors'
-        }),
-        /* 配置好Dll */
-        new webpack.DllReferencePlugin({
-            context: dirVars.staticRootDir, // 指定一个路径作为上下文环境,需要与DllPlugin的context参数保持一致,建议统一设置为项目根目录
-            manifest: require('./dll/' + argv.env.deploy + '/manifest.json') // 指定manifest.json
-        }),
-        // 把dll文件复制到打包后的文件中
-        new CopyWebpackPlugin([
-            {
-                from: path.resolve('./dll/' + argv.env.deploy),
-                to: (__dirname, './dll/'),
-                ignore: ['.*']
-            }
-        ]),
-        // 将 dll.js 插入HTML里
-        new HtmlWebpackIncludeAssetsPlugin({
-            assets: [(__dirname, 'dll/dll.js'), (__dirname, 'dll/dll.css')],
-            append: false
-        }),
-        new ExtractTextPlugin({
-            filename: "[name].css",
-            disable: false,
-            allChunks: true
-        }),
-        //定义全局变量区分本地测试生产做跳转
-        new webpack.DefinePlugin({
-            jumpUrl: `'${jumlApi}'`
-        }),
-        //user
-        new HtmlWebpackPlugin({
-            title: '用户首页',
-            filename: 'user/index.html',
-            template: './template/template.html',
-            chunks: ['user/index', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '用户登录',
-            filename: 'user/login.html',
-            template: './template/template.html',
-            chunks: ['user/login', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '用户注册',
-            filename: 'user/signIn.html',
-            template: './template/template.html',
-            chunks: ['user/signIn', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '个人用户认证',
-            filename: 'user/certify.html',
-            template: './template/template.html',
-            chunks: ['user/certify', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '团体用户认证',
-            filename: 'user/groupCertify.html',
-            template: './template/template.html',
-            chunks: ['user/groupCertify', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '用户详情',
-            filename: 'user/subscriberDetail.html',
-            template: './template/template.html',
-            chunks: ['user/subscriberDetail', 'vendors']
-        }),
-        //user-account
-        new HtmlWebpackPlugin({
-            title: '用户中心-首页',
-            filename: 'user/account/index.html',
-            template: './template/template.html',
-            chunks: ['user/account/index', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '用户中心-设置',
-            filename: 'user/account/set.html',
-            template: './template/template.html',
-            chunks: ['user/account/set', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '用户中心-科技服务',
-            filename: 'user/account/services.html',
-            template: './template/template.html',
-            chunks: ['user/account/services', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '用户中心-科技服务',
-            filename: 'user/account/achievement.html',
-            template: './template/template.html',
-            chunks: ['user/account/achievement', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '用户中心-科技服务',
-            filename: 'user/account/demand.html',
-            template: './template/template.html',
-            chunks: ['user/account/demand', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-科技服务管理-科技评估信息',
-            filename: 'user/account/evaluateInfo.html',
-            template: './template/template.html',
-            chunks: ['user/account/evaluateInfo', 'vendors']
-        }),
-        //admin
-        new HtmlWebpackPlugin({
-            title: '管理员-首页',
-            filename: 'admin/index.html',
-            template: './template/template.html',
-            chunks: ['admin/index', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-登录',
-            filename: 'admin/login.html',
-            template: './template/template.html',
-            chunks: ['admin/login', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-用户管理',
-            filename: 'admin/userManage.html',
-            template: './template/template.html',
-            chunks: ['admin/userManage', 'vendors']
-        }),
-        //admin-servicesManage
-        new HtmlWebpackPlugin({
-            title: '管理员-科技服务管理-专利',
-            filename: 'admin/servicesManage/contract.html',
-            template: './template/template.html',
-            chunks: ['admin/servicesManage/contract', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-科技服务管理-专利',
-            filename: 'admin/servicesManage/patent.html',
-            template: './template/template.html',
-            chunks: ['admin/servicesManage/patent', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-科技服务管理-软著',
-            filename: 'admin/servicesManage/copyright.html',
-            template: './template/template.html',
-            chunks: ['admin/servicesManage/copyright', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-科技服务管理-高企',
-            filename: 'admin/servicesManage/highTech.html',
-            template: './template/template.html',
-            chunks: ['admin/servicesManage/highTech', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-科技服务管理-高企信息',
-            filename: 'admin/servicesManage/highTechInfo.html',
-            template: './template/template.html',
-            chunks: ['admin/servicesManage/highTechInfo', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-科技服务管理-科技',
-            filename: 'admin/servicesManage/technology.html',
-            template: './template/template.html',
-            chunks: ['admin/servicesManage/technology', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-科技服务管理-项目单',
-            filename: 'admin/servicesManage/projectOrder.html',
-            template: './template/template.html',
-            chunks: ['admin/servicesManage/projectOrder', 'vendors']
-        }),
-        //admin-demand
-        new HtmlWebpackPlugin({
-            title: '管理员-用户管理',
-            filename: 'admin/demand.html',
-            template: './template/template.html',
-            chunks: ['admin/demand', 'vendors']
-        }),
-        //admin-achievement
-        new HtmlWebpackPlugin({
-            title: '管理员-用户管理',
-            filename: 'admin/achievement.html',
-            template: './template/template.html',
-            chunks: ['admin/achievement', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-用户管理',
-            filename: 'admin/customer.html',
-            template: './template/template.html',
-            chunks: ['admin/customer', 'vendors']
-        }),
-        //admin-set
-        new HtmlWebpackPlugin({
-            title: '管理员-用户管理',
-            filename: 'admin/set.html',
-            template: './template/template.html',
-            chunks: ['admin/set', 'vendors']
-        }),
-        //admin-idea
-        new HtmlWebpackPlugin({
-            title: '管理员-财务管理',
-            filename: 'admin/idea.html',
-            template: './template/template.html',
-            chunks: ['admin/idea', 'vendors']
-        }),
-        //admin-userOrder
-        new HtmlWebpackPlugin({
-            title: '管理员-用户订单管理',
-            filename: 'admin/userOrder.html',
-            template: './template/template.html',
-            chunks: ['admin/userOrder', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-订单管理',
-            filename: 'admin/order.html',
-            template: './template/template.html',
-            chunks: ['admin/order', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-平台管理',
-            filename: 'admin/operate.html',
-            template: './template/template.html',
-            chunks: ['admin/operate', 'vendors']
-        }),//statistics
-        new HtmlWebpackPlugin({
-            title: '管理员-数据统计',
-            filename: 'admin/statistics.html',
-            template: './template/template.html',
-            chunks: ['admin/statistics', 'vendors']
-        }),
-        new HtmlWebpackPlugin({
-            title: '管理员-项目管理',
-            filename: 'admin/project.html',
-            template: './template/template.html',
-            chunks: ['admin/project', 'vendors']
-        }),
-        //portal 门户
-        // new HtmlWebpackPlugin({
-        //     title: '主页-需求搜索',
-        //     filename: 'portal/search/demand.html',
-        //     template: './template/template.html',
-        //     chunks: ['portal/search/demand', 'vendors']
-        // }),
-        // new HtmlWebpackPlugin({
-        //     title: '主页-科技成果搜索',
-        //     filename: 'portal/search/achievement.html',
-        //     template: './template/template.html',
-        //     chunks: ['portal/search/achievement', 'vendors']
-        // }),
-        // new HtmlWebpackPlugin({
-        //     title: '主页-行家搜索',
-        //     filename: 'portal/search/subscriberUser.html',
-        //     template: './template/template.html',
-        //     chunks: ['portal/search/subscriberUser', 'vendors']
-        // }),
-        // new HtmlWebpackPlugin({
-        //     title: '主页-伙伴搜索',
-        //     filename: 'portal/search/subscriberOrg.html',
-        //     template: './template/template.html',
-        //     chunks: ['portal/search/subscriberOrg', 'vendors']
-        // })
+      //把入口文件里面的数组打包成verdors.js
+      new webpack.optimize.CommonsChunkPlugin({
+        name: "vendors",
+      }),
+      /* 配置好Dll */
+      new webpack.DllReferencePlugin({
+        context: dirVars.staticRootDir, // 指定一个路径作为上下文环境,需要与DllPlugin的context参数保持一致,建议统一设置为项目根目录
+        manifest: require("./dll/" + argv.env.deploy + "/manifest.json"), // 指定manifest.json
+      }),
+      // 把dll文件复制到打包后的文件中
+      new CopyWebpackPlugin([
+        {
+          from: path.resolve("./dll/" + argv.env.deploy),
+          to: (__dirname, "./dll/"),
+          ignore: [".*"],
+        },
+      ]),
+      // 将 dll.js 插入HTML里
+      new HtmlWebpackIncludeAssetsPlugin({
+        assets: [(__dirname, "dll/dll.js"), (__dirname, "dll/dll.css")],
+        append: false,
+      }),
+      new ExtractTextPlugin({
+        filename: "[name].css",
+        disable: false,
+        allChunks: true,
+      }),
+      //定义全局变量区分本地测试生产做跳转
+      new webpack.DefinePlugin({
+        jumpUrl: `'${jumlApi}'`,
+      }),
+      //user
+      new HtmlWebpackPlugin({
+        title: "用户首页",
+        filename: "user/index.html",
+        template: "./template/template.html",
+        chunks: ["user/index", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "用户登录",
+        filename: "user/login.html",
+        template: "./template/template.html",
+        chunks: ["user/login", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "用户注册",
+        filename: "user/signIn.html",
+        template: "./template/template.html",
+        chunks: ["user/signIn", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "个人用户认证",
+        filename: "user/certify.html",
+        template: "./template/template.html",
+        chunks: ["user/certify", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "团体用户认证",
+        filename: "user/groupCertify.html",
+        template: "./template/template.html",
+        chunks: ["user/groupCertify", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "用户详情",
+        filename: "user/subscriberDetail.html",
+        template: "./template/template.html",
+        chunks: ["user/subscriberDetail", "vendors"],
+      }),
+      //user-account
+      new HtmlWebpackPlugin({
+        title: "用户中心-首页",
+        filename: "user/account/index.html",
+        template: "./template/template.html",
+        chunks: ["user/account/index", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "用户中心-设置",
+        filename: "user/account/set.html",
+        template: "./template/template.html",
+        chunks: ["user/account/set", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "用户中心-科技服务",
+        filename: "user/account/services.html",
+        template: "./template/template.html",
+        chunks: ["user/account/services", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "用户中心-科技服务",
+        filename: "user/account/achievement.html",
+        template: "./template/template.html",
+        chunks: ["user/account/achievement", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "用户中心-科技服务",
+        filename: "user/account/demand.html",
+        template: "./template/template.html",
+        chunks: ["user/account/demand", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-科技服务管理-科技评估信息",
+        filename: "user/account/evaluateInfo.html",
+        template: "./template/template.html",
+        chunks: ["user/account/evaluateInfo", "vendors"],
+      }),
+      //admin
+      new HtmlWebpackPlugin({
+        title: "管理员-首页",
+        filename: "admin/index.html",
+        template: "./template/template.html",
+        chunks: ["admin/index", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-登录",
+        filename: "admin/login.html",
+        template: "./template/template.html",
+        chunks: ["admin/login", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-用户管理",
+        filename: "admin/userManage.html",
+        template: "./template/template.html",
+        chunks: ["admin/userManage", "vendors"],
+      }),
+      //admin-servicesManage
+      new HtmlWebpackPlugin({
+        title: "管理员-科技服务管理-专利",
+        filename: "admin/servicesManage/contract.html",
+        template: "./template/template.html",
+        chunks: ["admin/servicesManage/contract", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-科技服务管理-专利",
+        filename: "admin/servicesManage/patent.html",
+        template: "./template/template.html",
+        chunks: ["admin/servicesManage/patent", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-科技服务管理-软著",
+        filename: "admin/servicesManage/copyright.html",
+        template: "./template/template.html",
+        chunks: ["admin/servicesManage/copyright", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-科技服务管理-高企",
+        filename: "admin/servicesManage/highTech.html",
+        template: "./template/template.html",
+        chunks: ["admin/servicesManage/highTech", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-科技服务管理-高企信息",
+        filename: "admin/servicesManage/highTechInfo.html",
+        template: "./template/template.html",
+        chunks: ["admin/servicesManage/highTechInfo", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-科技服务管理-科技",
+        filename: "admin/servicesManage/technology.html",
+        template: "./template/template.html",
+        chunks: ["admin/servicesManage/technology", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-科技服务管理-项目单",
+        filename: "admin/servicesManage/projectOrder.html",
+        template: "./template/template.html",
+        chunks: ["admin/servicesManage/projectOrder", "vendors"],
+      }),
+      //admin-demand
+      new HtmlWebpackPlugin({
+        title: "管理员-用户管理",
+        filename: "admin/demand.html",
+        template: "./template/template.html",
+        chunks: ["admin/demand", "vendors"],
+      }),
+      //admin-achievement
+      new HtmlWebpackPlugin({
+        title: "管理员-用户管理",
+        filename: "admin/achievement.html",
+        template: "./template/template.html",
+        chunks: ["admin/achievement", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-用户管理",
+        filename: "admin/customer.html",
+        template: "./template/template.html",
+        chunks: ["admin/customer", "vendors"],
+      }),
+      //admin-set
+      new HtmlWebpackPlugin({
+        title: "管理员-用户管理",
+        filename: "admin/set.html",
+        template: "./template/template.html",
+        chunks: ["admin/set", "vendors"],
+      }),
+      //admin-idea
+      new HtmlWebpackPlugin({
+        title: "管理员-财务管理",
+        filename: "admin/idea.html",
+        template: "./template/template.html",
+        chunks: ["admin/idea", "vendors"],
+      }),
+      //admin-userOrder
+      new HtmlWebpackPlugin({
+        title: "管理员-用户订单管理",
+        filename: "admin/userOrder.html",
+        template: "./template/template.html",
+        chunks: ["admin/userOrder", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-订单管理",
+        filename: "admin/order.html",
+        template: "./template/template.html",
+        chunks: ["admin/order", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-平台管理",
+        filename: "admin/operate.html",
+        template: "./template/template.html",
+        chunks: ["admin/operate", "vendors"],
+      }), //statistics
+      new HtmlWebpackPlugin({
+        title: "管理员-数据统计",
+        filename: "admin/statistics.html",
+        template: "./template/template.html",
+        chunks: ["admin/statistics", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-项目管理",
+        filename: "admin/project.html",
+        template: "./template/template.html",
+        chunks: ["admin/project", "vendors"],
+      }),
+      new HtmlWebpackPlugin({
+        title: "管理员-人事管理",
+        filename: "admin/personnel.html",
+        template: "./template/template.html",
+        chunks: ["admin/personnel", "vendors"],
+      }),
+      //portal 门户
+      // new HtmlWebpackPlugin({
+      //     title: '主页-需求搜索',
+      //     filename: 'portal/search/demand.html',
+      //     template: './template/template.html',
+      //     chunks: ['portal/search/demand', 'vendors']
+      // }),
+      // new HtmlWebpackPlugin({
+      //     title: '主页-科技成果搜索',
+      //     filename: 'portal/search/achievement.html',
+      //     template: './template/template.html',
+      //     chunks: ['portal/search/achievement', 'vendors']
+      // }),
+      // new HtmlWebpackPlugin({
+      //     title: '主页-行家搜索',
+      //     filename: 'portal/search/subscriberUser.html',
+      //     template: './template/template.html',
+      //     chunks: ['portal/search/subscriberUser', 'vendors']
+      // }),
+      // new HtmlWebpackPlugin({
+      //     title: '主页-伙伴搜索',
+      //     filename: 'portal/search/subscriberOrg.html',
+      //     template: './template/template.html',
+      //     chunks: ['portal/search/subscriberOrg', 'vendors']
+      // })
     ];
     if (!isDev) {
         //这个使用uglifyJs压缩你的js代码

+ 204 - 162
webpack/entry.config.js

@@ -1,43 +1,47 @@
 module.exports = {
   prod: {
     //user
-    'user/index': './js/user/index.js',
-    'user/login': './js/user/login.js',
-    'user/signIn': './js/user/signIn.js',
-    'user/certify': './js/user/certify.js',
-    'user/groupCertify': './js/user/groupCertify.js',
-    'user/subscriberDetail': './js/user/subscriberDetail.js',
+    "user/index": "./js/user/index.js",
+    "user/login": "./js/user/login.js",
+    "user/signIn": "./js/user/signIn.js",
+    "user/certify": "./js/user/certify.js",
+    "user/groupCertify": "./js/user/groupCertify.js",
+    "user/subscriberDetail": "./js/user/subscriberDetail.js",
     //user-account
-    'user/account/index': './js/user/account/index.js',
-    'user/account/set': './js/user/account/set.js',
-    'user/account/services': './js/user/account/services.js',
-    'user/account/achievement': './js/user/account/achievement.js',
-    'user/account/demand': './js/user/account/demand.js',
-    'user/account/evaluateInfo': './js/user/account/evaluateInfo.js',
+    "user/account/index": "./js/user/account/index.js",
+    "user/account/set": "./js/user/account/set.js",
+    "user/account/services": "./js/user/account/services.js",
+    "user/account/achievement": "./js/user/account/achievement.js",
+    "user/account/demand": "./js/user/account/demand.js",
+    "user/account/evaluateInfo": "./js/user/account/evaluateInfo.js",
     //admin
-    'admin/index': './js/admin/index.js',
-    'admin/login': './js/admin/login.js',
-    'admin/set': './js/admin/set.js',
-    'admin/userManage': './js/admin/userManage.js',
-    'admin/idea': './js/admin/idea.js',
+    "admin/index": "./js/admin/index.js",
+    "admin/login": "./js/admin/login.js",
+    "admin/set": "./js/admin/set.js",
+    "admin/userManage": "./js/admin/userManage.js",
+    "admin/idea": "./js/admin/idea.js",
     //admin-servicesManage
-    'admin/servicesManage/contract': './js/admin/servicesManage/contract.js',
-    'admin/servicesManage/patent': './js/admin/servicesManage/patent.js',
-    'admin/servicesManage/copyright': './js/admin/servicesManage/copyright.js',
-    'admin/servicesManage/highTech': './js/admin/servicesManage/highTech.js',
-    'admin/servicesManage/highTechInfo': './js/admin/servicesManage/highTechInfo.js',
-    'admin/servicesManage/technology': './js/admin/servicesManage/technology.js',
-    'admin/servicesManage/projectOrder': './js/admin/servicesManage/projectOrder.js',
+    "admin/servicesManage/contract": "./js/admin/servicesManage/contract.js",
+    "admin/servicesManage/patent": "./js/admin/servicesManage/patent.js",
+    "admin/servicesManage/copyright": "./js/admin/servicesManage/copyright.js",
+    "admin/servicesManage/highTech": "./js/admin/servicesManage/highTech.js",
+    "admin/servicesManage/highTechInfo":
+      "./js/admin/servicesManage/highTechInfo.js",
+    "admin/servicesManage/technology":
+      "./js/admin/servicesManage/technology.js",
+    "admin/servicesManage/projectOrder":
+      "./js/admin/servicesManage/projectOrder.js",
     //admin/demand
-    'admin/demand': './js/admin/demand.js',
-    'admin/achievement': './js/admin/achievement.js',
-    'admin/customer': './js/admin/customer.js',
+    "admin/demand": "./js/admin/demand.js",
+    "admin/achievement": "./js/admin/achievement.js",
+    "admin/customer": "./js/admin/customer.js",
     //admin/userOrder
-    'admin/userOrder': './js/admin/userOrder.js',
-    'admin/order': './js/admin/order.js',
-    'admin/operate': './js/admin/operate.js',
-    'admin/project': './js/admin/project.js',
-    'admin/statistics': './js/admin/statistics.js',
+    "admin/userOrder": "./js/admin/userOrder.js",
+    "admin/order": "./js/admin/order.js",
+    "admin/operate": "./js/admin/operate.js",
+    "admin/personnel": "./js/admin/personnel.js",
+    "admin/project": "./js/admin/project.js",
+    "admin/statistics": "./js/admin/statistics.js",
     //portal  门户
     // 'portal/search/demand': './js/portal/search/demand.js',
     // 'portal/search/achievement': './js/portal/search/achievement.js',
@@ -45,140 +49,178 @@ module.exports = {
     // 'portal/search/subscriberOrg': './js/portal/search/subscriberOrg.js'
   },
   watch: {
-    'user/index': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/index.js'
-    ],
-    'user/login': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/login.js'
-    ],
-    'user/signIn': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/signIn.js'
-    ],
-    'user/certify': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/certify.js'
-    ],
-    'user/groupCertify': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/groupCertify.js'
-    ],
-    'user/subscriberDetail': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/subscriberDetail.js'
+    "user/index": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/index.js",
+    ],
+    "user/login": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/login.js",
+    ],
+    "user/signIn": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/signIn.js",
+    ],
+    "user/certify": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/certify.js",
+    ],
+    "user/groupCertify": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/groupCertify.js",
+    ],
+    "user/subscriberDetail": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/subscriberDetail.js",
     ],
     //user-account
-    'user/account/index': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/account/index.js'
-    ],
-    'user/account/set': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/account/set.js'
-    ],
-    'user/account/services': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/account/services.js'
-    ],
-    'user/account/achievement': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/account/achievement.js'
-    ],
-    'user/account/evaluateInfo': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/account/evaluateInfo.js'
-    ],
-    'user/account/demand': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/user/account/demand.js'
+    "user/account/index": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/account/index.js",
+    ],
+    "user/account/set": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/account/set.js",
+    ],
+    "user/account/services": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/account/services.js",
+    ],
+    "user/account/achievement": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/account/achievement.js",
+    ],
+    "user/account/evaluateInfo": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/account/evaluateInfo.js",
+    ],
+    "user/account/demand": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/user/account/demand.js",
     ],
     //admin
-    'admin/index': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/index.js'
-    ],
-    'admin/login': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/login.js'
-    ],
-    'admin/userManage': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/userManage.js'
-    ],
-    'admin/demand': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/demand.js'
-    ],
-    'admin/achievement': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/achievement.js'
-    ],
-     'admin/customer': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/customer.js'
-    ],
-    'admin/set': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/set.js'
-    ],
-    'admin/idea': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/idea.js'
-    ],
-    'admin/userOrder': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/userOrder.js'
-    ],
-    'admin/order': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/order.js'
-    ],
-    'admin/operate': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/operate.js'
-    ],
-    'admin/project': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/project.js'
+    "admin/index": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/index.js",
+    ],
+    "admin/login": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/login.js",
+    ],
+    "admin/userManage": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/userManage.js",
+    ],
+    "admin/demand": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/demand.js",
+    ],
+    "admin/achievement": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/achievement.js",
+    ],
+    "admin/customer": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/customer.js",
+    ],
+    "admin/set": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/set.js",
+    ],
+    "admin/idea": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/idea.js",
+    ],
+    "admin/userOrder": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/userOrder.js",
+    ],
+    "admin/order": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/order.js",
+    ],
+    "admin/operate": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/operate.js",
+    ],
+    "admin/project": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/project.js",
+    ],
+    "admin/personnel": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/personnel.js",
     ],
     //admin-servicesManage
-    'admin/servicesManage/contract': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/servicesManage/contract.js'
-    ],
-    'admin/servicesManage/patent': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/servicesManage/patent.js'
-    ],
-    'admin/servicesManage/copyright': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/servicesManage/copyright.js'
-    ],
-    'admin/servicesManage/highTech': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/servicesManage/highTech.js'
-    ],
-    'admin/servicesManage/highTechInfo': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/servicesManage/highTechInfo.js'
-    ],
-    'admin/servicesManage/technology': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/servicesManage/technology.js'
-    ],
-     'admin/servicesManage/projectOrder': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-      'webpack/hot/only-dev-server',
-      './js/admin/servicesManage/projectOrder.js'
-    ],
-    'admin/statistics': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-    'webpack/hot/only-dev-server',
-    './js/admin/statistics.js'
-    ],
-    'admin/project': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-    'webpack/hot/only-dev-server',
-    './js/admin/project.js'
+    "admin/servicesManage/contract": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/servicesManage/contract.js",
+    ],
+    "admin/servicesManage/patent": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/servicesManage/patent.js",
+    ],
+    "admin/servicesManage/copyright": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/servicesManage/copyright.js",
+    ],
+    "admin/servicesManage/highTech": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/servicesManage/highTech.js",
+    ],
+    "admin/servicesManage/highTechInfo": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/servicesManage/highTechInfo.js",
+    ],
+    "admin/servicesManage/technology": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/servicesManage/technology.js",
+    ],
+    "admin/servicesManage/projectOrder": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/servicesManage/projectOrder.js",
+    ],
+    "admin/statistics": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/statistics.js",
+    ],
+    "admin/project": [
+      "webpack-dev-server/client?http://127.0.0.1:80", // WebpackDevServer host and port
+      "webpack/hot/only-dev-server",
+      "./js/admin/project.js",
     ],
     //portal  门户
     // 'portal/search/demand': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
@@ -197,5 +239,5 @@ module.exports = {
     //   'webpack/hot/only-dev-server',
     //   './js/portal/search/subscriberOrg.js'
     // ]
-  }
-}
+  },
+};