liting2017 7 years ago
parent
commit
1b1b6bbdd5

+ 17 - 1
js/component/dataDic.js

@@ -2042,7 +2042,7 @@ module.exports = {
 	        value: "1",
 	        key: "作废"
 	    }, {
-	        value: "1",
+	        value: "2",
 	        key: "锁定"
 	    }
     ],
@@ -2068,4 +2068,20 @@ module.exports = {
 	        key: "已撤项"
 	    }
     ],
+     //任务状态	
+    taskStatus:[
+    	{
+	        value: "0",
+	        key: "未分配"
+	    },{
+	        value: "1",
+	        key: "已派单"
+	    }, {
+	        value: "2",
+	        key: "材料已启动"
+	    },{
+	        value: "3",
+	        key: "材料已完成"
+	    }
+    ],
 };

+ 4 - 3
js/component/manageCenter/order/flowSettlement/billManagement/myBillDetaile.jsx

@@ -36,10 +36,11 @@ const MyBillDetaile = Form.create()(React.createClass({
 	                    };
 	                    thisData = {};
 	                };
+	                console.log(thisData.financialPayTime)
 	                this.setState({
 	                	orderList:thisData,
 	                	financialPayNo:thisData.financialPayNo,
-	                	financialPayTime:thisData.financialPayTime,
+	                	financialPayTime:thisData.financialPayTime?moment(thisData.financialPayTime,'YYYY-MM-DD HH:mm:ss'):undefined,
 	                	remarks:thisData.remarks,
 						billNoId:record.billNo,
 	                });                  
@@ -271,11 +272,11 @@ const MyBillDetaile = Form.create()(React.createClass({
 			                    		<FormItem className="half-item"
 				                            {...formItemLayout}
 				                            label="财务流水时间" >   
-				                            <DatePicker
+				                            <DatePicker style={{marginTop:'2px'}}
 										      showTime
 										      format="YYYY-MM-DD HH:mm:ss"
 										      placeholder="选择时间"
-										      value={this.state.financialPayTime?moment(this.state.financialPayTime,'YYYY-MM-DD HH:mm:ss'):undefined}
+										      value={this.state.financialPayTime}
 										      onChange={(e,time)=>{this.selTime(e,time)}}
 										    />
 									        <span className="mandatory">*</span>

+ 4 - 1
js/component/manageCenter/order/flowSettlement/myBill/myBill.jsx

@@ -146,7 +146,10 @@ const MyBill=Form.create()(React.createClass({
                 {
                     title: '平台流水号',
                     dataIndex: 'billNo',
-                    key: 'billNo'
+                    key: 'billNo',
+                    render:(text)=>{
+                    	return text&&text.substr(0,9)+'…'
+                    }
                 }, {
                     title: '平台流水时间',
                     dataIndex: 'createTime',

+ 5 - 0
js/component/manageCenter/order/flowSettlement/myBill/myBillDetaile.jsx

@@ -167,6 +167,11 @@ const MyBillDetaile = Form.create()(React.createClass({
 		this.state.visible = nextProps.showDesc;
 		if(nextProps.userDetaile && nextProps.showDesc ) {
 			this.loaduser(nextProps.datauser);
+		};
+		if(!this.props.rowClick){
+			this.state.remarks='';
+			this.state.financialPayNo ='';
+			this.state.financialPayTime =undefined;
 		}
 	},
 	render() {

+ 1 - 1
js/component/manageCenter/order/myOrder/servicesOrder/addService.jsx

@@ -479,7 +479,7 @@ const NewService = Form.create()(React.createClass({
         }.bind(this));  
 	},
 	//上级主管输入框失去焦点是判断客户是否存在
-	selectAuto(value,options){
+	selectAuto(value){
 		let kid=[];
 		let fwList=this.state.customerArr;
 		fwList.map(function(item){

+ 1 - 1
js/component/manageCenter/order/orderManagement/publicOrder/publicOrderDetaile.jsx

@@ -238,7 +238,7 @@ const ApproveDetaile = Form.create()(React.createClass({
 			labelCol: { span: 8 },
 			wrapperCol: { span: 14 },
 		};
-		const editFws=this.state.editFw;
+		const editFws=this.state.editFw||[];
 		const orderDetaiel=this.state.orderList || [];
 		return(
 			<div>

+ 0 - 1
js/component/manageCenter/order/settlementOrder/settlementManage/managementDetaile.jsx

@@ -3,7 +3,6 @@ import { Icon, Table, Modal, message, Spin, Input, Select, Button, Form ,Upload,
 import ajax from 'jquery/src/ajax/xhr.js';
 import $ from 'jquery/src/ajax';
 import '../../userMangagement.less';
-import {lvl} from '../../../../dataDic.js';
 import {getApprovedState,getPaymentState,getOrderState,getOrderChannel,getOrderType} from '../../../../tools.js';
 
 //图片组件

+ 4 - 17
js/component/manageCenter/order/settlementOrder/settlementManage/settlementManagement.jsx

@@ -127,7 +127,7 @@ const SettlementManage=Form.create()(React.createClass({
 				this.setState({
 					departmentArr:theArr,
 				})
-				this.loadData('1',theArr);
+				this.loadData(1,theArr);
 			}.bind(this),
 			}).always(function() {
 				this.setState({
@@ -159,18 +159,6 @@ const SettlementManage=Form.create()(React.createClass({
                     return '共' + total + '条数据';
                 }
             },
-            distributionPagination: {
-                defaultCurrent: 1,
-                defaultPageSize: 10,
-                showQuickJumper: true,
-                pageSize: 10,
-                onChange: function (page) {
-                    this.contactList(page);
-                }.bind(this),
-                showTotal: function (total) {
-                    return '共' + total + '条数据';
-                }
-            },
             columns: [
                 {
                     title: '订单编号',
@@ -239,7 +227,7 @@ const SettlementManage=Form.create()(React.createClass({
                     render: (text, record, index) => {
 						return <div>
 							    	{!record.financeName&&<Button style={{marginRight:'5px'}} onClick={(e) =>{ e.stopPropagation(),this.confirmDelet(record)}} type="primary">派单</Button>}                
-                        	   </div>
+                        	 </div>
 					}
                 }
             ],
@@ -299,14 +287,14 @@ const SettlementManage=Form.create()(React.createClass({
     	})
     },
     //分配对象列表
-    contactList(pageNo){
+    contactList(){
         $.ajax({
             method: "get",
             dataType: "json",
             crossDomain: false,
             url: globalConfig.context + '/api/admin/superviser/adminList',
             data: {
-                pageNo: pageNo || 1,
+                pageNo: 1,
                 pageSize: 99,
                 departmentId:this.state.departmenttList,
                 name:this.state.financeNameSearch,
@@ -336,7 +324,6 @@ const SettlementManage=Form.create()(React.createClass({
                
                 this.setState({
                     distributionList: theArr,
-                    pagination:false,
                 });
             }.bind(this),
         }).always(function () {

+ 3 - 0
js/component/manageCenter/servicesManage/projectOrder/content.jsx

@@ -3,6 +3,7 @@ import '../../content.less';
 import LeftTab from '../leftTab.jsx';
 import ProjectOrder from './orderOrder/projectOrder.jsx';
 import ProjectManage from './projectManagement/projectManage.jsx';
+import MyTask from './myTask/projectManage.jsx';
 import Module from '../../module.jsx';
 
 const Content = React.createClass({
@@ -34,6 +35,8 @@ const Content = React.createClass({
                                 return <ProjectOrder />;
                             case 'projectManage':
                                 return <ProjectManage />;
+                            case 'myTask':
+                                return <MyTask />;
                             default:
                                 return <Module />;  
                         };

+ 525 - 0
js/component/manageCenter/servicesManage/projectOrder/myTask/projectManage.jsx

@@ -0,0 +1,525 @@
+import React from 'react';
+import ReactDom from 'react-dom';
+import ajax from 'jquery/src/ajax/xhr.js';
+import $ from 'jquery/src/ajax';
+import { Form,Radio, Icon, Button, Input, Select, Spin, Table, Switch, message, Modal, Upload ,Popconfirm,DatePicker} from 'antd';
+import MySettlementDetaile from "./projectManageDetaile.jsx";
+import moment from 'moment';
+import '../userMangagement.less';
+import {projectState} from '../../../../dataDic.js';
+import {getProjectState,getOrderState,getOrderType,getPaymentState} from '../../../../tools.js';
+
+const MyTask=Form.create()(React.createClass({
+	loadData(pageNo) {
+        this.setState({
+            loading: true
+        });
+        $.ajax({
+            method: "post",
+            dataType: "json",
+            crossDomain: false,
+            url: globalConfig.context + '/api/admin/techproject/listProject',
+            data: {
+                pageNo: pageNo || 1,
+                pageSize: this.state.pagination.pageSize,
+                setUpStartDate: this.state.releaseDate[0],
+				setUpEndDate: this.state.releaseDate[1],
+				depId:this.state.departmentt,
+				orderStartTime: this.state.releaseDateOrder[0],
+				orderEndTime: this.state.releaseDateOrder[1],
+                buyerName:this.state.buyerNameSearch,//客户名称
+                orderStatus:this.state.orderStatusSearch, //订单状态
+                salesmanName:this.state.salesmanNameSearch,//订单负责人
+                financeLeaderSearch:this.state.financeLeaderSearch,//财务负责人
+                orderNo:this.state.orderNoSearch,//订单编号
+                deleteSign:this.state.deleteSignSearch,//锁定激活
+            },
+            success: function (data) {
+                let theArr = [];
+                if (!data.data) {
+                    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,
+	                         id: thisdata.id,
+	                         serialNumber: thisdata.serialNumber,
+	                         signDate:thisdata.signDate,
+	                         buyerName:thisdata.buyerName,
+	                         projectType:thisdata.projectType,
+	                         projectStatus:thisdata.projectStatus,
+	                         deleteSign:thisdata.deleteSign,
+	                         orderNo:thisdata.orderNo,
+	                         orderTime:thisdata.orderTime,
+	                         orderStatus:thisdata.orderStatus,
+	                         liquidationStatus:thisdata.liquidationStatus,
+	                         approval:thisdata.approval,
+                        });
+                    };
+                    this.state.pagination.current = data.data.pageNo;
+                    this.state.pagination.total = data.data.totalCount;
+                };
+                if(!data.data.list.length){
+					this.state.pagination.current=0
+					this.state.pagination.total=0
+				}
+                this.setState({
+                	pageNo:pageNo,
+                	newProject:false,
+                    dataSource: theArr,
+                    pagination: this.state.pagination,
+                    selectedRowKeys:[]
+                });
+            }.bind(this),
+        }).always(function () {
+            this.setState({
+                loading: false
+            });
+        }.bind(this));
+    },
+    getInitialState() {
+        return {
+        	datauser:{},
+            selectedRowKeys: [],
+            selectedRows: [],
+            searchMore: true,
+            releaseDate: [],
+            releaseDateOrder:[],
+            projectState:false,
+            newProject:false,
+            loading: false,
+            KnotState:true,
+            distributionVisible:false,
+            visible:false,
+            showDesc: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: 'serialNumber',
+                    key: 'serialNumber'
+                },{
+                    title: '立项时间',
+                    dataIndex: 'signDate',
+                    key: 'signDate'
+                },{
+                    title: '客户名称',
+                    dataIndex: 'buyerName',
+                    key: 'buyerName'
+                },
+                {
+                    title: '项目类型',
+                    dataIndex: 'projectType',
+                    key: 'projectType',
+                    render:(text)=>{return getOrderType(text) }
+                },{
+                    title: '项目状态',
+                    dataIndex: 'projectStatus',
+                    key: 'projectStatus',
+                    render:(text)=>{return getProjectState(text) }
+                }, {
+                    title: '锁定/作废',
+                    dataIndex: 'deleteSign',
+                    key: 'deleteSign',
+                    render:(text)=>{
+                    	return
+                    	   {text==0&&<span>正常</span>}
+                    	   {text==1&&<span>作废</span>}
+                    	   {text==2&&<span>锁定</span>}
+                    }
+                },{
+                    title: '订单编号',
+                    dataIndex: 'orderNo',
+                    key: 'orderNo',
+                },{
+                    title: '下单时间',
+                    dataIndex: 'orderTime',
+                    key: 'orderTime',
+                },{
+                    title: '订单状态',
+                    dataIndex: 'orderStatus',
+                    key: 'orderStatus',
+                    render:(text)=>{return getOrderState(text) }
+                },{
+                    title: '结算状态',
+                    dataIndex: 'liquidationStatus',
+                    key: 'liquidationStatus',
+                    render:(text)=>{return getPaymentState(text) }
+                },{
+                    title: '是否特批',
+                    dataIndex: 'approval',
+                    key: 'approval',
+                     render:(text)=>{return (text)?'已特批':'未特批' }
+                },{
+                	title: '操作',
+                    dataIndex: 'rr',
+                    key: 'rr',
+                    render:(text,record,index)=>{
+                    	return (
+                    		<div>
+								{record.projectStatus==2||record.projectStatus==5?<Button style={{marginRight:'5px'}} type="primary" onClick={(e) =>{ e.stopPropagation(),this.Knot(record)}}>项目管理</Button>:''}                
+								{record.projectStatus==1||record.projectStatus==5?<Popconfirm title={'您将作废项目【'+record.roleName+'】,系统将自动同步作废项目任务及项目资料单,请确认'} onConfirm={(e)=>{this.scrapOrder(record)}} okText="确认" cancelText="取消">
+							   	   <Button style={{marginRight:'5px'}} onClick={(e) =>{ e.stopPropagation()}} type="danger">作废</Button>                 
+								</Popconfirm>:''}
+							</div>
+							)
+                    }
+                }
+            ],
+            dataSource: [],
+        };
+    },
+    //部门
+	departmentList() {
+		this.setState({
+			loading: true
+		});
+		$.ajax({
+			method: "post",
+			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,
+							depNo:item.depNo
+						})
+					})
+				}
+				this.setState({
+					departmentArr:theArr,
+				})
+			}.bind(this),
+			}).always(function() {
+				this.setState({
+					loading: false
+				});
+			}.bind(this));
+	},
+	//作废项目
+	scrapOrder(record){
+		this.setState({
+			loading: true
+		});
+		$.ajax({
+			method: "POST",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +'/api/zuofei',
+			data: {
+				id:record.id,
+			}
+		}).done(function(data) {
+			this.setState({
+				loading: false
+			});
+			if(!data.error.length) {
+				message.success('操作成功!');
+				this.loadData(this.state.pageNo);			
+			} else {
+				message.warning(data.error[0].message);
+			}
+		}.bind(this));
+	},
+	//创建项目
+	addClick() {
+        this.setState({
+        	newProject:true,
+        	signBillVisible:false,
+            showDesc: false
+        });
+    },
+    componentWillMount() {
+        this.loadData();
+        this.departmentList()
+    },
+    //立项
+    edit(record) {
+    	this.setState({
+    		newProject:false,
+    		Kid:record.id,
+    		signBillVisible:true
+    	})
+    	this.editData(record)
+    },
+    //项目管理
+    Knot(record){
+    	this.state.userDetaile=true;
+        this.state.datauser = record;
+        this.setState({
+        	projectState:true,
+        	newProject:false,
+            showDesc: true
+        });
+    },
+    noProject(){
+    	this.setState({
+    		signBillVisible:false
+    	})
+    },
+    //立项。结项前数据获取
+    editData(xhr){
+    	$.ajax({
+			method: "POST",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context + 'api/lixiang-shuju',
+			data: {
+				id:xhr.id,
+			},
+			success: function (data) {
+                if (!data.data) {
+                    if (data.error && data.error.length) {
+                        message.warning(data.error[0].message);
+                    };
+                } else {
+                   
+                };
+			}.bind(this)},
+    	).always(function () {
+            this.setState({
+                loading: false
+            });
+        }.bind(this));
+    },
+    //立项、结项保存操作
+	projectSubmit(e){
+		e.preventDefault();
+		this.setState({
+			loading: true
+		});
+		let api=this.state.KnotState?'/api/admin/lixiang':'/api/admin/jiexiang';
+		$.ajax({
+			method: "POST",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +api ,
+			data: {
+				id:this.state.Kid,
+			}
+		}).done(function(data) {
+			this.setState({
+				loading: false
+			});
+			if(!data.error.length) {
+				message.success('操作成功!');
+				this.noProject();
+				this.loadData(this.state.pageNo);			
+			} else {
+				message.warning(data.error[0].message);
+			}
+		}.bind(this));
+	},
+    closeDesc(e, s) {
+    	this.state.userDetaile=false;
+        this.state.showDesc = e;
+        if (s) {
+            this.loadData(this.state.pageNo);
+        };
+    },
+    searchSwitch() {
+		this.setState({
+			newProject:false,
+			searchMore: !this.state.searchMore
+		});
+	},
+    search() {
+        this.loadData();
+    },
+    tableRowClick(record, index) {
+        this.state.userDetaile=true;
+        this.state.datauser = record;
+        this.setState({
+        	projectState:false,
+        	newProject:false,
+            showDesc: true
+        });
+    },
+    reset() {
+    	this.state.buyerNameSearch='';
+    	this.state.releaseDate[0] = undefined;
+		this.state.releaseDate[1] = undefined;
+		this.state.releaseDateOrder[0] = undefined;
+		this.state.releaseDateOrder[1] = undefined;
+		this.state.departmentt=undefined;
+		this.state.orderStatusSearch = undefined;
+		this.state.salesmanNameSearch = '';
+		this.state.orderNoSearch='';
+		this.state.deleteSignSearch=undefined;
+        this.loadData();       
+    },
+    render() {
+    	const FormItem = Form.Item;
+    	const formItemLayout = {
+			labelCol: { span: 8 },
+			wrapperCol: { span: 14 },
+		};
+		const { RangePicker } = DatePicker;
+        const rowSelection = {
+            selectedRowKeys: this.state.selectedRowKeys,
+            onChange: (selectedRowKeys, selectedRows) => {
+	                this.setState({
+	                    selectedRows: selectedRows.slice(-1),
+	                    selectedRowKeys: selectedRowKeys.slice(-1)
+	                }); 
+            },
+            onSelectAll: (selected, selectedRows, changeRows) => {
+			   this.setState({
+			   		selectedRowKeys:[]
+			   })
+			},
+        };
+        const hasSelected = this.state.selectedRowKeys.length > 0;
+        let departmentArr = this.state.departmentArr || [];
+        return (
+            <div className="user-content" >
+                <div className="content-title">
+                	<span style={{fontSize:'16px'}}>项目管理</span>	
+	                <div className="user-search">
+	                    <Input placeholder="客户名称" style={{width:'150px'}}
+	                        value={this.state.buyerNameSearch}
+	                        onChange={(e) => { this.setState({ buyerNameSearch: e.target.value }); }} />
+	                    <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" onClick={this.search} style={{marginLeft:'10px'}}>搜索</Button>
+	                    <Button onClick={this.reset}>重置</Button>
+	                    <span style={{marginLeft:'10px',marginRight:'20px'}}>更多搜索<Switch defaultChecked={false} onChange={this.searchSwitch} /></span>    
+	                	<Button type="primary" className="addButton" onClick={this.addClick} >创建项目<Icon type="plus" /></Button>
+	                </div>
+	                <div className='clearfix' style={{marginTop:'5px'}}>
+	                  <div className="search-more" style={this.state.searchMore ? { display: 'none' } : {}}> 
+	                        <Select placeholder="项目状态"
+	                            style={{ width: 150 ,marginRight:'10px'}}
+	                            value={this.state.orderStatusSearch}
+	                            onChange={(e) => { this.setState({ orderStatusSearch: e }) }}>
+	                            {
+                                    projectState.map(function (item) {
+                                            return <Select.Option key={item.value} >{item.key}</Select.Option>
+                                    })
+                                }
+	                        </Select>
+	                        <Select placeholder="锁定/作废"
+	                            style={{ width: 150 ,marginRight:'10px'}}
+	                            value={this.state.deleteSignSearch}
+	                            onChange={(e) => { this.setState({ deleteSignSearch: e }) }}>
+	                            <Select.Option value='0'>正常</Select.Option>
+	                            <Select.Option value='1'>作废</Select.Option>
+	                            <Select.Option value='2'>锁定</Select.Option>
+	                        </Select>
+	                        <Input placeholder="订单编号" style={{width:'150px',margin:'10px'}}
+		                        value={this.state.orderNoSearch}
+		                        onChange={(e) => { this.setState({ orderNoSearch: e.target.value }); }} />
+	                        <Select placeholder="选择部门" style={{width:'150px'}}
+	                            value={this.state.departmentt}
+	                            onChange={(e) => { this.setState({ departmentt: e }) }}>
+	                            {
+	                                departmentArr.map(function (item) {
+	                                        return <Select.Option key={item.depNo} >{item.name}</Select.Option>
+	                                })
+	                            }
+	                        </Select>
+	                        <Input placeholder="订单负责人" style={{width:'150px',margin:'10px'}}
+		                        value={this.state.salesmanNameSearch}
+		                        onChange={(e) => { this.setState({ salesmanNameSearch: e.target.value }); }} />
+	                        <RangePicker
+		                        value={[this.state.releaseDateOrder[0] ? moment(this.state.releaseDateOrder[0]) : null,
+		                        this.state.releaseDateOrder[1] ? moment(this.state.releaseDateOrder[1]) : null]}
+		                        onChange={(data, dataString) => { this.setState({ releaseDateOrder: dataString }); }} /> 
+	                    </div>
+	                </div>
+	                <div className="patent-table">
+	                    <Spin spinning={this.state.loading}>
+	                        <Table columns={this.state.columns}
+	                            dataSource={this.state.dataSource}
+	                            rowSelection={rowSelection}
+	                            pagination={this.state.pagination}
+	                            onRowClick={this.tableRowClick}
+	                            />
+	                    </Spin>
+	                </div>
+	                <MySettlementDetaile
+	                	projectState={this.state.projectState}
+	                    newProject={this.state.newProject}
+	                    userDetaile={this.state.userDetaile}
+	                    datauser={this.state.datauser}
+	                    showDesc={this.state.showDesc}
+	                    closeDesc={this.closeDesc} />
+	            </div >
+	            <Modal maskClosable={false} visible={this.state.signBillVisible}
+                        onOk={this.noProject} onCancel={this.noProject}
+                        width='800px'
+                        title='项目立项'                  
+                        footer=''
+                        className="admin-desc-content">
+			            <Form layout="horizontal" onSubmit={this.projectSubmit} id="demand-form">
+			                <Spin spinning={this.state.loading}>
+			                        <div className="clearfix">
+					                    <FormItem className="half-item"
+					                            {...formItemLayout}
+					                            label="项目编号" >   
+				                                   <span></span>
+					                    </FormItem>
+					                    <FormItem className="half-item"
+					                            {...formItemLayout}
+					                            label="客户名称" >   
+				                                   <span></span>
+					                    </FormItem>
+					                    <FormItem className="half-item"
+					                            {...formItemLayout}
+					                            label="立项时间">   
+				                                   <span></span>
+					                    </FormItem>
+						                <div className='clearfix'>
+								        	<FormItem
+									            labelCol={{ span: 4 }}
+									            wrapperCol={{ span: 16 }}
+									            label="立项说明" >
+									                <Input type="textarea" placeholder="请输入备注" rows={4}  value={this.state.introduction} 
+										    				onChange={(e)=>{this.setState({introduction:e.target.value})}}/>			                      
+									        </FormItem>
+								        </div>
+				                    </div>
+			                    <FormItem wrapperCol={{ span: 12, offset: 4 }} className="half-middle">
+			                        <Button className="submitSave" type="primary" htmlType="submit">{this.state.KnotState?"确定立项":'确定结项'}</Button>  
+			                        <Button className="submitSave" type="ghost" onClick={this.noProject}>返回</Button>
+			                    </FormItem> 
+			                </Spin>
+			            </Form >
+			        </Modal>
+            </div>
+        );
+    }
+}));
+
+export default MyTask;
+

File diff suppressed because it is too large
+ 1079 - 0
js/component/manageCenter/servicesManage/projectOrder/myTask/projectManageDetaile.jsx


+ 135 - 85
js/component/manageCenter/servicesManage/projectOrder/orderOrder/projectOrder.jsx

@@ -6,8 +6,8 @@ import { Form,Radio, Icon, Button, Input, Select, Spin, Table, Switch, message,
 import MySettlementDetaile from "./projectOrderDetaile.jsx";
 import moment from 'moment';
 import '../userMangagement.less';
-import {lvl,intentProgress,transactionProgress,contractProgress,projectProgress} from '../../../../dataDic.js';
-import {getIntentProgress,getTransactionProgress,getContractProgress,getProjectProgress} from '../../../../tools.js';
+import {orderState} from '../../../../dataDic.js';
+import {getPaymentState,getOrderState ,getOrderType   } from '../../../../tools.js';
 
 const ProjectOrder=Form.create()(React.createClass({
 	loadData(pageNo) {
@@ -19,16 +19,16 @@ const ProjectOrder=Form.create()(React.createClass({
             method: "post",
             dataType: "json",
             crossDomain: false,
-            url: globalConfig.context + '/api/admin/roles',
+            url: globalConfig.context + '/api/admin/techproject/listSetUpServiceOrder',
             data: {
                 pageNo: pageNo || 1,
                 pageSize: this.state.pagination.pageSize,
-                customerNameSearch:this.state.customerNameSearch,//客户名称
-                approvedSearch:this.state.approvedSearch, //是否特批
-                orderStatusSearch:this.state.orderStatusSearch, //订单状态
-                orderDepartmentSearch:this.state.orderDepartmentSearch, //订单部门
-                orderLeaderSearch:this.state.orderLeaderSearch,//订单负责人
-                financeLeaderSearch:this.state.financeLeaderSearch,//财务负责人
+                buyerName:this.state.buyerNameSearch,
+                depId:this.state.departmenttSearch,//部门
+                salesmanName:this.state.salesmanNameSearch,//负责人
+				orderStatus:this.state.orderStatusSearch,
+				financeName:this.state.financeNameSearch,
+				approval:this.state.approvedSearch
             },
             success: function (data) {
                 let theArr = [];
@@ -42,9 +42,17 @@ const ProjectOrder=Form.create()(React.createClass({
                         theArr.push({
                              key: i,
 	                         id: thisdata.id,
-	                         roleName: thisdata.roleName,
-	                         creater:thisdata.creater,
-	                         createTime:thisdata.createTimez,
+	                         orderNo: thisdata.orderNo,//订单编号
+	                         orderType:thisdata.orderType,//订单类型
+	                         orderStatus:thisdata.orderStatus,
+	                         liquidationStatus:thisdata.liquidationStatus,
+	                         createTime:thisdata.createTime,
+	                         approval:thisdata.approval,
+	                         salesmanName:thisdata.salesmanName,
+	                         departmentName:thisdata.departmentName,
+	                         financeName:thisdata.financeName,
+	                         buyerName:thisdata.buyerName,
+	                         projectStage:thisdata.projectStage
                         });
                     };
                     this.state.pagination.current = data.data.pageNo;
@@ -55,9 +63,11 @@ const ProjectOrder=Form.create()(React.createClass({
 					this.state.pagination.total=0
 				}
                 this.setState({
+                	pageNo:pageNo,
                     dataSource: theArr,
                     pagination: this.state.pagination,
-                    selectedRowKeys:[]
+                    selectedRowKeys:[],
+                    signBillVisible:false
                 });
             }.bind(this),
         }).always(function () {
@@ -66,6 +76,46 @@ const ProjectOrder=Form.create()(React.createClass({
             });
         }.bind(this));
     },
+    //部门
+	departmentList() {
+		this.setState({
+			loading: true
+		});
+		$.ajax({
+			method: "post",
+			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 {
         	datauser:{},
@@ -92,58 +142,58 @@ const ProjectOrder=Form.create()(React.createClass({
             columns: [
                 {
                     title: '订单编号',
-                    dataIndex: 'roleName',
-                    key: 'roleName'
+                    dataIndex: 'orderNo',
+                    key: 'orderNo'
                 },{
                     title: '下单时间',
-                    dataIndex: 'creater7',
-                    key: 'creater7'
+                    dataIndex: 'createTime',
+                    key: 'createTime'
                 },{
                     title: '客户名称',
-                    dataIndex: 'roleName1',
-                    key: 'roleName1'
+                    dataIndex: 'buyerName',
+                    key: 'buyerName'
                 },
                 {
                     title: '订单类型',
-                    dataIndex: 'creater1',
-                    key: 'creater1'
+                    dataIndex: 'orderType',
+                    key: 'orderType',
+                    render:(text)=>{return getOrderType(text) }
                 }, {
                     title: '订单状态',
-                    dataIndex: 'createTime1',
-                    key: 'createTime1',
-                    render:(text)=>{return getIntentProgress(text) }
+                    dataIndex: 'orderStatus',
+                    key: 'orderStatus',
+                    render:(text)=>{return getOrderState(text) }
                 },{
                     title: '结算状态',
-                    dataIndex: 'roleName2',
-                    key: 'roleName2',
-                    render:(text)=>{return getTransactionProgress(text) }
+                    dataIndex: 'liquidationStatus',
+                    key: 'liquidationStatus',
+                    render:(text)=>{return getPaymentState(text) }
                 }, {
                     title: '是否特批',
-                    dataIndex: 'creater2',
-                    key: 'creater2',
-                    render:(text)=>{return getContractProgress(text) }
+                    dataIndex: 'approval',
+                    key: 'approval',
+                    render:(text)=>{return text?'已特批':'未特批' }
                 },{
                     title: '订单部门',
-                    dataIndex: 'creater77',
-                    key: 'creater77',
-                    render:(text)=>{return getContractProgress(text) }
+                    dataIndex: 'departmentName',
+                    key: 'departmentName',
                 },{
                     title: '订单负责人',
-                    dataIndex: 'creater9',
-                    key: 'creater9',
+                    dataIndex: 'salesmanName',
+                    key: 'salesmanName',
                 },{
                     title: '财务负责人',
-                    dataIndex: 'creater91',
-                    key: 'creater91',
+                    dataIndex: 'financeName',
+                    key: 'financeName',
                 },{
                 	title: '操作',
                     dataIndex: 'rr',
                     key: 'rr',
                     render:(text,record,index)=>{
                     	return (
-                    		<div>
-								<Button style={{marginRight:'5px'}} type="primary" onClick={(e) =>{ e.stopPropagation(),this.edit(record) }}>立项</Button>                 
-								<Button style={{marginRight:'5px'}} type="primary" onClick={(e) =>{ e.stopPropagation(),this.Knot(record)}}>结项</Button>                 
+                    		<div >
+								{record.projectStage<2&&<Button style={{marginRight:'5px'}} type="primary" onClick={(e) =>{ e.stopPropagation(),this.edit(record) }}>立项</Button>}                 
+								{record.projectStage>=2&&<Button style={{marginRight:'5px'}} type="primary" onClick={(e) =>{ e.stopPropagation(),this.Knot(record)}}>结项</Button>}                 
 							</div>
 							)
                     }
@@ -153,12 +203,12 @@ const ProjectOrder=Form.create()(React.createClass({
         };
     },
     componentWillMount() {
+    	this.departmentList()
         this.loadData();
     },
     //立项
     edit(record) {
     	this.setState({
-    		Kid:record.id,
     		KnotState:true,
     		signBillVisible:true
     	})
@@ -167,7 +217,6 @@ const ProjectOrder=Form.create()(React.createClass({
     //结项
     Knot(record){
     	this.setState({
-    		Kid:record.id,
     		KnotState:false,
     		signBillVisible:true
     	})
@@ -180,22 +229,30 @@ const ProjectOrder=Form.create()(React.createClass({
     },
     //立项。结项前数据获取
     editData(xhr,state){
-    	let api =state?'api/lixiang-shuju':'api/jiexiang-shuju';
+    	let api =state?'/api/admin/techproject/toSetUpProject':'api/jiexiang-shuju';
     	$.ajax({
-			method: "POST",
+			method: "get",
 			dataType: "json",
 			crossDomain: false,
-			url: globalConfig.context + '/api/1313',
+			url: globalConfig.context + api,
 			data: {
-				id:xhr.id,
+				orderNo:xhr.orderNo,
+				buyerName:xhr.buyerName
 			},
 			success: function (data) {
+				let theData=data.data;
                 if (!data.data) {
                     if (data.error && data.error.length) {
                         message.warning(data.error[0].message);
                     };
                 } else {
-                   
+                   this.setState({
+                   		uid:theData.id,
+                   		orderNo:theData.orderNo,
+                   		buyerName:theData.buyerName,
+                   		signDate:theData.signDate,
+                   		signComment:''
+                   })
                 };
 			}.bind(this)},
     	).always(function () {
@@ -210,14 +267,16 @@ const ProjectOrder=Form.create()(React.createClass({
 		this.setState({
 			loading: true
 		});
-		let api=this.state.KnotState?'/api/admin/lixiang':'/api/admin/jiexiang';
+		let api=this.state.KnotState?'/api/admin/techproject/setUpProject':'/api/admin/jiexiang';
 		$.ajax({
-			method: "POST",
+			method: "get",
 			dataType: "json",
 			crossDomain: false,
 			url: globalConfig.context +api ,
 			data: {
-				id:this.state.Kid,
+				orderNo:this.state.orderNo,
+				signDate:this.state.signDate,
+				signComment:this.state.signComment,
 			}
 		}).done(function(data) {
 			this.setState({
@@ -226,7 +285,7 @@ const ProjectOrder=Form.create()(React.createClass({
 			if(!data.error.length) {
 				message.success('操作成功!');
 				this.noProject();
-				this.loadData();			
+				this.loadData(this.state.pageNo);			
 			} else {
 				message.warning(data.error[0].message);
 			}
@@ -236,7 +295,7 @@ const ProjectOrder=Form.create()(React.createClass({
     	this.state.userDetaile=false;
         this.state.showDesc = e;
         if (s) {
-            this.loadData();
+            this.loadData(this.state.pageNo);	
         };
     },
     searchSwitch() {
@@ -255,12 +314,12 @@ const ProjectOrder=Form.create()(React.createClass({
         });
     },
     reset() {
-    	this.state.customerNameSearch='';
+    	this.state.buyerNameSearch='';
 		this.state.approvedSearch = undefined;
 		this.state.orderStatusSearch = undefined;
-		this.state.orderDepartmentSearch = undefined;
-		this.state.orderLeaderSearch = '';
-		this.state.financeLeaderSearch = '';
+		this.state.departmenttSearch = undefined;
+		this.state.salesmanNameSearch = '';
+		this.state.financeNameSearch = '';
         this.loadData();       
     },
     render() {
@@ -283,6 +342,7 @@ const ProjectOrder=Form.create()(React.createClass({
 			   })
 			},
         };
+         let departmentArr = this.state.departmentArr || [];
         const hasSelected = this.state.selectedRowKeys.length > 0;
         return (
             <div className="user-content" >
@@ -290,47 +350,37 @@ const ProjectOrder=Form.create()(React.createClass({
                 	<span style={{fontSize:'16px'}}>立项订单</span>	
 	                <div className="user-search">
 	                    <Input placeholder="客户名称" style={{width:'150px'}}
-	                        value={this.state.customerNameSearch}
-	                        onChange={(e) => { this.setState({ customerNameSearch: e.target.value }); }} />
+	                        value={this.state.buyerNameSearch  }
+	                        onChange={(e) => { this.setState({ buyerNameSearch  : e.target.value }); }} />
 	                    <Select placeholder="是否特批"
 	                        style={{ width: 150 ,marginRight:'10px'}}
-	                        value={this.state.approvedSearch}
-	                        onChange={(e) => { this.setState({ approvedSearch: e }) }}>
+	                        value={this.state.approvedSearch }
+	                        onChange={(e) => { this.setState({ approvedSearch : e }) }}>
 	                        <Select.Option value='0'>未特批</Select.Option>
 	                        <Select.Option value='1'>已特批</Select.Option>
                   		</Select>
-                        <Select placeholder="订单状态"
-	                        style={{ width: 150 ,marginRight:'10px'}}
-	                        value={this.state.orderStatusSearch}
-	                        onChange={(e) => { this.setState({ orderStatusSearch: e }) }}>
-	                        {
-	                            lvl.map(function (item) {
-	                                    return <Select.Option key={item.value} >{item.key}</Select.Option>
-	                            })
-	                        }
-                  		</Select>
 	                    <Button type="primary" onClick={this.search} style={{marginLeft:'10px'}}>搜索</Button>
 	                    <Button onClick={this.reset}>重置</Button>
 	                    <span style={{marginLeft:'10px',marginRight:'20px'}}>更多搜索<Switch defaultChecked={false} onChange={this.searchSwitch} /></span>    
 	                </div>
 	                <div className='clearfix' style={{marginTop:'5px'}}>
 	                  <div className="search-more" style={this.state.searchMore ? { display: 'none' } : {}}> 
-	                        <Select placeholder="订单部门"
+	                    <Select placeholder="订单部门"
 	                            style={{ width: 150 ,marginRight:'10px'}}
-	                            value={this.state.orderDepartmentSearch}
-	                            onChange={(e) => { this.setState({ orderDepartmentSearch: e }) }}>
+	                            value={this.state.departmenttSearch}
+	                            onChange={(e) => { this.setState({ departmenttSearch: e }) }}>
 	                            {
-                                    lvl.map(function (item) {
-                                            return <Select.Option key={item.value} >{item.key}</Select.Option>
+                                    departmentArr.map(function (item) {
+                                            return <Select.Option key={item.id} >{item.name}</Select.Option> 
                                     })
                                 }
-	                        </Select>
+	                    </Select>
 	                        <Input placeholder="订单负责人" style={{width:'150px',marginRight:'10px'}}
-		                        value={this.state.orderLeaderSearch}
-		                        onChange={(e) => { this.setState({ orderLeaderSearch: e.target.value }); }} />
+		                        value={this.state.salesmanNameSearch }
+		                        onChange={(e) => { this.setState({ salesmanNameSearch : e.target.value }); }} />
 	                        <Input placeholder="财物负责人" style={{width:'150px'}}
-		                        value={this.state.financeLeaderSearch}
-		                        onChange={(e) => { this.setState({ financeLeaderSearch: e.target.value }); }} />
+		                        value={this.state.financeNameSearch}
+		                        onChange={(e) => { this.setState({ financeNameSearch: e.target.value }); }} />
 	                    </div>
 	                </div>
 	                <div className="patent-table">
@@ -361,25 +411,25 @@ const ProjectOrder=Form.create()(React.createClass({
 					                    <FormItem className="half-item"
 					                            {...formItemLayout}
 					                            label="项目编号" >   
-				                                   <span></span>
+				                                   <span>{this.state.orderNo}</span>
 					                    </FormItem>
 					                    <FormItem className="half-item"
 					                            {...formItemLayout}
 					                            label="客户名称" >   
-				                                   <span></span>
+				                                   <span>{this.state.buyerName}</span>
 					                    </FormItem>
 					                    <FormItem className="half-item"
 					                            {...formItemLayout}
 					                            label={this.state.KnotState?"立项时间":'结项时间'}>   
-				                                   <span></span>
+				                                   <span>{this.state.signDate}</span>
 					                    </FormItem>
 						                <div className='clearfix'>
 								        	<FormItem
 									            labelCol={{ span: 4 }}
 									            wrapperCol={{ span: 16 }}
 									            label={this.state.KnotState?"立项说明":'结项说明'} >
-									                <Input type="textarea" placeholder="请输入备注" rows={4}  value={this.state.introduction} 
-										    				onChange={(e)=>{this.setState({introduction:e.target.value})}}/>			                      
+									                <Input type="textarea" placeholder="请输入备注" rows={4}  value={this.state.signComment} 
+										    				onChange={(e)=>{this.setState({signComment:e.target.value})}}/>			                      
 									        </FormItem>
 								        </div>
 				                    </div>

+ 398 - 257
js/component/manageCenter/servicesManage/projectOrder/orderOrder/projectOrderDetaile.jsx

@@ -3,32 +3,45 @@ import { Icon, Table, Modal, message, Spin, Input, Select, Button, Form ,Upload,
 import ajax from 'jquery/src/ajax/xhr.js';
 import $ from 'jquery/src/ajax';
 import '../userMangagement.less';
-import {lvl} from '../../../../dataDic.js';
+import {getApprovedState,getPaymentState,getOrderState,getOrderChannel,getOrderType} from '../../../../tools.js';
 
 const MySettlementDetaile = Form.create()(React.createClass({
-	loadData() {
+	loadData(record) {
+        this.state.data = [];
         this.setState({
             loading: true
         });
         $.ajax({
-            method: "post",
+            method: "get",
             dataType: "json",
             crossDomain: false,
-            url: globalConfig.context + '/api/admin/roles',
+            url: globalConfig.context + '/api/admin/order/getOrderCommodity',
             data: {
+            	orderNo:record?record.orderNo:this.props.datauser.orderNo
             },
             success: function (data) {
-                let theArr =[];
+                let theArr = [];
                 if (!data.data) {
                     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;
+                    for (let i = 0; i < data.data.length; i++) {
+                        let thisdata = data.data[i];
                         theArr.push({
-                             key:i,
-                             roleName5:thisdata[i].id   
+                             key: i,
+                             id:thisdata.id,
+                             orderNo:thisdata.orderNo,
+                             commodityName:thisdata.commodityName,
+                             commodityType:thisdata.commodityType,
+                             commodityMode:thisdata.commodityMode,
+                             commodityQuantity:thisdata.commodityQuantity,
+                             commodityPrice:thisdata.commodityPrice,
+                             discountPrice:thisdata.discountPrice,
+                             commodityFirstPayment:thisdata.commodityFirstPayment,
+                             createTimes:thisdata.createTimes,
+                             discountFirstPayment:thisdata.discountFirstPayment,
+                             remarks:thisdata.remarks,
                         });
                     };
                    }
@@ -43,53 +56,150 @@ const MySettlementDetaile = Form.create()(React.createClass({
             });
         }.bind(this));
     },
+    //查看流失。项目列表
+    lookSee(state) {
+    	this.state.lookSource=[];
+        this.setState({
+            loading: true
+        });
+        let api=state?'/api/xiangmu':'/api/liushui'
+        $.ajax({
+            method: "get",
+            dataType: "json",
+            crossDomain: false,
+            url: globalConfig.context + api,
+            data: {
+            	orderNo:this.props.datauser.orderNo
+            },
+            success: function (data) {
+                let theArr = [];
+                if (!data.data) {
+                    if (data.error && data.error.length) {
+                        message.warning(data.error[0].message);
+                    };
+                } else {
+                    for (let i = 0; i < data.data.length; i++) {
+                        let thisdata = data.data[i];
+                        theArr.push({
+                             key: i,
+                             id:thisdata.id,
+                             orderNo:thisdata.orderNo,
+                             commodityName:thisdata.commodityName,
+                             commodityType:thisdata.commodityType,
+                             commodityMode:thisdata.commodityMode,
+                             commodityQuantity:thisdata.commodityQuantity,
+                             commodityPrice:thisdata.commodityPrice,
+                             discountPrice:thisdata.discountPrice,
+                             commodityFirstPayment:thisdata.commodityFirstPayment,
+                             createTimes:thisdata.createTimes,
+                             discountFirstPayment:thisdata.discountFirstPayment,
+                             remarks:thisdata.remarks,
+                        });
+                    };
+                   }
+                this.setState({
+                    lookSource: theArr,
+                });
+            }.bind(this),
+        }).always(function () {
+            this.setState({
+                loading: false
+            });
+        }.bind(this));
+    },
 	getInitialState() {
 		return {
 			loading: false,
 			visible: false,
-			contractState:false,
+			lookState:true,
 			orgCodeUrl:[],
 			checkedKeys: [],
 			columns: [
 				{
                     title: '业务项目名称',
-                    dataIndex: 'roleName',
-                    key: 'roleName'
+                    dataIndex: 'commodityName',
+                    key: 'commodityName'
                 }, {
                     title: '项目类别',
-                    dataIndex: 'creater1',
-                    key: 'creater1'
+                    dataIndex: 'commodityType',
+                    key: 'commodityType',
+                    render:(text)=>{
+                    	return (getOrderType(text))
+                    }
                 },{
                     title: '项目数量',
-                    dataIndex: 'roleName2',
-                    key: 'roleName2'
+                    dataIndex: 'commodityQuantity',
+                    key: 'commodityQuantity'
+                }, {
+                    title: '服务市价',
+                    dataIndex: 'commodityPrice',
+                    key: 'commodityPrice'
+                }, {
+                    title: '实签价格',
+                    dataIndex: 'discountPrice',
+                    key: 'discountPrice'
                 }, {
                     title: '下单时间',
-                    dataIndex: 'creater4',
-                    key: 'creater4'
+                    dataIndex: 'createTimes',
+                    key: 'createTimes'
                 }, {
                     title: '项目说明',
-                    dataIndex: 'roleName5',
-                    key: 'roleName5',
-                    render:(text) => {
-                    	return(
-                    		 text?text.substr(0,6)+'...':''
-                    	)
-                    }
+                    dataIndex: 'remarks',
+                    key: 'remarks',
+					render:(text)=>{
+						return (text&&text.length>8?text.substr(0,8)+'…':text)
+					}
                 }
+			],
+			projectList:[
+				{
+                    title: '项目名称',
+                    dataIndex: 'commodityName',
+                    key: 'commodityName'
+                }, {
+                    title: '项目类别',
+                    dataIndex: 'commodityType',
+                    key: 'commodityType',
+                    render:(text)=>{
+                    	return (getOrderType(text))
+                    }
+                },{
+                    title: '项目数量',
+                    dataIndex: 'commodityQuantity',
+                    key: 'commodityQuantity'
+                },
+			],
+			flowList:[
+				{
+                    title: '流水名称',
+                    dataIndex: 'commodityName',
+                    key: 'commodityName'
+                }, {
+                    title: '流水类别',
+                    dataIndex: 'commodityType',
+                    key: 'commodityType',
+                    render:(text)=>{
+                    	return (getOrderType(text))
+                    }
+                },{
+                    title: '流水数量',
+                    dataIndex: 'commodityQuantity',
+                    key: 'commodityQuantity'
+                },
 			]
 		};
 	},
 	//查看基本详情基本信息
     loaduser(record){
     	if(record){
+    	this.state.orderList=[]
     	$.ajax({
-            method: "post",
+            method: "get",
 			dataType: "json",
 			crossDomain: false,
-			url: globalConfig.context + '/api/admin/role/rolePermission',
+			url: globalConfig.context + '/api/admin/order/getServiceOrderDetail',
             data: {
-              id: record.id
+              orderNo: record.orderNo
             },
             success: function (data) {
                 let thisData = data.data;                
@@ -100,9 +210,19 @@ const MySettlementDetaile = Form.create()(React.createClass({
                     thisData = {};
                 };
                 this.setState({
-					ids:record.id,
-                	roleName:thisData[0].rname,
-                });                  
+					id:thisData.id,
+					orderList:thisData,
+					orderAmount:thisData.orderAmount,
+					firstPayment:thisData.firstPayment,
+					signTotalAmount:thisData.signTotalAmount,
+					signFirstPayment:thisData.signFirstPayment,
+					approval:thisData.approval==0?thisData.approval.toString():thisData.approval,
+					orderRemarks:thisData.orderRemarks,
+                    orgCodeUrl: thisData.orgCodeUrl ? splitUrl(thisData.orgCodeUrl, ',', globalConfig.avatarHost + '/upload') : [],
+               		//签单
+               		orderNo:thisData.orderNo,//订单编号
+               		buyerName:thisData.buyerName,
+                });
             }.bind(this),
        }).always(function () {
             this.setState({            	
@@ -111,7 +231,6 @@ const MySettlementDetaile = Form.create()(React.createClass({
         }.bind(this));  
        }
     },
-    //编辑保存项目
 	handleOk(e) {
 		this.setState({
 			visible: false,
@@ -124,94 +243,45 @@ const MySettlementDetaile = Form.create()(React.createClass({
 		});
 		this.props.closeDesc(false);
 	},
-	
-	componentWillMount() {
-		
-	},
 	nextCancel() {
 		this.setState({
 			addnextVisible: false
 		})
 	},
-	//查看订单明细
-	orderDetails(record){
-		if(record){
-	    	$.ajax({
-	            method: "post",
-				dataType: "json",
-				crossDomain: false,
-				url: globalConfig.context + '/api/admin/role/rolePermission',
-	            data: {
-	              id: record.id
-	            },
-	            success: function (data) {
-	                let thisData = data.data;                
-	                if (!thisData) {
-	                    if (data.error && data.error.length) {
-	                        message.warning(data.error[0].message);
-	                    };
-	                    thisData = {};
-	                };
-	                let idList=[];
-	                thisData.map(function(item){
-	                	idList.push(
-	                		item.pid
-	                	)
-	                })
-	                this.setState({
-						ids:record.id,
-	                });                  
-	            }.bind(this),
-	       }).always(function () {
-	            this.setState({            	
-	                loading: false
-	            });
-	        }.bind(this));  
-	    }
+	//查看项目、查看流水
+	lookProject(){
+		this.setState({
+			lookState:true,
+			lookVisible:true,
+		})
+		this.lookSee(true)
 	},
-	//编辑订单保存
-	handleSubmit(e) {
-		e.preventDefault();
-		this.props.form.validateFields((err, values) => {
-			if(!err) {
-				this.setState({
-					loading: true
-				});
-				$.ajax({
-					method: "POST",
-					dataType: "json",
-					crossDomain: false,
-					url: globalConfig.context + '/api/000',
-					data: {
-						id:this.props.datauser.id
-					}
-				}).done(function(data) {
-					this.setState({
-						loading: false
-					});
-					if(!data.error.length) {
-						message.success('保存成功!');
-						this.handleOk()
-					} else {
-						message.warning(data.error[0].message);
-					}
-				}.bind(this));
-			}
-		});
+	lookflow(){
+		this.setState({
+			lookState:false,
+			lookVisible:true,
+		})
+		this.lookSee(false)
+	},
+	lookCancel(){
+		this.setState({
+			lookVisible:false
+		})
 	},
 	tableRowClick(record, index) {
-        this.setState({
+       this.setState({
+        	editFw:record,
         	addnextVisible:true,
         });
-        this.orderDetails(record)
     },
+	componentWillMount() {
+		
+	},
 	componentWillReceiveProps(nextProps) { //props改变时触发
 		this.state.visible = nextProps.showDesc;
 		if(nextProps.userDetaile && nextProps.showDesc ) {
-			if(nextProps.datauser && nextProps.datauser.id ) {
-				this.loaduser(nextProps.datauser);
-				this.loadData();
-			}
+			this.loaduser(nextProps.datauser);
+			this.loadData(nextProps.datauser);
 		}
 	},
 	render() {
@@ -220,145 +290,171 @@ const MySettlementDetaile = Form.create()(React.createClass({
 			labelCol: { span: 8 },
 			wrapperCol: { span: 14 },
 		};
+		const editFws=this.state.editFw || [];
 		const orderDetaiel=this.state.orderList || [];
 		return(
 			<div>
             <Modal maskClosable={false} visible={this.state.visible}
-                    onOk={this.handleOk} onCancel={this.handleCancel}
-                    width='1000px'
-                    title='编辑订单'                     
-                    footer=''
-                    className="admin-desc-content">
-		            <Form layout="horizontal" id="demand-form" style={{paddingBottom:'40px'}} onSubmit={this.handleSubmit}>
-		                <Spin spinning={this.state.loading}>
-	                        <div className="clearfix">
-	                            <div className="clearfix">
-		                       		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="订单编号" >
-			                            <span>{orderDetaiel.roleName}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="下单时间" >  
-			                            <span>{orderDetaiel.createTimez}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="客户名称" >  
-			                            <span>{orderDetaiel.roleName}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="订单类型" >  
-			                            <span>{orderDetaiel.roleName}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="订单渠道" >  
-			                            <span>{orderDetaiel.roleName}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="订单状态" >  
-			                            <span>{orderDetaiel.roleName}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="已收款项" >  
-			                            <span>{orderDetaiel.roleName}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="结算状态" >  
-			                            <span>{orderDetaiel.roleName}</span>
-		                    		</FormItem>
-				                    <div className='clearfix'>
+                        onOk={this.handleOk} onCancel={this.handleCancel}
+                        width='1000px'
+                        title='订单详情'                     
+                        footer=''
+                        className="admin-desc-content">
+			            <Form layout="horizontal" id="demand-form" style={{paddingBottom:'40px'}}  >
+			                <Spin spinning={this.state.loading}>
+		                        <div className="clearfix">
+		                            <div className="clearfix">
+			                       		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="订单编号" >
+				                            <span>{orderDetaiel.orderNo}</span>
+			                    		</FormItem>
 			                    		<FormItem className="half-item"
 				                            {...formItemLayout}
-				                            label="特批立项" >  
-				                            <Select placeholder="选择特批立项类型"
-					                            style={{ width:'240px'}}
-					                            value={this.state.orderType}
-					                            onChange={(e) => { this.setState({ orderType: e }) }}>
-					                            <Select.Option value='0'>不特批</Select.Option>
-					                            <Select.Option value='1'>申请特批</Select.Option>
-					                            <Select.Option value='2'>特批通过</Select.Option>
-					                            <Select.Option value='3'>特批驳回</Select.Option>
-					                        </Select>
-				                    		<span className="mandatory">*</span>
+				                            label="下单时间" >  
+				                            <span>{orderDetaiel.createTime}</span>
 			                    		</FormItem>
-			                    	</div>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="客户名称" >  
+				                            <span>{orderDetaiel.buyerName}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="订单类型" >  
+				                            <span>{getOrderType(orderDetaiel.orderType)}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="订单渠道" >  
+				                            <span>{getOrderChannel(orderDetaiel.orderChannel)}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="订单状态" >  
+				                            <span>{getOrderState(orderDetaiel.orderStatus)}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="已收款项" >  
+				                            <span>{orderDetaiel.actuallyTotalAmount}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="结算状态" >  
+				                            <span>{getPaymentState(orderDetaiel.liquidationStatus)}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="市价订单金额" >    
+			                            	<span>{orderDetaiel.orderAmount}</span>
+					                    </FormItem>
+					                    <FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="市价首款金额" >   
+				                            <span>{orderDetaiel.firstPayment}</span>
+					                    </FormItem>
+					                    <div className='clearfix'>
+								        	<FormItem className="half-item"
+					                            {...formItemLayout}
+					                            label="实签订单金额" >   
+					                            <span>{orderDetaiel.signTotalAmount}</span>
+				                    		</FormItem>
+				                    		<FormItem className="half-item"
+					                            {...formItemLayout}
+					                            label="实签首款金额" >   
+					                            <span>{orderDetaiel.signFirstPayment}</span>
+				                    		</FormItem>
+				                    		<FormItem className="half-item"
+					                            {...formItemLayout}
+					                            label="特批立项" >   
+					                            <span>{getApprovedState(orderDetaiel.approval)}</span>
+				                    		</FormItem>
+											<div className="clearfix">
+												<FormItem
+							                        labelCol={{ span: 4 }}
+							                        wrapperCol={{ span: 18 }}
+							                        label="合同扫描件" >
+						                            <Upload className="demandDetailShow-upload"
+						                                listType="customer_sys_file"
+						                                fileList={this.state.orgCodeUrl}
+						                                onPreview={(file) => {
+						                                    this.setState({
+						                                        previewImage: file.url || file.thumbUrl,
+						                                        previewVisible: true,
+						                                    });
+						                                }} >
+						                            </Upload>
+						                            <Modal maskClosable={false} footer={null}
+						                                visible={this.state.previewVisible}
+						                                onCancel={() => { this.setState({ previewVisible: false }) }}>
+						                                <img alt="" style={{ width: '100%' }} src={this.state.previewImage || ''} />
+						                            </Modal>
+						                        </FormItem>    
+					                        </div>
+					                        <div className='clearfix'>
+									        	<FormItem
+										            labelCol={{ span: 4 }}
+										            wrapperCol={{ span: 16 }}
+										            label="订单留言" >
+									        		<span>{orderDetaiel.orderRemarks}</span>
+										        </FormItem>
+									        </div>
+								        </div>
+			                        </div>
 			                        <div className='clearfix'>
-							        	<FormItem
-								            labelCol={{ span: 4 }}
-								            wrapperCol={{ span: 16 }}
-								            label="订单留言" >
-							        		 <Input type="textarea" placeholder="请输入订单留言" rows={4}  value={this.state.introduction} 
-													onChange={(e)=>{this.setState({introduction:e.target.value})}}/>			                      
-								        </FormItem>
-							        </div>
-		                        </div>
-		                        <div className='clearfix'>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="订单负责人" >  
-			                            <span>{orderDetaiel.roleName}</span>
-		                    		</FormItem>
-		                    	</div>
-		                    	<div className='clearfix'>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="意向时间" >  
-			                            <span>{orderDetaiel.createTimez}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="签单时间" >  
-			                            <span>{orderDetaiel.createTimez}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="财务负责人" >  
-			                            <span>{orderDetaiel.createTimez}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="首付时间" >  
-			                            <span>{orderDetaiel.createTimez}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="项目负责人" >  
-			                            <span>{orderDetaiel.roleName}</span>
-		                    		</FormItem>
-		                    		<FormItem className="half-item"
-			                            {...formItemLayout}
-			                            label="立项时间" >  
-			                            <span>{orderDetaiel.createTimez}</span>
-		                    		</FormItem>
-	                    		</div>
-				                <div>
-				                	<span style={{marginLeft:'50px',fontSize:'20px'}}>订单明细</span>
-				                </div>
-				                <div className="patent-table">
-				                    <Spin spinning={this.state.loading}>
-				                        <Table columns={this.state.columns}
-				                            dataSource={this.state.dataSource}
-				                            pagination={this.state.pagination}
-				                            onRowClick={this.tableRowClick} 
-				                            />
-				                    </Spin>
-					            </div>
-					            <div style={{marginTop:'30px',paddingLeft:'100px'}}>
-						            <Button className="setSave" type="primary" htmlType="submit" style={{marginRight:'50px'}}>保存</Button>  
-						            <Button className="cancel" type="ghost" onClick={this.handleCancel}>返回</Button>
-					            </div>
-		                    </div>
-		                </Spin>
-		            </Form >
-		        </Modal>
-		        <Modal maskClosable={false} visible={this.state.addnextVisible}
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="订单负责人" >  
+				                            <span>{orderDetaiel.salesmanName}</span>
+			                    		</FormItem>
+			                    	</div>
+			                    	<div className='clearfix'>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="意向时间" >  
+				                            <span>{orderDetaiel.createTime}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="签单时间" >  
+				                            <span>{orderDetaiel.signTime}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="财务负责人" >  
+						                    <span>{orderDetaiel.financeName}</span>
+						                    <Button onClick={this.lookflow} style={{float:'right'}}>查看流水</Button>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="项目负责人" >  
+				                            <span>{orderDetaiel.technicianName}</span>
+				                            <Button onClick={this.lookProject} style={{float:'right'}}>查看项目</Button>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="立项时间" >  
+				                            <span>{orderDetaiel.setUpTime}</span>
+			                    		</FormItem>
+		                    		</div>
+					                <div>
+					                	<span style={{marginLeft:'50px',fontSize:'20px'}}>订单明细</span>
+					                </div>
+					                <div className="patent-table">
+					                    <Spin spinning={this.state.loading}>
+					                        <Table columns={this.state.columns}
+					                            dataSource={this.state.dataSource}
+					                            pagination={this.state.pagination}
+					                            onRowClick={this.tableRowClick} 
+					                            />
+					                    </Spin>
+						            </div>
+			                    </div>
+			                </Spin>
+			            </Form >
+			        </Modal> 
+			        <Modal maskClosable={false} visible={this.state.addnextVisible}
                         onOk={this.nextCancel} onCancel={this.nextCancel}
                         width='550px'
                         title='查看订单明细服务'                     
@@ -367,31 +463,76 @@ const MySettlementDetaile = Form.create()(React.createClass({
 			            <Form layout="horizontal" id="demand-form">
 			                <Spin spinning={this.state.loading}>
 		                        <div className="clearfix">
-	                        	    <FormItem className="half-middle"
-				                            {...formItemLayout}
-				                            label="服务名称" >
-			                    			<span>{this.state.aaa}</span>
+	                        	   <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="服务名称" >
+		                    			<span>{editFws.commodityName}</span>
 			                    	</FormItem>
-			                    	<FormItem className="half-middle"
-				                            {...formItemLayout}
-				                            label="项目类别" >
-			                    			<span>{this.state.aaa}</span>
+			                    	<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="市场价格" >
+		                    			<span>{editFws.commodityPrice}</span>
 			                    	</FormItem>
-			                    	<FormItem className="half-middle"
-				                            {...formItemLayout}
-				                            label="项目数量" >
-			                    			<span>{this.state.aaa}</span>
+			                    	<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="实签价格" >
+		                    			<span>{editFws.discountPrice}</span>
 			                    	</FormItem>
-			                    	<FormItem className="half-middle"
-				                            {...formItemLayout}
-				                            label="下单时间" >
-			                    			<span>{this.state.aaa}</span>
+			                    	<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="服务数量" >
+		                    			<span>{editFws.commodityQuantity}</span>
 			                    	</FormItem>
-			                    	<FormItem className="half-middle"
-				                            {...formItemLayout}
+			                    	 <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="商品规格" >   
+		                                <span>{editFws.commodityMode}</span>    
+				                    </FormItem>
+				                    <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="市场首付金额" >   
+		                                <span>{editFws.commodityFirstPayment}</span>    
+				                    </FormItem>
+				                    <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="签单首付金额" >   
+		                                <span>{editFws.discountFirstPayment}</span>    
+				                    </FormItem>
+				                    <div className='clearfix'>
+				                    	<FormItem 
+				                            labelCol={{ span: 4 }}
+								            wrapperCol={{ span: 16 }}
 				                            label="服务说明" >
-			                    			<span>{this.state.aaa}</span>
-			                    	</FormItem>
+			                    			<span>{editFws.remarks}</span>
+				                    	</FormItem>
+			                    	</div>
+		                        </div>
+			                </Spin>
+			            </Form >
+			        </Modal>
+			        <Modal maskClosable={false} visible={this.state.lookVisible}
+                        onOk={this.lookCancel} onCancel={this.lookCancel}
+                        width='550px'
+                        title= {this.state.lookState?'查看项目':'查看流水'}                    
+                        footer=''
+                        className="admin-desc-content">
+			            <Form layout="horizontal" id="demand-form">
+			                <Spin spinning={this.state.loading}>
+		                        <div className="clearfix">
+	                        	   {this.state.lookState?
+	                        	   		<div>
+	                        	   			<Table columns={this.state.projectList}
+						                           dataSource={this.state.lookSource}
+						                           pagination={false}
+				                             />
+	                        	   		
+	                        	   		</div>:
+	                        	   		<div>
+	                        	   			<Table columns={this.state.flowList}
+						                           dataSource={this.state.lookSource}
+						                           pagination={false}
+				                             />
+	                        	   		</div>}
 		                        </div>
 			                </Spin>
 			            </Form >

+ 81 - 85
js/component/manageCenter/servicesManage/projectOrder/projectManagement/projectManage.jsx

@@ -6,35 +6,33 @@ import { Form,Radio, Icon, Button, Input, Select, Spin, Table, Switch, message,
 import MySettlementDetaile from "./projectManageDetaile.jsx";
 import moment from 'moment';
 import '../userMangagement.less';
-import {intentProgress,transactionProgress,contractProgress,projectProgress,projectState} from '../../../../dataDic.js';
-import {getIntentProgress,getTransactionProgress,getContractProgress,getProjectProgress,getProjectState} from '../../../../tools.js';
+import {projectState} from '../../../../dataDic.js';
+import {getProjectState,getOrderState,getOrderType,getPaymentState} from '../../../../tools.js';
 
 const ProjectOrder=Form.create()(React.createClass({
 	loadData(pageNo) {
-        this.state.data = [];
         this.setState({
-        	pageNo:pageNo,
             loading: true
         });
         $.ajax({
             method: "post",
             dataType: "json",
             crossDomain: false,
-            url: globalConfig.context + '/api/admin/roles',
+            url: globalConfig.context + '/api/admin/techproject/listProject',
             data: {
                 pageNo: pageNo || 1,
                 pageSize: this.state.pagination.pageSize,
-                startDate: this.state.releaseDate[0],
-				endDate: this.state.releaseDate[1],
-				departmentt:this.state.departmentt,
-				startDateOrder: this.state.releaseDateOrder[0],
-				endDateOrder: this.state.releaseDateOrder[1],
-                customerNameSearch:this.state.customerNameSearch,//客户名称
-                approvedSearch:this.state.approvedSearch, //是否特批
-                orderStatusSearch:this.state.orderStatusSearch, //订单状态
-                orderDepartmentSearch:this.state.orderDepartmentSearch, //订单部门
-                orderLeaderSearch:this.state.orderLeaderSearch,//订单负责人
+                setUpStartDate: this.state.releaseDate[0],
+				setUpEndDate: this.state.releaseDate[1],
+				depId:this.state.departmentt,
+				orderStartTime: this.state.releaseDateOrder[0],
+				orderEndTime: this.state.releaseDateOrder[1],
+                buyerName:this.state.buyerNameSearch,//客户名称
+                orderStatus:this.state.orderStatusSearch, //订单状态
+                salesmanName:this.state.salesmanNameSearch,//订单负责人
                 financeLeaderSearch:this.state.financeLeaderSearch,//财务负责人
+                orderNo:this.state.orderNoSearch,//订单编号
+                deleteSign:this.state.deleteSignSearch,//锁定激活
             },
             success: function (data) {
                 let theArr = [];
@@ -48,10 +46,17 @@ const ProjectOrder=Form.create()(React.createClass({
                         theArr.push({
                              key: i,
 	                         id: thisdata.id,
-	                         roleName: thisdata.roleName,
-	                         creater:thisdata.creater,
-	                         createTime:thisdata.createTimez,
-	                         pages:pageNo
+	                         serialNumber: thisdata.serialNumber,
+	                         signDate:thisdata.signDate,
+	                         buyerName:thisdata.buyerName,
+	                         projectType:thisdata.projectType,
+	                         projectStatus:thisdata.projectStatus,
+	                         deleteSign:thisdata.deleteSign,
+	                         orderNo:thisdata.orderNo,
+	                         orderTime:thisdata.orderTime,
+	                         orderStatus:thisdata.orderStatus,
+	                         liquidationStatus:thisdata.liquidationStatus,
+	                         approval:thisdata.approval,
                         });
                     };
                     this.state.pagination.current = data.data.pageNo;
@@ -62,6 +67,7 @@ const ProjectOrder=Form.create()(React.createClass({
 					this.state.pagination.total=0
 				}
                 this.setState({
+                	pageNo:pageNo,
                 	newProject:false,
                     dataSource: theArr,
                     pagination: this.state.pagination,
@@ -103,63 +109,61 @@ const ProjectOrder=Form.create()(React.createClass({
             },
             columns: [
                 {
-                    title: '订单编号',
-                    dataIndex: 'roleName',
-                    key: 'roleName'
+                    title: '项目编号',
+                    dataIndex: 'serialNumber',
+                    key: 'serialNumber'
                 },{
                     title: '立项时间',
-                    dataIndex: 'creater7',
-                    key: 'creater7'
+                    dataIndex: 'signDate',
+                    key: 'signDate'
                 },{
                     title: '客户名称',
-                    dataIndex: 'roleName1',
-                    key: 'roleName1'
+                    dataIndex: 'buyerName',
+                    key: 'buyerName'
                 },
                 {
                     title: '项目类型',
-                    dataIndex: 'creater1',
-                    key: 'creater1'
-                }, {
-                    title: '项目负责人',
-                    dataIndex: 'createTime1',
-                    key: 'createTime1',
-                    render:(text)=>{return getIntentProgress(text) }
+                    dataIndex: 'projectType',
+                    key: 'projectType',
+                    render:(text)=>{return getOrderType(text) }
                 },{
                     title: '项目状态',
-                    dataIndex: 'roleName2',
-                    key: 'roleName2',
-                    render:(text)=>{return getTransactionProgress(text) }
+                    dataIndex: 'projectStatus',
+                    key: 'projectStatus',
+                    render:(text)=>{return getProjectState(text) }
                 }, {
-                    title: '是否锁定',
-                    dataIndex: 'creater2',
-                    key: 'creater2',
-                    render:(text)=>{return getContractProgress(text) }
-                },{
-                    title: '是否作废',
-                    dataIndex: 'creater77',
-                    key: 'creater77',
-                    render:(text)=>{return getContractProgress(text) }
+                    title: '锁定/作废',
+                    dataIndex: 'deleteSign',
+                    key: 'deleteSign',
+                    render:(text)=>{
+                    	return
+                    	   {text==0&&<span>正常</span>}
+                    	   {text==1&&<span>作废</span>}
+                    	   {text==2&&<span>锁定</span>}
+                    }
                 },{
                     title: '订单编号',
-                    dataIndex: 'creater9',
-                    key: 'creater9',
+                    dataIndex: 'orderNo',
+                    key: 'orderNo',
                 },{
                     title: '下单时间',
-                    dataIndex: 'creater91',
-                    key: 'creater91',
+                    dataIndex: 'orderTime',
+                    key: 'orderTime',
                 },{
                     title: '订单状态',
-                    dataIndex: 'creater7700',
-                    key: 'creater7700',
-                    render:(text)=>{return getContractProgress(text) }
+                    dataIndex: 'orderStatus',
+                    key: 'orderStatus',
+                    render:(text)=>{return getOrderState(text) }
                 },{
                     title: '结算状态',
-                    dataIndex: 'creater922',
-                    key: 'creater922',
+                    dataIndex: 'liquidationStatus',
+                    key: 'liquidationStatus',
+                    render:(text)=>{return getPaymentState(text) }
                 },{
                     title: '是否特批',
-                    dataIndex: 'creater9111',
-                    key: 'creater9111',
+                    dataIndex: 'approval',
+                    key: 'approval',
+                     render:(text)=>{return (text)?'已特批':'未特批' }
                 },{
                 	title: '操作',
                     dataIndex: 'rr',
@@ -167,11 +171,10 @@ const ProjectOrder=Form.create()(React.createClass({
                     render:(text,record,index)=>{
                     	return (
                     		<div>
-								<Button style={{marginRight:'5px'}} type="primary" onClick={(e) =>{ e.stopPropagation(),this.edit(record) }}>立项</Button>                 
-								<Button style={{marginRight:'5px'}} type="primary" onClick={(e) =>{ e.stopPropagation(),this.Knot(record)}}>项目管理</Button>                 
-								<Popconfirm title={'您将作废项目【'+record.roleName+'】,系统将自动同步作废项目任务及项目资料单,请确认'} onConfirm={(e)=>{this.scrapOrder(record)}} okText="确认" cancelText="取消">
+								{record.projectStatus==2||record.projectStatus==5?<Button style={{marginRight:'5px'}} type="primary" onClick={(e) =>{ e.stopPropagation(),this.Knot(record)}}>项目管理</Button>:''}                
+								{record.projectStatus==1||record.projectStatus==5?<Popconfirm title={'您将作废项目【'+record.roleName+'】,系统将自动同步作废项目任务及项目资料单,请确认'} onConfirm={(e)=>{this.scrapOrder(record)}} okText="确认" cancelText="取消">
 							   	   <Button style={{marginRight:'5px'}} onClick={(e) =>{ e.stopPropagation()}} type="danger">作废</Button>                 
-								</Popconfirm>
+								</Popconfirm>:''}
 							</div>
 							)
                     }
@@ -361,17 +364,16 @@ const ProjectOrder=Form.create()(React.createClass({
         });
     },
     reset() {
-    	this.state.customerNameSearch='';
+    	this.state.buyerNameSearch='';
     	this.state.releaseDate[0] = undefined;
 		this.state.releaseDate[1] = undefined;
 		this.state.releaseDateOrder[0] = undefined;
 		this.state.releaseDateOrder[1] = undefined;
 		this.state.departmentt=undefined;
-		this.state.approvedSearch = undefined;
 		this.state.orderStatusSearch = undefined;
-		this.state.orderDepartmentSearch = undefined;
-		this.state.orderLeaderSearch = '';
-		this.state.financeLeaderSearch = '';
+		this.state.salesmanNameSearch = '';
+		this.state.orderNoSearch='';
+		this.state.deleteSignSearch=undefined;
         this.loadData();       
     },
     render() {
@@ -403,8 +405,8 @@ const ProjectOrder=Form.create()(React.createClass({
                 	<span style={{fontSize:'16px'}}>项目管理</span>	
 	                <div className="user-search">
 	                    <Input placeholder="客户名称" style={{width:'150px'}}
-	                        value={this.state.customerNameSearch}
-	                        onChange={(e) => { this.setState({ customerNameSearch: e.target.value }); }} />
+	                        value={this.state.buyerNameSearch}
+	                        onChange={(e) => { this.setState({ buyerNameSearch: e.target.value }); }} />
 	                    <RangePicker
 		                        value={[this.state.releaseDate[0] ? moment(this.state.releaseDate[0]) : null,
 		                        this.state.releaseDate[1] ? moment(this.state.releaseDate[1]) : null]}
@@ -418,31 +420,25 @@ const ProjectOrder=Form.create()(React.createClass({
 	                  <div className="search-more" style={this.state.searchMore ? { display: 'none' } : {}}> 
 	                        <Select placeholder="项目状态"
 	                            style={{ width: 150 ,marginRight:'10px'}}
-	                            value={this.state.orderDepartmentSearch}
-	                            onChange={(e) => { this.setState({ orderDepartmentSearch: e }) }}>
+	                            value={this.state.orderStatusSearch}
+	                            onChange={(e) => { this.setState({ orderStatusSearch: e }) }}>
 	                            {
                                     projectState.map(function (item) {
                                             return <Select.Option key={item.value} >{item.key}</Select.Option>
                                     })
                                 }
 	                        </Select>
-	                        <Select placeholder="是否锁定"
-	                            style={{ width: 150 ,marginRight:'10px'}}
-	                            value={this.state.orderDepartmentSearch}
-	                            onChange={(e) => { this.setState({ orderDepartmentSearch: e }) }}>
-	                            <Select.Option value='0'>未锁定</Select.Option>
-	                            <Select.Option value='1'>已锁定</Select.Option>
-	                        </Select>
-	                        <Select placeholder="是否作废"
+	                        <Select placeholder="锁定/作废"
 	                            style={{ width: 150 ,marginRight:'10px'}}
-	                            value={this.state.orderDepartmentSearch}
-	                            onChange={(e) => { this.setState({ orderDepartmentSearch: e }) }}>
-	                            <Select.Option value='0'>未作废</Select.Option>
-	                            <Select.Option value='1'>已作废</Select.Option>
+	                            value={this.state.deleteSignSearch}
+	                            onChange={(e) => { this.setState({ deleteSignSearch: e }) }}>
+	                            <Select.Option value='0'>正常</Select.Option>
+	                            <Select.Option value='1'>作废</Select.Option>
+	                            <Select.Option value='2'>锁定</Select.Option>
 	                        </Select>
 	                        <Input placeholder="订单编号" style={{width:'150px',margin:'10px'}}
-		                        value={this.state.customerNameSearch}
-		                        onChange={(e) => { this.setState({ customerNameSearch: e.target.value }); }} />
+		                        value={this.state.orderNoSearch}
+		                        onChange={(e) => { this.setState({ orderNoSearch: e.target.value }); }} />
 	                        <Select placeholder="选择部门" style={{width:'150px'}}
 	                            value={this.state.departmentt}
 	                            onChange={(e) => { this.setState({ departmentt: e }) }}>
@@ -453,8 +449,8 @@ const ProjectOrder=Form.create()(React.createClass({
 	                            }
 	                        </Select>
 	                        <Input placeholder="订单负责人" style={{width:'150px',margin:'10px'}}
-		                        value={this.state.customerNameSearch}
-		                        onChange={(e) => { this.setState({ customerNameSearch: e.target.value }); }} />
+		                        value={this.state.salesmanNameSearch}
+		                        onChange={(e) => { this.setState({ salesmanNameSearch: e.target.value }); }} />
 	                        <RangePicker
 		                        value={[this.state.releaseDateOrder[0] ? moment(this.state.releaseDateOrder[0]) : null,
 		                        this.state.releaseDateOrder[1] ? moment(this.state.releaseDateOrder[1]) : null]}

File diff suppressed because it is too large
+ 394 - 419
js/component/manageCenter/servicesManage/projectOrder/projectManagement/projectManageDetaile.jsx


+ 15 - 1
js/component/tools.js

@@ -68,7 +68,8 @@ import {
     projectProgress,
     orderType, orderStage, orderState,paymentState, orderChannel, approvedState, lock,paymentMethod,transactionChannel,projectState,transactionProject,
     client,
-    stick
+    stick,
+    taskStatus
 } from './dataDic.js';
 
 import { provinceList} from './NewDicProvinceList.js';
@@ -1301,4 +1302,17 @@ module.exports = {
             return theType;
         }
 	},
+	//任务状态
+	getTaskStatus:function(e){
+   		if (e||e==0) {
+   			let str=e.toString()
+            let theType = '';
+            taskStatus.map(function (item) {
+                if (item.value == str) {
+                    theType = item.key;
+                };
+            });
+            return theType;
+        }
+	},
 }