| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515 | import React from 'react';import { Icon, Table, Modal, message, Spin, Input, Select, Button, Form ,Upload,Popconfirm,AutoComplete} from 'antd';import ajax from 'jquery/src/ajax/xhr.js';import $ from 'jquery/src/ajax';import '../userMangagement.less';import {lvl} from '../../../dataDic.js';//图片组件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;     },    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/superviser/uploadAdminImg"}                    data={{ 'sign': this.props.pictureSign }}                    listType="picture-card"                    fileList={fileList}                    onPreview={this.handlePreview}                    onChange={this.handleChange} >                    {fileList.length >= 4 ? null : uploadButton}                </Upload>                <Modal maskClosable={false} visible={previewVisible} footer={null} onCancel={this.handleCancel}>                    <img alt="example" style={{ width: '100%' }} src={previewImage} />                </Modal>            </div>        );    }});const ManagementDetaile = Form.create()(React.createClass({	loadData() {        this.setState({            loading: true        });        $.ajax({            method: "post",            dataType: "json",            crossDomain: false,            url: globalConfig.context + '/api/admin/roles',            data: {            },            success: function (data) {                let theArr = [];                if (!data.data) {                    if (data.error && data.error.length) {                        message.warning(data.error[0].message);                    };                } else {                    for (let i = 0; i < data.data.list.length; i++) {                        let thisdata = data.data.list[i];                        theArr.push({                             key: i,                        });                    };                   }                this.setState({                    dataSource: theArr,                    pagination: false,                });            }.bind(this),        }).always(function () {            this.setState({                loading: false            });        }.bind(this));    },	getInitialState() {		return {			loading: false,			visible: false,			orgCodeUrl:[],			checkedKeys: [],			columns: [				{                    title: '业务项目名称',                    dataIndex: 'roleName',                    key: 'roleName'                }, {                    title: '项目类别',                    dataIndex: 'creater1',                    key: 'creater1'                },{                    title: '项目数量',                    dataIndex: 'roleName2',                    key: 'roleName2'                }, {                    title: '服务市价',                    dataIndex: 'creater2',                    key: 'creater2'                }, {                    title: '实签价格',                    dataIndex: 'roleName3',                    key: 'roleName3'                }, {                    title: '下单时间',                    dataIndex: 'creater4',                    key: 'creater4'                }, {                    title: '项目说明',                    dataIndex: 'roleName5',                    key: 'roleName5'                }			]		};	},	//查看基本详情基本信息    loaduser(record){    	if(record){    	$.ajax({            method: "post",			dataType: "json",			crossDomain: false,			url: globalConfig.context + '/api/admin/role/rolePermission',            data: {              id: record.id            },            success: function (data) {                let thisData = data.data;                                if (!thisData) {                    if (data.error && data.error.length) {                        message.warning(data.error[0].message);                    };                    thisData = {};                };                let idList=[];                thisData.map(function(item){                	idList.push(                		item.pid                	)                })                this.setState({					ids:record.id,                	roleName:thisData[0].rname,                	checkedKeys:idList,	                });                              }.bind(this),       }).always(function () {            this.setState({            	                loading: false            });        }.bind(this));         }    },	handleOk(e) {		this.setState({			visible: false,		});		this.props.closeDesc(false, true);	},	handleCancel(e) {		this.setState({			visible: false,		});		this.props.closeDesc(false);	},	nextCancel() {		this.setState({			addnextVisible: false		})	},	//查看订单明细	orderDetails(record){		if(record){	    	$.ajax({	            method: "post",				dataType: "json",				crossDomain: false,				url: globalConfig.context + '/api/admin/role/rolePermission',	            data: {	              id: record.id	            },	            success: function (data) {	                let thisData = data.data;                	                if (!thisData) {	                    if (data.error && data.error.length) {	                        message.warning(data.error[0].message);	                    };	                    thisData = {};	                };	                let idList=[];	                thisData.map(function(item){	                	idList.push(	                		item.pid	                	)	                })	                this.setState({						ids:record.id,	                });                  	            }.bind(this),	       }).always(function () {	            this.setState({            		                loading: false	            });	        }.bind(this));  	    }	},	//保存编辑	//新建订单、编辑订单保存	handleSubmit(e) {		e.preventDefault();//      if(this.state.orderType==undefined){//      	message.warning('请选择财务负责人');//      	return false;//      };		this.props.form.validateFields((err, values) => {			if(!err) {				this.setState({					loading: true				});				$.ajax({					method: "POST",					dataType: "json",					crossDomain: false,					url: globalConfig.context + 'api/baocuncaiwu',					data: {						id:this.props.datauser.id					}				}).done(function(data) {					this.setState({						loading: false					});					if(!data.error.length) {						message.success('保存成功!');						this.handleOk()					} else {						message.warning(data.error[0].message);					}				}.bind(this));			}		});	},	tableRowClick(record, index) {        this.setState({        	addnextVisible:true,        });        this.orderDetails(record)    },	componentWillMount() {			},	componentWillReceiveProps(nextProps) { //props改变时触发		this.state.visible = nextProps.showDesc;		if(nextProps.userDetaile && nextProps.showDesc ) {			if(nextProps.datauser && nextProps.datauser.id ) {				this.loaduser(nextProps.datauser);				this.loadData();			}		}	},	render() {		const FormItem = Form.Item		const formItemLayout = {			labelCol: { span: 8 },			wrapperCol: { span: 14 },		};		const orderDetaiel=this.state.orderList || [];		const dataSources=this.state.customerArr || [];        const options = dataSources.map((group,index) =>				      <Option key={index} value={group.name}>{group.name}</Option>				     )		return(			<div>            <Modal maskClosable={false} visible={this.state.visible}                        onOk={this.handleOk} onCancel={this.handleCancel}                        width='1000px'                        title='编辑订单'                                             footer=''                        className="admin-desc-content">			            <Form layout="horizontal" id="demand-form" style={{paddingBottom:'40px'}} onSubmit={this.handleSubmit} >			                <Spin spinning={this.state.loading}>		                        <div className="clearfix">		                            <div className="clearfix">			                       		<FormItem className="half-item"				                            {...formItemLayout}				                            label="订单编号" >				                            <span>{orderDetaiel.roleName}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="下单时间" >  				                            <span>{orderDetaiel.createTimez}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="客户名称" >  				                            <span>{orderDetaiel.roleName}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="订单类型" >  				                            <span>{orderDetaiel.roleName}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="订单渠道" >  				                            <span>{orderDetaiel.roleName}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="订单状态" >  				                            <span>{orderDetaiel.roleName}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="已收款项" >  				                            <span>{orderDetaiel.roleName}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="结算状态" >  				                            <span>{orderDetaiel.roleName}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="市价订单金额" >    			                            	<span>{orderDetaiel.roleName}</span>					                    </FormItem>					                    <FormItem className="half-item"				                            {...formItemLayout}				                            label="市价首款金额" >   				                            <span>{orderDetaiel.roleName}</span>					                    </FormItem>					                    <div className='clearfix'>								        	<FormItem className="half-item"					                            {...formItemLayout}					                            label="实签订单金额" >   					                            <span>{orderDetaiel.roleName}</span>				                    		</FormItem>				                    		<FormItem className="half-item"					                            {...formItemLayout}					                            label="实签首款金额" >   					                            <span>{orderDetaiel.roleName}</span>				                    		</FormItem>				                    		<FormItem className="half-item"					                            {...formItemLayout}					                            label="特批立项" >   					                            <span>{orderDetaiel.roleName}</span>				                    		</FormItem>											<div className="clearfix">												<FormItem							                        labelCol={{ span: 4 }}							                        wrapperCol={{ span: 18 }}							                        label="合同扫描件" >						                            <Upload className="demandDetailShow-upload"						                                listType="customer_sys_file"						                                fileList={this.state.orgCodeUrl}						                                onPreview={(file) => {						                                    this.setState({						                                        previewImage: file.url || file.thumbUrl,						                                        previewVisible: true,						                                    });						                                }} >						                            </Upload>						                            <Modal maskClosable={false} footer={null}						                                visible={this.state.previewVisible}						                                onCancel={() => { this.setState({ previewVisible: false }) }}>						                                <img alt="" style={{ width: '100%' }} src={this.state.previewImage || ''} />						                            </Modal>						                        </FormItem>    					                        </div>					                        <div className='clearfix'>									        	<FormItem										            labelCol={{ span: 4 }}										            wrapperCol={{ span: 16 }}										            label="订单留言" >									        		<span>{orderDetaiel.roleName}</span>										        </FormItem>									        </div>								        </div>			                        </div>			                        <div className='clearfix'>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="订单负责人" >  				                            <span>{orderDetaiel.roleName}</span>			                    		</FormItem>			                    	</div>			                    	<div className='clearfix'>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="意向时间" >  				                            <span>{orderDetaiel.createTimez}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="签单时间" >  				                            <span>{orderDetaiel.createTimez}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="财务负责人" >  									        {this.props.editState?									        <Select placeholder="请选择财务负责人"						                            style={{ width: 150 }}						                            value={this.state.orderStatus}						                            onChange={(e) => { this.setState({ orderStatus: e }) }}>						                            {					                                    lvl.map(function (item) {					                                            return <Select.Option key={item.value} >{item.key}</Select.Option>					                                    })					                                }						                    </Select>:						                    <span>{orderDetaiel.createTimez}</span>}			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="首付时间" >  				                            <span>{orderDetaiel.createTimez}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="项目负责人" >  				                            <span>{orderDetaiel.roleName}</span>			                    		</FormItem>			                    		<FormItem className="half-item"				                            {...formItemLayout}				                            label="立项时间" >  				                            <span>{orderDetaiel.createTimez}</span>			                    		</FormItem>		                    		</div>					                <div>					                	<span style={{marginLeft:'50px',fontSize:'20px'}}>订单明细</span>					                </div>					                <div className="patent-table">					                    <Spin spinning={this.state.loading}>					                        <Table columns={this.state.columns}					                            dataSource={this.state.dataSource}					                            pagination={this.state.pagination}					                            onRowClick={this.tableRowClick} 					                            />					                    </Spin>						            </div>						            {this.props.editState?<div className='clearfix' style={{marginTop:'20px'}}>						            	 <Button className="setSave" type="primary" htmlType="submit">保存</Button> 				                         <Button className="cancel" type="ghost" onClick={this.handleCancel}>返回</Button>						            </div>:''}			                    </div>			                </Spin>			            </Form >			        </Modal> 			        <Modal maskClosable={false} visible={this.state.addnextVisible}                        onOk={this.nextCancel} onCancel={this.nextCancel}                        width='550px'                        title='查看订单明细服务'                                             footer=''                        className="admin-desc-content">			            <Form layout="horizontal" id="demand-form">			                <Spin spinning={this.state.loading}>		                        <div className="clearfix">	                        	    <FormItem className="half-middle"				                            {...formItemLayout}				                            label="服务名称" >			                    			<span>{this.state.aaa}</span>			                    	</FormItem>			                    	<FormItem className="half-middle"				                            {...formItemLayout}				                            label="市场价格" >			                    			<span>{this.state.aaa}</span>			                    	</FormItem>			                    	<FormItem className="half-middle"				                            {...formItemLayout}				                            label="实签价格" >			                    			<span>{this.state.aaa}</span>			                    	</FormItem>			                    	<FormItem className="half-middle"				                            {...formItemLayout}				                            label="服务数量" >			                    			<span>{this.state.aaa}</span>			                    	</FormItem>			                    	<FormItem className="half-middle"				                            {...formItemLayout}				                            label="服务说明" >			                    			<span>{this.state.aaa}</span>			                    	</FormItem>		                        </div>			                </Spin>			            </Form >			        </Modal>    	    </div>		)	}}));export default ManagementDetaile;
 |