| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245 | 
							- import React from "react";
 
- import {
 
-   Icon,
 
-   Button,
 
-   AutoComplete,
 
-   Cascader,
 
-   Input,
 
-   Select,
 
-   Spin,
 
-   Table,
 
-   message,
 
-   DatePicker,
 
-   Tooltip,
 
-   Form,
 
-   Tabs,
 
-   Modal,
 
-   Tag,
 
-   Checkbox,
 
- } from "antd";
 
- import $ from "jquery/src/ajax";
 
- import moment from "moment";
 
- import { citySelect, provinceList } from "@/NewDicProvinceList";
 
- import AddIntention from "./addIntention.jsx";
 
- import { industry, lvl, currentMember } from "@/dataDic.js";
 
- import ZhuanjiaoDetail from "@/zhuanjiaoDetail.jsx";
 
- import { getSocialAttribute, ShowModal } from "@/tools.js";
 
- import FollowDetail from "./followDetail.jsx";
 
- import IntentionDetail from "./intentionDetail/intentionDetail";
 
- import ShowModalDiv from "@/showModal.jsx";
 
- import "./customer.less";
 
- import { ChooseList } from "../../../order/orderNew/chooseList";
 
- import EnterpriseNameChange from "../../../../common/enterpriseNameChange";
 
- const { TabPane } = Tabs;
 
- const confirm = Modal.confirm;
 
- const IntentionCustomer = Form.create()(
 
-   React.createClass({
 
-     loadData(pageNo, apiUrl) {
 
-       this.setState({
 
-         visitModul: false,
 
-         loading: true,
 
-         modalVisible: false,
 
-       });
 
-       let api = apiUrl ? apiUrl : this.props.ApiUrl;
 
-       $.ajax({
 
-         method: "post",
 
-         dataType: "json",
 
-         crossDomain: false,
 
-         url: globalConfig.context + api,
 
-         data: {
 
-           pageNo: pageNo || 1,
 
-           pageSize: this.state.pagination.pageSize,
 
-           level: this.state.level ? this.state.level : undefined,
 
-           name: this.state.nameSearch,
 
-           province: !this.state.addressSearch.length
 
-             ? this.state.provinceSearch
 
-             : this.state.addressSearch[0],
 
-           city: !this.state.addressSearch.length
 
-             ? undefined
 
-             : this.state.addressSearch[1],
 
-           startDate: this.state.releaseDate[0],
 
-           endDate: this.state.releaseDate[1],
 
-         },
 
-         success: function (data) {
 
-           ShowModal(this);
 
-           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.list.length; i++) {
 
-               let thisdata = data.data.list[i];
 
-               let diqu =
 
-                 (thisdata.province == null ? "" : thisdata.province) +
 
-                 (thisdata.city == null ? "" : "-" + thisdata.city) +
 
-                 (thisdata.area == null ? "" : "-" + thisdata.area);
 
-               thisdata.key = i;
 
-               thisdata.id = thisdata.uid;
 
-               thisdata.lastFollowTime =
 
-                 thisdata.lastFollowTime &&
 
-                 thisdata.lastFollowTime.split(" ")[0];
 
-               thisdata.transferTime =
 
-                 thisdata.transferTime && thisdata.transferTime.split(" ")[0];
 
-               thisdata.surplusFollowTime =
 
-                 thisdata.surplusFollowTime &&
 
-                 thisdata.surplusFollowTime.split(" ")[0];
 
-               thisdata.surplusSignTime =
 
-                 thisdata.surplusSignTime &&
 
-                 thisdata.surplusSignTime.split(" ")[0];
 
-               thisdata.locationProvince = diqu;
 
-               theArr.push(thisdata);
 
-             }
 
-             this.state.pagination.current = data.data.pageNo;
 
-             this.state.pagination.total = data.data.totalCount;
 
-             this.setState({
 
-               ispage: data.data.pageNo,
 
-             });
 
-           }
 
-           if (data.data && data.data.list && !data.data.list.length) {
 
-             this.state.pagination.current = 0;
 
-             this.state.pagination.total = 0;
 
-           }
 
-           if (
 
-             JSON.stringify(theArr) !== JSON.stringify(this.state.dataSource)
 
-           ) {
 
-             this.setState({
 
-               selectedRowKeys: [],
 
-             });
 
-           }
 
-           this.setState({
 
-             dataSource: theArr,
 
-             pagination: this.state.pagination,
 
-           });
 
-         }.bind(this),
 
-       }).always(
 
-         function () {
 
-           this.setState({
 
-             loading: false,
 
-           });
 
-         }.bind(this)
 
-       );
 
-     },
 
-     //品类数据获取
 
-     category() {
 
-       $.ajax({
 
-         method: "get",
 
-         dataType: "json",
 
-         crossDomain: false,
 
-         url: globalConfig.context + "/api/admin/Varieties/getSuperList",
 
-         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({
 
-                 value: item.id,
 
-                 key: item.cname,
 
-               });
 
-             });
 
-           }
 
-           this.setState({
 
-             categoryArr: theArr,
 
-           });
 
-         }.bind(this),
 
-       });
 
-     },
 
-     getInitialState() {
 
-       return {
 
-         addressSearch: [],
 
-         orgCodeUrl: [],
 
-         companyLogoUrl: [],
 
-         visible: false,
 
-         zhuanjiaoVisible: false,
 
-         searchMore: true,
 
-         releaseDate: [],
 
-         categoryArr: [],
 
-         visitModul: false,
 
-         keys: false,
 
-         detailApi: "",
 
-         followData: {},
 
-         selectedRowKeys: [],
 
-         selectedRowKey: [],
 
-         selectedRows: [],
 
-         loading: false,
 
-         modalVisible: 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: "name",
 
-             key: "name",
 
-             width: 150,
 
-             render: (text) => {
 
-               return (
 
-                 <Tooltip title={text}>
 
-                   <div
 
-                     onClick={(e) => {
 
-                       e.stopPropagation();
 
-                       let input = document.getElementById("copyText");
 
-                       input.value = text;
 
-                       input.select();
 
-                       document.execCommand("copy");
 
-                       message.success("复制成功");
 
-                     }}
 
-                   // style={{
 
-                   //   maxWidth: "150px",
 
-                   //   overflow: "hidden",
 
-                   //   textOverflow: "ellipsis",
 
-                   //   whiteSpace: "nowrap",
 
-                   //   cursor: "pointer",
 
-                   // }}
 
-                   >
 
-                     {text}
 
-                   </div>
 
-                 </Tooltip>
 
-               );
 
-             },
 
-           },
 
-           {
 
-             title: "统一社会信用代码",
 
-             dataIndex: "orgCode",
 
-             key: "orgCode",
 
-             render: (text) => {
 
-               return <div style={{ color: !text ? "red" : "#000000A6" }}>
 
-                 {!text ? "待补充" : text}
 
-               </div>;
 
-             },
 
-           },
 
-           {
 
-             title: "地区",
 
-             dataIndex: "locationProvince",
 
-             key: "locationProvince",
 
-           },
 
-           // {
 
-           //   title: "联系人",
 
-           //   dataIndex: "contacts",
 
-           //   key: "contacts",
 
-           // },
 
-           // {
 
-           //   title: "联系电话",
 
-           //   dataIndex: "contactMobile",
 
-           //   key: "contactMobile",
 
-           // },
 
-           {
 
-             title: "社会性质",
 
-             dataIndex: "societyTag",
 
-             key: "societyTag",
 
-             render: (text) => {
 
-               return getSocialAttribute(text);
 
-             },
 
-           },
 
-           {
 
-             title: "客户初始时间",
 
-             dataIndex: "transferTime",
 
-             key: "transferTime",
 
-           },
 
-           {
 
-             title: "剩余私有天数",
 
-             dataIndex: "surplusFollowTime",
 
-             key: "surplusFollowTime",
 
-           },
 
-           {
 
-             title: "剩余签单天数",
 
-             dataIndex: "surplusSignTime",
 
-             key: "surplusSignTime",
 
-           },
 
-           {
 
-             title: "最新跟进时间",
 
-             dataIndex: "lastFollowTime",
 
-             key: "lastFollowTime",
 
-           },
 
-           {
 
-             title: "客户等级",
 
-             dataIndex: "level",
 
-             key: "level",
 
-             render: (text) => {
 
-               if (text == 0) {
 
-                 return <Tag color="#87d068">一般客户</Tag>;
 
-               } else if (text == 1) {
 
-                 return <Tag color="#D2691E">意向客户</Tag>;
 
-               } else if (text == 2) {
 
-                 return <Tag color="#FF0000">重点客户</Tag>;
 
-               } else {
 
-                 return "";
 
-               }
 
-             },
 
-           },
 
-           {
 
-             title: "跟进操作",
 
-             dataIndex: "abc",
 
-             key: "abc",
 
-             render: (text, record, index) => {
 
-               return (
 
-                 <div
 
-                   style={{
 
-                     display: "flex",
 
-                     flexFlow: "row",
 
-                     alignItems: "center",
 
-                   }}
 
-                 >
 
-                   <Button
 
-                     onClick={(e) => {
 
-                       const _this = this
 
-                       e.stopPropagation()
 
-                       if (!record.orgCode) {
 
-                         confirm({
 
-                           title: '您暂时不可以跟进客户',
 
-                           content: `请先完善"企业统一社会信用代码"`,
 
-                           cancelText: '取消',
 
-                           okText: '去完善',
 
-                           onOk() {
 
-                             _this.tableRowClick(record)
 
-                           },
 
-                           onCancel() { },
 
-                         });
 
-                       } else {
 
-                         this.visit(record);
 
-                       }
 
-                     }}
 
-                     type="primary"
 
-                   >
 
-                     客户跟进
 
-                   </Button>
 
-                 </div>
 
-               );
 
-             },
 
-           },
 
-           {
 
-             title: "指导意见",
 
-             dataIndex: "guidance",
 
-             key: "guidance",
 
-             render: (text, record, index) => {
 
-               return (
 
-                 <div
 
-                   style={{
 
-                     display: "flex",
 
-                     flexFlow: "row",
 
-                     alignItems: "center",
 
-                   }}
 
-                 >
 
-                   {/*指导 0无 1未读 2已读*/}
 
-                   {text === 1 || text === 2 ? (
 
-                     <Button
 
-                       style={
 
-                         text === 1
 
-                           ? {
 
-                             background: "#F00000",
 
-                             borderColor: "#F00000",
 
-                           }
 
-                           : {}
 
-                       }
 
-                       onClick={(e) => {
 
-                         e.stopPropagation();
 
-                         this.guidanceRead(record.uid).then(() => {
 
-                           this.setState(
 
-                             {
 
-                               tabsKey: "4",
 
-                             },
 
-                             () => {
 
-                               this.tableRowClick(record);
 
-                             }
 
-                           );
 
-                         });
 
-                       }}
 
-                       type="primary"
 
-                     >
 
-                       {text === 1 ? "未读" : "查看"}
 
-                     </Button>
 
-                   ) : (
 
-                     <div>暂无指导</div>
 
-                   )}
 
-                 </div>
 
-               );
 
-             },
 
-           },
 
-         ],
 
-         tabsKey: "",
 
-         data: [],
 
-         dataman: [],
 
-         dataSource: [],
 
-         visitArrList: [],
 
-         searchTime: [,],
 
-         selList: [],
 
-       };
 
-     },
 
-     //已读指导记录
 
-     guidanceRead(id) {
 
-       return new Promise((resolve, reject) => {
 
-         $.ajax({
 
-           method: "post",
 
-           dataType: "json",
 
-           crossDomain: false,
 
-           url: globalConfig.context + "/api/admin/customer/pushGuidance",
 
-           data: {
 
-             uid: id,
 
-           },
 
-         }).done(
 
-           function (data) {
 
-             if (!data.error.length) {
 
-               resolve();
 
-             } else {
 
-               message.warning(data.error[0].message);
 
-               reject();
 
-             }
 
-           }.bind(this)
 
-         );
 
-       });
 
-     },
 
-     rankO(rank) {
 
-       let deletedIds = "";
 
-       for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
 
-         let rowItem = this.state.selectedRows[idx];
 
-         if (rowItem.id) {
 
-           deletedIds =
 
-             this.state.selectedRows.length - 1 === idx
 
-               ? deletedIds + rowItem.id
 
-               : deletedIds + rowItem.id + ",";
 
-         }
 
-       }
 
-       $.ajax({
 
-         method: "get",
 
-         dataType: "json",
 
-         crossDomain: false,
 
-         url: globalConfig.context + "/api/admin/customer/updateUserLevel",
 
-         data: {
 
-           id: deletedIds, //客户的ID
 
-           level: rank,
 
-         },
 
-       }).done(
 
-         function (data) {
 
-           if (!data.error.length && data.data !== 0) {
 
-             message.success("操作成功!");
 
-             this.setState({
 
-               loading: false,
 
-             });
 
-             this.loadData(this.state.ispage);
 
-           } else {
 
-             message.warning(
 
-               data.data === 0 ? "操作失败,请联系管理员!" : data.error[0].message
 
-             );
 
-           }
 
-         }.bind(this)
 
-       );
 
-     },
 
-     //进入新增拜访记录
 
-     visit(e) {
 
-       this.setState({
 
-         followData: e,
 
-         visitModul: true,
 
-         modalVisible: false,
 
-       });
 
-     },
 
-     //列表删除功能
 
-     delectRow() {
 
-       let deletedIds = "";
 
-       for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
 
-         let rowItem = this.state.selectedRows[idx];
 
-         if (rowItem.id) {
 
-           deletedIds =
 
-             this.state.selectedRows.length - 1 === idx
 
-               ? deletedIds + rowItem.id
 
-               : deletedIds + rowItem.id + ",";
 
-         }
 
-       }
 
-       this.setState({
 
-         loading: true,
 
-         selectedRowKeys: [],
 
-       });
 
-       $.ajax({
 
-         method: "get",
 
-         dataType: "json",
 
-         crossDomain: false,
 
-         url: globalConfig.context + "/api/admin/customer/deleteCustomer",
 
-         data: {
 
-           uid: deletedIds, //删除的ID
 
-         },
 
-       }).done(
 
-         function (data) {
 
-           if (!data.error.length) {
 
-             message.success("删除成功!");
 
-             this.setState({
 
-               loading: false,
 
-             });
 
-           } else {
 
-             message.warning(data.error[0].message);
 
-           }
 
-           this.loadData(this.state.ispage);
 
-         }.bind(this)
 
-       );
 
-     },
 
-     componentWillMount() {
 
-       //城市
 
-       let Province = [];
 
-       provinceList.map(function (item) {
 
-         var id = String(item.id);
 
-         Province.push(
 
-           <Select.Option value={id} key={item.name}>
 
-             {item.name}
 
-           </Select.Option>
 
-         );
 
-       });
 
-       //行业
 
-       let intentionalArr = [];
 
-       industry.map(function (item) {
 
-         intentionalArr.push(
 
-           <Select.Option value={item.value} key={item.key}>
 
-             {item.key}
 
-           </Select.Option>
 
-         );
 
-       });
 
-       //会员等级
 
-       let lvlArr = [];
 
-       lvl.map(function (item) {
 
-         lvlArr.push(
 
-           <Select.Option value={item.value} key={item.key}>
 
-             {item.key}
 
-           </Select.Option>
 
-         );
 
-       });
 
-       //会员状态customerStatus
 
-       let currentMemberArr = [];
 
-       currentMember.map(function (item) {
 
-         currentMemberArr.push(
 
-           <Select.Option value={item.value} key={item.key}>
 
-             {item.key}
 
-           </Select.Option>
 
-         );
 
-       });
 
-       this.state.Provinces = Province;
 
-       this.state.intentionalOption = intentionalArr;
 
-       this.state.lvlArrOption = lvlArr;
 
-       this.state.currentMemberArrOption = currentMemberArr;
 
-       this.loadData();
 
-       this.category();
 
-     },
 
-     addClick() {
 
-       this.state.RowData = {};
 
-       this.setState({
 
-         detailApi: this.props.detailApi,
 
-         showDesc: true,
 
-         modalVisible: false,
 
-         visitModul: false,
 
-       });
 
-     },
 
-     closeDesc(e, s) {
 
-       this.state.basicState = e;
 
-       this.state.visitModul = e;
 
-       this.state.modalVisible = e;
 
-       this.state.showDesc = e;
 
-       this.setState({
 
-         tabsKey: "",
 
-       });
 
-       if (s) {
 
-         this.loadData(this.state.ispage);
 
-       }
 
-     },
 
-     search() {
 
-       this.loadData();
 
-     },
 
-     reset() {
 
-       this.state.nameSearch = "";
 
-       this.state.level = undefined;
 
-       this.state.addressSearch = [];
 
-       this.state.provinceSearch = undefined;
 
-       this.state.citySearch = undefined;
 
-       this.state.releaseDate[0] = undefined;
 
-       this.state.releaseDate[1] = undefined;
 
-       this.loadData();
 
-     },
 
-     searchSwitch() {
 
-       this.setState({
 
-         visitModul: false,
 
-         searchMore: !this.state.searchMore,
 
-       });
 
-     },
 
-     //整行点击
 
-     tableRowClick(record, index) {
 
-       this.state.visitModul = false;
 
-       this.setState({
 
-         // selectedRowKeys: [],
 
-         modalVisible: true,
 
-         basicState: true,
 
-         contactState: true,
 
-         modalName: record.name,
 
-         RowData: record,
 
-       });
 
-     },
 
-     //指定转交人自动补全
 
-     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 () {
 
-           this.setState({
 
-             loading: false,
 
-           });
 
-         }.bind(this)
 
-       );
 
-     },
 
-     //上级主管输入框失去焦点是判断客户是否存在
 
-     selectAuto(value, options) {
 
-       this.setState({
 
-         auto: value,
 
-       });
 
-     },
 
-     blurChange(e) {
 
-       let theType = "";
 
-       let contactLists = this.state.customerArr || [];
 
-       if (e) {
 
-         contactLists.map(function (item) {
 
-           if (item.name == e.toString()) {
 
-             theType = item.id;
 
-           }
 
-         });
 
-       }
 
-       this.setState({
 
-         theTypes: theType,
 
-       });
 
-     },
 
-     //值改变时请求客户名称
 
-     httpChange(e) {
 
-       if (e.length >= 1) {
 
-         this.supervisor(e);
 
-       }
 
-       this.setState({
 
-         auto: e,
 
-       });
 
-     },
 
-     //转交
 
-     changeAssigner(infor) {
 
-       let type = infor
 
-       if (infor == 1) {
 
-         if (this.state.selList.length == 0) {
 
-           message.warn("请勾选您需要转交的信息!")
 
-           return
 
-         } else if (this.state.selList.length == 2) {
 
-           type = 3
 
-         } else {
 
-           type = this.state.selList[0]
 
-         }
 
-       }
 
-       if (this.state.theTypes) {
 
-         this.setState({
 
-           informationTransferVisible: false,
 
-         });
 
-         let changeIds = "";
 
-         let oldAid = "";
 
-         for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
 
-           let rowItem = this.state.selectedRows[idx];
 
-           if (rowItem.id) {
 
-             oldAid = rowItem.aid;
 
-             changeIds =
 
-               this.state.selectedRows.length - 1 === idx
 
-                 ? changeIds + rowItem.id
 
-                 : changeIds + rowItem.id + ",";
 
-           }
 
-         }
 
-         let loading = message.loading("加载中...");
 
-         $.ajax({
 
-           method: "get",
 
-           dataType: "json",
 
-           crossDomain: false,
 
-           url: globalConfig.context + "/api/admin/customer/transferToOther",
 
-           data: {
 
-             uid: changeIds, //这一行数据的ID
 
-             aid: this.state.theTypes, //指定转交人的ID
 
-             oldAid: oldAid,
 
-             operatorType: 3,
 
-             data: type,
 
-           },
 
-         }).done(
 
-           function (data) {
 
-             loading();
 
-             this.setState({
 
-               selList: [],
 
-             })
 
-             if (!data.error.length) {
 
-               this.setState({
 
-                 auto: "",
 
-                 loading: false,
 
-                 selectedRowKeys: [],
 
-               });
 
-               if (data.data.length == 0) {
 
-                 message.success("转交成功!");
 
-               } else {
 
-                 data.data.forEach(function (e) { message.warning(e) })
 
-               }
 
-             } else {
 
-               message.warning(data.error[0].message);
 
-             }
 
-             this.loadData(
 
-               Math.min(
 
-                 this.state.ispage == undefined ? 1 : this.state.ispage,
 
-                 Math.ceil((this.state.pagination.total - 1) / 10)
 
-               )
 
-             );
 
-           }.bind(this)
 
-         );
 
-       } else {
 
-         message.warning("请输入转交人姓名");
 
-       }
 
-     },
 
-     //导出
 
-     exportExec() {
 
-       let departmentName = "",
 
-         depart = this.state.departmentArr || [];
 
-       depart.map((item) => {
 
-         if (this.state.departmentId == item.id) {
 
-           departmentName = item.name;
 
-           return;
 
-         }
 
-       });
 
-       let data = {
 
-         name: this.state.nameSearch,
 
-         province: this.state.provinceSearch,
 
-         city: this.state.addressSearch,
 
-         level: this.state.level,
 
-         startDate: this.state.releaseDate[0],
 
-         endDate: this.state.releaseDate[1],
 
-       };
 
-       window.location.href =
 
-         globalConfig.context +
 
-         "/api/admin/customer/privateUnitCustomerOutXls?" +
 
-         $.param(data);
 
-     },
 
-     componentWillReceiveProps(nextProps) {
 
-       if (nextProps.ApiUrl != this.props.ApiUrl) {
 
-         if (!this.state.searchMore) {
 
-           this.state.searchMore = true;
 
-         }
 
-         this.state.nameSearch = "";
 
-         this.state.addressSearch = [];
 
-         this.state.provinceSearch = undefined;
 
-         this.state.citySearch = undefined;
 
-         this.state.releaseDate[0] = undefined;
 
-         this.state.releaseDate[1] = undefined;
 
-         this.loadData(null, nextProps.ApiUrl);
 
-       }
 
-     },
 
-     zhuanjiaoDetail(record) {
 
-       this.setState({
 
-         zhuanjiaoVisible: true,
 
-         zhuanjiaoId: record.id,
 
-       });
 
-     },
 
-     zhuanjiaoDetailCancel() {
 
-       this.setState({
 
-         zhuanjiaoVisible: false,
 
-       });
 
-     },
 
-     showConfirm() {
 
-       let _this = this;
 
-       Modal.confirm({
 
-         title: "提示",
 
-         content: (
 
-           <span style={{ color: "red" }}>
 
-             确定要转交以下客户吗?
 
-             {this.state.selectedRows.map((value, index) => (
 
-               <div key={index} style={{ marginTop: "5px", color: "#000" }}>
 
-                 {value.name}
 
-               </div>
 
-             ))}
 
-           </span>
 
-         ),
 
-         onOk() {
 
-           _this.setState({
 
-             informationTransferVisible: true,
 
-           });
 
-         },
 
-         onCancel() { },
 
-       });
 
-     },
 
-     changeList(arr) {
 
-       const newArr = [];
 
-       this.state.columns.forEach((item) => {
 
-         arr.forEach((val) => {
 
-           if (val === item.title) {
 
-             newArr.push(item);
 
-           }
 
-         });
 
-       });
 
-       this.setState({
 
-         changeList: newArr,
 
-       });
 
-     },
 
-     showConfirms(fn, record) {
 
-       Modal.confirm({
 
-         title: "您确定将以下客户移至公共客户吗?",
 
-         content: (
 
-           <span style={{ color: "red" }}>
 
-             移除后,以下客户将被别人领取!
 
-             {this.state.selectedRows.map((value, index) => (
 
-               <div key={index} style={{ marginTop: "5px", color: "#000" }}>
 
-                 {value.name}
 
-               </div>
 
-             ))}
 
-           </span>
 
-         ),
 
-         onOk() {
 
-           fn(record);
 
-         },
 
-         onCancel() { },
 
-       });
 
-     },
 
-     release() {
 
-       this.setState({
 
-         loading: true,
 
-       });
 
-       let deletedIds = "";
 
-       for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
 
-         let rowItem = this.state.selectedRows[idx];
 
-         if (rowItem.id) {
 
-           deletedIds =
 
-             this.state.selectedRows.length - 1 === idx
 
-               ? deletedIds + rowItem.id
 
-               : deletedIds + rowItem.id + ",";
 
-         }
 
-       }
 
-       $.ajax({
 
-         method: "get",
 
-         dataType: "json",
 
-         crossDomain: false,
 
-         url: globalConfig.context + "/api/admin/customer/pushReleaseUser",
 
-         data: {
 
-           id: deletedIds,
 
-         },
 
-         success: function (data) {
 
-           let thedata = data.data;
 
-           if (!thedata) {
 
-             if (data.error && data.error.length) {
 
-               message.warning(data.error[0].message);
 
-             }
 
-             thedata = {};
 
-           } else {
 
-             message.success("移除成功");
 
-             this.loadData(
 
-               this.state.dataSource.length === 1
 
-                 ? this.state.ispage === 1
 
-                   ? 1
 
-                   : this.state.ispage - 1
 
-                 : this.state.ispage
 
-             );
 
-           }
 
-         }.bind(this),
 
-       }).always(
 
-         function () {
 
-           this.setState({
 
-             loading: false,
 
-           });
 
-         }.bind(this)
 
-       );
 
-     },
 
-     render() {
 
-       const FormItem = Form.Item;
 
-       const rowSelection = {
 
-         hideDefaultSelections: true,
 
-         selectedRowKeys: this.state.selectedRowKeys,
 
-         onChange: (selectedRowKeys, selectedRows) => {
 
-           this.setState({
 
-             modalVisible: false,
 
-             selectedRows: selectedRows,
 
-             selectedRowKeys: selectedRowKeys,
 
-           });
 
-         },
 
-         onSelect: (recordt, selected, selectedRows) => {
 
-           this.setState({
 
-             modalVisible: false,
 
-             recordt: recordt.id,
 
-           });
 
-         },
 
-       };
 
-       const hasSelected = this.state.selectedRowKeys.length > 0;
 
-       const { RangePicker } = DatePicker;
 
-       const dataSources = this.state.customerArr || [];
 
-       const options = dataSources.map((group) => (
 
-         <Select.Option key={group.id} value={group.name}>
 
-           {group.name}
 
-         </Select.Option>
 
-       ));
 
-       const intentionState = this.props.intentionState || "";
 
-       return (
 
-         <div className="user-content">
 
-           <ShowModalDiv ShowModal={this.state.showModal} />
 
-           <div className="content-title" style={{ marginBottom: 10 }}>
 
-             <span style={{ fontWeight: 900, fontSize: 16 }}>{!intentionState ? "私有单位客户" : "私有专家客户"}</span>
 
-           </div>
 
-           <div className="user-search">
 
-             <Tabs
 
-               defaultActiveKey="1"
 
-               onChange={this.callback}
 
-               className="test"
 
-             >
 
-               <TabPane tab="搜索" key="1">
 
-                 <Button
 
-                   type="primary"
 
-                   style={{
 
-                     float: "right",
 
-                     marginTop: 10,
 
-                     marginLeft: 10,
 
-                     marginRight: 10,
 
-                   }}
 
-                   onClick={this.addClick}
 
-                 >
 
-                   新增客户
 
-                   <Icon type="plus" />
 
-                 </Button>
 
-                 <Input
 
-                   placeholder="客户名称"
 
-                   value={this.state.nameSearch}
 
-                   style={{ width: 150, marginRight: 10, marginLeft: 10 }}
 
-                   onChange={(e) => {
 
-                     this.setState({ nameSearch: e.target.value });
 
-                   }}
 
-                 />
 
-                 <Select
 
-                   placeholder="省"
 
-                   style={{ width: 80 }}
 
-                   value={this.state.provinceSearch}
 
-                   onChange={(e) => {
 
-                     this.setState({ provinceSearch: e });
 
-                   }}
 
-                 >
 
-                   {this.state.Provinces}
 
-                 </Select>
 
-                 <span style={{ marginRight: "10px" }}>
 
-                   <Cascader
 
-                     options={citySelect()}
 
-                     value={this.state.addressSearch}
 
-                     placeholder="选择城市"
 
-                     onChange={(e, pre) => {
 
-                       this.setState({ addressSearch: e });
 
-                     }}
 
-                   />
 
-                 </span>
 
-                 <Select
 
-                   style={{ width: 120 }}
 
-                   value={this.state.level}
 
-                   onChange={(e) => {
 
-                     this.setState({ level: e });
 
-                   }}
 
-                   placeholder="请选择客户等级"
 
-                 >
 
-                   <Select.Option value="0">一般客户</Select.Option>
 
-                   <Select.Option value="1">意向客户</Select.Option>
 
-                   <Select.Option value="2">重点客户</Select.Option>
 
-                 </Select>
 
-                 <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 });
 
-                   }}
 
-                 />
 
-                 <Button
 
-                   type="primary"
 
-                   style={{ marginLeft: "10px", marginRight: 10 }}
 
-                   onClick={this.search}
 
-                 >
 
-                   搜索
 
-                 </Button>
 
-                 <Button onClick={this.reset}>重置</Button>
 
-               </TabPane>
 
-               {/*<Button onClick={() => { window.open(globalConfig.context + '/api/admin/customer/downloadTemplate?type=1') }}>下载批量导入模板</Button>
 
-                		<Upload
 
-                		    name="file"
 
-                         action={globalConfig.context + "/api/admin/customer/uploadExcel"}
 
-                         beforeUpload={beforeUploadFile}
 
-                         showUploadList={false}
 
-                         onChange={(info) => {
 
-                             if (info.file.status !== 'uploading') {
 
-                                 console.log(info.file, info.fileList);
 
-                             }
 
-                             if (info.file.status === 'done') {
 
-                                 if (!info.file.response.error.length) {
 
-                                     message.success(`${info.file.name} 文件上传成功!`);
 
-                                     this.loadData();
 
-                                 } else {
 
-                                     message.warning(info.file.response.error[0].message);
 
-                                     return;
 
-                                 };
 
-                             } else if (info.file.status === 'error') {
 
-                                 message.error(`${info.file.name} 文件上传失败。`);
 
-                             };
 
-                         }} >
 
-                         <Button>上传批量内容</Button>
 
-                     </Upload>
 
- 	               {adminData.isSuperAdmin?<Popconfirm title="是否删除?" onConfirm={this.delectRow} okText="是" cancelText="否">
 
- 							     <Button type="danger" style={{marginLeft:'10px'}}
 
- 	                       			 disabled={!hasSelected}
 
- 	                       		 >删除<Icon type="minus" />
 
- 	                        </Button>
 
- 	                </Popconfirm>:''
 
- 	                }*/}
 
-               <TabPane tab="操作" key="2">
 
-                 <AutoComplete
 
-                   className="certain-category-search"
 
-                   dropdownClassName="certain-category-search-dropdown"
 
-                   dropdownMatchSelectWidth={false}
 
-                   style={{ width: "120px" }}
 
-                   dataSource={options}
 
-                   placeholder="输入转交人姓名"
 
-                   value={this.state.auto}
 
-                   onChange={this.httpChange}
 
-                   filterOption={true}
 
-                   onBlur={this.blurChange}
 
-                   onSelect={this.selectAuto}
 
-                   disabled={!hasSelected}
 
-                 >
 
-                   <Input />
 
-                 </AutoComplete>
 
-                 <Button
 
-                   type="primary"
 
-                   // onClick={this.changeAssigner}
 
-                   onClick={(e) => {
 
-                     e.stopPropagation();
 
-                     this.showConfirm();
 
-                   }}
 
-                   disabled={!hasSelected}
 
-                   style={{ marginRight: 10 }}
 
-                 >
 
-                   转交
 
-                 </Button>
 
-                 <Button
 
-                   type="primary"
 
-                   style={{
 
-                     float: "right",
 
-                     marginTop: 10,
 
-                     marginLeft: 10,
 
-                     marginRight: 10,
 
-                   }}
 
-                   onClick={this.addClick}
 
-                 >
 
-                   新增客户
 
-                   <Icon type="plus" />
 
-                 </Button>
 
-                 {/*<Button type="default" className="addButton" onClick={this.exportExec}>导出excel<Icon type="plus" /></Button>*/}
 
-                 {/* <div className="clearfix" style={{ marginTop: "5px" }}> */}
 
-                 <Button
 
-                   onClick={(e) => {
 
-                     e.stopPropagation(), this.rankO(0);
 
-                   }}
 
-                   type="primary"
 
-                   style={{ marginRight: "10px" }}
 
-                   disabled={!hasSelected}
 
-                 >
 
-                   一般客户
 
-                 </Button>
 
-                 <Button
 
-                   onClick={(e) => {
 
-                     e.stopPropagation(), this.rankO(1);
 
-                   }}
 
-                   type="primary"
 
-                   style={{ marginRight: "10px" }}
 
-                   disabled={!hasSelected}
 
-                 >
 
-                   意向客户
 
-                 </Button>
 
-                 <Button
 
-                   onClick={(e) => {
 
-                     e.stopPropagation(), this.rankO(2);
 
-                   }}
 
-                   type="primary"
 
-                   disabled={!hasSelected}
 
-                 >
 
-                   重点客户
 
-                 </Button>
 
-                 <Button
 
-                   style={{ marginLeft: 10 }}
 
-                   onClick={(e) => {
 
-                     e.stopPropagation(),
 
-                       this.zhuanjiaoDetail(this.state.selectedRows[0]);
 
-                   }}
 
-                   type="primary"
 
-                   disabled={!hasSelected || this.state.selectedRows.length > 1}
 
-                 >
 
-                   客户日志
 
-                 </Button>
 
-                 <Button
 
-                   style={{ marginLeft: 10 }}
 
-                   onClick={(e) => {
 
-                     e.stopPropagation(), this.showConfirms(this.release);
 
-                   }}
 
-                   type="primary"
 
-                   disabled={!hasSelected}
 
-                 >
 
-                   移除客户
 
-                 </Button>
 
-                 <EnterpriseNameChange
 
-                   type="journal"
 
-                   disabled={
 
-                     !(hasSelected && this.state.selectedRows.length === 1)
 
-                   }
 
-                   style={{ marginLeft: 10 }}
 
-                   enterpriseId={
 
-                     this.state.selectedRows[0] && this.state.selectedRows[0].id
 
-                   }
 
-                 />
 
-               </TabPane>
 
-               <TabPane tab="更改表格显示数据" key="3">
 
-                 <div style={{ marginLeft: 10 }}>
 
-                   <ChooseList
 
-                     columns={this.state.columns}
 
-                     changeFn={this.changeList}
 
-                     changeList={this.state.changeList}
 
-                     top={55}
 
-                     margin={11}
 
-                   />
 
-                 </div>
 
-               </TabPane>
 
-             </Tabs>
 
-           </div>
 
-           <div className="patent-table">
 
-             <Spin spinning={this.state.loading}>
 
-               <Table
 
-                 size="middle"
 
-                 className={"intentionCustomerTable"}
 
-                 columns={
 
-                   this.state.changeList
 
-                     ? this.state.changeList
 
-                     : this.state.columns
 
-                 }
 
-                 dataSource={this.state.dataSource}
 
-                 rowSelection={rowSelection}
 
-                 pagination={this.state.pagination}
 
-                 onRowDoubleClick={this.tableRowClick}
 
-               />
 
-             </Spin>
 
-           </div>
 
-           <AddIntention
 
-             api={this.state.detailApi}
 
-             showDesc={this.state.showDesc}
 
-             closeDesc={this.closeDesc}
 
-           />
 
-           <FollowDetail
 
-             categoryArr={this.state.categoryArr}
 
-             followData={this.state.followData}
 
-             visitModul={this.state.visitModul}
 
-             closeDesc={this.closeDesc}
 
-           />
 
-           <IntentionDetail
 
-             tabsKey={this.state.tabsKey}
 
-             categoryArr={this.state.categoryArr}
 
-             detailApi={this.props.detailApi}
 
-             IntentionData={this.state.RowData}
 
-             modalVisible={this.state.modalVisible}
 
-             name={this.state.modalName}
 
-             closeDesc={this.closeDesc}
 
-             basicState={this.state.basicState}
 
-             contactState={this.state.contactState}
 
-           />
 
-           {this.state.zhuanjiaoVisible ? (
 
-             <ZhuanjiaoDetail
 
-               cancel={this.zhuanjiaoDetailCancel}
 
-               visible={this.state.zhuanjiaoVisible}
 
-               id={this.state.zhuanjiaoId}
 
-             />
 
-           ) : (
 
-             ""
 
-           )}
 
-           {this.state.informationTransferVisible && (
 
-             <Modal
 
-               visible={this.state.informationTransferVisible}
 
-               title="提醒"
 
-               onCancel={() => {
 
-                 this.setState({
 
-                   informationTransferVisible: false,
 
-                   selList: [],
 
-                 });
 
-               }}
 
-               footer={[
 
-                 <Button
 
-                   key="1"
 
-                   size="large"
 
-                   type={"primary"}
 
-                   onClick={() => {
 
-                     this.changeAssigner(1);
 
-                   }}
 
-                 >
 
-                   需要
 
-                 </Button>,
 
-                 <Button
 
-                   key="2"
 
-                   size="large"
 
-                   type={"danger"}
 
-                   onClick={() => {
 
-                     this.changeAssigner(0);
 
-                   }}
 
-                 >
 
-                   不需要
 
-                 </Button>,
 
-               ]}
 
-             >
 
-               <div style={{ padding: "0px 40px 20px" }}>
 
-                 请确定,是否一并转交以下信息,如单个资料无法转交成功,则去掉对应“勾选”项,转交单一信息!
 
-               </div>
 
-               <div style={{ width: "50%", margin: "0 auto" }}>
 
-                 <Checkbox.Group onChange={e => { this.setState({ selList: e }); }}>
 
-                   <Checkbox value={1}>1.需要转交该客户资料</Checkbox>
 
-                   <br />
 
-                   <Checkbox value={2}>2.需要转交该客户名下的订单</Checkbox>
 
-                 </Checkbox.Group>
 
-               </div>
 
-             </Modal>
 
-           )}
 
-           <textarea id="copyText" style={{ opacity: 0 }} />
 
-         </div>
 
-       );
 
-     },
 
-   })
 
- );
 
- export default IntentionCustomer;
 
 
  |