Browse Source

更新软著认证功能

dengzhiguo 5 years ago
parent
commit
763868a685

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

@@ -643,6 +643,7 @@ const IntentionCustomer = Form.create()(React.createClass({
 						creditRating:thisDetail.creditRating?thisDetail.creditRating.toString():"",//信用等级
 						pojectApplicationUrl:thisDetail.pojectApplicationUrl,//文件地址
 					});
+					console.log(this.state.ProvinceCity)
 			}}.bind(this),
 		}).always(function() {
 			this.setState({

+ 3 - 1
js/component/manageCenter/financialManage/bonus/jsBonus.jsx

@@ -147,7 +147,8 @@ const JsBonus = React.createClass({
                 {
                     title: '任务编号',
                     dataIndex: 'tid',
-                    key: 'tid',   
+                    key: 'tid',  
+					fixed: 'left'
                 },
                 {
                     title: '订单编号',
@@ -402,6 +403,7 @@ const JsBonus = React.createClass({
                     <Spin spinning={this.state.loading}>
                         <Table columns={this.state.columns}
                             dataSource={this.state.dataSource}
+							scroll={{ x: 1500, y: 0 }}
                             rowSelection={false}
                             pagination={this.state.pagination}
                             onRowClick={this.tableRowClick}

+ 3 - 1
js/component/manageCenter/financialManage/bonus/yxBonus.jsx

@@ -122,7 +122,8 @@ const YxBonus = React.createClass({
                 {
                     title: '订单编号',
                     dataIndex: 'orderNo',
-                    key: 'orderNo',   
+                    key: 'orderNo',
+					fixed:'left'
                 },
                 {
                     title: '客户名称',
@@ -385,6 +386,7 @@ const YxBonus = React.createClass({
                     <Spin spinning={this.state.loading}>
                         <Table columns={this.state.columns}
                             dataSource={this.state.dataSource}
+							scroll={{ x: 1500, y: 0 }}
                             rowSelection={false}
                             pagination={this.state.pagination}
                             onRowClick={this.tableRowClick}

+ 2 - 0
js/component/manageCenter/financialManage/distribute/inSpecial.jsx

@@ -240,6 +240,7 @@ const inSpecial = React.createClass({
                     title: '编号',
                     dataIndex: 'id',
                     key: 'id',
+					fixed: 'left'
                 }, {
                     title: '客户',
                     dataIndex: 'unitName',
@@ -528,6 +529,7 @@ const inSpecial = React.createClass({
                 <div className="patent-table">
                     <Spin spinning={this.state.loading}>
                         <Table columns={this.state.columns}
+							scroll={{ x: 1500, y: 0 }}
                             dataSource={this.state.dataSource}
                             pagination={this.state.pagination}/>
                     </Spin>

+ 2 - 0
js/component/manageCenter/financialManage/distribute/invoiceApplyList.jsx

@@ -242,6 +242,7 @@ const invoiceApplyList = React.createClass({
                     title: '编号',
                     dataIndex: 'id',
                     key: 'id',
+					fixed: 'left'
                 }, {
                     title: '客户',
                     dataIndex: 'unitName',
@@ -530,6 +531,7 @@ const invoiceApplyList = React.createClass({
                 <div className="patent-table">
                     <Spin spinning={this.state.loading}>
                         <Table columns={this.state.columns}
+							scroll={{ x: 1500, y: 0 }}
                             dataSource={this.state.dataSource}
                             pagination={this.state.pagination}/>
                     </Spin>

+ 2 - 0
js/component/manageCenter/financialManage/distribute/invoiceApplyListWai.jsx

@@ -242,6 +242,7 @@ const invoiceApplyListWai = React.createClass({
                     title: '编号',
                     dataIndex: 'id',
                     key: 'id',
+					fixed: 'left'
                 }, {
                     title: '客户',
                     dataIndex: 'unitName',
@@ -530,6 +531,7 @@ const invoiceApplyListWai = React.createClass({
                 <div className="patent-table">
                     <Spin spinning={this.state.loading}>
                         <Table columns={this.state.columns}
+							scroll={{ x: 1500, y: 0 }}
                             dataSource={this.state.dataSource}
                             pagination={this.state.pagination}/>
                     </Spin>

+ 2 - 0
js/component/manageCenter/financialManage/distribute/outSpecial.jsx

@@ -240,6 +240,7 @@ const outSpecial = React.createClass({
                     title: '编号',
                     dataIndex: 'id',
                     key: 'id',
+					fixed: 'left'
                 }, {
                     title: '客户',
                     dataIndex: 'unitName',
@@ -528,6 +529,7 @@ const outSpecial = React.createClass({
                 <div className="patent-table">
                     <Spin spinning={this.state.loading}>
                         <Table columns={this.state.columns}
+							scroll={{ x: 1500, y: 0 }}
                             dataSource={this.state.dataSource}
                             pagination={this.state.pagination}/>
                     </Spin>

+ 2 - 0
js/component/manageCenter/financialManage/distribute/paiDan.jsx

@@ -102,6 +102,7 @@ const PaiDan = React.createClass({
                     title: '订单编号',
                     dataIndex: 'orderNo',
                     key: 'orderNo',
+					fixed: 'left'
                 }, {
                     title: '合同编号',
                     dataIndex: 'contractNo',
@@ -292,6 +293,7 @@ const PaiDan = React.createClass({
                     <Spin spinning={this.state.loading}>
                         <Table columns={this.state.columns}
                             dataSource={this.state.dataSource}
+							scroll={{ x: 1500, y: 0 }}
                             rowSelection={false}
                             pagination={this.state.pagination}
                             onRowClick={this.tableRowClick.bind(this)} />

+ 2 - 0
js/component/manageCenter/financialManage/distribute/tuiDan.jsx

@@ -145,6 +145,7 @@ const TuiDan = React.createClass({
                     title: '退单编号',
                     dataIndex: 'id',
                     key: 'id',   
+					fixed: 'left'
                 },
                 {
                     title: '申请退单时间',
@@ -329,6 +330,7 @@ const TuiDan = React.createClass({
                     <Spin spinning={this.state.loading}>
                         <Table columns={this.state.columns}
                             dataSource={this.state.dataSource}
+							scroll={{ x: 1500, y: 0 }}
                             rowSelection={false}
                             pagination={this.state.pagination}
                             onRowClick={this.tableRowClick.bind(this)}

+ 3 - 1
js/component/manageCenter/financialManage/flowWater/departWater.jsx

@@ -135,7 +135,8 @@ const MyWater = React.createClass({
                 {
                     title: '平台流水编号',
                     dataIndex: 'billNo',
-                    key: 'billNo',   
+                    key: 'billNo',
+					fixed: 'left'
                 },
                 {
                     title: '金额(万元)',
@@ -295,6 +296,7 @@ const MyWater = React.createClass({
                     <Spin spinning={this.state.loading}>
                         <Table columns={this.state.columns}
                             dataSource={this.state.dataSource}
+							scroll={{ x: 1500, y: 0 }}
                             rowSelection={false}
                             pagination={this.state.pagination}
                             onRowClick={this.tableRowClick}

+ 3 - 1
js/component/manageCenter/financialManage/flowWater/myWater.jsx

@@ -135,7 +135,8 @@ const MyWater = React.createClass({
                 {
                     title: '平台流水号',
                     dataIndex: 'billNo',
-                    key: 'billNo',   
+                    key: 'billNo',  
+					fixed: 'left'
                 },
                 {
                     title: '金额(万元)',
@@ -267,6 +268,7 @@ const MyWater = React.createClass({
                     <Spin spinning={this.state.loading}>
                         <Table columns={this.state.columns}
                             dataSource={this.state.dataSource}
+							scroll={{ x: 1500, y: 0 }}
                             rowSelection={false}
                             pagination={this.state.pagination}
                             onRowClick={this.tableRowClick}

+ 1 - 0
js/component/manageCenter/order/orderNew/billing.jsx

@@ -888,6 +888,7 @@ const MyService=Form.create()(React.createClass({
     	this.setState({
     		signBillVisible:false
     	})
+		this.state.searchOrderNo=undefined;
     	this.state.orderNo='';
     	this.state.customerName='';
     	this.state.departmenttSearch=undefined;

+ 2 - 2
js/component/manageCenter/order/orderNew/reject.jsx

@@ -613,6 +613,7 @@ const IntentionCustomer = Form.create()(React.createClass({
 				contractNo: this.state.contractNo,//合同编号
 				orderRemarks: this.state.orderRemarks,//订单备注
 				contractPictureUrl:theorgCodeUrl.length?theorgCodeUrl:'',
+				orderDep:this.state.organizationSearch
 			},
 			success: function(data) {
 				if(data.error.length || data.data.list == "") {
@@ -1027,8 +1028,7 @@ const IntentionCustomer = Form.create()(React.createClass({
 		                    		<FormItem className="half-item"
 			                            {...formItemLayout}
 			                            label="合同编号" >  
-			                             <Input placeholder="请输入合同编号" value={this.state.contractNo}
-							                onChange={(e)=>{this.setState({contractNo:e.target.value})}} style={{width:'240px'}} />
+			                             <span>{this.state.contractNo}</span>
 				                    </FormItem>
 		                    		<FormItem className="half-item"
 			                            {...formItemLayout}

File diff suppressed because it is too large
+ 796 - 94
js/component/manageCenter/project/task/myTask.jsx


+ 34 - 2
js/component/manageCenter/project/task/table.less

@@ -1,3 +1,35 @@
-.ant-table-thead > tr > th{
-	text-align: center
+.half-item{
+	margin-bottom: 0px;
+	height: auto
+}
+.ant-row{
+	margin-bottom: 0px
+}
+#demand-form .half-item{
+	margin-bottom: 0px
+}
+.three-item{
+	width:25%;
+	margin-bottom: 5px;
+	margin-left: 95px;
+	float: left
+}
+.sub-title{
+	margin-left: 10px;
+	font-weight: 800
+}
+.ant-input-lg{
+	height: 24px
+}
+.ant-select-lg .ant-select-selection--single{
+	height: 24px
+}
+.ant-select-lg .ant-select-selection__rendered{
+	line-height: 24px
+}
+.ruanzhu{
+	color:red
+}
+.xiazheng{
+	color:green
 }

+ 467 - 144
js/component/manageCenter/project/task/taskQuery.jsx

@@ -1,14 +1,71 @@
 import React,{Component} from 'react';
 import ajax from 'jquery/src/ajax/xhr.js';
-import $ from 'jquery/src/ajax';
+import $ from 'jquery';
 import moment from 'moment';
 import '@/manageCenter/financialManage/distribute/public.less';
-import { Icon, Button, Form, Radio, Input, InputNumber, Select, Upload,Col,Spin, Table, Switch, message, DatePicker, Modal } from 'antd';
+import Picture from '@/manageCenter/publicComponent/picture';
+import { Icon, Button, Form, Radio, Input, InputNumber, Select, Upload,Col,Spin, Table, Switch, message, DatePicker, Modal} from 'antd';
 import OrderDesc from '@/manageCenter/financialManage/orderDetail/orderDesc'
 import Assign from '@/manageCenter/publicComponent/assign';
 import './table.less';
-import {getProcessStatus,getApproval,getTaskStatus,getLiquidationStatus,getApprovedState,getProjectState,splitUrl,getProjectStatus,getboutique} from '@/tools';
+import {getProcessStatus,getApproval,getTaskStatus,getLiquidationStatus,getApprovedState,getProjectState,splitUrl,getProjectStatus,getboutique,getprovince} from '@/tools';
 const FormItem =Form.Item;
+const PicturesWall = React.createClass({
+    getInitialState() {
+        return {
+            previewVisible: false,
+            previewImage: '',
+            fileList: this.props.pictureUrl,
+        }
+    },
+    getDefaultProps(){
+    	return{
+    		changeClick:this.modifyChange
+    	}
+    },
+    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; 
+    },
+    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/patentNew/uploadFile"}
+                    data={{ 'sign': '' }}
+                    listType="picture-card"
+                    fileList={fileList}
+                    onPreview={this.handlePreview}
+                    onChange={this.handleChange} >
+                    {uploadButton}
+                </Upload>
+                <Modal maskClosable={false} visible={previewVisible} footer={null} onCancel={this.handleCancel}>
+                    <img alt="example" style={{ width: '100%' }} src={previewImage} />
+                </Modal>
+            </div>
+        );
+    }
+});
 
 const Task = React.createClass({
     loadData(pageNo) {
@@ -30,7 +87,6 @@ const Task = React.createClass({
                 orderNo:this.state.orderNoSearch,//订单编号
                 depId: this.state.departmenttSearch,//订单部门
                 taskId:this.state.taskId, //任务编号
-                taskStatus:this.state.taskStatus,//任务状态
                 adminName:this.state.adminName,//任务受理人
             },
             success: function (data) {
@@ -52,8 +108,9 @@ const Task = React.createClass({
                             projectStatus:thisdata.projectStatus,//项目状态
                             taskStatus:thisdata.taskStatus,//任务状态
                             taskDate:thisdata.taskDate,//分配时间
-                            commodityQuantity:thisdata.commodityQuantity,//数量
-                            userName:thisdata.userName,//用户名
+                            commodityQuantity:thisdata.commodityQuantity,//软著数量
+							alreadyNumber:thisdata.alreadyNumber,//下证数量
+                            userName:thisdata.taskName === '软著认证'?thisdata.userName+'('+thisdata.commodityQuantity.toString()+'/'+thisdata.alreadyNumber+')':thisdata.userName,//用户名
                             depName:thisdata.depName,//部门名称
                             receiverName:thisdata.receiverName,//任务责任人
                         });
@@ -69,6 +126,7 @@ const Task = React.createClass({
                     dataSource: theArr,
                     pagination: this.state.pagination
                 });
+				
             }.bind(this),
         }).always(function () {
             this.setState({
@@ -110,6 +168,7 @@ const Task = React.createClass({
                     title: '任务名称',
                     dataIndex: 'taskName',
                     key: 'taskName',
+					className: 'taskName'
                 },  {
                     title: '订单编号',
                     dataIndex: 'orderNo',
@@ -121,9 +180,10 @@ const Task = React.createClass({
                     key: 'cname',
                 },
                 {
-                    title: '客户名称(软著数/下证数)',
+                    title: '客户名称',
                     dataIndex: 'userName',
                     key: 'userName',
+					className: 'userName'
                 },
                 {
                     title: '任务状态',
@@ -201,30 +261,45 @@ const Task = React.createClass({
 					}
                 }
 			],
-			dataSourceX: [],
-			columnsY: [
+			columnsA: [
 				{
-			        title: '批次',
-			        dataIndex: 'a',
-			        key: 'a',
-					align:'center'
-			    }, {
-			        title: '下注时间',
-			        dataIndex: 'a',
-			        key: 'a',
+			        title: '流程',
+			        dataIndex: 'content',
+			        key: 'content',
 					align:'center'
 			    }, {
-			        title: '下证数量',
-			        dataIndex: 'a',
-			        key: 'a',
+			        title: '操作人',
+			        dataIndex: 'aName',
+			        key: 'aName',
 					align:'center'
 			    }, {
-			        title: '未下证数量',
-			        dataIndex: 'a',
-			        key: 'a',
+			        title: '时间',
+			        dataIndex: 'createTimes',
+			        key: 'createTimes',
 					align:'center'
-			    }, 
-			]	
+			    }
+			],
+			dataSourceX: [],
+			dataSourceA: [],
+			ContactsLists: [{
+					title: '批次',
+					dataIndex: 'num',
+					key: 'num',
+				},{
+					title: '下证时间',
+					dataIndex: 'licenceTimes',
+					key: 'licenceTimes',
+				}, {
+					title: '下证数量',
+					dataIndex: 'alreadyNumber',
+					key: 'alreadyNumber',
+				},
+				{
+					title: '未下证数量',
+					dataIndex: 'notCount',
+					key: 'notCount',
+				}
+			],
         }
     },
     /* 分派 */
@@ -235,28 +310,41 @@ const Task = React.createClass({
             assignVisible:true
         })
     },
-   
+	componentDidMount(){
+		this.setColor()
+	},
     componentWillMount() {
     	this.departmentList();
         this.loadData();
     },
     tableRowClick(record, index) {
         this.state.RowData = record;
-        this.setState({
-            visible: true,
-        });
-        this.xiangqing(record.orderNo);
+       if(record.taskName === '软著认证'){
+       	this.setState({
+       		speVisible: true,
+       		id: record.id,
+       		dataArr:record,
+       		commodityQuantity:record.commodityQuantity
+       	});
+       }else{
+       	this.setState({
+       		visible: true,
+       	});
+       }
+        this.xiangqing(record.id,record.taskName);
+        this.xiangqings(record.orderNo);
 		this.xiangmu(record.orderNo);
+		this.loaduserss(record);
     },
      //订单详情
-	xiangqing(orderNos) {
+	xiangqing(id,taskName) {
 		$.ajax({
 			method: "get",
 			dataType: "json",
 			crossDomain: false,
-			url: globalConfig.context +"/api/admin/newOrder/getOrderNewDetail",
+			url: globalConfig.context +"/api/admin/orderProject/orderTaskDetail",
 			data: {
-				orderNo:orderNos
+				id:id
 			},
 			success: function(data) {
 				let theArr = [];
@@ -268,30 +356,91 @@ const Task = React.createClass({
 				} else {
 					let thisdata=data.data;
 					this.setState({
+						 id: thisdata.id,//ID
 						 orderNo: thisdata.orderNo,//订单编号
-						 contractNo: thisdata.contractNo,//合同编号
 						 userName:thisdata.userName,//客户名称
-						 signDate:thisdata.signDate,//签单时间
+						 taskName: thisdata.taskName,//任务名称
+						 cname:thisdata.cname,//项目品类
+						 contractNo:thisdata.contractNo,//合同编号
+						 projectStatus:thisdata.projectStatus,//项目状态
+						 taskStatus:thisdata.taskStatus,//任务状态
+						 taskDate:thisdata.taskDate,//分配时间
+						 taskComment:thisdata.taskComment,//说明
+						 attachmentUrl: thisdata.attachmentUrl ? splitUrl(thisdata.attachmentUrl, ',', globalConfig.avatarHost + '/upload') : [],//图片地址
+						 salesmanName:thisdata.salesmanName,//订单负责人
+						 startDate:thisdata.startDate,//启动日期
+						 endDate:thisdata.endDate,//结束日期
+						 acceptDate:thisdata.acceptDate,//受理日期
+						 reviewDate:thisdata.reviewDate,//评审日期
+						 publicityDate:thisdata.publicityDate,//公示日期
+						 licenceDate:thisdata.licenceDate,//发证日期
+						 contacts:thisdata.contacts,//联系人
+						 contactMobile:thisdata.contactMobile,//联系人电话
+						 legalPerson:thisdata.legalPerson,//法人
+						 legalPersonTel:thisdata.legalPersonTel,//法人电话
+						 certificateNumber:thisdata.certificateNumber,//证书编号
+						 status:thisdata.status,//状态
+						 formRetrieve:thisdata.formRetrieve,//满意度表格
+						 taskRefund:thisdata.taskRefund,//退单
+						 refundContent:thisdata.refundContent,//退单信息
+						 retrieveContent:thisdata.retrieveContent,//回收信息
+						 arrivalMoney:thisdata.arrivalMoney,//是否到款
+						 setUpAmount:thisdata.setUpAmount,//立项金额
+						 declareUser:thisdata.declareUser,//账号
+						 declarePwd:thisdata.declarePwd,//密码
+						 depName:thisdata.depName//订单部门
+					})
+				};
+				
+			}.bind(this),
+		}).always(function() {
+			this.setState({
+				loading: false
+			});
+		}.bind(this));
+	},
+	//订单详情
+	xiangqings(orderNos) {
+		$.ajax({
+			method: "get",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +"/api/admin/newOrder/getOrderNewDetail",
+			data: {
+				orderNo:orderNos
+			},
+			success: function(data) {
+				let theArr = [];
+				let thisdata=data.data;
+				let ProvinceCityArr = [];
+				let ProvinceS = thisdata.locationProvince; //省
+				let citys = thisdata.locationCity;//市
+				let Areas = thisdata.locationArea;//区
+				ProvinceCityArr.push(ProvinceS, citys, Areas);
+				if(data.error.length || data.data.list == "") {
+					if(data.error && data.error.length) {
+						message.warning(data.error[0].message);
+					};
+				} else {
+					this.setState({
 						 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,//财务电话
 	                     depName:thisdata.depName,//订单部门
+						 locationProvince:thisdata.locationProvince,
+						 locationCity:thisdata.locationCity,
+						 locationArea:thisdata.locationArea,
+						 ProvinceCity:ProvinceCityArr,
+						 postalAddress:thisdata.postalAddress,//详细地址
+						 setUpAmount:thisdata.setUpAmount,//立项金额
 					})
 				};
-				
+				console.log(ProvinceCityArr,this.state.ProvinceCity)
 			}.bind(this),
 		}).always(function() {
 			this.setState({
@@ -299,6 +448,48 @@ const Task = React.createClass({
 			});
 		}.bind(this));
 	},
+	//查看下证信息
+	loaduserss(record){
+		$.ajax({
+	        method: "get",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context + '/api/admin/orderProject/selectTaskProgress',
+	        data: {
+	          tid:record.id
+	        },
+	        success: function (data) {
+	            let theArr=[];
+	            let thisData=[];
+	            if (!thisData) {
+	                if (data.error && data.error.length) {
+	                    message.warning(data.error[0].message);
+	                };
+	                thisData = {};
+	            }else{
+	            	for(let i = 0; i < data.data.length; i++) {
+	            		thisData= data.data[i];  
+	                	theArr.push({
+							num:i+1,
+	                		key:i,
+	                		id:thisData.id,//编号
+	                		alreadyNumber:thisData.alreadyNumber,//下证数
+	                		licenceTimes:thisData.licenceTimes,//下证时间
+	                		notCount:thisData.notCount,//未下证数
+							flag:true
+	                	})
+	            	}
+	            	this.setState({
+	            		contactList:theArr
+	            	})
+	            };
+	        }.bind(this),
+	   }).always(function () {
+	        this.setState({            	
+	            loading: false
+	        });
+	    }.bind(this));  
+	},
 	//项目列表
 	xiangmu(orderNos) {
 		$.ajax({
@@ -346,10 +537,59 @@ const Task = React.createClass({
 			});
 		}.bind(this));
 	},
+	caozuorizhi(){
+		this.setState({
+			visibleA:true
+		})
+		$.ajax({
+			method: "get",
+			dataType: "json",
+			crossDomain: false,
+			url: globalConfig.context +"/api/admin/orderProject/TaskLogList",
+			data: {
+				id:this.state.id
+			},
+			success: function(data) {
+				let theArr = [];
+				
+				if(data.error.length || data.data.list == "") {
+					if(data.error && data.error.length) {
+						message.warning(data.error[0].message);
+					};
+				} else {
+					for (let i = 0; i < data.data.length; i++) {
+		                let thisdata = data.data[i];
+		                theArr.push({
+		                     key: i,
+		                     id:thisdata.id,//日志ID
+							 content:thisdata.content,//流程
+		                     taskId:thisdata.taskId,//任务ID
+		                     aName:thisdata.aName,//负责人
+		                     createTimes:thisdata.createTimes,//时间
+		                });
+		            };
+				};
+				this.setState({
+		            dataSourceA: theArr,
+		        });
+			}.bind(this),
+		}).always(function() {
+			this.setState({
+				loading: false
+			});
+		}.bind(this));
+	},
+	//关闭操作工时
+	visitCancelA(){
+		this.setState({
+			visibleA:false
+		})
+	},
 	 //关闭详情
 	visitCancel(e){
 		this.setState({
-			visible:false
+			visible:false,
+			speVisible:false,
 		})
 		this.reset();
 	},
@@ -359,6 +599,23 @@ const Task = React.createClass({
 		})
 		this.reset();
 	},
+	setColor(){
+		var arr = []
+		console.log($(".userName span"))
+		$(".userName span").after("(<span class='ruanzhu'>软著数</span>/<span class='xiazheng'>下证数</span>)")
+	},
+	//测试
+	foo2(){
+		this.setState({
+			testFlag1:false,
+			speVisible:false,
+		})
+	},
+	foo1(){
+		this.setState({
+			testFlag1:true
+		})
+	},
 	foo(){
 		this.setState({
 			testFlag:false
@@ -462,10 +719,36 @@ const Task = React.createClass({
                 });
             }
         };
+		const utils = {
+			getSatisfaction:function(num){
+				switch(num){
+					case 0:
+						return '未收回';
+					case 1:
+						return '已收回';
+					default:
+						return '其它';
+				}
+			},
+			getChargeback:function(num){
+				switch(num){
+					case 0:
+						return '已完成';
+					case 1:
+						return '未完成';
+					default:
+						return '其它';
+				}
+			}
+		}
         const formItemLayout = {
             labelCol: { span: 8 },
             wrapperCol: { span: 14 },
         };
+		const formItemLayout1 = {
+		    labelCol: { span: 6 },
+		    wrapperCol: { span: 8 },
+		};
         const hasSelected = this.state.selectedRowKeys.length > 0;
         const { RangePicker } = DatePicker;
         let departmentArr = this.state.departmentArr || [];
@@ -495,7 +778,6 @@ const Task = React.createClass({
                		 </Select> 
                     <Button type="primary" onClick={this.search}>搜索</Button>
                     <Button onClick={this.reset}>重置</Button>
-					<Button type='primary' style={{marginLeft:'10px'}}>导出Excel</Button>
                     {/* <span>更多搜索<Switch defaultChecked={false} onChange={this.searchSwitch.bind(this)} /></span>
                     <div className="search-more" style={this.state.searchMore ? { display: 'none' } : {}}>
                         <span>订单时间 :</span>
@@ -525,7 +807,7 @@ const Task = React.createClass({
                     specially={0}
                     roleName={this.state.nub}
                 />
-                <Modal	
+                {/*<Modal	
 				      className="customeDetails"
 				      footer=''
 			          title="任务详情"
@@ -660,7 +942,7 @@ const Task = React.createClass({
 				                </div>
 				            </Spin>
 				        </Form>
-			        </Modal>
+			        </Modal>*/}
 			        <Modal maskClosable={false} visible={this.state.addnextVisible}
                         onOk={this.nextCancel} onCancel={this.nextCancel}
                         width='900px'
@@ -702,217 +984,258 @@ const Task = React.createClass({
 			                </Spin>
 			            </Form >
 			        </Modal>
-					<Modal maskClosable={false} visible={this.state.testFlag}
-					    onOk={this.nextCancel} onCancel={this.foo}
-					    width='800px'
+					<Modal width='800px'
+					    title='操作日志'                    
+					    footer=''
+					    className="admin-desc-content">
+						<div className="patent-table patent-table-center">
+						    <Spin spinning={this.state.loading}>
+						        <Table columns={this.state.columnsY}/>
+						    </Spin>
+						</div>
+					</Modal>
+					<Modal maskClosable={false} visible={this.state.speVisible}
+					    onOk={this.visitOk} onCancel={this.visitCancel}
+					    width='900px'
 					    title='项目概况'                    
 					    footer=''
 					    className="admin-desc-content">
 						<div className="clearfix">
-							<FormItem className="large-item"
-								labelCol={{ span: 5 }}
-								wrapperCol={{ span: 14 }}
+							<FormItem className="half-item"
+								{...formItemLayout}
 								label="当前项目情况">
-								<Radio.Group value={this.state.aaa}>
-									<Radio value={1}>开启</Radio>
-									<Radio value={2}>暂停</Radio>
-								</Radio.Group>
-								<Button type='primary' size='small' style={{marginTop:'5px',position:'absolute'}}>操作日志</Button>
-							</FormItem>
-						</div>
-						<div className="clearfix">
-							<FormItem className="large-item"
-								labelCol={{ span: 5 }}
-								wrapperCol={{ span: 14 }}
-								label="退单">
-								<Radio.Group value={this.state.aaa}>
-									<Radio value={1}>项目已完成退单</Radio>
-									<Radio value={2}>项目未完成退单</Radio>
-									<Radio value={3}>其他</Radio>
-								</Radio.Group>
+								<span>{this.state.status?'暂停':'开启'}</span>
+								<Button type='primary' size='small' style={{marginTop:'5px',position:'absolute'}} onClick={this.caozuorizhi}>操作日志</Button>
 							</FormItem>
-						</div>
-						<div className="clearfix">
-							<FormItem className="large-item"
-								labelCol={{ span: 5 }}
-								wrapperCol={{ span: 14 }}
-								label="请备注退单原因">
-								<Input.TextArea />
-							</FormItem>
-						</div>
-						<div className="clearfix">
-							<FormItem className="large-item"
-								labelCol={{ span: 5 }}
-								wrapperCol={{ span: 14 }}
-								label="满意度表格">
-								<Radio.Group value={this.state.aaa}>
-									<Radio value={1}>已收回</Radio>
-									<Radio value={2}>未收回</Radio>
-									<Radio value={3}>其他</Radio>
-								</Radio.Group>
-							</FormItem>
-						</div>
-						<hr style={{border:'1px dashed #aaa', width:"90%",margin:'auto'}}/>
-						<div className="clearfix">
 							<FormItem className="half-item"
 								{...formItemLayout}
-								label="是否特批">
-								<span></span>
+								label="合同编号">
+								<span>{this.state.contractNo}</span>
 							</FormItem>
+						</div>
+						<div className="clearfix">
 							<FormItem className="half-item"
 								{...formItemLayout}
-								label="项目进度">
-								<span></span>
+								label="项目状态">
+								<span>{getProcessStatus(this.state.projectStatus)}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
-								label="合同编号">
-								<span></span>
+								label="是否特批">
+								<span>{getApproval(this.state.approval)}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="结算状态">
-								<span></span>
+								<span>{getLiquidationStatus(this.state.liquidationStatus)}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="流程状态">
-								<span></span>
+								<span>{getProcessStatus(this.state.processStatus)}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="订单编号">
-								<span></span>
+								<span>{this.state.orderNo}</span>
+							</FormItem>
+						</div>
+						<div className="clearfix">
+							<FormItem className="half-item"
+								{...formItemLayout}
+								label="满意度表格">
+								<span>{utils.getSatisfaction(this.state.formRetrieve)}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
-								label="材料是否启动">
-								<span></span>
+								label="退单">
+								<span>{utils.getChargeback(this.state.taskRefund)}</span>
 							</FormItem>
 						</div>
-						<hr style={{border:'1px dashed #aaa', width:"90%",margin:'auto'}}/>
 						<div className="clearfix">
-							<h3 style={{marginTop:'10px',marginLeft:'10px'}}>任务信息</h3>
+							{<FormItem className='half-item'
+								{...formItemLayout}
+								label="(满意度)备注">
+								<span>{this.state.retrieveContent}</span>
+							</FormItem>}
+							{<FormItem className='half-item'
+								{...formItemLayout}
+								label="(退单)备注">
+								<span>{this.state.refundContent}</span>
+							</FormItem>}
+						</div>
+						<div className="clearfix">
+							<h3 className='sub-title'>任务信息</h3>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="任务编号">
-								<span></span>
+								<span>{this.state.id}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="任务名称">
-								<span></span>
+								<span>{this.state.taskName}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="任务状态">
-								<span></span>
+								<span>{getTaskStatus(this.state.taskStatus)}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="任务类别">
-								<span></span>
+								<span>{this.state.cname}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
-								label="证书编号">
-								<span></span>
+								label="证书编号" >   
+								<span>{this.state.certificateNumber}</span>	
 							</FormItem>
 						</div>
-						<hr style={{border:'1px dashed #aaa', width:"90%",margin:'auto'}}/>
+						{/*<hr style={{border:'1px dashed #aaa', width:"90%",margin:'auto'}}/>*/}
 						<div className="clearfix">
-							<h3 style={{marginTop:'10px',marginLeft:'10px'}}>联系信息</h3>
+							<h3 className='sub-title'>联系信息</h3>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="客户名称">
-								<span></span>
+								<span>{this.state.userName}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="企业法人">
-								<span></span>
+								<span>{this.state.legalPerson}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="法人电话">
-								<span></span>
+								<span>{this.state.legalPersonTel}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="客户联系人">
-								<span></span>
+								<span>{this.state.contacts}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="联系人电话">
-								<span></span>
+								<span>{this.state.contactMobile}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="企业地址">
-								<span></span>
+								<span>{getprovince(this.state.locationProvince)}/{getprovince(this.state.locationCity)}/{getprovince(this.state.locationArea)}</span>
+							</FormItem>
+							<FormItem className="half-item"
+								{...formItemLayout}
+								label="">
+							</FormItem>
+							<FormItem className="half-item"
+								{...formItemLayout}
+								label="详细地址">
+								<span>{this.state.postalAddress}</span>
 							</FormItem>
 						</div>
-						<hr style={{border:'1px dashed #aaa', width:"90%",margin:'auto'}}/>
+						{/*<hr style={{border:'1px dashed #aaa', width:"90%",margin:'auto'}}/>*/}
 						<div className="clearfix">
-							<h3 style={{marginTop:'10px',marginLeft:'10px'}}>订单负责人</h3>
+						<h3 className='sub-title'>订单负责人信息</h3>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="负责人">
-								<span></span>
+								<span>{this.state.salesmanName+'(湖南科德)'}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="负责人电话">
-								<span></span>
+								<span>{this.state.salesmanMobile}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="财务负责人">
-								<span></span>
+								<span>{this.state.financeName}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="财务负责人电话">
-								<span></span>
+								<span>{this.state.financeMobile}</span>
 							</FormItem>
-							<FormItem className="half-item"
-								{...formItemLayout}
-								label="附件">
-								<span></span>
+						</div>
+						<div className="clearfix" style={{marginTop:'10px'}}>
+							<FormItem
+							    labelCol={{ span: 3 }}
+							    wrapperCol={{ span: 18 }}
+							    label='附件'
+							    >
+								<Upload className="demandDetailShow-upload"
+								    listType="picture-card"
+								    fileList={this.state.attachmentUrl}                               
+								    onPreview={(file) => {
+								        this.setState({
+								            previewImage: file.url || file.thumbUrl,
+								            previewVisible: true,
+								        });
+								    }} >
+								</Upload>
+								<Modal maskClosable={false} footer={null}
+								    visible={this.state.previewVisible}
+								    onCancel={() => { this.setState({ previewVisible: false }) }}>
+								    <img alt="" style={{ width: '100%' }} src={this.state.previewImage || ''} />
+								</Modal>
 							</FormItem>
-							<FormItem className="half-item"
-								{...formItemLayout}
+						</div>
+						<div className="clearfix">
+							<FormItem
+								labelCol={{ span: 3 }}
+								wrapperCol={{ span: 16 }}
 								label="备注">
-								<Input.TextArea />
+								<span>{this.state.taskComment}</span>
 							</FormItem>
 						</div>
-						<hr style={{border:'1px dashed #aaa', width:"90%",margin:'auto'}}/>
 						<div className="clearfix">
-							<h3 style={{marginTop:'10px',marginLeft:'10px'}}>项目申报进度</h3>
+							<h3 className='sub-title'>项目申报进度</h3>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="启动时间">
-								<DatePicker style={{marginTop:'5px'}}/>
+								<span>{this.state.startDate}</span>
 							</FormItem>
 							<FormItem className="half-item"
 								{...formItemLayout}
 								label="软著派单数量">
-								<InputNumber />
+								<span>{this.state.commodityQuantity}</span>
 							</FormItem>
-							<div className='half-item'>
-							
-							</div>
-							<div className='half-item'>
-								<Button type='primary' style={{marginLeft:'45px'}}>+增加下证信息</Button>
+							<div className="patent-table patent-table-center">
+							    <Spin spinning={this.state.loading}>
+							        <Table columns={this.state.ContactsLists}
+										   dataSource={this.state.contactList}
+										   pagination={false}/>
+							    </Spin>
 							</div>
+						</div>
+						<div className="clearfix">
+							<h3 className='sub-title'>项目业务</h3>
 							<div className="patent-table">
 							    <Spin spinning={this.state.loading}>
-							        <Table columns={this.state.columnsY} width={400}/>
+							        <Table columns={this.state.columnsX}
+							            dataSource={this.state.dataSourceX}
+							            pagination={this.state.paginations}
+							            onRowClick={this.tableRowClickX} 
+							            />
 							    </Spin>
 							</div>
 						</div>
 					</Modal>
+					<Modal width='800px' visible={this.state.visibleA}
+						onCancel={this.visitCancelA}
+					    title='操作日志'                    
+					    footer=''
+					    className="admin-desc-content">
+						<div className="patent-table patent-table-center">
+						    <Spin spinning={this.state.loading}>
+						        <Table columns={this.state.columnsA}
+										dataSource={this.state.dataSourceA}
+										pagination={false}/>
+						    </Spin>
+						</div>
+					</Modal>
         </div> )
     }
 })

+ 1 - 1
package.json

@@ -1,6 +1,6 @@
 {
   "name": "afanti",
-  "version": "1.1.05",
+  "version": "1.1.06",
   "description": "",
   "main": "index.js",
   "scripts": {