mentoswzq 5 years ago
parent
commit
899b345c2e

+ 0 - 1
js/component/manageCenter/customer/NEW/crm/crm.jsx

@@ -1358,7 +1358,6 @@ const IntentionCustomer = Form.create()(React.createClass({
         <div className="user-search">
         <Tabs
           defaultActiveKey="1"
-          onChange={this.callback}
           className="test">
              <TabPane tab="搜索" key="1">
           <Input

+ 1 - 1
js/component/manageCenter/customer/NEW/intentionCustomer/intentionCustomer.jsx

@@ -6,7 +6,7 @@ import moment from 'moment';
 import { citySelect, provinceList } from '@/NewDicProvinceList';
 import AddIntention from './addIntention.jsx';
 import { socialAttribute, industry, auditStatusL, lvl, currentMember } from '@/dataDic.js';
-import ZhuanjiaoDetail from "@/ZhuanjiaoDetail.jsx";
+import ZhuanjiaoDetail from "@/zhuanjiaoDetail.jsx";
 import {
   getSocialAttribute,
   beforeUploadFile,

+ 360 - 308
js/component/manageCenter/customer/NEW/query/queryCutomer.jsx

@@ -5,313 +5,356 @@ import $ from 'jquery/src/ajax';
 import {ShowModal} from '../../../../tools.js'
 import { citySelect, provinceList } from '@/NewDicProvinceList';
 import ShowModalDiv from "@/showModal.jsx";
+import ZhuanjiaoDetail from "@/zhuanjiaoDetail.jsx";
 import Detaile from './detail.jsx';
 
 const {TabPane} =Tabs
 const QueryCustomer = React.createClass({
-	loadData(pageNo, apiUrl) {
-		this.setState({
-			visitModul:false,
-			loading: true,
-			ispage:pageNo,
-			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,
-				name: this.state.nameSearch,
-				departmentId: this.state.departmenttSearch,
-				aid: this.state.theTypes,
-			},
-			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);
-						theArr.push({
-							key: i,
-							id: thisdata.uid,
-							name: thisdata.name,
-							adminName: thisdata.adminName,
-							informationMaintainer:thisdata.informationMaintainer,
-							createTime: thisdata.createTime&&thisdata.createTime.split(' ')[0],
-							locationProvince: diqu
-						});
-					};
-					this.state.pagination.current = data.data.pageNo;
-				    this.state.pagination.total = data.data.totalCount;
-				};
-				if(data.data&&data.data.list&&!data.data.list.length){
-					this.state.pagination.current=0
-					this.state.pagination.total=0
-				}
-				this.setState({
-					dataSource: theArr,
-					pagination: this.state.pagination,
-					selectedRowKeys:[]
-				});
-			}.bind(this),
-		}).always(function() {
-			this.setState({
-				loading: false
-			});
-		}.bind(this));
-	},
-	//部门
-	departmentList() {
-		this.setState({
-			loading: true
-		});
-		$.ajax({
-			method: "get",
-			dataType: "json",
-			crossDomain: false,
-			url: globalConfig.context + "/api/admin/organization/selectSuperId",
-			data: {
-
-			},
-			success: function(data) {
-				let thedata = data.data;
-				let theArr = [];
-				if(!thedata) {
-					if(data.error && data.error.length) {
-						message.warning(data.error[0].message);
-					};
-					thedata = {};
-				} else {
-					thedata.map(function(item, index) {
-						theArr.push({
-							key: index,
-							name: item.name,
-							id: item.id,
-						})
-					})
-				}
-				this.setState({
-					departmentArr: theArr,
-				})
-			}.bind(this),
-		}).always(function() {
-			this.setState({
-				loading: false
-			});
-		}.bind(this));
-	},
-	getInitialState(){
-		return {
-			addressSearch: [],
-			dataSource:[],
-			loading:false,
-			departmentArr: [],
-			selectedRowKeys: [],
-			selectedRowKey: [],
-			selectedRows: [],
-			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',
-				}, {
-					title: '地区',
-					dataIndex: 'locationProvince',
-					key: 'locationProvince',
-				},{
-					title: '创建时间',
-					dataIndex: 'createTime',
-					key: 'createTime',
-				}, 
-				{
-					title: '客户所属人',
-					dataIndex: 'adminName',
-					key: 'adminName',
-				}, 
-				{
-					title: '资料所属人',
-					dataIndex: 'informationMaintainer',
-					key: 'informationMaintainer',
-				},
-				{
-					title: '操作',
-					dataIndex: 'abc',
-					key: 'abc',
-					render: (text, record, index) => {
-						return <div>
-                            <Button onClick={(e) =>{ e.stopPropagation(), this.seeDetail(record)}} type="primary">查看详情</Button>                            							    
-                        </div>
-					}
-				}
-			],
-		}
-	},
-	seeDetail(record){
-		this.setState({
-			data:record,
-			visitModul:true
-		})
-	},
-	closeDesc(e) {
-		this.state.visitModul = e;
-	},
-	search() {
-		this.loadData();
-	},
-	reset() {
-		this.state.nameSearch='';
-		this.state.departmenttSearch=undefined;
-		this.state.theTypes='';
-		this.state.auto='';
-		this.state.provinceSearch=undefined;
-		this.state.addressSearch=[];
-		this.loadData()
-	},
-	componentWillReceiveProps(nextProps) {
-		
-		if(nextProps.ApiUrl!=this.props.ApiUrl) {
-			this.state.nameSearch='';
-			this.state.provinceSearch=undefined;
-			this.state.addressSearch=[];
-			this.loadData(null,nextProps.ApiUrl);
-		};
-	},
-	
-	componentWillMount() {
-		this.departmentList();
-		//城市
-		let Province = [];
-		provinceList.map(function(item) {
-			var id = String(item.id)
-			Province.push(
-				<Select.Option value={id} key={item.name}>{item.name}</Select.Option>
-			)
-		});
-		this.state.Provinces = Province;
-		this.loadData();
-	},
-	//指定转交人自动补全
-	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
+  loadData(pageNo, apiUrl) {
+    this.setState({
+      visitModul: false,
+      loading: true,
+      ispage: pageNo,
+      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,
+        name: this.state.nameSearch,
+        departmentId: this.state.departmenttSearch,
+        aid: this.state.theTypes,
+      },
+      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);
+            theArr.push({
+              key: i,
+              id: thisdata.uid,
+              name: thisdata.name,
+              adminName: thisdata.adminName,
+              informationMaintainer: thisdata.informationMaintainer,
+              createTime:
+                thisdata.createTime && thisdata.createTime.split(" ")[0],
+              locationProvince: diqu,
+            });
+          }
+          this.state.pagination.current = data.data.pageNo;
+          this.state.pagination.total = data.data.totalCount;
+        }
+        if (data.data && data.data.list && !data.data.list.length) {
+          this.state.pagination.current = 0;
+          this.state.pagination.total = 0;
+        }
+        this.setState({
+          dataSource: theArr,
+          pagination: this.state.pagination,
+          selectedRowKeys: [],
+        });
+      }.bind(this),
+    }).always(
+      function () {
+        this.setState({
+          loading: false,
+        });
+      }.bind(this)
+    );
+  },
+  //部门
+  departmentList() {
+    this.setState({
+      loading: true,
+    });
+    $.ajax({
+      method: "get",
+      dataType: "json",
+      crossDomain: false,
+      url: globalConfig.context + "/api/admin/organization/selectSuperId",
+      data: {},
+      success: function (data) {
+        let thedata = data.data;
+        let theArr = [];
+        if (!thedata) {
+          if (data.error && data.error.length) {
+            message.warning(data.error[0].message);
+          }
+          thedata = {};
+        } else {
+          thedata.map(function (item, index) {
+            theArr.push({
+              key: index,
+              name: item.name,
+              id: item.id,
             });
-        }.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
-		})
-	},
-	render(){
-		let departmentArr = this.state.departmentArr || [];
-		const intentionState=this.props.intentionState;
-		const FormItem = Form.Item;
-		const rowSelection = {
-			selectedRowKeys: this.state.selectedRowKeys,
-			onChange: (selectedRowKeys, selectedRows) => {
-				this.setState({
-					modalVisible:false,
-					selectedRows: selectedRows.slice(-1),
-					selectedRowKeys: selectedRowKeys.slice(-1)
-				});
-			},
-			onSelect: (recordt, selected, selectedRows) => {
-				this.setState({
-					modalVisible:false,
-					recordt: recordt.id
-				})
-			},
-		};
-		const dataSources=this.state.customerArr || [];
-		const options = dataSources.map((group) =>
-				      <Select.Option key={group.id} value={group.name}>{group.name}</Select.Option>
-				     )
-		const hasSelected = this.state.selectedRowKeys.length > 0;
-		return (
+          });
+        }
+        this.setState({
+          departmentArr: theArr,
+        });
+      }.bind(this),
+    }).always(
+      function () {
+        this.setState({
+          loading: false,
+        });
+      }.bind(this)
+    );
+  },
+  getInitialState() {
+    return {
+      addressSearch: [],
+      dataSource: [],
+      zhuanjiaoVisible: false,
+      zhuanjiaoData: [],
+      loading: false,
+      departmentArr: [],
+      selectedRowKeys: [],
+      selectedRowKey: [],
+      selectedRows: [],
+      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",
+        },
+        {
+          title: "地区",
+          dataIndex: "locationProvince",
+          key: "locationProvince",
+        },
+        {
+          title: "创建时间",
+          dataIndex: "createTime",
+          key: "createTime",
+        },
+        {
+          title: "客户所属人",
+          dataIndex: "adminName",
+          key: "adminName",
+        },
+        {
+          title: "资料所属人",
+          dataIndex: "informationMaintainer",
+          key: "informationMaintainer",
+        },
+        {
+          title: "操作",
+          dataIndex: "abc",
+          key: "abc",
+          render: (text, record, index) => {
+            return (
+              <div>
+                <Button
+                  onClick={(e) => {
+                    e.stopPropagation(), this.seeDetail(record);
+                  }}
+				  type="primary"
+				  style={{ marginRight: 10 }}
+                >
+                  查看详情
+                </Button>
+                <Button
+                  onClick={(e) => {
+                    e.stopPropagation(), this.zhuanjiaoLog(record);
+                  }}
+                  type="primary"
+                >
+                  查看转交记录
+                </Button>
+              </div>
+            );
+          },
+        },
+      ],
+    };
+  },
+  zhuanjiaoDetailCancel() {
+    this.setState({
+      zhuanjiaoVisible: false,
+    });
+  },
+  zhuanjiaoLog(record) {
+    this.setState({
+      zhuanjiaoVisible: true,
+      zhuanjiaoId: record.id,
+    });
+  },
+  seeDetail(record) {
+    this.setState({
+      data: record,
+      visitModul: true,
+    });
+  },
+  closeDesc(e) {
+    this.state.visitModul = e;
+  },
+  search() {
+    this.loadData();
+  },
+  reset() {
+    this.state.nameSearch = "";
+    this.state.departmenttSearch = undefined;
+    this.state.theTypes = "";
+    this.state.auto = "";
+    this.state.provinceSearch = undefined;
+    this.state.addressSearch = [];
+    this.loadData();
+  },
+  componentWillReceiveProps(nextProps) {
+    if (nextProps.ApiUrl != this.props.ApiUrl) {
+      this.state.nameSearch = "";
+      this.state.provinceSearch = undefined;
+      this.state.addressSearch = [];
+      this.loadData(null, nextProps.ApiUrl);
+    }
+  },
+
+  componentWillMount() {
+    this.departmentList();
+    //城市
+    let Province = [];
+    provinceList.map(function (item) {
+      var id = String(item.id);
+      Province.push(
+        <Select.Option value={id} key={item.name}>
+          {item.name}
+        </Select.Option>
+      );
+    });
+    this.state.Provinces = Province;
+    this.loadData();
+  },
+  //指定转交人自动补全
+  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,
+    });
+  },
+  render() {
+    let departmentArr = this.state.departmentArr || [];
+    const intentionState = this.props.intentionState;
+    const FormItem = Form.Item;
+    const rowSelection = {
+      selectedRowKeys: this.state.selectedRowKeys,
+      onChange: (selectedRowKeys, selectedRows) => {
+        this.setState({
+          modalVisible: false,
+          selectedRows: selectedRows.slice(-1),
+          selectedRowKeys: selectedRowKeys.slice(-1),
+        });
+      },
+      onSelect: (recordt, selected, selectedRows) => {
+        this.setState({
+          modalVisible: false,
+          recordt: recordt.id,
+        });
+      },
+    };
+    const dataSources = this.state.customerArr || [];
+    const options = dataSources.map((group) => (
+      <Select.Option key={group.id} value={group.name}>
+        {group.name}
+      </Select.Option>
+    ));
+    const hasSelected = this.state.selectedRowKeys.length > 0;
+    return (
       <div className="user-content">
         <ShowModalDiv ShowModal={this.state.showModal} />
         <div className="content-title">
           <span>{!intentionState ? "单位客户查询" : "个人客户查询"}</span>
         </div>
-		<Tabs
-          defaultActiveKey="1"
-          onChange={this.callback}
-          className="test">
-             <TabPane tab="搜索" key="1">
-        <div className="user-search">
-          <Input
-            placeholder="请输入精确客户全称"
-            value={this.state.nameSearch}
-            onChange={e => {
-              this.setState({ nameSearch: e.target.value });
-            }}
-          />
-          {/* <Select placeholder="选择部门"
+        <Tabs defaultActiveKey="1" onChange={this.callback} className="test">
+          <TabPane tab="搜索" key="1">
+            <div className="user-search">
+              <Input
+                placeholder="请输入精确客户全称"
+                value={this.state.nameSearch}
+                onChange={(e) => {
+                  this.setState({ nameSearch: e.target.value });
+                }}
+              />
+              {/* <Select placeholder="选择部门"
                             style={{ width: 150 ,marginRight:'10px',marginLeft:'10px'}}
                             value={this.state.departmenttSearch}
                             onChange={(e) => { this.setState({ departmenttSearch: e }) }}>
@@ -321,7 +364,7 @@ const QueryCustomer = React.createClass({
                                 })
                             }
                     </Select>   */}
-          {/* <AutoComplete
+              {/* <AutoComplete
 				        className="certain-category-search"
 				        dropdownClassName="certain-category-search-dropdown"
 				        dropdownMatchSelectWidth={false}
@@ -337,14 +380,14 @@ const QueryCustomer = React.createClass({
 				    >
 				        <Input />
 				    </AutoComplete>   */}
-          <Button type="primary" onClick={this.search}>
-            搜索
-          </Button>
-          <Button onClick={this.reset}>重置</Button>
-        </div>
-        </TabPane>
-		</Tabs>
-		<div className="patent-table">
+              <Button type="primary" onClick={this.search}>
+                搜索
+              </Button>
+              <Button onClick={this.reset}>重置</Button>
+            </div>
+          </TabPane>
+        </Tabs>
+        <div className="patent-table">
           <Spin spinning={this.state.loading}>
             <Table
               columns={this.state.columns}
@@ -360,8 +403,17 @@ const QueryCustomer = React.createClass({
           detailApi={this.props.detailApi}
           closeDesc={this.closeDesc}
         />
+        {this.state.zhuanjiaoVisible ? (
+          <ZhuanjiaoDetail
+            cancel={this.zhuanjiaoDetailCancel}
+            visible={this.state.zhuanjiaoVisible}
+            id={this.state.zhuanjiaoId}
+          />
+        ) : (
+          ""
+        )}
       </div>
     );
-	}
-})
+  },
+});
 export default QueryCustomer;

+ 327 - 306
js/component/manageCenter/customer/NEW/signCustomer/intentionDetail/detail/business.jsx

@@ -17,311 +17,332 @@ import {getfllowSituation,getcustomerStatue} from '@/tools.js';
 import BusinessDetail from './businessDetail.jsx';
 
 const Business = React.createClass({
-	getInitialState(){
-		return{
-			selectedRowKeys:[],
-			bVisible: false,
-			loading:false,
-			dataBusiness:[],
-			followData:{},
-			paginationt: {
-				defaultCurrent: 1,
-				defaultPageSize: 10,
-				showQuickJumper: true,
-				pageSize: 10,
-				onChange: function(page) {
-					this.BusinessList(page, false);
-				}.bind(this),
-				showTotal: function(total) {
-					return '共' + total + '条数据';
-				}
-			},
-			businessIntentionList: [{
-				title: '意向时间',
-				dataIndex: 'createTime',
-				key: 'createTime'
-			}, {
-				title: '客户名称',
-				dataIndex: 'identifyName',
-				key: 'identifyName'
-			}, {
-				title: '业务名',
-				dataIndex: 'businessName',
-				key: 'businessName'
-			}, {
-				title: '营销员',
-				dataIndex: 'adminName',
-				key: 'adminName'
-			}, {
-				title: '业务意向进度',
-				dataIndex: 'followSituation',
-				key: 'followSituation',
-				render: text => { return getfllowSituation(text) }
-			}, {
-				title: '客户状态',
-				dataIndex: 'customerStatus',
-				key: 'customerStatus',
-				render: text => { return getcustomerStatue(text) }
-			}, {
-				title: '操作',
-				dataIndex: 'ooo',
-				key: 'ooo',
-				render: (text, record) => { 
-					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="control">
-              <Button
-                onClick={e => {
-					e.stopPropagation()
-                  this.businessIntentionDetails(record);
-                }}
-              >
-                查看
-              </Button>
-              <AutoComplete
-                className="certain-category-search"
-                dropdownClassName="certain-category-search-dropdown"
-                dropdownMatchSelectWidth={false}
-                dropdownStyle={{ width: 120 }}
-                style={{
-                  width: "120px",
-                  marginLeft: 10,
-                  transition: "all .5s",
-                  display:
-                    record.followSituation == 5
-                      ? "inline-block"
-                      : "none"
-                }}
-                dataSource={options}
-                placeholder="输入转交人姓名"
-                onChange={this.httpChange}
-                filterOption={true}
-                onBlur={this.blurChange}
-                onSelect={this.selectAuto}
-              >
-                <Input />
-              </AutoComplete>
-              <Button
-                style={{ marginLeft: 10 }}
-                onClick={e => {
-                  this.changeBusiness(record);
-                }}
-                type={"primary"}
-                style={{
-                  marginLeft: 10,
-                  transition: "all .5s",
-                  display:
-                    record.followSituation == 5
-                      ? "inline-block"
-                      : "none"
-                }}
-              >
-                转交业务
-              </Button>
-            </div>
-          ); }
-			}],
-		}
-	},
-	//指定转交人自动补全
-	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
+  getInitialState() {
+    return {
+      selectedRowKeys: [],
+      bVisible: false,
+      loading: false,
+      dataBusiness: [],
+      followData: {},
+      paginationt: {
+        defaultCurrent: 1,
+        defaultPageSize: 10,
+        showQuickJumper: true,
+        pageSize: 10,
+        onChange: function (page) {
+          this.BusinessList(page, false);
+        }.bind(this),
+        showTotal: function (total) {
+          return "共" + total + "条数据";
+        },
+      },
+      businessIntentionList: [
+        {
+          title: "意向时间",
+          dataIndex: "createTime",
+          key: "createTime",
+        },
+        {
+          title: "客户名称",
+          dataIndex: "identifyName",
+          key: "identifyName",
+        },
+        {
+          title: "业务名",
+          dataIndex: "businessName",
+          key: "businessName",
+        },
+        {
+          title: "营销员",
+          dataIndex: "adminName",
+          key: "adminName",
+        },
+        {
+          title: "业务意向进度",
+          dataIndex: "followSituation",
+          key: "followSituation",
+          render: (text) => {
+            return getfllowSituation(text);
+          },
+        },
+        {
+          title: "客户状态",
+          dataIndex: "customerStatus",
+          key: "customerStatus",
+          render: (text) => {
+            return getcustomerStatue(text);
+          },
+        },
+        {
+          title: "操作",
+          dataIndex: "ooo",
+          key: "ooo",
+          render: (text, record) => {
+            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="control">
+                <Button
+                  onClick={(e) => {
+                    e.stopPropagation();
+                    this.businessIntentionDetails(record);
+                  }}
+                >
+                  查看
+                </Button>
+                <AutoComplete
+                  className="certain-category-search"
+                  dropdownClassName="certain-category-search-dropdown"
+                  dropdownMatchSelectWidth={false}
+                  dropdownStyle={{ width: 120 }}
+                  style={{
+                    width: "120px",
+                    marginLeft: 10,
+                    transition: "all .5s",
+                    display:
+                      record.followSituation == 5 ? "inline-block" : "none",
+                  }}
+                  dataSource={options}
+                  placeholder="输入转交人姓名"
+                  onChange={this.httpChange}
+                  filterOption={true}
+                  onBlur={this.blurChange}
+                  onSelect={this.selectAuto}
+                >
+                  <Input />
+                </AutoComplete>
+                <Button
+                  style={{ marginLeft: 10 }}
+                  onClick={(e) => {
+                    //   this.changeBusiness(record);
+                    e.stopPropagation();
+                    this.showConfirm(this.changeBusiness, record);
+                  }}
+                  type={"primary"}
+                  style={{
+                    marginLeft: 10,
+                    transition: "all .5s",
+                    display:
+                      record.followSituation == 5 ? "inline-block" : "none",
+                  }}
+                >
+                  转交业务
+                </Button>
+              </div>
+            );
+          },
+        },
+      ],
+    };
+  },
+  showConfirm(fn, record) {
+    Modal.confirm({
+      title: "提示",
+      content: <span style={{ color: "red" }}>确定转交此项目?</span>,
+      onOk() {
+        fn(record);
+      },
+      onCancel() {},
+    });
+  },
+  //指定转交人自动补全
+  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,
+    });
+  },
+  businessIntentionDetails(record) {
+    this.setState({
+      followData: record,
+      businessModul: true,
+    });
+  },
+  businessIntentionCancel() {
+    this.setState({
+      businessModul: false,
+    });
+  },
+  //业务意向
+  BusinessList(pageNo) {
+    this.setState({
+      loading: true,
+    });
+    $.ajax({
+      method: "post",
+      dataType: "json",
+      crossDomain: false,
+      url: globalConfig.context + "/api/admin/customer/listBusiness",
+      data: {
+        pageNo: pageNo || 1,
+        pageSize: this.state.paginationt.pageSize,
+        uid: this.props.data.id,
+      },
+      success: function (data) {
+        let theArr = [];
+        if (data.error.length || data.data.list == "") {
+          if (data.error && data.error.length) {
+            message.warning(data.error[0].message);
+          }
+        } else {
+          for (let i = 0; i < data.data.list.length; i++) {
+            let thisdata = data.data.list[i];
+            theArr.push({
+              key: i,
+              businessId: thisdata.businessId,
+              businessProjectId: thisdata.businessProjectId,
+              businessName: thisdata.businessName,
+              identifyName: thisdata.identifyName,
+              followSituation: thisdata.followSituation,
+              customerStatus: thisdata.customerStatus,
+              adminName: thisdata.adminName,
+              createTime: thisdata.createTime,
             });
-        }.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
-		})
-	},
-	businessIntentionDetails(record){
-		this.setState({
-			followData: record,
-			businessModul:true
-		})
-	},
-	businessIntentionCancel() {
-		this.setState({
-			businessModul:false
-		})
-	},
-	//业务意向
-	BusinessList(pageNo) {
-		this.setState({
-			loading: true
-		});
-		$.ajax({
-			method: "post",
-			dataType: "json",
-			crossDomain: false,
-			url: globalConfig.context + '/api/admin/customer/listBusiness',
-			data: {
-				pageNo: pageNo || 1,
-				pageSize: this.state.paginationt.pageSize,
-				uid: this.props.data.id
-			},
-			success: function(data) {
-				let theArr = [];
-				if(data.error.length || data.data.list == "") {
-					if(data.error && data.error.length) {
-						message.warning(data.error[0].message);
-					};
-				} else {
-					for(let i = 0; i < data.data.list.length; i++) {
-						let thisdata = data.data.list[i];
-						theArr.push({
-							key: i,
-							businessId: thisdata.businessId,
-							businessProjectId:thisdata.businessProjectId,
-							businessName: thisdata.businessName,
-							identifyName: thisdata.identifyName,
-							followSituation: thisdata.followSituation,
-							customerStatus: thisdata.customerStatus,
-							adminName: thisdata.adminName,
-							createTime: thisdata.createTime
-						});
-					};
-					this.state.paginationt.current = data.data.pageNo;
-					this.state.paginationt.total = data.data.totalCount;
-				};
-				if(data.data&&data.data.list&&!data.data.list.length){
-					this.state.paginationt.current=0
-					this.state.paginationt.total=0
-				}
-				this.setState({
-					dataBusiness: theArr,
-					paginationt: this.state.paginationt||[]
-				});
-				console.log(this.state.dataBusiness);
-				
-			}.bind(this),
-		}).always(function() {
-			this.setState({
-				loading: false
-			});
-			window.setTimeout(() => {
-			let dom = document.querySelectorAll(".control");
-			for (let i = 0; i < dom.length; i++) {
-			document.querySelectorAll(".control")[i].parentNode.style.width =
-				"300px";
-			}
-		}, 100);
-		}.bind(this));
-	},
-	componentWillMount(){
-		this.BusinessList();
-		console.log(this.state.dataBusiness);
-		
-	},
-	detailsModal(){
-		this.props.closeDetail(false, false)
-	},
-	componentWillReceiveProps(nextProps) {
-		if(nextProps.data.id&&nextProps.businessState){
-			this.BusinessList();
-		}
-		this.setState({
-			businessModul:false
-		})
-	},
-	changeBusiness(e) {
-		this.setState({
-			loading: true
-		});
-		$.ajax({
-			method: "post",
-			dataType: "json",
-			crossDomain: false,
-			url: globalConfig.context + '/api/admin/customer/privateBusinessTransfer',
-			data: {
-				inputId: this.state.theTypes,
-				pid: e.businessProjectId,
-				uid: this.props.data.id
-			},
-			success: function(data) {
-				if(data.error.length || data.data.list == "") {
-					if(data.error && data.error.length) {
-						message.warning(data.error[0].message);
-					};
-				} else {
-						message.success("转交成功!")
-						this.props.closeDesc(false,true)
-						this.props.closeDetail()
-						this.BusinessList()
-						this.setState({
-							selectedRowKeys: []
-						})
-				}
-			}.bind(this),
-		}).always(function() {
-			this.setState({
-				loading: false
-			});
-		}.bind(this));
-	},
-	onSelectChange(selectedRowKeys) {
-		this.setState({
-			selectedRowKeys,
-			businessModul: false
-		})
-	},
-	render(){
-		console.log("数组",this.state.dataBusiness);
-		
-		return (
+          }
+          this.state.paginationt.current = data.data.pageNo;
+          this.state.paginationt.total = data.data.totalCount;
+        }
+        if (data.data && data.data.list && !data.data.list.length) {
+          this.state.paginationt.current = 0;
+          this.state.paginationt.total = 0;
+        }
+        this.setState({
+          dataBusiness: theArr,
+          paginationt: this.state.paginationt || [],
+        });
+        console.log(this.state.dataBusiness);
+      }.bind(this),
+    }).always(
+      function () {
+        this.setState({
+          loading: false,
+        });
+        window.setTimeout(() => {
+          let dom = document.querySelectorAll(".control");
+          for (let i = 0; i < dom.length; i++) {
+            document.querySelectorAll(".control")[i].parentNode.style.width =
+              "300px";
+          }
+        }, 100);
+      }.bind(this)
+    );
+  },
+  componentWillMount() {
+    this.BusinessList();
+    console.log(this.state.dataBusiness);
+  },
+  detailsModal() {
+    this.props.closeDetail(false, false);
+  },
+  componentWillReceiveProps(nextProps) {
+    if (nextProps.data.id && nextProps.businessState) {
+      this.BusinessList();
+    }
+    this.setState({
+      businessModul: false,
+    });
+  },
+  changeBusiness(e) {
+    this.setState({
+      loading: true,
+    });
+    $.ajax({
+      method: "post",
+      dataType: "json",
+      crossDomain: false,
+      url: globalConfig.context + "/api/admin/customer/privateBusinessTransfer",
+      data: {
+        inputId: this.state.theTypes,
+        pid: e.businessProjectId,
+        uid: this.props.data.id,
+      },
+      success: function (data) {
+        if (data.error.length || data.data.list == "") {
+          if (data.error && data.error.length) {
+            message.warning(data.error[0].message);
+          }
+        } else {
+          message.success("转交成功!");
+          this.props.closeDesc(false, true);
+          this.props.closeDetail();
+          this.BusinessList();
+          this.setState({
+            selectedRowKeys: [],
+          });
+        }
+      }.bind(this),
+    }).always(
+      function () {
+        this.setState({
+          loading: false,
+        });
+      }.bind(this)
+    );
+  },
+  onSelectChange(selectedRowKeys) {
+    this.setState({
+      selectedRowKeys,
+      businessModul: false,
+    });
+  },
+  render() {
+    return (
       <div className="clearfix">
         <Spin spinning={this.state.loading}>
           <Table
@@ -338,7 +359,7 @@ const Business = React.createClass({
         />
       </div>
     );
-	}
-})
+  },
+});
 
 export default Business;

+ 1 - 1
js/component/manageCenter/customer/NEW/signCustomer/signCustomer.jsx

@@ -8,7 +8,7 @@ import { socialAttribute, industry, auditStatusL, lvl, currentMember } from '@/d
 import { getSocialAttribute, beforeUploadFile, ShowModal } from "@/tools.js";
 import FollowDetail from './followDetail.jsx'
 import ShowModalDiv from "@/showModal.jsx";
-import ZhuanjiaoDetail from "@/ZhuanjiaoDetail.jsx";
+import ZhuanjiaoDetail from "@/zhuanjiaoDetail.jsx";
 import IntentionDetail from './intentionDetail/intentionDetail.jsx'
 import './customer.less';
 

+ 80 - 75
js/component/manageCenter/order/orderNew/addService.jsx

@@ -176,7 +176,7 @@ const NewService = Form.create()(
         listFlag: true,
         mark: false,
         activeKey: "1",
-        typeChange: [],
+        typeChange: undefined,
         bussStats: false,
         checkedKeys: [],
         lookflowList: [],
@@ -1709,6 +1709,9 @@ const NewService = Form.create()(
         }.bind(this)
       );
     },
+    not() {
+
+    },
     //查看基本详情基本信息
     loaduser(record) {
       this.state.orderList = [];
@@ -2920,7 +2923,11 @@ const NewService = Form.create()(
 
     //变更申请
     changeApply() {
-      if (this.state.processStatus <= 4) {
+      if(this.state.typeChange == undefined || this.state.typeChange == "" && this.state.typeChange != 0) {
+        message.warning("请选择变更类型")
+        return false
+      }
+      if (this.state.processStatus != 5 && this.state.processStatus != 6) {
         message.warning("当前订单流程不能发起变更!");
         return false;
       }
@@ -3044,7 +3051,7 @@ const NewService = Form.create()(
         changeAmount: "0",
         applicant: undefined,
         depNameChange: undefined,
-        typeChange: []
+        typeChange: undefined
       });
     },
 
@@ -3419,7 +3426,14 @@ const NewService = Form.create()(
       }
     },
     submitChange() {
-      if (this.state.processStatus <= 4) {
+      if (
+        this.state.typeChange == undefined ||
+        (this.state.typeChange == "" && this.state.typeChange != 0)
+      ) {
+        message.warning("请选择变更类型");
+        return false;
+      }
+      if (this.state.processStatus != 5 && this.state.processStatus != 6) {
         message.warning("当前订单流程不能发起变更!");
         return false;
       }
@@ -3713,7 +3727,7 @@ const NewService = Form.create()(
               columns={columns}
               dataSource={data}
               pagination={false}
-              onRowDoubleClick={this.listFlag ? "" : this.editPro}
+              onRowDoubleClick={this.state.listFlag ? this.not : this.editPro}
             />
           );
         } else {
@@ -4922,7 +4936,7 @@ const NewService = Form.create()(
                                       changeAmount: "0",
                                       applicant: undefined,
                                       depNameChange: undefined,
-                                      typeChange: [],
+                                      typeChange: undefined,
                                       changeFlag: false,
                                     });
                                   }}
@@ -5036,7 +5050,7 @@ const NewService = Form.create()(
                                     expandedRowRender={expandedRowRender}
                                     pagination={this.state.pagination}
                                     onRowDoubleClick={
-                                      this.listFlag ? "" : this.editPro
+                                      this.state.listFlag ? this.not : this.editPro
                                     }
                                     bordered
                                     size="small"
@@ -5091,7 +5105,7 @@ const NewService = Form.create()(
                                       dataSource={this.state.cuiDataSource}
                                       scroll={{ x: "max-content", y: 0 }}
                                       onRowDoubleClick={
-                                        this.listCuiFlag ? "" : this.editCui
+                                        this.state.listCuiFlag ? this.not : this.editCui
                                       }
                                       bordered
                                       size="small"
@@ -5389,73 +5403,6 @@ const NewService = Form.create()(
                                 </span>
                               </FormItem>
                             </div>
-                            {/* 动态展示项目以及催款节点 */}
-                            <div>
-                              <div>
-                                <span
-                                  style={{
-                                    marginLeft: "50px",
-                                    fontSize: "20px",
-                                  }}
-                                >
-                                  项目业务
-                                </span>
-                              </div>
-                              <div
-                                className="patent-table"
-                                style={{ marginBottom: 10 }}
-                              >
-                                <Spin spinning={this.state.loading}>
-                                  <Table
-                                    columns={this.state.detailColumns}
-                                    dataSource={this.state.proDataSource}
-                                    expandedRowRender={expandedRowRenderDetail}
-                                    pagination={this.state.pagination}
-                                    // onRowClick={this.tableRowClick}
-                                    bordered
-                                    size="small"
-                                  />
-                                </Spin>
-                              </div>
-                              <div>
-                                <span
-                                  style={{
-                                    marginLeft: "50px",
-                                    fontSize: "20px",
-                                  }}
-                                >
-                                  催款节点
-                                </span>
-                                {/* <span
-                                style={{
-                                  display: "inline-block",
-                                  marginLeft: 10,
-                                  color: "red"
-                                }}
-                              >
-                                金额总计(万元): {this.state.totalCui}
-                              </span> */}
-                              </div>
-                              <div className="clearfix">
-                                <Spin spinning={this.state.loading}>
-                                  <Form layout="horizontal">
-                                    <Table
-                                      pagination={false}
-                                      columns={this.state.detailContactsLists}
-                                      dataSource={this.state.cuiDataSource}
-                                      scroll={{ x: "max-content", y: 0 }}
-                                      bordered
-                                      size="small"
-                                    />
-                                    <Col
-                                      span={24}
-                                      offset={9}
-                                      style={{ marginTop: "15px" }}
-                                    ></Col>
-                                  </Form>
-                                </Spin>
-                              </div>
-                            </div>
                             <div className="clearfix">
                               <FormItem
                                 style={{ height: "auto" }}
@@ -5564,6 +5511,64 @@ const NewService = Form.create()(
                                 );
                               })}
                             </ul>
+                            {/* 动态展示项目以及催款节点 */}
+                            <div>
+                              <div>
+                                <span
+                                  style={{
+                                    marginLeft: "50px",
+                                    fontSize: "20px",
+                                  }}
+                                >
+                                  项目业务
+                                </span>
+                              </div>
+                              <div
+                                className="patent-table"
+                                style={{ marginBottom: 10 }}
+                              >
+                                <Spin spinning={this.state.loading}>
+                                  <Table
+                                    columns={this.state.detailColumns}
+                                    dataSource={this.state.proDataSource}
+                                    expandedRowRender={expandedRowRenderDetail}
+                                    pagination={this.state.pagination}
+                                    // onRowClick={this.tableRowClick}
+                                    bordered
+                                    size="small"
+                                  />
+                                </Spin>
+                              </div>
+                              <div>
+                                <span
+                                  style={{
+                                    marginLeft: "50px",
+                                    fontSize: "20px",
+                                  }}
+                                >
+                                  催款节点
+                                </span>
+                              </div>
+                              <div className="clearfix">
+                                <Spin spinning={this.state.loading}>
+                                  <Form layout="horizontal">
+                                    <Table
+                                      pagination={false}
+                                      columns={this.state.detailContactsLists}
+                                      dataSource={this.state.cuiDataSource}
+                                      scroll={{ x: "max-content", y: 0 }}
+                                      bordered
+                                      size="small"
+                                    />
+                                    <Col
+                                      span={24}
+                                      offset={9}
+                                      style={{ marginTop: "15px" }}
+                                    ></Col>
+                                  </Form>
+                                </Spin>
+                              </div>
+                            </div>
                           </div>
                         </TabPane>
                       ) : (

+ 43 - 10
js/component/manageCenter/order/orderNew/arrearsList.jsx

@@ -13,11 +13,13 @@ import {
 } from "antd";
 import $ from "jquery/src/ajax";
 import moment from "moment";
+import ShowModalDiv from "@/showModal.jsx";
 import {
   getLiquidationStatus,
   getjiedian,
   getNewOrderStatus,
   getProjectStatus,
+  ShowModal,
 } from "@/tools.js";
 import "./customer.less";
 
@@ -43,9 +45,12 @@ const ArrearsList = Form.create()(
           depId: this.state.departmenttSearch, //订单部门
           starTime: this.state.releaseDate[0], //开始时间
           endTime: this.state.releaseDate[1], //结束时间
+          tStarTime: this.state.chufaDate[0], //开始时间
+          tEndTime: this.state.chufaDate[1], //结束时间
           adminName: this.state.adminName,
         },
         success: function (data) {
+          ShowModal(this);
           let theArr = [];
           if (data.error.length || data.data.list == "") {
             if (data.error && data.error.length) {
@@ -81,6 +86,7 @@ const ArrearsList = Form.create()(
     getInitialState() {
       return {
         releaseDate: [],
+        chufaDate: [],
         pagination: {
           defaultCurrent: 1,
           defaultPageSize: 10,
@@ -171,14 +177,16 @@ const ArrearsList = Form.create()(
               return getLiquidationStatus(text);
             },
           },
-          //   {
-          //     title: "催收科目",
-          //     dataIndex: "dunSubject",
-          //     key: "dunSubject",
-          //     //   render: text => {
-          //     //     return getjiedian(text);
-          //     //   }
-          //   },
+            {
+              title: "催收科目",
+              dataIndex: "type",
+              key: "type",
+                render: text => {
+                  if(text == 0) {
+                    return "按时触发应收欠款"
+                  }
+                }
+            },
           {
             title: "催款状态",
             dataIndex: "dunStatus",
@@ -201,7 +209,7 @@ const ArrearsList = Form.create()(
             key: "startDate",
           },
           {
-            title: "单时间",
+            title: "单时间",
             dataIndex: "signDate",
             key: "signDate",
           },
@@ -234,6 +242,10 @@ const ArrearsList = Form.create()(
         endTime: this.state.releaseDate[1]
           ? this.state.releaseDate[1]
           : undefined,
+        tStarTime: this.state.chufaDate[0]
+          ? this.state.chufaDate[0]
+          : undefined,
+        tEndTime: this.state.chufaDate[1] ? this.state.chufaDate[1] : undefined,
         depId: this.state.departmenttSearch,
         pageSize: 9999,
       };
@@ -250,6 +262,8 @@ const ArrearsList = Form.create()(
       this.state.departmenttSearch = undefined;
       this.state.releaseDate[0] = undefined;
       this.state.releaseDate[1] = undefined;
+      this.state.chufaDate[1] = undefined;
+      this.state.chufaDate[0] = undefined;
       this.loadData();
     },
     //部门
@@ -319,6 +333,7 @@ const ArrearsList = Form.create()(
       const { TabPane } = Tabs;
       return (
         <div className="user-content">
+          <ShowModalDiv ShowModal={this.state.showModal} />
           <div className="content-title" style={{ marginBottom: 10 }}>
             <span style={{ fontWeight: 900, fontSize: 16 }}>欠款催收列表</span>
           </div>
@@ -352,7 +367,11 @@ const ArrearsList = Form.create()(
                 />
                 <Input
                   placeholder="营销员名称"
-                  style={{ width: "150px", marginBottom: "10px", marginRight: 10 }}
+                  style={{
+                    width: "150px",
+                    marginBottom: "10px",
+                    marginRight: 10,
+                  }}
                   value={this.state.adminName}
                   onChange={(e) => {
                     this.setState({ adminName: e.target.value });
@@ -386,6 +405,20 @@ const ArrearsList = Form.create()(
                     this.setState({ releaseDate: dataString });
                   }}
                 />
+                <span style={{ marginRight: "10px", marginLeft: 10 }}>触发时间 :</span>
+                <RangePicker
+                  value={[
+                    this.state.chufaDate[0]
+                      ? moment(this.state.chufaDate[0])
+                      : null,
+                    this.state.chufaDate[1]
+                      ? moment(this.state.chufaDate[1])
+                      : null,
+                  ]}
+                  onChange={(data, dataString) => {
+                    this.setState({ chufaDate: dataString });
+                  }}
+                />
                 <Button
                   type="primary"
                   onClick={this.search}

+ 23 - 32
js/component/manageCenter/order/orderNew/changeComponent/changeApply.js

@@ -77,7 +77,6 @@ class ChangeApply extends Component {
           render: (text, record, index) => {
             let dataArr = this.state.proDataSource || [];
             if (text) {
-              // return <span>{text + "-" + record.ctid}</span>;
               if (record.ctid) {
                 return <span>{text + "-" + record.ctid}</span>;
               } else {
@@ -468,10 +467,6 @@ class ChangeApply extends Component {
                 {record.splitStatus == 1 ? (
                   <Tag
                     color="#108ee9"
-                    // onClick={e => {
-                    //   e.stopPropagation();
-                    //   this.showRes(record);
-                    // }}
                   >
                     父项目
                   </Tag>
@@ -481,10 +476,6 @@ class ChangeApply extends Component {
                 {record.splitStatus == 2 ? (
                   <Tag
                     color="#108ee9"
-                    // onClick={e => {
-                    //   e.stopPropagation();
-                    //   this.showRes(record);
-                    // }}
                   >
                     子项目
                   </Tag>
@@ -597,15 +588,10 @@ class ChangeApply extends Component {
     this.showRes = this.showRes.bind(this);
     this.resCancel = this.resCancel.bind(this);
     this.deleteChange = this.deleteChange.bind(this);
+    this.not = this.not.bind(this);
   }
 
   componentDidMount() {
-    // this.setState({
-    //   data: this.props.orderData
-    // },() => {
-    //   this.proList();
-    //   this.cuiList();
-    // })
   }
   nextCancel() {
     this.setState({
@@ -733,16 +719,15 @@ class ChangeApply extends Component {
 
   //变更申请
   changeApply() {
-    if (this.state.flag) return;
-    this.setState({
-      flag: true
-    });
     if (moneyVerify(this.state.data.totalAmount)) {
       return false;
     }
     if (moneyVerify(this.state.data.changeAmount)) {
       return false;
     }
+    this.setState({
+      loading: true
+    })
     let theorgCodeUrl = [];
     if (this.state.voucherUrl.length) {
       let picArr = [];
@@ -772,17 +757,11 @@ class ChangeApply extends Component {
           message.success("变更成功!");
           this.props.onCancel();
           this.setState({
-            flag: false
-          });
-          this.setState({
             loading: false
           });
         } else {
           message.warning(data.error[0].message);
           this.setState({
-            flag: false
-          });
-          this.setState({
             loading: false
           });
         }
@@ -1223,7 +1202,14 @@ class ChangeApply extends Component {
     }
   }
   submitChange() {
-    if (this.state.processStatus <= 4) {
+    if (
+      this.state.typeChange == undefined ||
+      (this.state.typeChange == "" && this.state.typeChange != 0)
+    ) {
+      message.warning("请选择变更类型");
+      return false;
+    }
+    if (this.state.processStatus != 5 || this.state.processStatus != 6) {
       message.warning("当前订单流程不能发起变更!");
       return false;
     }
@@ -1498,6 +1484,9 @@ class ChangeApply extends Component {
   // componentWillMount() {
   //   this.departmentList();
   // }
+  not() {
+
+  }
   deleteChange() {
     this.setState({
       loading: true,
@@ -1670,7 +1659,7 @@ class ChangeApply extends Component {
             columns={columns}
             dataSource={data}
             pagination={false}
-            onRowDoubleClick={this.listFlag ? "" : this.editPro}
+            onRowDoubleClick={this.state.listFlag ? this.not : this.editPro}
           />
         );
       } else {
@@ -1833,7 +1822,7 @@ class ChangeApply extends Component {
                   this.state.data.remarks = "";
                   this.state.data.changeAmount = "0";
                   this.state.data.depNameChange = undefined;
-                  this.state.data.typeChange = [];
+                  this.state.data.typeChange = undefined;
                   this.state.data.totalAmount = this.state.data.oldPrice;
                   this.setState({
                     listFlag: false,
@@ -1855,9 +1844,10 @@ class ChangeApply extends Component {
               >
                 重置
               </Button>
-                <Button
+                {this.state.data.status == 3 ? (
+                  <Button
                   type="danger"
-                  style={{ float: "right" }}
+                  style={{ float: "right", backgroundColor: "red", color: "white", position: "absolute", right: 0, height: 50, borderRadius: 20 }}
                   onClick={(e) => {
                     e.stopPropagation();
                     this.showConfirmChange(this.deleteChange);
@@ -1865,6 +1855,7 @@ class ChangeApply extends Component {
                 >
                   取消本次变更
                 </Button>
+                ) : ("")}
             </FormItem>
           </div>
           <div className="clearfix">
@@ -1962,7 +1953,7 @@ class ChangeApply extends Component {
                 dataSource={this.state.proDataSource}
                 expandedRowRender={expandedRowRender}
                 pagination={false}
-                onRowDoubleClick={this.listFlag ? "" : this.editPro}
+                onRowDoubleClick={this.state.listFlag ? this.not : this.editPro}
                 bordered
                 size="small"
               />
@@ -2004,7 +1995,7 @@ class ChangeApply extends Component {
                   columns={this.state.changeCuiList}
                   dataSource={this.state.cuiDataSource}
                   scroll={{ x: "max-content", y: 0 }}
-                  onRowDoubleClick={this.listCuiFlag ? "" : this.editCui}
+                  onRowDoubleClick={this.state.listCuiFlag ? this.not : this.editCui}
                   bordered
                   size="small"
                 />

+ 4 - 6
js/component/manageCenter/order/orderNew/changeComponent/changeDetailCwzj.js

@@ -781,7 +781,7 @@ class ChangeDetail extends Component {
           )} */}
         </div>
         {this.props.data.processState > 5 &&
-        this.props.data.status == 1 &&
+        (this.props.data.status == 1 || this.props.data.status == 3)&&
         this.props.processState == this.props.data.processState ? (
           // this.state.buttonStatus ? (
           <div>
@@ -807,11 +807,9 @@ class ChangeDetail extends Component {
                 style={{
                   marginTop: "10px",
                   display:
-                    this.props.data.status == 1 ||
-                    (this.props.data.status == 3 &&
-                      this.props.processState != this.props.data.processState)
-                      ? "none"
-                      : "block",
+                      this.props.processState == this.props.data.processState
+                      ? "block"
+                      : "none",
                 }}
               >
                 <Form.Item

+ 1 - 2
js/component/manageCenter/order/orderNew/changeComponent/changeDetailCwzy.js

@@ -1523,8 +1523,7 @@ class ChangeDetail extends Component {
                 style={{
                   marginTop: "10px",
                   display:
-                    this.props.data.processState == 5 &&
-                    this.props.data.status == 1
+                    this.props.processState == this.props.data.processState
                       ? "block"
                       : "none",
                 }}

+ 0 - 6
js/component/manageCenter/order/orderNew/contractYxy.js

@@ -884,8 +884,6 @@ const contractChange = Form.create()(
     },
 
     callback(key) {
-      console.log("key",key);
-      
       this.setState(
         {
           activeKey: key
@@ -893,13 +891,9 @@ const contractChange = Form.create()(
         () => {
 
           if (key != "a" && key != "c" && key.length < 10) {
-            console.log("执行前");
-            
             this.ChangeDetail(key);
             this.loadDataChange(key);
           } else if (key != "a" && key != "c" && key.length > 10) {
-            console.log("执行");
-            
             this.primaryOrder(key);
             this.ChangeDetail(key);
             this.xiangmu(key);

+ 3 - 4
js/component/manageCenter/order/orderNew/examine.jsx

@@ -881,9 +881,8 @@ const IntentionCustomer = Form.create()(
     },
     //审核不通过
     examOks() {
-      if (this.state.flag) return;
       this.setState({
-        flag: true
+        loading: true
       });
       this.setState({
         aloading: true
@@ -904,7 +903,7 @@ const IntentionCustomer = Form.create()(
               message.warning(data.error[0].message);
               this.setState({
                 aloading: true,
-                flag: false
+                loading: false
               });
             }
           } else {
@@ -914,7 +913,7 @@ const IntentionCustomer = Form.create()(
               aloading: false,
               noVisible: false,
               reason: "",
-              flag: false
+              loading: false
             });
             this.reset();
           }

+ 17 - 19
js/component/manageCenter/set/userManagementS/jurisdiction.jsx

@@ -147,25 +147,23 @@ const Jurisdiction = Form.create()(React.createClass({
 	},
 	//项目任务旧数据处理
 	 handles(){
-    	this.setState({
-			loading: true
-		});
 		$.ajax({
-			method: "get",
-			dataType: "json",
-			crossDomain: false,
-			url: globalConfig.context + "/api/admin/order/addContractTaskLog",
-			data: {
-				
-			},
-			success: function(data) {
-				
-			}.bind(this),
-			}).always(function() {
-				this.setState({
-					loading: false
-				});
-			}.bind(this));
+      method: "get",
+      dataType: "json",
+      crossDomain: false,
+      url: globalConfig.context + "/open/pushOrderArrearsDun",
+      data: {},
+      success: function (data) {
+		  if(data.error.length) {
+			  message.warning(data.error[0].message)
+		  }else {
+			  message.warning("调用成功!")
+		  }
+	  }.bind(this),
+    }).always(
+      function () {
+      }.bind(this)
+    );
     },
 	//新建二级接口保存
 	nextSubmit(e) {
@@ -208,7 +206,7 @@ const Jurisdiction = Form.create()(React.createClass({
 			<div className="user-content" >
                 <div className="content-title">
                 	<div className="user-search">
-	                	<Button type="primary" onClick={this.handles} style={{marginLeft:'10px',float:'right'}}>项目任务数据处理</Button>
+	                	<Button type="primary" onClick={this.handles} style={{marginLeft:'10px',float:'right'}}>测试欠款催发</Button>
 	                    <Button type="primary" className="addButton" onClick={this.addClick} style={{marginBottom:'15px'}}>新增权限<Icon type="user"/></Button>
 	                </div>
 	                <div className="patent-table">

+ 1 - 1
js/component/manageCenter/set/userManagementS/userMangagement.less

@@ -33,7 +33,7 @@
     }
 }
 .ant-tabs-bar {
-    margin-bottom: 0px;
+    margin-bottom: 10px;
 }
 .half-item {
     float: left;

+ 2 - 0
js/component/tools.js

@@ -1882,6 +1882,8 @@ module.exports = {
       return num + "到" + str
     } else if (status == 4) {
       num = "完成";
+    } else if(status == 5) {
+      num = "取消变更"
     }
     if (pro == 7 && status == 2) {
       return "订单变更退票中";

+ 12 - 9
js/component/zhuanjiaoDetail.jsx

@@ -4,7 +4,7 @@ import $ from "jquery/src/ajax";
 const ZhuanjiaoDetail = React.createClass({
   getInitialState() {
     return {
-      newVisible: false,
+      loading: false,
       colunmn: [
         {
           title: "序号",
@@ -94,16 +94,19 @@ const ZhuanjiaoDetail = React.createClass({
         visible={this.props.visible}
         onCancel={this.props.cancel}
         footer={null}
+        width={600}
         destroyOnClose={true}
       >
-        <Table
-          columns={this.state.colunmn}
-          dataSource={this.state.dataSource}
-          pagination={false}
-          scroll={{ x: "max-content", y: 0 }}
-          bordered
-          size="small"
-        />
+        <Spin spinning={this.state.loading} >
+          <Table
+            columns={this.state.colunmn}
+            dataSource={this.state.dataSource}
+            pagination={false}
+            scroll={{ x: "max-content", y: 0 }}
+            bordered
+            size="small"
+          />
+        </Spin>
       </Modal>
     );
   },