| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286 | 
							- import React,{ Component } from 'react';
 
- import {Select} from "antd";
 
- import { provinceList} from '@/NewDicProvinceList';
 
- import './index.less';
 
- import TabelContent from '../../../../common/tabelContent'
 
- import DetailedList from './detailedList';
 
- import moment from "moment";
 
- class InterviewStatistics extends Component{
 
-     constructor(props) {
 
-         super(props);
 
-         this.state={
 
-             columns: [
 
-                 {
 
-                     title: "序号",
 
-                     dataIndex: "key",
 
-                     key: "key",
 
-                 },
 
-                 {
 
-                     title: "省份",
 
-                     dataIndex: "name",
 
-                     key: "name",
 
-                 },
 
-                 {
 
-                     title: "老客户面谈数",
 
-                     dataIndex: "useInterview",
 
-                     key: "useInterview",
 
-                     className: 'projectTable',
 
-                     onCellClick: (record, event) => {
 
-                         event.stopPropagation();
 
-                         record.type = 1;
 
-                         this.setState({
 
-                             visible: true,
 
-                             recordInfor: record,
 
-                         })
 
-                     },
 
-                 },
 
-                 {
 
-                     title: "老客户签单数/金额",
 
-                     dataIndex: "useQuantity",
 
-                     key: "useQuantity",
 
-                     render:(text, record)=>(
 
-                         text + '/' + record.useTotal
 
-                     ),
 
-                     className: 'projectTable',
 
-                     onCellClick: (record, event) => {
 
-                         event.stopPropagation();
 
-                         record.type = 1;
 
-                         this.setState({
 
-                             visible: true,
 
-                             recordInfor: record,
 
-                         })
 
-                     },
 
-                 },
 
-                 {
 
-                     title: "老客户面谈率",
 
-                     dataIndex: "useRatio",
 
-                     key: "useRatio",
 
-                     render:(text)=>(
 
-                         parseFloat((parseFloat(text) * 100).toFixed(2)) + '%'
 
-                     ),
 
-                     className: 'projectTable',
 
-                     onCellClick: (record, event) => {
 
-                         event.stopPropagation();
 
-                         record.type = 1;
 
-                         this.setState({
 
-                             visible: true,
 
-                             recordInfor: record,
 
-                         })
 
-                     },
 
-                 },
 
-                 {
 
-                     title: "新客户面谈数",
 
-                     dataIndex: "newInterview",
 
-                     key: "newInterview",
 
-                     className: 'projectTable',
 
-                     onCellClick: (record, event) => {
 
-                         event.stopPropagation();
 
-                         record.type = 2;
 
-                         this.setState({
 
-                             visible: true,
 
-                             recordInfor: record,
 
-                         })
 
-                     },
 
-                 },
 
-                 {
 
-                     title: "新客户签单数/金额",
 
-                     dataIndex: "newQuantity",
 
-                     key: "newQuantity",
 
-                     render:(text, record)=>(
 
-                         text + '/' + record.newTotal
 
-                     ),
 
-                     className: 'projectTable',
 
-                     onCellClick: (record, event) => {
 
-                         event.stopPropagation();
 
-                         record.type = 2;
 
-                         this.setState({
 
-                             visible: true,
 
-                             recordInfor: record,
 
-                         })
 
-                     },
 
-                 },
 
-                 {
 
-                     title: "新客户面谈率",
 
-                     dataIndex: "newRatio",
 
-                     key: "newRatio",
 
-                     render:(text)=>(
 
-                         parseFloat((parseFloat(text) * 100).toFixed(2)) + '%'
 
-                     ),
 
-                     className: 'projectTable',
 
-                     onCellClick: (record, event) => {
 
-                         event.stopPropagation();
 
-                         record.type = 2;
 
-                         this.setState({
 
-                             visible: true,
 
-                             recordInfor: record,
 
-                         })
 
-                     },
 
-                 },
 
-                 {
 
-                     title: "总面数",
 
-                     dataIndex: "totalInterview",
 
-                     key: "totalInterview",
 
-                     className: 'projectTable',
 
-                     onCellClick: (record, event) => {
 
-                         event.stopPropagation();
 
-                         record.type = 0;
 
-                         this.setState({
 
-                             visible: true,
 
-                             recordInfor: record,
 
-                         })
 
-                     },
 
-                 },
 
-                 {
 
-                     title: "总签单数/金额",
 
-                     dataIndex: "totalQuantity",
 
-                     key: "totalQuantity",
 
-                     render:(text, record)=>(
 
-                         text + '/' + record.total
 
-                     ),
 
-                     className: 'projectTable',
 
-                     onCellClick: (record, event) => {
 
-                         event.stopPropagation();
 
-                         record.type = 0;
 
-                         this.setState({
 
-                             visible: true,
 
-                             recordInfor: record,
 
-                         })
 
-                     },
 
-                 },
 
-                 {
 
-                     title: "总面谈率",
 
-                     dataIndex: "totalRatio",
 
-                     key: "totalRatio",
 
-                     render:(text)=>(
 
-                         parseFloat((parseFloat(text) * 100).toFixed(2)) + '%'
 
-                     ),
 
-                     className: 'projectTable',
 
-                     onCellClick: (record, event) => {
 
-                         event.stopPropagation();
 
-                         record.type = 0;
 
-                         this.setState({
 
-                             visible: true,
 
-                             recordInfor: record,
 
-                         })
 
-                     },
 
-                 },
 
-             ],
 
-             searchConfig:{}
 
-         }
 
-     }
 
-     searchList(){
 
-         let arr = [
 
-             {
 
-                 type:'departmentSelect',
 
-                 dataKey:'depId',
 
-                 placeholder:'请选择部门'
 
-             },
 
-             {
 
-                 type:'select',
 
-                 dataKey:'province',
 
-                 placeholder:'请选择省份',
 
-                 selectOptionList:()=>{
 
-                     let Province = [];
 
-                     provinceList.map(function(item) {
 
-                         let id = String(item.id)
 
-                         Province.push(
 
-                             <Select.Option value={id} key={item.name}>{item.name}</Select.Option>
 
-                         )
 
-                     });
 
-                     return Province
 
-                 },
 
-             },
 
-             //0 总数量 1总金额 2总面谈
 
-             {
 
-                 type:'select',
 
-                 dataKey:'sort',
 
-                 placeholder:'请选择排序',
 
-                 selectList:[
 
-                     {
 
-                         value:'0',
 
-                         label:'按总数量排序'
 
-                     },
 
-                     {
 
-                         value:'1',
 
-                         label:'按总金额排序'
 
-                     },
 
-                     {
 
-                         value:'2',
 
-                         label:'按总面谈排序'
 
-                     },
 
-                 ]
 
-             },
 
-             {
 
-                 type:'times',
 
-                 title:'公出时间',
 
-                 dataKey:'date',
 
-                 format: 'YYYY/MM',
 
-             },
 
-         ]
 
-         return arr;
 
-     }
 
-     render() {
 
-         return (
 
-             <div className="user-content interviewStatistics">
 
-                 <div className="content-title">
 
-                     <span>
 
-                         公出面谈表<span style={{fontSize:'10px',color:'#0f2be5',marginLeft:'10px'}}>注:通过公出打卡,同一家公司,多次面谈数只计算1次</span>
 
-                     </span>
 
-                 </div>
 
-                 <TabelContent
 
-                     searchList={this.searchList()}
 
-                     columns={this.state.columns}
 
-                     searchConfig={{
 
-                         date:moment().subtract(1, 'months').format("YYYY-MM")
 
-                     }}
 
-                     searchOperation={(value)=>{
 
-                         for(let i of Object.keys(value)){
 
-                             if(i === 'sort' || i === 'pageNo' || i === 'pageSize'){
 
-                                 delete value[i]
 
-                             }
 
-                         }
 
-                         this.setState({searchConfig:value})}
 
-                     }
 
-                     tabelApi={'/api/admin/followStatisticsList'}
 
-                     exportApi={'/api/admin/followStatisticsListExport'}
 
-                     onRowClick={()=>{}}
 
-                     exportExecProcessing={(data)=>{
 
-                         if(data.province){
 
-                             let arr = provinceList.filter(v=>String(v.id) === String(data.province))
 
-                             data.provinceName = arr[0].name
 
-                         }
 
-                         return data;
 
-                     }}
 
-                     dataProcessing={(data)=>{
 
-                         let theArr = [];
 
-                         for (let i = 0; i < data.data.length; i++) {
 
-                             let thisdata = data.data[i];
 
-                             thisdata.key=i + 1;
 
-                             theArr.push(thisdata);
 
-                         }
 
-                         return theArr;
 
-                     }}
 
-                 />
 
-                 {this.state.visible ? <DetailedList
 
-                     searchConfig={JSON.parse(JSON.stringify(this.state.searchConfig))}
 
-                     visible={this.state.visible}
 
-                     recordInfor={this.state.recordInfor}
 
-                     onCancel={()=>{
 
-                         this.setState({
 
-                             visible:false,
 
-                             recordInfor:{}
 
-                         })
 
-                     }}/> : null}
 
-             </div>
 
-         )
 
-     }
 
- }
 
- export default InterviewStatistics;
 
 
  |