Browse Source

渠道/私有

dev01 9 months ago
parent
commit
1dd9b46d57

+ 84 - 84
js/component/common/staffSearch/index.jsx

@@ -3,98 +3,98 @@ import { AutoComplete, Input, message, Select } from "antd";
 import $ from "jquery/src/ajax";
 
 class StaffSearch extends Component {
-    constructor(props) {
-        super(props);
-        this.state = {
-            superior: '',
-            customerArr: [],
-            loading: false,
-        }
-        this.httpChange = this.httpChange.bind(this);
-        this.supervisor = this.supervisor.bind(this);
-        this.selectAuto = this.selectAuto.bind(this);
+  constructor(props) {
+    super(props);
+    this.state = {
+      superior: '',
+      customerArr: [],
+      loading: false,
     }
+    this.httpChange = this.httpChange.bind(this);
+    this.supervisor = this.supervisor.bind(this);
+    this.selectAuto = this.selectAuto.bind(this);
+  }
 
-    httpChange(e) {
-        if (e.length >= 1) {
-            this.supervisor(e);
-        }
-        this.setState({
-            superior: e
-        })
-        this.props.onBlurText({ title: e });
-        if (!e) {
-            this.props.onBlurChange({ title: e, value: null });
-        }
+  httpChange(e) {
+    if (e.length >= 1) {
+      this.supervisor(e);
     }
-
-    supervisor(e) {
-        this.setState({
-            loading: true
-        });
-        $.ajax({
-            method: "post",
-            dataType: "json",
-            crossDomain: false,
-            url: globalConfig.context + "/api/admin/organization/selectName",
-            data: {
-                name: e
-            },
-            success: function (data) {
-                if (data.error.length === 0) {
-                    this.setState({
-                        customerArr: data.data,
-                    });
-                } else {
-                    message.error(data.error[0].message)
-                }
-            }.bind(this),
-        }).always(function () {
-            this.setState({
-                loading: false
-            });
-        }.bind(this));
+    this.setState({
+      superior: e
+    })
+    this.props.onBlurText({ title: e });
+    if (!e) {
+      this.props.onBlurChange({ title: e, value: null });
     }
+  }
 
-    selectAuto(value) {
-        let theType = '';
-        let contactLists = this.state.customerArr || [];
-        if (value) {
-            contactLists.map(function (item) {
-                if (item.name == value.toString()) {
-                    theType = item.id;
-                }
-            });
+  supervisor(e) {
+    this.setState({
+      loading: true
+    });
+    $.ajax({
+      method: "post",
+      dataType: "json",
+      crossDomain: false,
+      url: globalConfig.context + "/api/admin/organization/selectName",
+      data: {
+        name: e
+      },
+      success: function (data) {
+        if (data.error.length === 0) {
+          this.setState({
+            customerArr: data.data,
+          });
+        } else {
+          message.error(data.error[0].message)
         }
-        this.setState({
-            superior: value
-        })
-        this.props.onBlurChange({ title: value, value: theType });
-    }
+      }.bind(this),
+    }).always(function () {
+      this.setState({
+        loading: false
+      });
+    }.bind(this));
+  }
 
-    render() {
-        const options = this.state.customerArr.map((group, index) =>
-            <Select.Option key={index} value={group.name}>{group.name}</Select.Option>
-        )
-        return (
-            <AutoComplete
-                className="certain-category-search"
-                dropdownClassName="certain-category-search-dropdown"
-                dropdownMatchSelectWidth={false}
-                size="large"
-                style={{ width: '200px' }}
-                dataSource={options}
-                placeholder={this.props.placeholder}
-                value={this.props.valueName}
-                // value={this.state.superior ? this.state.superior : this.props.valueName}
-                onChange={this.httpChange}
-                filterOption={true}
-                onSelect={this.selectAuto}
-            >
-                <Input />
-            </AutoComplete>
-        )
+  selectAuto(value) {
+    let theType = '';
+    let contactLists = this.state.customerArr || [];
+    if (value) {
+      contactLists.map(function (item) {
+        if (item.name == value.toString()) {
+          theType = item.id;
+        }
+      });
     }
+    this.setState({
+      superior: value
+    })
+    this.props.onBlurChange({ title: value, value: theType });
+  }
+
+  render() {
+    const options = this.state.customerArr.map((group, index) =>
+      <Select.Option key={index} value={group.name}>{group.name}</Select.Option>
+    )
+    return (
+      <AutoComplete
+        className="certain-category-search"
+        dropdownClassName="certain-category-search-dropdown"
+        dropdownMatchSelectWidth={false}
+        size="large"
+        style={{ width: this.props.width || '200px' }}
+        dataSource={options}
+        placeholder={this.props.placeholder}
+        value={this.props.valueName}
+        // value={this.state.superior ? this.state.superior : this.props.valueName}
+        onChange={this.httpChange}
+        filterOption={true}
+        onSelect={this.selectAuto}
+      >
+        <Input />
+      </AutoComplete>
+    )
+  }
 }
 
 export default StaffSearch;

+ 7 - 0
js/component/dataDic.js

@@ -1466,6 +1466,12 @@ module.exports = {
       key: "其他复购",
     },
   ],
+  wsalesType: [
+    {
+      value: "8",
+      key: "渠道/私有",
+    },
+  ],
   //
   salesList: [
     "电话新开发",
@@ -1476,6 +1482,7 @@ module.exports = {
     "其他",
     "高新复购",
     "其他复购",
+    "渠道/私有",
   ],
   //性别
   sex: [

+ 3 - 1
js/component/manageCenter/index/statistics/cw.jsx

@@ -233,7 +233,9 @@ const Statistics = React.createClass({
     }
     return (
       <div className="user-content">
-        <ShowModalDiv ShowModal={this.state.showModal} seeInfo={() => { this.props.handlekey("normal") }} />
+        <ShowModalDiv ShowModal={this.state.showModal}
+        // seeInfo={() => { this.props.handlekey("normal") }} 
+        />
         <div className="content-title" style={{ marginBottom: 10 }}>
           <span style={{ fontWeight: 900, fontSize: 16 }}>数据统计</span>
         </div>

+ 3 - 1
js/component/manageCenter/index/statistics/yxy.jsx

@@ -234,7 +234,9 @@ const Statistics = React.createClass({
     }
     return (
       <div className="user-content">
-        <ShowModalDiv ShowModal={this.state.showModal} seeInfo={() => { this.props.handlekey("normal") }} />
+        <ShowModalDiv ShowModal={this.state.showModal}
+        // seeInfo={() => { this.props.handlekey("normal") }} 
+        />
         <div className="content-title" style={{ marginBottom: 10 }}>
           <span style={{ fontWeight: 900, fontSize: 16 }}>数据统计</span>
         </div>

+ 3 - 1
js/component/manageCenter/index/statistics/zxs.jsx

@@ -238,7 +238,9 @@ const Statistics = React.createClass({
     }
     return (
       <div className="user-content">
-        <ShowModalDiv ShowModal={this.state.showModal} seeInfo={() => { this.props.handlekey("normal") }} />
+        <ShowModalDiv ShowModal={this.state.showModal}
+        // seeInfo={() => { this.props.handlekey("normal") }} 
+        />
         <div className="content-title" style={{ marginBottom: 10 }}>
           <span style={{ fontWeight: 900, fontSize: 16 }}>数据统计</span>
         </div>

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

@@ -39,6 +39,7 @@ import {
   boutique,
   ssalesType,
   qsalesType,
+  wsalesType,
   cuiJieDian,
   salesList,
   vipYear,
@@ -5952,14 +5953,15 @@ const NewService = Form.create()(
                         >
                           {(this.state.userType == "0"
                             ? ssalesType : this.state.userType == "1"
-                              ? qsalesType : this.state.userType == "3"
-                                ? qsalesType : []).map(function (item) {
-                                  return (
-                                    <Select.Option key={item.value} disabled={item.value == "5"}>
-                                      {item.key}
-                                    </Select.Option>
-                                  );
-                                })}
+                              ? qsalesType : this.state.userType == "2"
+                                ? wsalesType : this.state.userType == "3"
+                                  ? qsalesType : []).map(function (item) {
+                                    return (
+                                      <Select.Option key={item.value} disabled={item.value == "5"}>
+                                        {item.key}
+                                      </Select.Option>
+                                    );
+                                  })}
                         </Select>
                         <span className="mandatory">*</span>
                       </FormItem>

+ 15 - 10
js/component/manageCenter/order/orderNew/updatesales.jsx

@@ -13,6 +13,7 @@ import {
   customerType,
   ssalesType,
   qsalesType,
+  wsalesType,
 } from "@/dataDic.js";
 
 const FormItem = Form.Item;
@@ -164,9 +165,9 @@ class UpdateSales extends Component {
     //     this.isArray(qsalesType, updatas.salesType, "value") && (defaults.userType = 1);//有销售类型(以签单客户)
     //   }
     // }
-    if (updatas.userType == null) {//无客户所属类型时--可让其选择所有销售类型
-      defaults.userType = 2
-    }
+    // if (updatas.userType == null) {//无客户所属类型时--可让其选择所有销售类型
+    //   defaults.userType = 2
+    // }
     this.setState({
       datas: defaults,
       channelName: defaults.salesType == "3" ? defaults.other : "",//销售类型为渠道的时候给编辑出的渠道名称赋值
@@ -217,6 +218,9 @@ class UpdateSales extends Component {
                   </Select>
                 </FormItem>
               }
+              {
+                console.log("====", datas.userType)
+              }
               <FormItem {...formItemLayout} label="销售类型">
                 <Select
                   placeholder="请选择销售类型"
@@ -235,13 +239,14 @@ class UpdateSales extends Component {
                   {(datas.userType == "0"
                     ? ssalesType : datas.userType == "1"
                       ? qsalesType : datas.userType == "2"
-                        ? [...ssalesType, ...qsalesType] : []).map(function (item) {
-                          return (
-                            <Select.Option key={item.value} disabled={item.value == "5"}>
-                              {item.key}
-                            </Select.Option>
-                          );
-                        })}
+                        ? wsalesType : datas.userType == "3"
+                          ? qsalesType : []).map(function (item) {
+                            return (
+                              <Select.Option key={item.value} disabled={item.value == "5"}>
+                                {item.key}
+                              </Select.Option>
+                            );
+                          })}
                 </Select>
               </FormItem>
               {

+ 934 - 0
js/component/manageCenter/project/summary/projecData.jsx

@@ -0,0 +1,934 @@
+// import React, { Component } from "react";
+// import {
+//   Button,
+//   DatePicker,
+//   Input,
+//   message,
+//   Select,
+//   Spin,
+//   Table,
+//   Tabs,
+//   Cascader,
+//   AutoComplete,
+// } from "antd";
+// import { ShowModal } from "@/tools";
+// import { ChooseList } from "../../order/orderNew/chooseList";
+// import $ from "jquery/src/ajax";
+// import moment from "moment";
+// import {
+//   member,
+//   highTechColumns,
+//   doubleSoft,
+//   softWriting,
+//   patent,
+//   audit,
+//   currency,
+// } from "./highTechConfig";
+// import { projectStatusList } from "@/dataDic";
+// import ProjectDetails from "./projectDetails";
+// import Cascaders from "../../../common/cascaders";
+
+// const { TabPane } = Tabs;
+// const { RangePicker } = DatePicker;
+// const { Option } = Select;
+
+// class HighTech extends Component {
+//   constructor(props) {
+//     super(props);
+//     this.state = {
+//       tbaindex: 1,
+//       searchValues: {},
+//       loading: false,
+//       changeList: undefined,
+//       columns: currency,
+//       status: 0,
+//       page: 1,
+//       pagination: {
+//         defaultCurrent: 1,
+//         defaultPageSize: 10,
+//         showQuickJumper: true,
+//         pageSize: 10,
+//         onChange: function (page) {
+//           this.loadData(page);
+//         }.bind(this),
+//         showTotal: function (total) {
+//           return "共" + total + "条数据";
+//         },
+//       },
+//       dataSource: [],
+//       releaseDate: [],
+//       searchOrderNo: "",
+//       searchContractNo: "",
+//       searchEnterpriseName: "",
+//       declarationBatch: "",
+//       projectSituation: "",
+//       projectAmount: "",
+//       deps: "",
+//       thchDeps: "",
+//       projectType: "",
+//       projectStatus: "",
+//       departmentArr: [],
+//       contactsOption: [],
+//       contactsOptionData: [],
+//       visible: false,
+//     };
+//     this.resetAll = this.resetAll.bind(this);
+//     this.changeList = this.changeList.bind(this);
+//     this.loadData = this.loadData.bind(this);
+//     this.selectSuperId = this.selectSuperId.bind(this);
+
+//     this.supervisor = this.supervisor.bind(this);
+//     this.httpChange = this.httpChange.bind(this);
+//     this.selectAuto = this.selectAuto.bind(this);
+//     this.blurChange = this.blurChange.bind(this);
+
+//   }
+
+//   changeList(arr) {
+//     const newArr = [];
+//     this.state.columns.forEach((item) => {
+//       arr.forEach((val) => {
+//         if (val === item.title) {
+//           newArr.push(item);
+//         }
+//       });
+//     });
+//     this.setState({
+//       changeList: newArr,
+//     });
+//   }
+
+//   loadData(pageNo = "") {
+//     this.setState({
+//       loading: true,
+//     });
+//     $.ajax({
+//       method: "get",
+//       dataType: "json",
+//       crossDomain: false,
+//       url: globalConfig.context + "/api/admin/statistis/selectTaskList",
+//       data: this.props.searchData
+//         ? Object.assign(
+//           {
+//             pageNo: pageNo || 1,
+//             pageSize: this.state.pagination.pageSize || 10,
+//           },
+//           this.props.searchData
+//         )
+//         :
+//         {
+//           pageNo: pageNo || 1,
+//           pageSize: this.state.pagination.pageSize || 10,
+//           startDate:
+//             this.state.releaseDate.length > 0
+//               ? this.state.releaseDate[0]
+//               : undefined, //开始时间
+//           endDate:
+//             this.state.releaseDate.length > 0
+//               ? this.state.releaseDate[1]
+//               : undefined, //结束时间
+//           deps: this.state.deps || undefined, //部门ID
+//           thchDeps: this.state.thchDeps || undefined, //责任部门ID
+//           projectStatus: this.state.projectStatus || undefined, //项目类别
+//           projectType: !this.state.projectType ? undefined : this.state.projectType, //项目分类
+//           orderNo: this.state.searchOrderNo || undefined, //订单编号
+//           contractNo: this.state.searchContractNo || undefined, //合同编号
+//           userName: this.state.searchEnterpriseName || undefined, //企业名称
+//           declarationBatch: this.state.declarationBatch || undefined, //申报批次
+//           projectSituation:
+//             typeof this.state.projectSituation === "number"
+//               ? this.state.projectSituation
+//               : undefined, //项目分类
+//           projectAmount: this.state.projectAmount || undefined, //项目金额
+//           status: this.state.status,
+//           thchId: this.state.thchId || undefined, //咨询师/咨询经理id
+//           taskProjectStatus: this.state.taskProjectStatus || undefined,//项目状态
+//           sdStatus: this.state.sdStatus,//满意度
+//         },
+//       success: function (data) {
+//         ShowModal(this);
+//         let theArr = [];
+//         if (!data.data || !data.data.list) {
+//           if (data.error && data.error.length) {
+//             message.warning(data.error[0].message);
+//           }
+//         } else {
+//           for (let i = 0; i < data.data.list.length; i++) {
+//             let thisdata = data.data.list[i];
+//             thisdata.key = (data.data.pageNo - 1) * data.data.pageSize + i + 1;
+//             theArr.push(thisdata);
+//           }
+//           this.state.pagination.current = data.data.pageNo;
+//           this.state.pagination.total = data.data.totalCount;
+//           if (data.data && data.data.list && !data.data.list.length) {
+//             this.state.pagination.current = 0;
+//             this.state.pagination.total = 0;
+//           }
+//           this.setState({
+//             pagination: this.state.pagination,
+//             page: pageNo,
+//             dataSource: theArr,
+//           });
+//         }
+//       }.bind(this),
+//     }).always(
+//       function () {
+//         this.setState({
+//           loading: false,
+//         });
+//       }.bind(this)
+//     );
+//   }
+
+//   resetAll() {
+//     this.setState(
+//       {
+//         newArray: [],
+//         releaseDate: [],
+//         searchOrderNo: "",
+//         searchContractNo: "",
+//         searchEnterpriseName: "",
+//         declarationBatch: "",
+//         projectSituation: "",
+//         projectAmount: "",
+//         projectType: "",
+//         deps: "",
+//         thchDeps: "",
+//         projectStatus: "",
+//         columns: currency,
+//         status: 0,
+//         thchId: "",
+//         auto: "",
+//         taskProjectStatus: "",
+//         sdStatus: undefined,
+//       },
+//       () => {
+//         this.Cascaders1.empty();
+//         this.Cascaders2.empty();
+//         this.defaultcolumns();
+//         this.loadData();
+//       }
+//     );
+//   }
+//   //项目类别
+//   selectSuperId() {
+//     $.ajax({
+//       method: "get",
+//       dataType: "json",
+//       crossDomain: false,
+//       url: globalConfig.context + "/api/admin/ProjectSize/getAllCname",
+//       data: {
+//         flag: 0,
+//       },
+//       success: function (data) {
+//         let theArr = [];
+//         let newTheArr = []
+//         let thedata = data.data;
+//         if (!thedata) {
+//           if (data.error && data.error.length) {
+//             message.warning(data.error[0].message);
+//           }
+//         }
+//         for (let i = 0; i < data.data.length; i++) {
+//           let theData = data.data[i];
+//           theArr.push(
+//             <Select.Option value={theData.id} key={theData.cname}>
+//               {theData.cname}
+//             </Select.Option>
+//           );
+//           let newChildren = []
+//           for (let j = 0; j < theData.typeList.length; j++) {
+//             newChildren.push({
+//               label: theData.typeList[j].name,
+//               value: theData.typeList[j].id,
+//             })
+//           }
+//           newTheArr.push({
+//             label: theData.cname,
+//             value: theData.id,
+//             children: newChildren
+//           })
+//         }
+//         this.setState({
+//           contactsOption: theArr,
+//           contactsOptionData: newTheArr,
+//           // contactsOptionData: data.data,
+//         });
+//       }.bind(this),
+//     }).always();
+//   }
+//   // 设置默认table(用来默认不显示某列数据 isNoD:true)
+//   defaultcolumns() {
+//     const newArr = [];
+//     this.state.columns.forEach((item) => {
+//       if (item.isNoD) {
+//         return
+//       } else {
+//         newArr.push(item);
+//       }
+//     });
+//     this.setState({
+//       changeList: newArr,
+//     }, () => {
+//       this.loadData();
+//     });
+//   }
+//   // 导出excel
+//   exportExec() {
+//     message.config({
+//       duration: 20,
+//     });
+//     let loading = message.loading("下载中...");
+//     this.setState({
+//       exportPendingLoading: true,
+//     });
+//     let data = {
+//       startDate:
+//         this.state.releaseDate.length > 0
+//           ? this.state.releaseDate[0]
+//           : undefined, //开始时间
+//       endDate:
+//         this.state.releaseDate.length > 0
+//           ? this.state.releaseDate[1]
+//           : undefined, //结束时间
+//       deps: this.state.deps || undefined, //部门ID
+//       thchDeps: this.state.thchDeps || undefined, //责任部门ID
+//       projectStatus: this.state.projectStatus || undefined, //项目类别
+//       projectType: !this.state.projectType ? undefined : this.state.projectType, //项目分类
+//       status: this.state.status,
+//       orderNo: this.state.searchOrderNo || undefined, //订单编号
+//       contractNo: this.state.searchContractNo || undefined, //合同编号
+//       userName: this.state.searchEnterpriseName || undefined, //企业名称
+//       declarationBatch: this.state.declarationBatch || undefined, //申报批次
+//       projectAmount: this.state.projectAmount || undefined, //项目金额
+//       thchId: this.state.thchId || undefined, //咨询师/咨询经理id
+//       taskProjectStatus: this.state.taskProjectStatus || undefined,//项目状态
+//       sdStatus: this.state.sdStatus,//满意度
+//     };
+//     $.ajax({
+//       method: "get",
+//       dataType: "json",
+//       crossDomain: false,
+//       url: "/api/admin/statistis/exporTaskList",
+//       data,
+//       success: function (data) {
+//         if (data.error.length === 0) {
+//           this.download(data.data);
+//         } else {
+//           message.warning(data.error[0].message);
+//         }
+//       }.bind(this),
+//     }).always(
+//       function () {
+//         loading();
+//         this.setState({
+//           exportPendingLoading: false,
+//         });
+//       }.bind(this)
+//     );
+//   }
+//   // 下载
+//   download(fileName) {
+//     window.location.href =
+//       globalConfig.context + "/open/download?fileName=" + fileName;
+//   }
+//   // 查询用户
+//   supervisor(e) {
+//     $.ajax({
+//       method: "get",
+//       dataType: "json",
+//       crossDomain: false,
+//       url: globalConfig.context + "/api/admin/customer/listAdminByName",
+//       data: {
+//         adminName: e,
+//       },
+//       success: function (data) {
+//         let thedata = data.data;
+//         if (!thedata) {
+//           if (data.error && data.error.length) {
+//             message.warning(data.error[0].message);
+//           }
+//           thedata = {};
+//         }
+//         this.setState({
+//           customerArr: thedata,
+//         });
+//       }.bind(this),
+//     }).always(
+//       function () {
+
+//       }.bind(this)
+//     );
+//   }
+//   // 输入触发
+//   httpChange(e) {
+//     if (e.length >= 1) {
+//       this.supervisor(e);
+//     }
+//     this.setState({
+//       auto: e,
+//     });
+//   }
+//   // 选中
+//   selectAuto(value, options) {
+//     let thchId = ""
+//     let contactLists = this.state.customerArr || [];
+//     if (value) {
+//       contactLists.map(function (item) {
+//         if (item.name == value.toString()) {
+//           thchId = item.id;
+//         }
+//       });
+//     }
+//     this.setState({
+//       auto: value,
+//       thchId: thchId,
+//     });
+//   }
+//   // 失去焦点
+//   blurChange(e) {
+//     let thchId = ""
+//     let contactLists = this.state.customerArr || [];
+//     if (e) {
+//       contactLists.map(function (item) {
+//         if (item.name == e.toString()) {
+//           thchId = item.id;
+//         }
+//       });
+//     }
+//     this.setState({
+//       thchId: thchId,
+//     });
+//   }
+
+//   componentWillMount() {
+//     // 
+//     if (!this.props.introduce) {
+//       this.defaultcolumns();
+//       this.selectSuperId();
+//     }
+//     if (this.props.searchData) {
+//       let e = this.props.searchData.projectType;
+//       this.setState({
+//         columns:
+//           e == "0"
+//             ? currency : e == "1"
+//               ? patent : e == "2"
+//                 ? softWriting : e == "3"
+//                   ? audit : e == "4"
+//                     ? doubleSoft : e == "5"
+//                       ? highTechColumns : e == "6"
+//                         ? currency : e == "7"
+//                           ? member : currency,
+//       }, () => {
+//         this.defaultcolumns();
+//       });
+//     }
+//   }
+
+//   // 暂停项目 颜色
+//   suspendColor(record) {
+//     if (record.projectStatus == 29) {
+//       return 'light'
+//     } else {
+//       return 'dark'
+//     }
+//   }
+
+//   render() {
+//     const dataSources = this.state.customerArr || [];
+//     const options = dataSources.map((group) => (
+//       <Select.Option key={group.id} value={group.name}>
+//         {group.name}
+//       </Select.Option>
+//     ));
+//     return (
+//       <div className="user-content">
+//         <div>
+//           <div className="content-title" style={{ marginBottom: 10 }}>
+//             <span style={{ fontWeight: 900, fontSize: 16 }}>
+//               项目数据统计
+//             </span>
+//           </div>
+//           <Tabs defaultActiveKey="1" className="test">
+//             <TabPane tab="搜索" key="1">
+//               <div
+//                 className="user-search"
+//                 style={{
+//                   marginTop: "10px",
+//                   marginLeft: "10px",
+//                   marginRight: "10px",
+//                 }}
+//               >
+//                 <Input
+//                   placeholder="订单编号"
+//                   style={{
+//                     width: 220,
+//                     marginRight: "10px",
+//                   }}
+//                   value={this.state.searchOrderNo}
+//                   onChange={(e) => {
+//                     this.setState({ searchOrderNo: e.target.value });
+//                   }}
+//                 />
+//                 <Input
+//                   placeholder="合同编号"
+//                   style={{
+//                     width: 220,
+//                     marginRight: "10px",
+//                   }}
+//                   value={this.state.searchContractNo}
+//                   onChange={(e) => {
+//                     this.setState({ searchContractNo: e.target.value });
+//                   }}
+//                 />
+//                 <Input
+//                   placeholder="企业名称"
+//                   style={{
+//                     width: 220,
+//                     marginRight: "10px",
+//                   }}
+//                   value={this.state.searchEnterpriseName}
+//                   onChange={(e) => {
+//                     this.setState({ searchEnterpriseName: e.target.value });
+//                   }}
+//                 />
+//                 <span style={{ display: "inline-block" }}>
+//                   <span style={{ marginRight: "10px" }}>项目分类:</span>
+//                   <Cascader
+//                     options={this.state.contactsOptionData}
+//                     value={this.state.newArray}
+//                     placeholder="请选择"
+//                     style={{ width: 150, marginRight: 10 }}
+//                     onChange={(e, pre) => {
+//                       let first = e[0];
+//                       let two = e[1];
+//                       this.setState({
+//                         newArray: e,
+//                         projectStatus: first,
+//                         projectType: two,
+//                         changeList: undefined,
+//                         dataSource: [],
+//                         status:
+//                           two == "4"
+//                             ? 2 : two == "3"
+//                               ? 6 : two == "2"
+//                                 ? 3 : two == "1"
+//                                   ? 4 : two == "5"
+//                                     ? 1 : two == "7"
+//                                       ? 5 : 0,
+//                         columns:
+//                           two == "0"
+//                             ? currency : two == "1"
+//                               ? patent : two == "2"
+//                                 ? softWriting : two == "3"
+//                                   ? audit : two == "4"
+//                                     ? doubleSoft : two == "5"
+//                                       ? highTechColumns : two == "6"
+//                                         ? currency : two == "7"
+//                                           ? member : currency,
+//                       }, () => {
+//                         this.defaultcolumns()
+//                       })
+//                     }}
+//                   />
+//                 </span>
+//                 {/* <span style={{ display: "inline-block" }}>
+//                     <span style={{ marginRight: "10px" }}>
+//                       项目类别 :
+//                     </span>
+//                     <Select
+//                       value={this.state.projectStatus || undefined}
+//                       placeholder="请选择项目类别"
+//                       notFoundContent="未获取到上级品类列表"
+//                       style={{
+//                         width: 150,
+//                         marginRight: "10px",
+//                       }}
+//                       onChange={(e) => {
+//                         let infor = this.state.contactsOptionData.filter(
+//                           (v) => v.id === e
+//                         );
+//                         this.setState(
+//                           {
+//                             projectStatus: e,
+//                           },
+//                           // () => {
+//                           //   if (infor[0].cname === '高新会员服务' && typeof this.state.projectType !== 'number') {
+//                           //     this.setState({
+//                           //       columns: highTechColumns,
+//                           //       dataSource: [],
+//                           //       changeList: [],
+//                           //       status: 1,
+//                           //     }, () => {
+//                           //       this.loadData();
+//                           //     })
+//                           //   } else if (typeof this.state.projectType !== 'number') {
+//                           //     this.setState({
+//                           //       columns: currency,
+//                           //       dataSource: [],
+//                           //       changeList: [],
+//                           //       status: 0,
+//                           //     }, () => {
+//                           //       this.loadData();
+//                           //     })
+//                           //   } else {
+//                           //     this.loadData();
+//                           //   }
+//                           // }
+//                         );
+//                       }}
+//                     >
+//                       {this.state.contactsOption}
+//                     </Select>
+//                   </span>
+//                   <span style={{ display: "inline-block" }}>
+//                     <span style={{ marginRight: "10px", marginBottom: "10px" }}>
+//                       项目分类 :
+//                     </span>
+//                     <Select
+//                       value={
+//                         typeof this.state.projectType === "number"
+//                           ? this.state.projectType
+//                           : undefined
+//                       }
+//                       placeholder="请选择项目分类"
+//                       style={{
+//                         width: 150,
+//                         marginRight: "10px",
+//                       }}
+//                       onChange={(e) => {
+//                         this.setState(
+//                           {
+//                             columns:
+//                               e === 0
+//                                 ? currency : e === 1
+//                                   ? patent : e === 2
+//                                     ? softWriting : e === 3
+//                                       ? currency : e === 4
+//                                         ? doubleSoft : e === 5
+//                                           ? highTechColumns : e === 6
+//                                             ? currency : currency,
+//                             changeList: [],
+//                             projectType: e,
+//                             status:
+//                               e === 4
+//                                 ? 2 : e === 2
+//                                   ? 3 : e === 1
+//                                     ? 4 : e === 5
+//                                       ? 1 : 0,
+//                             dataSource: [],
+//                           },
+//                           () => {
+//                             this.defaultcolumns();
+//                             this.loadData();
+//                           }
+//                         );
+//                       }}
+//                     >
+//                       <Option value={0}>通用</Option>
+//                       <Option value={1}>专利</Option>
+//                       <Option value={2}>软著</Option>
+//                       <Option value={3}>审计</Option>
+//                       <Option value={4}>双软</Option>
+//                       <Option value={5}>高新</Option>
+//                       <Option value={6}>商标</Option>
+//                       <Option value={7}>会员</Option>
+//                     </Select>
+//                   </span> */}
+//                 <span
+//                   style={{
+//                     display: "inline-block",
+//                   }}
+//                 >
+//                   <span style={{ marginBottom: "10px" }}>订单部门:</span>
+//                   <Cascaders
+//                     ref={ref => this.Cascaders1 = ref}
+//                     placeholder="请选择订单部门"
+//                     height={28}
+//                     width={150}
+//                     onSel={(e) => {
+//                       this.setState({
+//                         deps: JSON.stringify(e)
+//                       })
+//                     }}
+//                   />
+//                 </span>
+//                 <span
+//                   style={{
+//                     display: "inline-block",
+//                   }}
+//                 >
+//                   <span style={{ marginBottom: "10px" }}>负责部门:</span>
+//                   <Cascaders
+//                     ref={ref => this.Cascaders2 = ref}
+//                     placeholder="请选择负责部门"
+//                     height={28}
+//                     width={150}
+//                     onSel={(e) => {
+//                       this.setState({
+//                         thchDeps: JSON.stringify(e)
+//                       })
+//                     }}
+//                   />
+//                 </span>
+//                 <span style={{ display: "inline-block" }}>
+//                   <span style={{ marginRight: "10px", marginBottom: "10px" }}>
+//                     咨询师/经理:
+//                   </span>
+//                   <AutoComplete
+//                     className="certain-category-search"
+//                     dropdownClassName="certain-category-search-dropdown"
+//                     dropdownMatchSelectWidth={false}
+//                     style={{ width: 130 }}
+//                     dataSource={options}
+//                     placeholder='请输入姓名'
+//                     value={this.state.auto}
+//                     onChange={this.httpChange}
+//                     filterOption={true}
+//                     onBlur={this.blurChange}
+//                     onSelect={this.selectAuto}
+//                   >
+//                     <Input />
+//                   </AutoComplete>
+//                 </span>
+//                 <span style={{ display: "inline-block" }}>
+//                   <span style={{ marginRight: "10px", marginBottom: "10px" }}>
+//                     申报批次:
+//                   </span>
+//                   <Select
+//                     value={this.state.declarationBatch || undefined}
+//                     placeholder="请选择批次"
+//                     style={{
+//                       width: 150,
+//                       marginRight: "10px",
+//                     }}
+//                     onChange={(e) => {
+//                       this.setState({
+//                         declarationBatch: e,
+//                       });
+//                     }}
+//                   >
+//                     <Option value={1}>第一批</Option>
+//                     <Option value={2}>第二批</Option>
+//                     <Option value={3}>第三批</Option>
+//                     <Option value={4}>第四批</Option>
+//                   </Select>
+//                 </span>
+//                 <span style={{ display: "inline-block" }}>
+//                   <span style={{ marginRight: "10px" }}>
+//                     项目金额:
+//                   </span>
+//                   <Select
+//                     value={this.state.projectAmount || undefined}
+//                     placeholder="请选择项目金额"
+//                     style={{
+//                       width: 150,
+//                       marginRight: "10px",
+//                     }}
+//                     onChange={(e) => {
+//                       this.setState({
+//                         projectAmount: e,
+//                       });
+//                     }}
+//                   >
+//                     <Option value={1}>0~0.5万</Option>
+//                     <Option value={2}>0.5~1万</Option>
+//                     <Option value={3}>1~2万</Option>
+//                     <Option value={4}>2~5万</Option>
+//                     <Option value={5}>5~10万</Option>
+//                     <Option value={6}>10~30万</Option>
+//                     <Option value={7}>30~50万</Option>
+//                     <Option value={8}>50~80万</Option>
+//                     <Option value={9}>80万上</Option>
+//                   </Select>
+//                 </span>
+//                 <span style={{ display: "inline-block" }}>
+//                   <span style={{ marginRight: "10px" }}>
+//                     项目状态:
+//                   </span>
+//                   <Select
+//                     value={this.state.taskProjectStatus || undefined}
+//                     placeholder="请选择项目状态"
+//                     style={{
+//                       width: 150,
+//                       marginRight: "10px",
+//                     }}
+//                     onChange={(e) => {
+//                       this.setState({
+//                         taskProjectStatus: e,
+//                       });
+//                     }}
+//                   >
+//                     {
+//                       projectStatusList.map((item) =>
+//                         <Option value={item.value} key={item.value}>{item.label}</Option>
+//                       )
+//                     }
+//                   </Select>
+//                 </span>
+//                 {/*    <span style={{display:"inline-block"}}>*/}
+//                 {/*    <span style={{marginRight:'10px',marginBottom:'10px'}}>项目情况 :</span>*/}
+//                 {/*    <Select*/}
+//                 {/*        value={typeof this.state.projectSituation === 'number' ? this.state.projectSituation : undefined}*/}
+//                 {/*        placeholder="请选择项目情况"*/}
+//                 {/*        style={{ width: 200,marginRight:'10px',marginBottom:'10px' }}*/}
+//                 {/*        onChange={(e) => {*/}
+//                 {/*            this.setState({*/}
+//                 {/*                projectSituation: e,*/}
+//                 {/*            });*/}
+//                 {/*        }}*/}
+//                 {/*    >*/}
+//                 {/*        <Option value={0}>未开始</Option>*/}
+//                 {/*        <Option value={1}>进行中</Option>*/}
+//                 {/*        <Option value={2}>已暂停</Option>*/}
+//                 {/*        <Option value={3}>已驳回(专利、软著项目编写)</Option>*/}
+//                 {/*        <Option value={4}>已完成</Option>*/}
+//                 {/*        <Option value={5}>项目已完成 已退单</Option>*/}
+//                 {/*        <Option value={6}>项目未完成 已退单</Option>*/}
+//                 {/*    </Select>*/}
+//                 {/*</span>*/}
+//                 <span style={{ display: "inline-block" }}>
+//                   <span style={{ marginRight: "10px" }}>
+//                     满&nbsp;&nbsp;意&nbsp;&nbsp;度:
+//                   </span>
+//                   <Select
+//                     value={this.state.sdStatus}
+//                     placeholder="请选择满意度"
+//                     style={{
+//                       width: 150,
+//                       marginRight: "10px",
+//                     }}
+//                     onChange={(e) => {
+//                       this.setState({
+//                         sdStatus: e,
+//                       });
+//                     }}
+//                   >
+//                     <Option value={0}>未发放</Option>
+//                     <Option value={1}>已发放</Option>
+//                     <Option value={2}>已回收(非常满意)</Option>
+//                     <Option value={3}>已回收(满意)</Option>
+//                     <Option value={4}>已回收(一般)</Option>
+//                     <Option value={5}>已回收(不满意)</Option>
+//                   </Select>
+//                 </span>
+
+//                 <span style={{ display: "inline-block" }}>
+//                   <span style={{ marginRight: "10px" }}>
+//                     派单时间:
+//                   </span>
+//                   <RangePicker
+//                     allowClear={false}
+//                     style={{ marginRight: "10px" }}
+//                     value={[
+//                       this.state.releaseDate[0]
+//                         ? moment(this.state.releaseDate[0])
+//                         : null,
+//                       this.state.releaseDate[1]
+//                         ? moment(this.state.releaseDate[1])
+//                         : null,
+//                     ]}
+//                     onChange={(data, dataString) => {
+//                       this.setState({ releaseDate: dataString });
+//                     }}
+//                   />
+//                 </span>
+//                 <Button
+//                   type="primary"
+//                   onClick={() => {
+//                     this.loadData();
+//                   }}
+//                   style={{ marginRight: "10px", marginBottom: "10px" }}
+//                 >
+//                   搜索
+//                 </Button>
+//                 <Button
+//                   onClick={this.resetAll}
+//                   style={{ marginRight: "10px", marginBottom: "10px" }}
+//                 >
+//                   重置
+//                 </Button>
+//               </div>
+//             </TabPane>
+//             <TabPane tab="更改表格显示数据" key="2">
+//                 <div style={{ marginLeft: 10 }}>
+//                   <ChooseList
+//                     columns={this.state.columns}
+//                     changeFn={this.changeList}
+//                     changeList={this.state.changeList}
+//                     top={55}
+//                     margin={11}
+//                   />
+//                 </div>
+//             </TabPane>
+//             <TabPane tab="导出EXCEL" key="3">
+//               <Button
+//                 type="primary"
+//                 style={{ margin: "10px" }}
+//                 onClick={this.exportExec.bind(this)}
+//               >
+//                 导出excel
+//               </Button>
+//             </TabPane>
+//           </Tabs>
+//         </div>
+//         <div className="patent-table">
+//           <Spin spinning={this.state.loading}>
+//             <Table
+//               bordered
+//               size="middle"
+//               scroll={{
+//                 x:
+//                   this.state.status === 4 || this.state.status === 3
+//                     ? 1800
+//                     : 1000,
+//                 y: 0,
+//               }}
+//               columns={
+//                 (this.state.changeList && this.state.changeList.length != 0)
+//                   ? this.state.changeList
+//                   : this.state.columns
+//               }
+//               dataSource={this.state.dataSource}
+//               pagination={this.state.pagination}
+//               style={{
+//                 cursor: "pointer",
+//               }}
+//               rowClassName={this.suspendColor}
+//               onRowClick={(record) => {
+//                 this.setState({
+//                   projectdetailsId: record.id,
+//                   projectdetailsOrderNo: record.orderNo,
+//                   pname: record.pname,
+//                   visible: true,
+//                 });
+//               }}
+//             />
+//           </Spin>
+//         </div>
+//         {this.state.visible ? (
+//           <ProjectDetails
+//             visible={this.state.visible}
+//             id={this.state.projectdetailsId}
+//             orderNo={this.state.projectdetailsOrderNo}
+//             taskName={this.state.pname}
+//             visitOk={() => {
+//               this.setState({
+//                 visible: false,
+//               });
+//             }}
+//             visitCancel={() => {
+//               this.loadData(this.state.page);
+//               this.setState({
+//                 visible: false,
+//               });
+//             }}
+//           />
+//         ) : null}
+//       </div>
+//     );
+//   }
+// }
+
+// export default HighTech;

+ 80 - 46
js/component/manageCenter/set/organization/organization.jsx

@@ -11,6 +11,8 @@ import { Form, Radio, Icon, Button, Input, Select, Spin, Table, Switch, message,
 import { patternOrganization, conditionOrganization } from '../../../dataDic.js';
 import { getPattern, getCondition } from '../../../tools.js';
 import { ChooseList } from "../../order/orderNew/chooseList";
+import StaffSearch from '../../../../component/common/staffSearch';
+
 const confirm = Modal.confirm;
 
 const { TabPane } = Tabs
@@ -280,6 +282,7 @@ const Organization = Form.create()(React.createClass({
                     cfoExamine: _this.state.cfoExamine, // 财务总监审核
                     viceCeoExamine: _this.state.viceCeoExamine, // 集团副总审核
                     cashierExamine: _this.state.cashierExamine, // 出纳审核
+                    techAdminId: _this.state.techAdminId, // 技术总监
                   }
                 }).done(
                   function (data) {
@@ -338,6 +341,7 @@ const Organization = Form.create()(React.createClass({
                 cfoExamine: _this.state.cfoExamine, // 财务总监审核
                 viceCeoExamine: _this.state.viceCeoExamine, // 集团副总审核
                 cashierExamine: _this.state.cashierExamine, // 出纳审核
+                techAdminId: _this.state.techAdminId, // 技术总监
               }
             }).done(
               function (data) {
@@ -401,6 +405,7 @@ const Organization = Form.create()(React.createClass({
                 cfoExamine: _this.state.cfoExamine, // 财务总监审核
                 viceCeoExamine: _this.state.viceCeoExamine, // 集团副总审核
                 cashierExamine: _this.state.cashierExamine, // 出纳审核
+                techAdminId: _this.state.techAdminId, // 技术总监
               }
             }).done(
               function (data) {
@@ -460,6 +465,7 @@ const Organization = Form.create()(React.createClass({
             cfoExamine: _this.state.cfoExamine, // 财务总监审核
             viceCeoExamine: _this.state.viceCeoExamine, // 集团副总审核
             cashierExamine: _this.state.cashierExamine, // 出纳审核
+            techAdminId: _this.state.techAdminId, // 技术总监
           }
         }).done(
           function (data) {
@@ -530,6 +536,8 @@ const Organization = Form.create()(React.createClass({
             viceCeoExamineList: thisdata.viceCeoExamineList,
             cashierExamine: thisdata.cashierExamine, //出纳审核
             cashierExamineList: thisdata.cashierExamineList,
+            techAdminId: thisdata.techAdminId, // 技术总监
+            techAdminName: thisdata.techAdminName,
           });
           this.setState({
             editId: thisdata.id, //每一条记录的ID
@@ -567,6 +575,8 @@ const Organization = Form.create()(React.createClass({
             viceCeoExamineList: thisdata.viceCeoExamineList,
             cashierExamine: thisdata.cashierExamine, //出纳审核
             cashierExamineList: thisdata.cashierExamineList,
+            techAdminId: thisdata.techAdminId, // 技术总监
+            techAdminName: thisdata.techAdminName,
           });
         } else {
           message.warning(data.error[0].message);
@@ -873,6 +883,8 @@ const Organization = Form.create()(React.createClass({
     this.state.financeName = "";//负责人ID清零
     this.state.approvalAid = "";//审核人ID清零
     this.state.approvalName = "";//审核人清零
+    this.state.techAdminId = ""; // 技术总监
+    this.state.techAdminName = "";
     this.state.reviewerId = "";//复审人
     this.state.reviewerName = "";//复审人
     this.state.accountrId = "";//报销审核人
@@ -1490,6 +1502,43 @@ const Organization = Form.create()(React.createClass({
                     <FormItem
                       className="half-item"
                       {...formItemLayout}
+                      label="技术总监审核"
+                    >
+                      <StaffSearch
+                        valueName={this.state.techAdminName}
+                        placeholder="输入名称"
+                        width="70%"
+                        onBlurText={e => {
+                          this.setState({
+                            techAdminName: e.title
+                          })
+                        }}
+                        onBlurChange={(obj) => {
+                          this.setState({
+                            techAdminId: obj.value,
+                          })
+                        }}
+                      />
+                    </FormItem>
+                  </div>
+                  <div className="clearfix">
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
+                      label="上级组织"
+                    >
+                      <Select placeholder="请选择上级组织"
+                        value={this.state.editSuperId}
+                        style={{ width: '70%' }}
+                        onChange={(e) => { this.setState({ editSuperId: e }) }}
+                        notFoundContent="未获取到上级组织列表">
+                        {this.state.contactsOption}
+                      </Select>
+                    </FormItem>
+
+                    <FormItem
+                      className="half-item"
+                      {...formItemLayout}
                       label="报销审核人"
                     >
                       <AutoComplete
@@ -1514,15 +1563,11 @@ const Organization = Form.create()(React.createClass({
                     <FormItem
                       className="half-item"
                       {...formItemLayout}
-                      label="上级组织"
-                    >
-                      <Select placeholder="请选择上级组织"
-                        value={this.state.editSuperId}
+                      label="缩写" >
+                      <Input placeholder="缩写"
+                        value={this.state.abbreviation}
                         style={{ width: '70%' }}
-                        onChange={(e) => { this.setState({ editSuperId: e }) }}
-                        notFoundContent="未获取到上级组织列表">
-                        {this.state.contactsOption}
-                      </Select>
+                        onChange={(e) => { this.setState({ abbreviation: e.target.value }) }} />
                     </FormItem>
 
                     <FormItem
@@ -1571,15 +1616,22 @@ const Organization = Form.create()(React.createClass({
                       </div>
                     </FormItem>
                   </div>
+
                   <div className="clearfix">
                     <FormItem
                       className="half-item"
                       {...formItemLayout}
-                      label="缩写" >
-                      <Input placeholder="缩写"
-                        value={this.state.abbreviation}
+                      label="选择作息时间类型"
+                    >
+                      <Select placeholder="请选择作息时间类型"
+                        value={this.state.workingHoursType}
                         style={{ width: '70%' }}
-                        onChange={(e) => { this.setState({ abbreviation: e.target.value }) }} />
+                        onChange={(e) => { this.setState({ workingHoursType: e }) }}
+                        notFoundContent="未获取到作息时间类型">
+                        {this.state.workTimeList.map((v, k) => (
+                          <Select.Option value={v.type} key={k}>{v.name}</Select.Option>
+                        ))}
+                      </Select>
                     </FormItem>
 
                     <FormItem
@@ -1629,22 +1681,22 @@ const Organization = Form.create()(React.createClass({
                       <div style={{ color: "red" }}>注:启用董事长审核后,还需要财务指向,是否需要董事长特批</div>
                     </FormItem>
                   </div>
-
                   <div className="clearfix">
                     <FormItem
                       className="half-item"
                       {...formItemLayout}
-                      label="选择作息时间类型"
+                      label="组织编号"
                     >
-                      <Select placeholder="请选择作息时间类型"
-                        value={this.state.workingHoursType}
+                      <Input
+                        placeholder='组织编号'
+                        value={this.state.depNo}
                         style={{ width: '70%' }}
-                        onChange={(e) => { this.setState({ workingHoursType: e }) }}
-                        notFoundContent="未获取到作息时间类型">
-                        {this.state.workTimeList.map((v, k) => (
-                          <Select.Option value={v.type} key={k}>{v.name}</Select.Option>
-                        ))}
-                      </Select>
+                        onChange={(e) => {
+                          this.setState({
+                            depNo: e.target.value
+                          })
+                        }}
+                      />
                     </FormItem>
 
                     <FormItem
@@ -1693,22 +1745,13 @@ const Organization = Form.create()(React.createClass({
                       </div>
                     </FormItem>
                   </div>
-                  <div className="clearfix">
+                  <div className="clearfix" >
                     <FormItem
                       className="half-item"
                       {...formItemLayout}
-                      label="组织编号"
+                      label="创建人"
                     >
-                      <Input
-                        placeholder='组织编号'
-                        value={this.state.depNo}
-                        style={{ width: '70%' }}
-                        onChange={(e) => {
-                          this.setState({
-                            depNo: e.target.value
-                          })
-                        }}
-                      />
+                      <span>{this.state.editCreateId}</span>
                     </FormItem>
 
                     <FormItem
@@ -1757,13 +1800,13 @@ const Organization = Form.create()(React.createClass({
                       </div>
                     </FormItem>
                   </div>
-                  <div className="clearfix" >
+                  <div className="clearfix">
                     <FormItem
                       className="half-item"
                       {...formItemLayout}
-                      label="创建"
+                      label="创建时间"
                     >
-                      <span>{this.state.editCreateId}</span>
+                      <span>{this.state.editTime}</span>
                     </FormItem>
 
                     <FormItem
@@ -1816,15 +1859,6 @@ const Organization = Form.create()(React.createClass({
                     <FormItem
                       className="half-item"
                       {...formItemLayout}
-                      label="创建时间"
-                    >
-                      <span>{this.state.editTime}</span>
-                    </FormItem>
-                  </div>
-                  <div className="clearfix">
-                    <FormItem
-                      className="half-item"
-                      {...formItemLayout}
                       label="组织职能说明" >
                       <Input type="textarea"
                         rows={4}

+ 24 - 0
js/component/manageCenter/set/userManagementS/newUser.jsx

@@ -159,6 +159,7 @@ const Newuser = Form.create()(React.createClass({
           ambId: !!this.state.ambId ? this.state.ambId : null,
           managerId: this.state.managerId,
           expenseSuperExamine: this.state.expenseSuperExamine, // 报销是否需要上级审核
+          publicCarbonCopy: this.state.publicCarbonCopy,// 公出抄送
         })
       }
     }).done(function (data) {
@@ -279,6 +280,8 @@ const Newuser = Form.create()(React.createClass({
             selTime: thisdata.entryTime,
             ambId: !!thisdata.ambId && Number(thisdata.ambId), // 分巴id
             expenseSuperExamine: thisdata.expenseSuperExamine, // 报销是否需要上级主管审核
+            publicCarbonCopy: thisdata.publicCarbonCopy, // 公出抄送
+            publicCarbonCopyName: thisdata.publicCarbonCopyName,
           });
         }.bind(this),
       }).always(function () {
@@ -600,6 +603,27 @@ const Newuser = Form.create()(React.createClass({
                     }}
                   />
                 </FormItem>
+
+                <FormItem className="half-item"
+                  {...formItemLayout}
+                  label="公出抄送"
+                >
+                  <StaffSearch
+                    valueName={this.state.publicCarbonCopyName}
+                    placeholder="输入名称"
+                    onBlurText={e => {
+                      this.setState({
+                        publicCarbonCopyName: e.title
+                      })
+                    }}
+                    onBlurChange={(obj) => {
+                      this.setState({
+                        publicCarbonCopy: obj.value,
+                      })
+                    }}
+                  />
+                </FormItem>
+
                 <FormItem className="half-item"
                   {...formItemLayout}
                   label="业务员"

+ 18 - 5
js/component/showModal.jsx

@@ -410,6 +410,17 @@ const ShowModal = React.createClass({
   },
 
   componentWillReceiveProps(nextProps) {
+    if (this.timer) {
+      clearTimeout(this.timer);
+    }
+
+    this.timer = setTimeout(() => {
+      this.performAction(nextProps);
+    }, 500); 
+
+  },
+
+  performAction(nextProps) {
     this.setState({
       newVisible: nextProps.ShowModal
     });
@@ -417,12 +428,14 @@ const ShowModal = React.createClass({
 
   handleOk() {
     this.setState({
-      newVisible: false
+      newVisible: false,
+      messageModalShow: false,
     });
   },
 
   closeMessageModal(e, s) {
     this.setState({
+      newVisible: false,
       messageModalShow: e
     })
   },
@@ -464,11 +477,11 @@ const ShowModal = React.createClass({
           >
             关闭
           </Button>
+          <MessageModal
+            showDesc={this.state.messageModalShow}
+            closeDesc={this.closeMessageModal}
+          />
         </Modal>
-        <MessageModal
-          showDesc={this.state.messageModalShow}
-          closeDesc={this.closeMessageModal}
-        />
       </div>
     );
   }

+ 4 - 1
js/component/tools.js

@@ -2157,10 +2157,13 @@ const obj = {
       data: {},
       success: function (data) {
         if (data.data != 0) {
-          // console.log(data);
           fn.setState({
             showModal: true,
           });
+        } else {
+          fn.setState({
+            showModal: false,
+          });
         }
       },
     });