dengzhiguo 6 anni fa
parent
commit
ccc4fcb706

+ 21 - 0
js/component/dataDic.js

@@ -1133,6 +1133,17 @@ module.exports = {
         }
        
     ], 
+     //客户类型新
+    customerType:[
+        {
+            value: '0',
+            key: "私有客户"
+        }, {
+            value: '1',
+            key: "已签单客户"
+        }
+       
+    ], 
     //性别
     sex:[
         {
@@ -1938,6 +1949,16 @@ module.exports = {
 	        key: "咨询师"
 	    }
     ],
+    //订单类型新	
+    orderTypes:[
+    	 {
+	        value: "0",
+	        key: "认证项目"
+	    }, {
+	        value: "1",
+	        key: "科技项目"
+	    }
+    ],
     //订单阶段		
     orderStage:[
     	 {

+ 27 - 0
js/component/manageCenter/order/content.jsx

@@ -50,6 +50,33 @@ class Content extends Component {
                     });
                 });
                 break;
+              //订单审核新
+            case 'examine':
+                require.ensure([], () => {
+                    const Examine = require('./orderNew/examine').default;
+                    this.setState({
+                        component: <Examine />
+                    });
+                });
+                break;
+             //驳回管理新
+            case 'reject':
+                require.ensure([], () => {
+                    const Reject = require('./orderNew/reject').default;
+                    this.setState({
+                        component: <Reject />
+                    });
+                });
+                break;
+             //退单管理新
+            case 'chargeback':
+                require.ensure([], () => {
+                    const Chargeback = require('./orderNew/chargeback').default;
+                    this.setState({
+                        component: <Chargeback />
+                    });
+                });
+                break;
             case 'orderStatistics':
                 require.ensure([], () => {
                     const OrderStatistics = require('./orderStatistics/orderStatistics').default;

+ 109 - 83
js/component/manageCenter/order/orderNew/addService.jsx

@@ -3,8 +3,8 @@ 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 {orderType} from '../../../dataDic.js';  
-import {splitUrl,getOrderType,getOrderStage,getProjectState,getOrderState,getTransactionProject,getChangeState,getPaymentState,getOrderChannel,getApprovedState,getLock,getPaymentMethod,getTransactionChannel,beforeUploadFile} from '../../../tools.js';
+import {orderTypes,customerType} from '../../../dataDic.js';  
+import {splitUrl,getOrderType,getOrderStage,getProjectState,getOrderState,getTransactionProject,getChangeState,getPaymentState,getOrderChannel,getApprovedState,getLock,getPaymentMethod,getTransactionChannel,beforeUploadFile,getProcessStatus,getLiquidationStatus} from '../../../tools.js';
 const Option = AutoComplete.Option;
 //图片组件
 const PicturesWall = React.createClass({
@@ -116,6 +116,47 @@ const NewService = Form.create()(React.createClass({
             });
         }.bind(this));
     },
+    //收款节点
+    loadDatas(record) {
+        this.state.data = [];
+        this.setState({
+            loading: true
+        });
+        $.ajax({
+            method: "get",
+            dataType: "json",
+            crossDomain: false,
+            url: globalConfig.context + '/open/api/admin/newOrder/selectOrderDun',
+            data: {
+            	orderNo:record?record.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,
+                            
+                        });
+                    };
+                   }
+                this.setState({
+                    dataSource: theArr,
+                    pagination: false,
+                });
+            }.bind(this),
+        }).always(function () {
+            this.setState({
+                loading: false
+            });
+        }.bind(this));
+    },
 	getInitialState() {
 		return {
 			loading: false,
@@ -172,11 +213,12 @@ const NewService = Form.create()(React.createClass({
                     dataIndex: 'ABC',
                     key: 'ABC',
                     render: (text, record, index) => {
-						return <div style={{display:this.props.datauser.active.applySign||this.state.changeStatus==1?'block':'none'}}>
+						return 
+//						<div style={{display:this.props.datauser.active.applySign||this.state.changeStatus==1?'block':'none'}}>
 								<Popconfirm title="是否删除?" onConfirm={(e)=>{this.delectRow(record)}} okText="是" cancelText="否">
 								    <Button onClick={(e) =>{ e.stopPropagation()}} type="danger">删除</Button>                 
 								</Popconfirm>
-							</div>
+//							</div>
 							}
                 },
 			],
@@ -262,11 +304,6 @@ const NewService = Form.create()(React.createClass({
 	        	message.warning('请选择订单类型');
 	        	return false;
 	        };
-	        
-	        if(this.state.contractType==undefined&&this.state.orderType==0){
-	        	message.warning('请选择业务品类');
-	        	return false;
-	        };
         	if(!this.state.autoId){ 
 	        	message.warning('客户名称不匹配');
 	        	return false;
@@ -278,7 +315,7 @@ const NewService = Form.create()(React.createClass({
 				this.setState({
 					loading: true
 				});
-				let api=this.props.userDetaile?'/api/admin/order/updateServiceOrder':'/api/admin/order/createOrder';
+				let api=this.props.userDetaile?'/api/admin/order/updateServiceOrder':'/open/api/admin/newOrder/createOrder';
 				$.ajax({
 					method: "POST",
 					dataType: "json",
@@ -317,7 +354,7 @@ const NewService = Form.create()(React.createClass({
             method: "get",
 			dataType: "json",
 			crossDomain: false,
-			url: globalConfig.context + '/api/admin/order/getServiceOrderDetail',
+			url: globalConfig.context + '/open/api/admin/newOrder/getOrderNewDetail',
             data: {
               orderNo:record?record.orderNo:this.props.datauser.orderNo
             },
@@ -331,20 +368,28 @@ const NewService = Form.create()(React.createClass({
                 };
                 this.setState({
 					id:thisData.id,
-					changeStatus:thisData.changeStatus,
-					orderList:thisData,
-					orderAmount:thisData.orderAmount,
-					firstPayment:thisData.firstPayment,
-					signTotalAmount:thisData.signTotalAmount,
-					signFirstPayment:thisData.signFirstPayment,
+					orderNo:thisData.orderNo,//订单编号
+					orderType:thisData.orderType,//订单类型
+					firstAmount:thisData.firstAmount,//总金额
+					totalAmount:thisData.totalAmount,//首付金额
+					settlementAmount:thisData.settlementAmount,//结算金额
+					liquidationStatus:thisData.liquidationStatus,//清算状态
+					processStatus:thisData.processStatus,//流程状态
+					approval:thisData.approval,//特批状态
+               		orderRemarks:thisData.orderRemarks,//订单备注
+               		contractNo:thisData.contractNo,//合同编号
+               		contacts:thisData.contacts,//联系人
+               		contactMobile:thisData.contactMobile,//联系人电话
+               		legalPerson:thisData.legalPerson,//法人
+               		legalPersonTel:thisData.legalPersonTel,//法人电话
+               		contractNo:thisData.contractNo,//合同编号
+					orgCodeUrl: thisData.contractPictureUrl ? splitUrl(thisData.contractPictureUrl, ',', globalConfig.avatarHost + '/upload') : [],//图片地址
+					signDate:thisData.signDate,//签单时间
+					userName:thisData.userName,//客户名称
+					salesmanName:thisData.salesmanName,//营销员名称
+					financeName:thisData.financeName,//财务名称
+					contractNo:thisData.contractNo,//合同编号
 					approval:thisData.approval==0?thisData.approval.toString():thisData.approval,
-					orderRemarks:thisData.orderRemarks,
-                    orgCodeUrl: thisData.contractPictureUrl ? splitUrl(thisData.contractPictureUrl, ',', globalConfig.avatarHost + '/upload') : [],
-               		//签单
-               		orderNo:thisData.orderNo,//订单编号
-               		buyerName:thisData.buyerName,
-               		contractNo:thisData.contractNo,
-               		buyerId:thisData.buyerId,
                 });
             }.bind(this),
        }).always(function () {
@@ -1152,7 +1197,7 @@ const NewService = Form.create()(React.createClass({
 				customerArr:[],
 				contractType:undefined,
 				bussStats:false,
-				customType:0
+				customType:undefined
 			})
 		}
 	},
@@ -1193,9 +1238,9 @@ const NewService = Form.create()(React.createClass({
 							                            <Select placeholder="请选择订单类型"
 								                            style={{ width:'200px'}}
 								                            value={this.state.orderType}
-								                            onChange={this.orderTypeFn}>
+								                            onChange={(e)=>{this.setState({orderType:e})}}>
 								                            {
-							                                    orderType.map(function (item) {
+							                                    orderTypes.map(function (item) {
 							                                            return <Select.Option key={item.value} >{item.key}</Select.Option>
 							                                    })
 							                                }
@@ -1203,32 +1248,18 @@ const NewService = Form.create()(React.createClass({
 							                    		<span className="mandatory">*</span>
 							                    </FormItem>
 							                </div>
-							                {this.state.bussStats&&<div className="clearfix">
-						                    	<FormItem 
-							                            {...formItemLayout}
-							                            label="业务品类" > 
-							                            <Select placeholder="请选择业务品类"
-								                            style={{ width:'200px'}}
-								                            value={this.state.contractType}
-								                            onChange={(e)=>{this.setState({contractType:e})}}>
-								                            {
-							                                    categoryList.map(function (item) {
-							                                            return <Select.Option key={item.id} >{item.name}</Select.Option>
-							                                    })
-							                                }
-								                        </Select>
-							                    		<span className="mandatory">*</span>
-							                    </FormItem>
-							                </div>}
 							                <FormItem 
 					                            {...formItemLayout}
 					                            label="客户所属类型" > 
-											     <Select placeholder="请选择业务品类"
+											     <Select placeholder="请选择客户所属类型"
 							                            style={{ width:'200px'}}
 							                            value={this.state.customType}
 							                            onChange={(e)=>{this.setState({customType:e})}}>
-							                            <option key={0}>私有客户</option>
-							                            <option key={1}>已签单客户</option>
+							                            {
+						                                    customerType.map(function (item) {
+						                                        return <Select.Option key={item.value} >{item.key}</Select.Option>
+						                                    })
+						                                }
 							                     </Select>
 							                </FormItem>
 							                <div className="clearfix">
@@ -1254,11 +1285,16 @@ const NewService = Form.create()(React.createClass({
 													      <span className="mandatory">*</span>
 							                    </FormItem>
 							                </div>
-						                </div>:<div className="clearfix">
+							                 <div className='addSave' style={{marginTop:'15px'}}>
+							                   <Button className="cancel" type="primary" onClick={this.handleCancel} style={{marginLeft:"150px"}} htmlType="submit">开单</Button>
+				                               <Button className="cancel" type="ghost" onClick={this.handleCancel} style={{marginLeft:"50px"}}>取消</Button>
+			                            	</div>
+						                </div>
+						                :<div className="clearfix">
 						                       		<FormItem className="half-item"
 							                            {...formItemLayout}
 							                            label="订单编号" >
-							                            <span>{orderDetaiel.orderNo}</span>
+							                            <span>{this.state.orderNo}</span>
 						                    		</FormItem>
 						                    		<FormItem className="half-item"
 							                            {...formItemLayout}
@@ -1267,8 +1303,8 @@ const NewService = Form.create()(React.createClass({
 							                              style={{marginTop:"2px",width: '240px',height:"32px" }}
 													      showTime
 													      format="YYYY-MM-DD"
-													      placeholder="选择签单时间"
-													      value={this.state.entryTime}
+													      placeholder="合同签订时间"
+													      value={this.state.signDate}
 													      onChange={(e,time)=>{this.selTime(e,time)}}
 													    />
 													    <span className="mandatory">*</span>
@@ -1276,56 +1312,56 @@ const NewService = Form.create()(React.createClass({
 						                    		<FormItem className="half-item"
 							                            {...formItemLayout}
 							                            label="客户名称" >  
-							                            <span>{orderDetaiel.buyerName}</span>
+							                            <span>{this.state.userName}</span>
 						                    		</FormItem>
 						                    		<FormItem className="half-item"
 							                            {...formItemLayout}
 							                            label="流程状态" >  
-							                            <span>{getOrderType(orderDetaiel.orderType)}</span>
+							                            <span>{getProcessStatus(this.state.processStatus)}</span>
 						                    		</FormItem>
 						                    		<FormItem className="half-item"
 							                            {...formItemLayout}
 							                            label="结算状态" >  
-							                            <span>{getOrderState(orderDetaiel.orderStatus)}</span>
+							                            <span>{getLiquidationStatus(this.state.liquidationStatus)}</span>
 						                    		</FormItem>
 						                    		<FormItem className="half-item"
 							                            {...formItemLayout}
 							                            label="已收款项" >  
-							                            <span>{orderDetaiel.actuallyTotalAmount+'万元'}</span>
+							                            <span>{this.state.settlementAmount+'万元'}</span>
 						                    		</FormItem>
 						                    		<FormItem className="half-item"
 							                            {...formItemLayout}
 							                            label="企业联系人" >                             
-						                                    <Input placeholder="请输入联系人" ref='signTotalAmount' value={this.state.signTotalAmount} onChange={(e)=>{this.setState({signTotalAmount:e.target.value})}} style={{width:'240px'}} />
+						                                    <Input placeholder="请输入联系人" ref='signTotalAmount' value={this.state.contacts} onChange={(e)=>{this.setState({contacts:e.target.value})}} style={{width:'240px'}} />
 								                   			<span className="mandatory">*</span>
 								                    </FormItem>
 								                     <FormItem className="half-item"
 							                            {...formItemLayout}
 							                            label="联系人电话" >                             
-						                                    <Input placeholder="请输入联系人电话" ref='signTotalAmount' value={this.state.signTotalAmount} onChange={(e)=>{this.setState({signTotalAmount:e.target.value})}} style={{width:'240px'}} />
+						                                    <Input placeholder="请输入联系人电话" ref='signTotalAmount' value={this.state.contactMobile} onChange={(e)=>{this.setState({contactMobile:e.target.value})}} style={{width:'240px'}} />
 								                   			<span className="mandatory">*</span>
 								                    </FormItem>
 								                    <FormItem className="half-item"
 							                            {...formItemLayout}
 							                            label="企业法人" >                             
-						                                    <Input placeholder="请输入法人" ref='signTotalAmount' value={this.state.signTotalAmount} onChange={(e)=>{this.setState({signTotalAmount:e.target.value})}} style={{width:'240px'}} />
+						                                    <Input placeholder="请输入法人" ref='signTotalAmount' value={this.state.legalPerson} onChange={(e)=>{this.setState({legalPerson:e.target.value})}} style={{width:'240px'}} />
 								                    </FormItem>
 								                     <FormItem className="half-item"
 							                            {...formItemLayout}
 							                            label="法人电话" >                             
-						                                    <Input placeholder="请输入法人电话" ref='signTotalAmount' value={this.state.signTotalAmount} onChange={(e)=>{this.setState({signTotalAmount:e.target.value})}} style={{width:'240px'}} />
+						                                    <Input placeholder="请输入法人电话" ref='signTotalAmount' value={this.state.legalPersonTel} onChange={(e)=>{this.setState({legalPersonTel:e.target.value})}} style={{width:'240px'}} />
 								                    </FormItem>
 							                    	<div className='clearfix'>
 									                    <FormItem className="half-item"
 								                            {...formItemLayout}
 								                            label="签单金额(万元)" >                             
-							                                    <Input placeholder="签单金额" ref='signTotalAmount' value={this.state.signTotalAmount} onChange={(e)=>{this.setState({signTotalAmount:e.target.value})}} style={{width:'240px'}} />
+							                                    <Input placeholder="签单金额" ref='signTotalAmount' value={this.state.firstAmount} onChange={(e)=>{this.setState({firstAmount:e.target.value})}} style={{width:'240px'}} />
 									                   			<span className="mandatory">*</span>
 									                    </FormItem>
 									                    <FormItem className="half-item"
 									                            {...formItemLayout}
 									                            label="首付金额(万元)" >                             
-								                                    <Input placeholder="请输入实签首款金额" ref='signFirstPayment' value={this.state.signFirstPayment} onChange={(e)=>{this.setState({signFirstPayment:e.target.value})}} style={{width:'240px'}} />
+								                                    <Input placeholder="请输入实签首款金额" ref='signFirstPayment' value={this.state.totalAmount} onChange={(e)=>{this.setState({totalAmount:e.target.value})}} style={{width:'240px'}} />
 									                    		<span className="mandatory">*</span>
 									                    </FormItem>
 							                    		<FormItem className="half-item"
@@ -1370,7 +1406,7 @@ const NewService = Form.create()(React.createClass({
 							                    		<FormItem className="half-item"
 								                            {...formItemLayout}
 								                            label="订单负责人" >  
-								                            <span>{orderDetaiel.salesmanName}</span>
+								                            <span>{this.state.salesmanName}</span>
 							                    		</FormItem>
 							                    		<FormItem className="half-item"
 								                            {...formItemLayout}
@@ -1382,7 +1418,7 @@ const NewService = Form.create()(React.createClass({
 							                    		<FormItem className="half-item"
 								                            {...formItemLayout}
 								                            label="财务负责人" >  
-								                            <span>{orderDetaiel.salesmanName}</span>
+								                            <span>{this.state.financeName}</span>
 							                    		</FormItem>
 							                    		<FormItem className="half-item"
 								                            {...formItemLayout}
@@ -1392,7 +1428,7 @@ const NewService = Form.create()(React.createClass({
 							                    	</div>
 					                    		<div>
 								                	<span style={{marginLeft:'50px',fontSize:'20px'}}>项目业务</span>
-								                	{this.props.datauser.active.applySign||orderDetaiel.changeStatus==1?<Button type='primary' onClick={this.addDetailed} style={{float:'right',marginRight:'50px',marginBottom:'15px'}}>添加明细</Button>:''}
+								                	<Button type='primary' onClick={this.addDetailed} style={{float:'right',marginRight:'50px',marginBottom:'15px'}}>添加明细</Button>
 								                </div>
 								                <div className="patent-table">
 								                    <Spin spinning={this.state.loading}>
@@ -1403,12 +1439,12 @@ const NewService = Form.create()(React.createClass({
 								                            />
 								                    </Spin>
 									            </div>
+									            <div className='addSave' style={{marginTop:'15px'}}>
+								                   <Button className="cancel" type="primary" onClick={this.handleCancel} style={{marginLeft:"200px"}} htmlType="submit">签单</Button>
+								                   <Button className="cancel" type="primary" onClick={this.handleCancel} style={{marginLeft:"50px"}} htmlType="submit">保存</Button>
+					                               <Button className="cancel" type="ghost" onClick={this.handleCancel} style={{marginLeft:"50px"}}>取消</Button>
+				                            	</div>
 					                        </div>}
-						               		<div className='addSave' style={{marginTop:'15px'}}>
-							                   <Button className="cancel" type="primary" onClick={this.handleCancel} style={{marginLeft:"200px"}} htmlType="submit">签单</Button>
-							                   <Button className="cancel" type="primary" onClick={this.handleCancel} style={{marginLeft:"50px"}} htmlType="submit">保存</Button>
-				                                <Button className="cancel" type="ghost" onClick={this.handleCancel} style={{marginLeft:"50px"}}>取消</Button>
-			                            </div>
 				                    </div>
 			                </Spin>
 			            </Form >
@@ -1503,35 +1539,25 @@ const NewService = Form.create()(React.createClass({
 					                            label="市场首付金额" >   
 				                                <span>{editFws.commodityFirstPayment+'万元'}</span>    
 					                    </FormItem>
-				                    	{this.state.active.applySign?<FormItem className="half-item"
+				                    	<FormItem className="half-item"
 					                            {...formItemLayout}
 					                            label="实签价格(万元)" >
 				                    			<Input placeholder="请输入签单首付金额" value={this.state.discountPrice} style={{width:'200px'}}
 				                                    onChange={(e)=>{this.setState({discountPrice:e.target.value})}} />
 				                                <span className="mandatory">*</span>      
-				                    	</FormItem>:
-				                    	<FormItem className="half-item"
-					                            {...formItemLayout}
-					                            label="实签价格" >
-				                                <span>{this.state.discountPrice+'万元'}</span>      
-				                    	</FormItem>}
+				                    	</FormItem>
 				                    	<FormItem className="half-item"
 					                            {...formItemLayout}
 					                            label="服务数量" >
 				                    			<span>{editFws.commodityQuantity}</span>
 				                    	</FormItem>
-					                    {this.state.active.applySign?<FormItem className="half-item"
+					                    <FormItem className="half-item"
 					                            {...formItemLayout}
 					                            label="签单首付金额(万元)" >  
 					                            <Input placeholder="请输入签单首付金额" value={this.state.discountFirstPayment} style={{width:'200px'}}
 				                                    onChange={(e)=>{this.setState({discountFirstPayment:e.target.value})}}  />
 				                                <span className="mandatory">*</span>     
-					                    </FormItem>:
-					                    <FormItem className="half-item"
-					                            {...formItemLayout}
-					                            label="签单首付金额" >  
-				                                <span>{this.state.discountFirstPayment+'万元'}</span> 
-					                    </FormItem>}
+					                    </FormItem>
 					                    <div className='clearfix'>
 					                    	<FormItem 
 						                            labelCol={{ span: 4 }}

+ 27 - 38
js/component/manageCenter/order/orderNew/billing.jsx

@@ -7,7 +7,7 @@ import NewService from "./addService.jsx";
 import moment from 'moment';
 import '../userMangagement.less';
 import {intentProgress,transactionProgress,contractProgress,projectProgress,orderType, orderStage, orderState,paymentState,specially,specialBatchState, projectState,orderChannel, approvedState, lock,paymentMethod,transactionChannel} from '../../../dataDic.js';
-import {getIntentProgress,getTransactionProgress,getProjectState,getContractProgress,getProjectProgress,splitUrl,getOrderType,getOrderStage,getOrderState,getPaymentState,getOrderChannel,getApprovedState,getLock,getPaymentMethod,getTransactionChannel} from '../../../tools.js';
+import {getIntentProgress,getTransactionProgress,getProjectState,getContractProgress,getProjectProgress,splitUrl,getOrderType,getOrderStage,getOrderState,getOrderChannel,getApprovedState,getLock,getPaymentMethod,getTransactionChannel,getProcessStatus,getLiquidationStatus} from '../../../tools.js';
 
 const MyService=Form.create()(React.createClass({
 	loadData(pageNo) {
@@ -16,24 +16,17 @@ const MyService=Form.create()(React.createClass({
             loading: true
         });
         $.ajax({
-            method: "post",
+            method: "get",
             dataType: "json",
             crossDomain: false,
-            url: globalConfig.context + '/api/admin/order/listServiceOrder',
+            url: globalConfig.context + '/open/api/admin/newOrder/orderNewList',
             data: {
                 pageNo: pageNo || 1,
                 pageSize: this.state.pagination.pageSize,
-                buyerName:this.state.customerName,
+                name:this.state.customerName,
                 orderNo:this.state.orderNo,
-                startDate: this.state.releaseDate[0],
-				endDate: this.state.releaseDate[1],
-				projectStage:this.state.projectProgress,
-				liquidationStatus:this.state.settlementState, //结算
-				orderStatus:this.state.orderStatusSearch,
-				approval:this.state.approval,
-				orderChannel:this.state.orderChannelSearch,
-				intention:this.state.intentOrder?1:0,
-				formal:this.state.formalOrder?1:0,
+                starTime: this.state.releaseDate[0],
+				endTime: this.state.releaseDate[1],
             },
             success: function (data) {
                 let theArr = [];
@@ -48,19 +41,15 @@ const MyService=Form.create()(React.createClass({
                              key: i,
 	                         id: thisdata.id,
 	                         orderNo: thisdata.orderNo,//订单编号
-	                         orderType:thisdata.orderType,//订单类型
-	                         orderStatus:thisdata.orderStatus,
-	                         liquidationStatus:thisdata.liquidationStatus,
-	                         createTime:thisdata.createTime,
-	                         buyerName:thisdata.buyerName,
-	                         signTotalAmount:thisdata.signTotalAmount,
-	                         projectStage:thisdata.projectStage,
-	                         approval:thisdata.approval,
-	                         orderChannel:thisdata.orderChannel,
-	                         salesmanName:thisdata.salesmanName,
-	                         active:thisdata.active,
-	                         signTime:thisdata.signTime,
-	                         financeName:thisdata.financeName
+	                         totalAmount:thisdata.totalAmount,//签单金额
+	                         processStatus:thisdata.processStatus,//流程状态
+	                         liquidationStatus:thisdata.liquidationStatus,//结算状态
+	                         approval:thisdata.approval,//特批状态
+	                         signDate:thisdata.signDate,//签单时间
+	                         userName:thisdata.userName,//客户名称
+	                         salesmanName:thisdata.salesmanName,//营销员名称
+	                         financeName:thisdata.financeName,//财务名称
+	                         createDate:thisdata.createDate,//下单时间
                         });
                     };
                     this.state.pagination.current = data.data.pageNo;
@@ -114,33 +103,33 @@ const MyService=Form.create()(React.createClass({
                     key: 'orderNo'
                 }, {
                     title: '下单时间',
-                    dataIndex: 'createTime',
+                    dataIndex: 'createDate',
                     key: 'createTime'
                 },{
                     title: '合同签订时间',
-                    dataIndex: 'signTime',
-                    key: 'signTime'
+                    dataIndex: 'signDate',
+                    key: 'signDate'
                 },{
                     title: '客户名称',
-                    dataIndex: 'buyerName',
-                    key: 'buyerName',
+                    dataIndex: 'userName',
+                    key: 'userName',
                     render:(text)=>{
-                    	return (text&&text.length>8?text.substr(0,8)+'...':text)
+                    	return (text&&text.length>9?text.substr(0,9)+'...':text)
                     }
                 }, {
                     title: '流程状态',
-                    dataIndex: 'projectStage',
-                    key: 'projectStage',
-                    render:text=>{return getProjectState(text)}
+                    dataIndex: 'processStatus',
+                    key: 'processStatus',
+                    render:text=>{return getProcessStatus(text)}
                 }, {
                     title: '签单金额(万元)',
-                    dataIndex: 'signTotalAmount',
-                    key: 'signTotalAmount'
+                    dataIndex: 'totalAmount',
+                    key: 'totalAmount'
                 },{
                     title: '结算状态',
                     dataIndex: 'liquidationStatus',
                     key: 'liquidationStatus',
-                    render:text=>{return getPaymentState(text)}
+                    render:text=>{return getLiquidationStatus(text)}
                 }, {
                     title: '是否特批',
                     dataIndex: 'approval',

+ 0 - 0
js/component/manageCenter/order/orderNew/chargeback.jsx


+ 31 - 0
js/component/manageCenter/order/orderNew/customer.less

@@ -0,0 +1,31 @@
+.mandatory{
+    margin-left: 5px;
+    color: red;
+    font-size: 14px;
+}
+.setSubmit{
+    margin-left: 210px;
+    margin-right: 40px;
+    margin-bottom: 50px;
+}
+.set-submit{
+    margin-left: 100px;
+    margin-right: 40px;
+    margin-bottom: 50px;
+}
+.pager{
+    list-style: none;
+    padding-left: 200px;
+    margin-bottom: 20px;
+}
+.pager li{
+    display:inline-block;
+    margin-left:100px;
+    font-size: 18px;
+    
+}
+.pager li.disabled{
+    color:#ccc
+}
+.ant-upload-list{display:inline-block}
+.ant-upload-list-item{height:19px;margin-top:0px;}

+ 559 - 0
js/component/manageCenter/order/orderNew/examine.jsx

@@ -0,0 +1,559 @@
+import React from 'react';
+import { Radio, Icon, Button, AutoComplete,Cascader,Input, Select, Spin, Popconfirm, Table, Switch, message,Calendar , DatePicker, Upload, Form ,Modal,Tabs,Card } from 'antd';
+import ajax from 'jquery/src/ajax/xhr.js';
+import $ from 'jquery/src/ajax';
+import Jquery from 'jquery/dist/jquery.js';
+import moment from 'moment';
+import { } from '@/dataDic.js';
+import { getLiquidationStatus,getApprovedState,getProcessStatus} from '@/tools.js';
+import './customer.less';
+const TabPane = Tabs.TabPane;
+const Dragger = Upload.Dragger;
+//图片组件
+const PicturesWall = React.createClass({
+	getInitialState() {
+		return {
+			previewVisible: false,
+			previewImage: '',
+			fileList: [],
+		}
+	},
+	handleCancel() {
+		this.setState({
+			previewVisible: false
+		})
+	},
+	handlePreview(file) {
+		this.setState({
+			previewImage: file.url || file.thumbUrl,
+			previewVisible: true,
+		});
+	},
+	handleChange(info) {
+		let fileList = info.fileList;
+		this.setState({
+			fileList
+		});
+		this.props.fileList(fileList);
+	},
+	componentWillReceiveProps(nextProps) {
+		this.state.fileList = nextProps.pictureUrl;
+		this.state.pojectApplicationUrl = undefined;
+	},
+	render() {
+		const {
+			previewVisible,
+			previewImage,
+			fileList
+		} = this.state;
+		const uploadButton = (
+			<div>
+                <Icon type="plus" />
+                <div className="ant-upload-text">点击上传</div>
+            </div>
+		);
+		return(
+			<div style={{display:"inline-block"}}>
+                <Upload
+                    action={globalConfig.context + "/api/admin/customer/uploadCustomerImg"}
+                    data={{ 'sign': '' }}
+                    listType="picture-card"
+                    fileList={fileList}
+                    onPreview={this.handlePreview}
+                    onChange={this.handleChange} >
+                    {fileList.length >= 1 ? null : uploadButton}
+                </Upload>
+                <Modal maskClosable={false} visible={previewVisible} footer={null} onCancel={this.handleCancel}>
+                    <img alt="example" style={{ width: '100%' }} src={previewImage} />
+                </Modal>
+            </div>
+		);
+	}
+});
+
+
+const IntentionCustomer = Form.create()(React.createClass({
+	loadData(pageNo, apiUrl) {
+		this.setState({
+			visitModul:false,
+			loading: true,
+			ispage:pageNo,
+			modalVisible:false
+		});
+		$.ajax({
+			method: "get",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +"/open/api/admin/newOrder/orderNewList",
+			data: {
+				pageNo: pageNo || 1,
+				pageSize: this.state.pagination.pageSize,
+				processStatus: 1,//审核列表
+				name: this.state.name,//名称
+				orderNo: this.state.orderNo,//订单编号
+				starTime: this.state.releaseDate[0],//开始时间
+				endTime: this.state.releaseDate[1],//结束时间
+			},
+			success: function(data) {
+				let theArr = [];
+				if(data.error.length || data.data.list == "") {
+					if(data.error && data.error.length) {
+						message.warning(data.error[0].message);
+					};
+				} else {
+					for(let i = 0; i < data.data.list.length; i++) {
+						let thisdata = data.data.list[i];
+						let diqu=(thisdata.province==null?"":thisdata.province)+(thisdata.city==null?"":"-"+thisdata.city)+(thisdata.area==null?"":"-"+thisdata.area);
+						theArr.push({
+							 key: i,
+							 id: thisdata.id,//用户ID
+							 orderNo: thisdata.orderNo,//订单编号
+	                         totalAmount:thisdata.totalAmount,//签单金额
+	                         processStatus:thisdata.processStatus,//流程状态
+	                         liquidationStatus:thisdata.liquidationStatus,//结算状态
+	                         approval:thisdata.approval,//特批状态
+	                         signDate:thisdata.signDate,//签单时间
+	                         userName:thisdata.userName,//客户名称
+	                         salesmanName:thisdata.salesmanName,//营销员名称
+	                         financeName:thisdata.financeName,//财务名称
+	                         createDate:thisdata.createDate,//下单时间
+						});
+					};
+					this.state.pagination.current = data.data.pageNo;
+				    this.state.pagination.total = data.data.totalCount;
+				};
+				if(data.data&&data.data.list&&!data.data.list.length){
+					this.state.pagination.current=0
+					this.state.pagination.total=0
+				}
+				this.setState({
+					dataSource: theArr,
+					pageNo: pageNo,
+					pagination: this.state.pagination,
+					selectedRowKeys:[]
+				});
+			}.bind(this),
+		}).always(function() {
+			this.setState({
+				loading: false
+			});
+		}.bind(this));
+	},
+	getInitialState() {
+		return {
+			page:1,
+			releaseDate: [],
+			selectedRowKeys: [],
+			orgCodeUrl:[],
+			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: 'orderNo',
+                    key: 'orderNo'
+                }, {
+                    title: '下单时间',
+                    dataIndex: 'createDate',
+                    key: 'createTime'
+                },{
+                    title: '合同签订时间',
+                    dataIndex: 'signDate',
+                    key: 'signDate'
+                },{
+                    title: '客户名称',
+                    dataIndex: 'userName',
+                    key: 'userName',
+                    render:(text)=>{
+                    	return (text&&text.length>9?text.substr(0,9)+'...':text)
+                    }
+                }, {
+                    title: '流程状态',
+                    dataIndex: 'processStatus',
+                    key: 'processStatus',
+                    render:text=>{return getProcessStatus(text)}
+                }, {
+                    title: '签单金额(万元)',
+                    dataIndex: 'totalAmount',
+                    key: 'totalAmount'
+                },{
+                    title: '结算状态',
+                    dataIndex: 'liquidationStatus',
+                    key: 'liquidationStatus',
+                    render:text=>{return getLiquidationStatus(text)}
+                }, {
+                    title: '是否特批',
+                    dataIndex: 'approval',
+                    key: 'approval',
+                    render:text=>{return getApprovedState(text)}
+                },{
+                    title: '订单负责人',
+                    dataIndex: 'salesmanName',
+                    key: 'salesmanName'
+                },{
+                    title: '财务负责人',
+                    dataIndex: 'financeName',
+                    key: 'financeName'
+                }
+			],
+			data: [],
+			dataSource: [],
+		}
+	},
+	//页面加载函数
+	componentWillMount() {
+		this.loadData();
+	},
+	//整行点击
+	tableRowClick(record, index) {
+		this.setState({
+			visible:true,
+		});
+		this.xiangqing(record.orderNo);
+		this.xiangmu(record.orderNo);
+		this.jiedian(record.orderNo);
+	},	
+	xiangqing(orderNos) {
+		$.ajax({
+			method: "get",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +"/open/api/admin/newOrder/getOrderNewDetail",
+			data: {
+				orderNo:orderNos
+			},
+			success: function(data) {
+				let theArr = [];
+				
+				if(data.error.length || data.data.list == "") {
+					if(data.error && data.error.length) {
+						message.warning(data.error[0].message);
+					};
+				} else {
+					let thisdata=data.data;
+					this.setState({
+						 orderNo: thisdata.orderNo,//订单编号
+						 contractNo: thisdata.contractNo,//合同编号
+						 userName:thisdata.userName,//客户名称
+						 signDate:thisdata.signDate,//签单时间
+						 processStatus:thisdata.processStatus,//流程状态
+	                     liquidationStatus:thisdata.liquidationStatus,//结算状态
+	                     contacts:thisdata.contacts,//企业联系人
+	                     contactMobile:thisdata.contactMobile,//联系人电话
+	                     legalPerson:thisdata.legalPerson,//法人
+	                     legalPersonTel:thisdata.legalPersonTel,//法人电话
+	                     firstAmount:thisdata.firstAmount,//签单金额
+	                     totalAmount:thisdata.totalAmount,//首付金额
+	                     approval:thisdata.approval,//特批状态
+	                     settlementAmount:thisdata.settlementAmount,//已收款项
+	                     orderRemarks:thisdata.orderRemarks,//订单留言
+	                     orgCodeUrl: thisdata.contractPictureUrl ? splitUrl(thisdata.contractPictureUrl, ',', globalConfig.avatarHost + '/upload') : [],//图片地址
+	                     salesmanName:thisdata.salesmanName,//营销员名称
+	                     salesmanMobile:thisdata.salesmanMobile,//营销员电话
+	                     financeName:thisdata.financeName,//财务名称
+	                     financeMobile:thisdata.financeMobile,//财务电话
+					})
+				};
+				
+			}.bind(this),
+		}).always(function() {
+			this.setState({
+				loading: false
+			});
+		}.bind(this));
+	},
+	xiangmu(orderNos) {
+		$.ajax({
+			method: "get",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +"/open/api/admin/newOrder/getOrderTask",
+			data: {
+				orderNo:orderNos
+			},
+			success: function(data) {
+				let theArr = [];
+				
+				if(data.error.length || data.data.list == "") {
+					if(data.error && data.error.length) {
+						message.warning(data.error[0].message);
+					};
+				} else {
+					let thisdata=data.data;
+					this.setState({
+						 
+					})
+				};
+				
+			}.bind(this),
+		}).always(function() {
+			this.setState({
+				loading: false
+			});
+		}.bind(this));
+	},
+	jiedian(orderNos) {
+		$.ajax({
+			method: "get",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +"/open/api/admin/newOrder/selectOrderDun",
+			data: {
+				orderNo:orderNos
+			},
+			success: function(data) {
+				let theArr = [];
+				
+				if(data.error.length || data.data.list == "") {
+					if(data.error && data.error.length) {
+						message.warning(data.error[0].message);
+					};
+				} else {
+					let thisdata=data.data;
+					this.setState({
+						 
+					})
+				};
+				
+			}.bind(this),
+		}).always(function() {
+			this.setState({
+				loading: false
+			});
+		}.bind(this));
+	},
+	getOrgCodeUrl(e) {
+        this.setState({ orgCodeUrl: e });
+    },
+	//关闭详情
+	visitCancel(e){
+		this.setState({
+			visible:false
+		})
+	},
+	visitOk(e){
+		this.setState({
+			visible:false
+		})
+	},
+	render() {
+		const formItemLayout = {
+			labelCol: { span: 8 },
+			wrapperCol: { span: 14 },
+		};
+		const FormItem = Form.Item;
+		const { RangePicker } = DatePicker;
+		const rowSelection = {
+			selectedRowKeys: this.state.selectedRowKeys,
+			onChange: (selectedRowKeys, selectedRows) => {
+				this.setState({
+					modalVisible:false,
+					selectedRows: selectedRows.slice(-1),
+					selectedRowKeys: selectedRowKeys.slice(-1)
+				});
+			},
+			onSelect: (recordt, selected, selectedRows) => {
+				this.setState({
+					modalVisible:false,
+					recordt: recordt.id
+				})
+			},
+		};
+		const hasSelected = this.state.selectedRowKeys.length > 0;
+		return(
+			<div className="user-content">
+				<div className="content-title">                  
+                    <span>订单审核</span>
+                </div>
+               	<div className="user-search">                    
+                   <Input placeholder="客户名称" style={{width:'150px'}}
+	                        value={this.state.customerName}
+	                        onChange={(e) => { this.setState({ customerName: e.target.value }); }} />
+                    <Input placeholder="订单编号" style={{width:'150px'}}
+                        value={this.state.orderNo}
+                        onChange={(e) => { this.setState({ orderNo: e.target.value }); }} />
+                    <span style={{marginRight:"10px"}}>合同签订时间 :</span>
+                    <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}>搜索</Button>
+                    <Button onClick={this.reset}>重置</Button> 
+                   	<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> 
+               		<Modal	
+				      className="customeDetails"
+				      footer=''
+			          title="订单详情"
+			          width='900px'
+			          visible={this.state.visible}
+			          onOk={this.visitOk}
+					  onCancel={this.visitCancel}							          							          
+			        >	
+				        <Form layout="horizontal" onSubmit={this.handleSubmit} id="demand-form" style={{paddingBottom:'40px'}} >
+				            <Spin spinning={this.state.loading}>
+				                <div className="clearfix">
+				                	<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="订单编号" >
+			                            <span>{this.state.orderNo}</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="合同编号" >  
+			                            <span>{this.state.contractNo}</span>
+				                    </FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="客户名称" >  
+			                            <span>{this.state.userName}</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="合同签订时间" >   
+			                            <span>{this.state.signDate}</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="流程状态" >  
+			                            <span>{getProcessStatus(this.state.processStatus)}</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="结算状态" >  
+			                            <span>{getLiquidationStatus(this.state.liquidationStatus)}</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="企业联系人" >                             
+		                                <span>{this.state.contacts}</span>
+				                    </FormItem>
+				                     <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="联系人电话" >                             
+		                                <span>{this.state.contactMobile}</span>
+				                    </FormItem>
+				                    <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="企业法人" >                             
+		                                <span>{this.state.legalPerson}</span>
+		                            </FormItem>
+				                     <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="法人电话" >  
+			                             <span>{this.state.legalPersonTel}</span>
+				                    </FormItem>
+				                    <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="签单金额(万元)" >                             
+		                                 <span>{this.state.firstAmount}</span>
+				                    </FormItem>
+				                    <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="首付金额(万元)" >                             
+		                                <span>{this.state.totalAmount}</span>
+				                    </FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="特批立项" >  
+			                            <span>{getApprovedState(this.state.approval)}</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="已收款项(万元)" >  
+			                            <span>{this.state.settlementAmount}</span>
+		                    		</FormItem>
+				                    <div className='clearfix'>
+							        	<FormItem
+								            labelCol={{ span: 4 }}
+								            wrapperCol={{ span: 16 }}
+								            label="订单留言" >
+							        	 <span>{this.state.orderRemarks}</span>
+								        </FormItem>
+							        </div>
+				                    <div className='clearfix'>
+							            <FormItem
+							                labelCol={{ span: 4 }}
+							                wrapperCol={{ span: 18 }}
+							                label={
+							                	<span>
+													<strong style={{ color: '#f00' }}>*</strong>合同扫描件
+												</span> 
+							                }
+							                >
+							            	
+							                <PicturesWall
+							                    fileList={this.getOrgCodeUrl}
+							                    pictureUrl={this.state.orgCodeUrl} />
+							                    <p>图片建议:要清晰。</p>
+							            </FormItem>
+							        </div>
+							        <div className='clearfix'>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="订单负责人" >  
+				                            <span>{this.state.salesmanName}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="订单负责人电话" >  
+                            				<span>{this.state.salesmanMobile}</span>
+			                    		</FormItem>
+			                    	</div>
+			                    	<div className='clearfix'>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="财务负责人" >  
+				                            <span>{this.state.financeName}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="财务负责人电话" >  
+                            				<span>{this.state.financeMobile}</span>
+			                    		</FormItem>
+			                    	</div>
+			                    	<div>
+					                	<span style={{marginLeft:'50px',fontSize:'20px'}}>项目业务</span>
+					                </div>
+					                <div className='addSave' style={{marginTop:'15px'}}>
+					                   <Button className="cancel" type="primary" onClick={this.examOk} style={{marginLeft:"200px"}} htmlType="submit">通过</Button>
+					                   <Button className="cancel" type="primary" onClick={this.examNo} style={{marginLeft:"50px"}} htmlType="submit">拒绝</Button>
+		                               <Button className="cancel" type="ghost" onClick={this.visitCancel} style={{marginLeft:"50px"}}>取消</Button>
+	                            	</div>
+				                </div>
+				            </Spin>
+				        </Form>
+			        </Modal>
+               	</div>  
+               	
+               	
+               	
+            </div>
+			);
+	}
+}));
+export default IntentionCustomer;
+
+
+
+
+
+

+ 563 - 0
js/component/manageCenter/order/orderNew/reject.jsx

@@ -0,0 +1,563 @@
+import React from 'react';
+import { Radio, Icon, Button, AutoComplete,Cascader,Input, Select, Spin, Popconfirm, Table, Switch, message,Calendar , DatePicker, Upload, Form ,Modal,Tabs,Card } from 'antd';
+import ajax from 'jquery/src/ajax/xhr.js';
+import $ from 'jquery/src/ajax';
+import Jquery from 'jquery/dist/jquery.js';
+import moment from 'moment';
+import { } from '@/dataDic.js';
+import { getLiquidationStatus,getApprovedState,getProcessStatus} from '@/tools.js';
+import './customer.less';
+const TabPane = Tabs.TabPane;
+const Dragger = Upload.Dragger;
+//图片组件
+const PicturesWall = React.createClass({
+	getInitialState() {
+		return {
+			previewVisible: false,
+			previewImage: '',
+			fileList: [],
+		}
+	},
+	handleCancel() {
+		this.setState({
+			previewVisible: false
+		})
+	},
+	handlePreview(file) {
+		this.setState({
+			previewImage: file.url || file.thumbUrl,
+			previewVisible: true,
+		});
+	},
+	handleChange(info) {
+		let fileList = info.fileList;
+		this.setState({
+			fileList
+		});
+		this.props.fileList(fileList);
+	},
+	componentWillReceiveProps(nextProps) {
+		this.state.fileList = nextProps.pictureUrl;
+		this.state.pojectApplicationUrl = undefined;
+	},
+	render() {
+		const {
+			previewVisible,
+			previewImage,
+			fileList
+		} = this.state;
+		const uploadButton = (
+			<div>
+                <Icon type="plus" />
+                <div className="ant-upload-text">点击上传</div>
+            </div>
+		);
+		return(
+			<div style={{display:"inline-block"}}>
+                <Upload
+                    action={globalConfig.context + "/api/admin/customer/uploadCustomerImg"}
+                    data={{ 'sign': '' }}
+                    listType="picture-card"
+                    fileList={fileList}
+                    onPreview={this.handlePreview}
+                    onChange={this.handleChange} >
+                    {fileList.length >= 1 ? null : uploadButton}
+                </Upload>
+                <Modal maskClosable={false} visible={previewVisible} footer={null} onCancel={this.handleCancel}>
+                    <img alt="example" style={{ width: '100%' }} src={previewImage} />
+                </Modal>
+            </div>
+		);
+	}
+});
+
+
+const IntentionCustomer = Form.create()(React.createClass({
+	loadData(pageNo, apiUrl) {
+		this.setState({
+			visitModul:false,
+			loading: true,
+			ispage:pageNo,
+			modalVisible:false
+		});
+		$.ajax({
+			method: "get",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +"/open/api/admin/newOrder/orderNewList",
+			data: {
+				pageNo: pageNo || 1,
+				pageSize: this.state.pagination.pageSize,
+				processStatus: 1,//审核列表
+				name: this.state.name,//名称
+				orderNo: this.state.orderNo,//订单编号
+				starTime: this.state.releaseDate[0],//开始时间
+				endTime: this.state.releaseDate[1],//结束时间
+			},
+			success: function(data) {
+				let theArr = [];
+				if(data.error.length || data.data.list == "") {
+					if(data.error && data.error.length) {
+						message.warning(data.error[0].message);
+					};
+				} else {
+					for(let i = 0; i < data.data.list.length; i++) {
+						let thisdata = data.data.list[i];
+						let diqu=(thisdata.province==null?"":thisdata.province)+(thisdata.city==null?"":"-"+thisdata.city)+(thisdata.area==null?"":"-"+thisdata.area);
+						theArr.push({
+							 key: i,
+							 id: thisdata.id,//用户ID
+							 orderNo: thisdata.orderNo,//订单编号
+	                         totalAmount:thisdata.totalAmount,//签单金额
+	                         processStatus:thisdata.processStatus,//流程状态
+	                         liquidationStatus:thisdata.liquidationStatus,//结算状态
+	                         approval:thisdata.approval,//特批状态
+	                         signDate:thisdata.signDate,//签单时间
+	                         userName:thisdata.userName,//客户名称
+	                         salesmanName:thisdata.salesmanName,//营销员名称
+	                         financeName:thisdata.financeName,//财务名称
+	                         createDate:thisdata.createDate,//下单时间
+						});
+					};
+					this.state.pagination.current = data.data.pageNo;
+				    this.state.pagination.total = data.data.totalCount;
+				};
+				if(data.data&&data.data.list&&!data.data.list.length){
+					this.state.pagination.current=0
+					this.state.pagination.total=0
+				}
+				this.setState({
+					dataSource: theArr,
+					pageNo: pageNo,
+					pagination: this.state.pagination,
+					selectedRowKeys:[]
+				});
+			}.bind(this),
+		}).always(function() {
+			this.setState({
+				loading: false
+			});
+		}.bind(this));
+	},
+	getInitialState() {
+		return {
+			page:1,
+			releaseDate: [],
+			selectedRowKeys: [],
+			orgCodeUrl:[],
+			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: 'orderNo',
+                    key: 'orderNo'
+                }, {
+                    title: '下单时间',
+                    dataIndex: 'createDate',
+                    key: 'createTime'
+                },{
+                    title: '合同签订时间',
+                    dataIndex: 'signDate',
+                    key: 'signDate'
+                },{
+                    title: '客户名称',
+                    dataIndex: 'userName',
+                    key: 'userName',
+                    render:(text)=>{
+                    	return (text&&text.length>9?text.substr(0,9)+'...':text)
+                    }
+                }, {
+                    title: '流程状态',
+                    dataIndex: 'processStatus',
+                    key: 'processStatus',
+                    render:text=>{return getProcessStatus(text)}
+                }, {
+                    title: '签单金额(万元)',
+                    dataIndex: 'totalAmount',
+                    key: 'totalAmount'
+                },{
+                    title: '结算状态',
+                    dataIndex: 'liquidationStatus',
+                    key: 'liquidationStatus',
+                    render:text=>{return getLiquidationStatus(text)}
+                }, {
+                    title: '是否特批',
+                    dataIndex: 'approval',
+                    key: 'approval',
+                    render:text=>{return getApprovedState(text)}
+                },{
+                    title: '订单负责人',
+                    dataIndex: 'salesmanName',
+                    key: 'salesmanName'
+                },{
+                    title: '财务负责人',
+                    dataIndex: 'financeName',
+                    key: 'financeName'
+                }
+			],
+			data: [],
+			dataSource: [],
+		}
+	},
+	//页面加载函数
+	componentWillMount() {
+		this.loadData();
+	},
+	//整行点击
+	tableRowClick(record, index) {
+		this.setState({
+			visible:true,
+			orderNo:record.orderNo
+		});
+		this.xiangqing(record.orderNo);
+		this.xiangmu(record.orderNo);
+	},	
+	xiangqing(orderNos) {
+		$.ajax({
+			method: "get",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +"/open/api/admin/newOrder/getOrderNewDetail",
+			data: {
+				orderNo:orderNos
+			},
+			success: function(data) {
+				let theArr = [];
+				
+				if(data.error.length || data.data.list == "") {
+					if(data.error && data.error.length) {
+						message.warning(data.error[0].message);
+					};
+				} else {
+					let thisdata=data.data;
+					this.setState({
+						 orderNo: thisdata.orderNo,//订单编号
+						 contractNo: thisdata.contractNo,//合同编号
+						 userName:thisdata.userName,//客户名称
+						 signDate:thisdata.signDate,//签单时间
+						 processStatus:thisdata.processStatus,//流程状态
+	                     liquidationStatus:thisdata.liquidationStatus,//结算状态
+	                     contacts:thisdata.contacts,//企业联系人
+	                     contactMobile:thisdata.contactMobile,//联系人电话
+	                     legalPerson:thisdata.legalPerson,//法人
+	                     legalPersonTel:thisdata.legalPersonTel,//法人电话
+	                     firstAmount:thisdata.firstAmount,//签单金额
+	                     totalAmount:thisdata.totalAmount,//首付金额
+	                     approval:thisdata.approval,//特批状态
+	                     settlementAmount:thisdata.settlementAmount,//已收款项
+	                     orderRemarks:thisdata.orderRemarks,//订单留言
+	                     orgCodeUrl: thisdata.contractPictureUrl ? splitUrl(thisdata.contractPictureUrl, ',', globalConfig.avatarHost + '/upload') : [],//图片地址
+	                     salesmanName:thisdata.salesmanName,//营销员名称
+	                     salesmanMobile:thisdata.salesmanMobile,//营销员电话
+	                     financeName:thisdata.financeName,//财务名称
+	                     financeMobile:thisdata.financeMobile,//财务电话
+					})
+				};
+				
+			}.bind(this),
+		}).always(function() {
+			this.setState({
+				loading: false
+			});
+		}.bind(this));
+	},
+	xiangmu(orderNos) {
+		$.ajax({
+			method: "get",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +"/open/api/admin/newOrder/getOrderTask",
+			data: {
+				orderNo:orderNos
+			},
+			success: function(data) {
+				let theArr = [];
+				
+				if(data.error.length || data.data.list == "") {
+					if(data.error && data.error.length) {
+						message.warning(data.error[0].message);
+					};
+				} else {
+					let thisdata=data.data;
+					this.setState({
+						 orderNo: thisdata.orderNo,//订单编号
+						 contractNo: thisdata.contractNo,//合同编号
+						 userName:thisdata.userName,//客户名称
+						 signDate:thisdata.signDate,//签单时间
+						 processStatus:thisdata.processStatus,//流程状态
+	                     liquidationStatus:thisdata.liquidationStatus,//结算状态
+	                     contacts:thisdata.contacts,//企业联系人
+	                     contactMobile:thisdata.contactMobile,//联系人电话
+	                     legalPerson:thisdata.legalPerson,//法人
+	                     legalPersonTel:thisdata.legalPersonTel,//法人电话
+	                     firstAmount:thisdata.firstAmount,//签单金额
+	                     totalAmount:thisdata.totalAmount,//首付金额
+	                     approval:thisdata.approval,//特批状态
+	                     settlementAmount:thisdata.settlementAmount,//已收款项
+	                     orderRemarks:thisdata.orderRemarks,//订单留言
+	                     orgCodeUrl: thisdata.contractPictureUrl ? splitUrl(thisdata.contractPictureUrl, ',', globalConfig.avatarHost + '/upload') : [],//图片地址
+	                     salesmanName:thisdata.salesmanName,//营销员名称
+	                     salesmanMobile:thisdata.salesmanMobile,//营销员电话
+	                     financeName:thisdata.financeName,//财务名称
+	                     financeMobile:thisdata.financeMobile,//财务电话
+					})
+				};
+				
+			}.bind(this),
+		}).always(function() {
+			this.setState({
+				loading: false
+			});
+		}.bind(this));
+	},
+	getOrgCodeUrl(e) {
+        this.setState({ orgCodeUrl: e });
+    },
+	//关闭详情
+	visitCancel(e){
+		this.setState({
+			visible:false
+		})
+	},
+	visitOk(e){
+		this.setState({
+			visible:false
+		})
+	},
+	render() {
+		const formItemLayout = {
+			labelCol: { span: 8 },
+			wrapperCol: { span: 14 },
+		};
+		const FormItem = Form.Item;
+		const { RangePicker } = DatePicker;
+		const rowSelection = {
+			selectedRowKeys: this.state.selectedRowKeys,
+			onChange: (selectedRowKeys, selectedRows) => {
+				this.setState({
+					modalVisible:false,
+					selectedRows: selectedRows.slice(-1),
+					selectedRowKeys: selectedRowKeys.slice(-1)
+				});
+			},
+			onSelect: (recordt, selected, selectedRows) => {
+				this.setState({
+					modalVisible:false,
+					recordt: recordt.id
+				})
+			},
+		};
+		const hasSelected = this.state.selectedRowKeys.length > 0;
+		return(
+			<div className="user-content">
+				<div className="content-title">                  
+                    <span>订单审核</span>
+                </div>
+               	<div className="user-search">                    
+                   <Input placeholder="客户名称" style={{width:'150px'}}
+	                        value={this.state.customerName}
+	                        onChange={(e) => { this.setState({ customerName: e.target.value }); }} />
+                    <Input placeholder="订单编号" style={{width:'150px'}}
+                        value={this.state.orderNo}
+                        onChange={(e) => { this.setState({ orderNo: e.target.value }); }} />
+                    <span style={{marginRight:"10px"}}>合同签订时间 :</span>
+                    <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}>搜索</Button>
+                    <Button onClick={this.reset}>重置</Button> 
+                   	<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> 
+               		<Modal	
+				      className="customeDetails"
+				      footer=''
+			          title="订单详情"
+			          width='900px'
+			          visible={this.state.visible}
+			          onOk={this.visitOk}
+					  onCancel={this.visitCancel}							          							          
+			        >	
+				        <Form layout="horizontal" onSubmit={this.handleSubmit} id="demand-form" style={{paddingBottom:'40px'}} >
+				            <Spin spinning={this.state.loading}>
+				                <div className="clearfix">
+				                	<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="订单编号" >
+			                            <span>{this.state.orderNo}</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="合同编号" >                             
+			                                    <Input placeholder="请输入合同编号" value={this.state.contractNo}
+			                                    	onChange={(e)=>{this.setState({contractNo:e.target.value})}} style={{width:'240px'}} />
+				                    </FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="客户名称" >  
+			                            <span>{this.state.userName}</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="合同签订时间" >   
+			                            <DatePicker
+			                              style={{marginTop:"2px",width: '240px',height:"32px" }}
+									      showTime
+									      format="YYYY-MM-DD"
+									      placeholder="合同签订时间"
+									      value={this.state.signDate}
+									      onChange={(e,time)=>{this.selTime(e,time)}}
+									    />
+									    <span className="mandatory">*</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="流程状态" >  
+			                            <span>{getProcessStatus(this.state.processStatus)}</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="结算状态" >  
+			                            <span>{getLiquidationStatus(this.state.liquidationStatus)}</span>
+		                    		</FormItem>
+		                    		
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="企业联系人" >                             
+		                                    <Input placeholder="请输入联系人" ref='signTotalAmount' value={this.state.contacts} onChange={(e)=>{this.setState({contacts:e.target.value})}} style={{width:'240px'}} />
+				                   			<span className="mandatory">*</span>
+				                    </FormItem>
+				                     <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="联系人电话" >                             
+		                                    <Input placeholder="请输入联系人电话" ref='signTotalAmount' value={this.state.contactMobile} onChange={(e)=>{this.setState({contactMobile:e.target.value})}} style={{width:'240px'}} />
+				                   			<span className="mandatory">*</span>
+				                    </FormItem>
+				                    <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="企业法人" >                             
+		                                    <Input placeholder="请输入法人" ref='signTotalAmount' value={this.state.legalPerson} onChange={(e)=>{this.setState({legalPerson:e.target.value})}} style={{width:'240px'}} />
+				                    </FormItem>
+				                     <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="法人电话" >                             
+		                                    <Input placeholder="请输入法人电话" ref='signTotalAmount' value={this.state.legalPersonTel} onChange={(e)=>{this.setState({legalPersonTel:e.target.value})}} style={{width:'240px'}} />
+				                    </FormItem>
+				                    <FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="签单金额(万元)" >                             
+		                                    <Input placeholder="签单金额" ref='signTotalAmount' value={this.state.firstAmount} onChange={(e)=>{this.setState({firstAmount:e.target.value})}} style={{width:'240px'}} />
+				                   			<span className="mandatory">*</span>
+				                    </FormItem>
+				                    <FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="首付金额(万元)" >                             
+			                                    <Input placeholder="请输入实签首款金额" ref='signFirstPayment' value={this.state.totalAmount} onChange={(e)=>{this.setState({totalAmount:e.target.value})}} style={{width:'240px'}} />
+				                    		<span className="mandatory">*</span>
+				                    </FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="特批立项" >  
+			                            <span>{getApprovedState(this.state.approval)}</span>
+		                    		</FormItem>
+		                    		<FormItem className="half-item"
+			                            {...formItemLayout}
+			                            label="已收款项" >  
+			                            <span>{this.state.settlementAmount+'万元'}</span>
+		                    		</FormItem>
+				                    <div className='clearfix'>
+							        	<FormItem
+								            labelCol={{ span: 4 }}
+								            wrapperCol={{ span: 16 }}
+								            label="订单留言" >
+								                <Input type="textarea" placeholder="请输入订单留言" rows={4}  value={this.state.orderRemarks} 
+									    				onChange={(e)=>{this.setState({orderRemarks:e.target.value})}}/>			                      
+								        </FormItem>
+							        </div>
+				                    <div className='clearfix'>
+							            <FormItem
+							                labelCol={{ span: 4 }}
+							                wrapperCol={{ span: 18 }}
+							                label={
+							                	<span>
+													<strong style={{ color: '#f00' }}>*</strong>合同扫描件
+												</span> 
+							                }
+							                >
+							            	
+							                <PicturesWall
+							                    fileList={this.getOrgCodeUrl}
+							                    pictureUrl={this.state.orgCodeUrl} />
+							                    <p>图片建议:要清晰。</p>
+							            </FormItem>
+							        </div>
+							        <div className='clearfix'>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="订单负责人" >  
+				                            <span>{this.state.salesmanName}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="订单负责人电话" >  
+                            				<span>{this.state.projectType}</span>
+			                    		</FormItem>
+			                    	</div>
+			                    	<div className='clearfix'>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="财务负责人" >  
+				                            <span>{this.state.financeName}</span>
+			                    		</FormItem>
+			                    		<FormItem className="half-item"
+				                            {...formItemLayout}
+				                            label="财务负责人电话" >  
+                            				<span>{this.state.projectType}</span>
+			                    		</FormItem>
+			                    	</div>
+			                    	<div>
+					                	<span style={{marginLeft:'50px',fontSize:'20px'}}>项目业务</span>
+					                </div>
+					                <div className='addSave' style={{marginTop:'15px'}}>
+					                   <Button className="cancel" type="primary" onClick={this.examOk} style={{marginLeft:"200px"}} htmlType="submit">通过</Button>
+					                   <Button className="cancel" type="primary" onClick={this.examNo} style={{marginLeft:"50px"}} htmlType="submit">拒绝</Button>
+		                               <Button className="cancel" type="ghost" onClick={this.visitCancel} style={{marginLeft:"50px"}}>取消</Button>
+	                            	</div>
+				                </div>
+				            </Spin>
+				        </Form>
+			        </Modal>
+               	</div>  
+               	
+               	
+               	
+            </div>
+			);
+	}
+}));
+export default IntentionCustomer;
+
+
+
+
+
+

+ 30 - 2
js/component/tools.js

@@ -79,7 +79,9 @@ import {
     level,
     xiangmoState,
     newOrderStatus,refundStatus,approval,projectStatus,processStatus,liquidationStatus,newOrderType,paymentType
-    ,jsyPaymentType
+    ,jsyPaymentType,
+    customerType,
+    orderTypes
 } from './dataDic.js';
 
 import { provinceList} from './NewDicProvinceList.js';
@@ -1531,7 +1533,7 @@ module.exports = {
             return theType;
         }
     },
-     //算状态  
+     //算状态  
 	getLiquidationStatus:function(e){
         if (e||e==0) {
             let str=e.toString()
@@ -1583,4 +1585,30 @@ module.exports = {
             return theType;
         }
     },
+     //技术员发款类型  
+	getCustomerType:function(e){
+        if (e||e==0) {
+            let str=e.toString()
+         let theType = '';
+         customerType.map(function (item) {
+                if (item.value == str) {
+                    theType = item.key;
+                };
+            });
+            return theType;
+        }
+    },
+      //技术员发款类型  
+	getOrderTypes:function(e){
+        if (e||e==0) {
+            let str=e.toString()
+         let theType = '';
+         orderTypes.map(function (item) {
+                if (item.value == str) {
+                    theType = item.key;
+                };
+            });
+            return theType;
+        }
+    },
 }

+ 2 - 540
package-lock.json

@@ -1489,7 +1489,6 @@
       "requires": {
         "anymatch": "1.3.2",
         "async-each": "1.0.1",
-        "fsevents": "1.2.4",
         "glob-parent": "2.0.0",
         "inherits": "2.0.3",
         "is-binary-path": "1.0.1",
@@ -3342,535 +3341,6 @@
       "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
       "dev": true
     },
-    "fsevents": {
-      "version": "1.2.4",
-      "resolved": "http://registry.npm.taobao.org/fsevents/download/fsevents-1.2.4.tgz",
-      "integrity": "sha1-9B3LGvJYKvNpLaNvxVy9jhBBxCY=",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "nan": "2.11.1",
-        "node-pre-gyp": "0.10.0"
-      },
-      "dependencies": {
-        "abbrev": {
-          "version": "1.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "ansi-regex": {
-          "version": "2.1.1",
-          "bundled": true,
-          "dev": true
-        },
-        "aproba": {
-          "version": "1.2.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "are-we-there-yet": {
-          "version": "1.1.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "delegates": "1.0.0",
-            "readable-stream": "2.3.6"
-          }
-        },
-        "balanced-match": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true
-        },
-        "brace-expansion": {
-          "version": "1.1.11",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "balanced-match": "1.0.0",
-            "concat-map": "0.0.1"
-          }
-        },
-        "chownr": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "code-point-at": {
-          "version": "1.1.0",
-          "bundled": true,
-          "dev": true
-        },
-        "concat-map": {
-          "version": "0.0.1",
-          "bundled": true,
-          "dev": true
-        },
-        "console-control-strings": {
-          "version": "1.1.0",
-          "bundled": true,
-          "dev": true
-        },
-        "core-util-is": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "debug": {
-          "version": "2.6.9",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ms": "2.0.0"
-          }
-        },
-        "deep-extend": {
-          "version": "0.5.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "delegates": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "detect-libc": {
-          "version": "1.0.3",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "fs-minipass": {
-          "version": "1.2.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "minipass": "2.2.4"
-          }
-        },
-        "fs.realpath": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "gauge": {
-          "version": "2.7.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "aproba": "1.2.0",
-            "console-control-strings": "1.1.0",
-            "has-unicode": "2.0.1",
-            "object-assign": "4.1.1",
-            "signal-exit": "3.0.2",
-            "string-width": "1.0.2",
-            "strip-ansi": "3.0.1",
-            "wide-align": "1.1.2"
-          }
-        },
-        "glob": {
-          "version": "7.1.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "fs.realpath": "1.0.0",
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "has-unicode": {
-          "version": "2.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "iconv-lite": {
-          "version": "0.4.21",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "safer-buffer": "2.1.2"
-          }
-        },
-        "ignore-walk": {
-          "version": "3.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "minimatch": "3.0.4"
-          }
-        },
-        "inflight": {
-          "version": "1.0.6",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "once": "1.4.0",
-            "wrappy": "1.0.2"
-          }
-        },
-        "inherits": {
-          "version": "2.0.3",
-          "bundled": true,
-          "dev": true
-        },
-        "ini": {
-          "version": "1.3.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "is-fullwidth-code-point": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "number-is-nan": "1.0.1"
-          }
-        },
-        "isarray": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.11"
-          }
-        },
-        "minimist": {
-          "version": "0.0.8",
-          "bundled": true,
-          "dev": true
-        },
-        "minipass": {
-          "version": "2.2.4",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "safe-buffer": "5.1.1",
-            "yallist": "3.0.2"
-          }
-        },
-        "minizlib": {
-          "version": "1.1.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "minipass": "2.2.4"
-          }
-        },
-        "mkdirp": {
-          "version": "0.5.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "minimist": "0.0.8"
-          }
-        },
-        "ms": {
-          "version": "2.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "needle": {
-          "version": "2.2.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "debug": "2.6.9",
-            "iconv-lite": "0.4.21",
-            "sax": "1.2.4"
-          }
-        },
-        "node-pre-gyp": {
-          "version": "0.10.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "detect-libc": "1.0.3",
-            "mkdirp": "0.5.1",
-            "needle": "2.2.0",
-            "nopt": "4.0.1",
-            "npm-packlist": "1.1.10",
-            "npmlog": "4.1.2",
-            "rc": "1.2.7",
-            "rimraf": "2.6.2",
-            "semver": "5.5.0",
-            "tar": "4.4.1"
-          }
-        },
-        "nopt": {
-          "version": "4.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "abbrev": "1.1.1",
-            "osenv": "0.1.5"
-          }
-        },
-        "npm-bundled": {
-          "version": "1.0.3",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "npm-packlist": {
-          "version": "1.1.10",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ignore-walk": "3.0.1",
-            "npm-bundled": "1.0.3"
-          }
-        },
-        "npmlog": {
-          "version": "4.1.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "are-we-there-yet": "1.1.4",
-            "console-control-strings": "1.1.0",
-            "gauge": "2.7.4",
-            "set-blocking": "2.0.0"
-          }
-        },
-        "number-is-nan": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true
-        },
-        "object-assign": {
-          "version": "4.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "once": {
-          "version": "1.4.0",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "wrappy": "1.0.2"
-          }
-        },
-        "os-homedir": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "os-tmpdir": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "osenv": {
-          "version": "0.1.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "os-homedir": "1.0.2",
-            "os-tmpdir": "1.0.2"
-          }
-        },
-        "path-is-absolute": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "process-nextick-args": {
-          "version": "2.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "rc": {
-          "version": "1.2.7",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "deep-extend": "0.5.1",
-            "ini": "1.3.5",
-            "minimist": "1.2.0",
-            "strip-json-comments": "2.0.1"
-          },
-          "dependencies": {
-            "minimist": {
-              "version": "1.2.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
-          }
-        },
-        "readable-stream": {
-          "version": "2.3.6",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "core-util-is": "1.0.2",
-            "inherits": "2.0.3",
-            "isarray": "1.0.0",
-            "process-nextick-args": "2.0.0",
-            "safe-buffer": "5.1.1",
-            "string_decoder": "1.1.1",
-            "util-deprecate": "1.0.2"
-          }
-        },
-        "rimraf": {
-          "version": "2.6.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "glob": "7.1.2"
-          }
-        },
-        "safe-buffer": {
-          "version": "5.1.1",
-          "bundled": true,
-          "dev": true
-        },
-        "safer-buffer": {
-          "version": "2.1.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "sax": {
-          "version": "1.2.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "semver": {
-          "version": "5.5.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "set-blocking": {
-          "version": "2.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "signal-exit": {
-          "version": "3.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "string-width": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "code-point-at": "1.1.0",
-            "is-fullwidth-code-point": "1.0.0",
-            "strip-ansi": "3.0.1"
-          }
-        },
-        "string_decoder": {
-          "version": "1.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "safe-buffer": "5.1.1"
-          }
-        },
-        "strip-ansi": {
-          "version": "3.0.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "ansi-regex": "2.1.1"
-          }
-        },
-        "strip-json-comments": {
-          "version": "2.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "tar": {
-          "version": "4.4.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "chownr": "1.0.1",
-            "fs-minipass": "1.2.5",
-            "minipass": "2.2.4",
-            "minizlib": "1.1.0",
-            "mkdirp": "0.5.1",
-            "safe-buffer": "5.1.1",
-            "yallist": "3.0.2"
-          }
-        },
-        "util-deprecate": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "wide-align": {
-          "version": "1.1.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "string-width": "1.0.2"
-          }
-        },
-        "wrappy": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true
-        },
-        "yallist": {
-          "version": "3.0.2",
-          "bundled": true,
-          "dev": true
-        }
-      }
-    },
     "function-bind": {
       "version": "1.1.0",
       "resolved": "http://registry.npm.taobao.org/function-bind/download/function-bind-1.1.0.tgz",
@@ -5602,13 +5072,6 @@
       "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=",
       "dev": true
     },
-    "nan": {
-      "version": "2.11.1",
-      "resolved": "http://registry.npm.taobao.org/nan/download/nan-2.11.1.tgz",
-      "integrity": "sha1-kOIrzLjKV+pM03zIPTgZtS7qZ2Y=",
-      "dev": true,
-      "optional": true
-    },
     "nanomatch": {
       "version": "1.2.7",
       "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.7.tgz",
@@ -9825,7 +9288,6 @@
             "anymatch": "2.0.0",
             "async-each": "1.0.1",
             "braces": "2.3.0",
-            "fsevents": "1.2.4",
             "glob-parent": "3.1.0",
             "inherits": "2.0.3",
             "is-binary-path": "1.0.1",
@@ -10230,8 +9692,8 @@
     },
     "xlsx-oc": {
       "version": "1.0.2",
-      "resolved": "http://registry.npm.taobao.org/xlsx-oc/download/xlsx-oc-1.0.2.tgz",
-      "integrity": "sha1-KH4xymWL8jDkgXbfC185R5EjOfw=",
+      "resolved": "https://registry.npmjs.org/xlsx-oc/-/xlsx-oc-1.0.2.tgz",
+      "integrity": "sha512-xVm7+oQJiW0BEpk2rgyNEtunQW5vJ+CNXRl4K9Y2EMYPmXZYxXCAvYq3Jqo3jAHEfxTEMjdGlbFz5UZ4EqIXpg==",
       "requires": {
         "xlsx": "0.13.5"
       }

+ 4 - 3
webpack/entry.config.js

@@ -36,11 +36,8 @@ module.exports = {
     'admin/userOrder': './js/admin/userOrder.js',
     'admin/order': './js/admin/order.js',
     'admin/operate': './js/admin/operate.js',
-<<<<<<< HEAD
     'admin/project': './js/admin/project.js',
-=======
     'admin/statistics': './js/admin/statistics.js',
->>>>>>> 3aefd2cc29064776957628ff9a0bdddb184a4098
     //portal  门户
     // 'portal/search/demand': './js/portal/search/demand.js',
     // 'portal/search/achievement': './js/portal/search/achievement.js',
@@ -179,6 +176,10 @@ module.exports = {
     'webpack/hot/only-dev-server',
     './js/admin/statistics.js'
     ],
+    'admin/project': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
+    'webpack/hot/only-dev-server',
+    './js/admin/project.js'
+    ],
     //portal  门户
     // 'portal/search/demand': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
     //   'webpack/hot/only-dev-server',