import React from 'react'; import $ from 'jquery/src/ajax'; import { Modal, message, Spin, Upload, Button, Form, Table, Col, Tag } from 'antd'; import { getjiedian, splitUrl, getNewOrderType, getProcessStatus, getApproval, getLiquidationStatus, getboutique, getCuikuan, } from "@/tools"; import OrderRiZi from "@/orderRiZi.jsx"; import ResolutionDetail from "@/resolutionDetail"; import ImgList from "../../../common/imgList"; import {getProjectName} from "../../../tools"; import ProjectDetailsReadOnly from "../../../common/projectDetailsReadOnly"; import OrderItemStatus from "../../../common/orderItemStatus"; import EnterpriseNameChange from "../../../common/enterpriseNameChange"; const OrderDetail = Form.create()( React.createClass({ loadXmu(record) { this.state.data = []; this.setState({ loading: true, }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/newOrder/getOrderTask", data: { orderNo: record ? record.orderNo : this.props.data.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]; thisdata.key = i; thisdata.sort = thisdata.cSort; theArr.push(thisdata); } } this.setState({ dataSource: theArr, pagination: false, }); }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, getInitialState() { return { rotateDeg: 0, visible: false, avisible: false, loading: false, declarationBatch: 1, dataInfor: {}, addnextVisible:false, jsDate: [], replenishUrl: [], auditStatus: 0, textFileList: [], videoFileList: [], previewVisibles: false, pictureUrl: [], pictureUrlMin: [], columns: [ { title: "业务项目名称", dataIndex: "commodityName", key: "commodityName", render: (text, record) => { return text && text.length > 6 ? ( {text.substr(0, 8) + "-" + record.id}... ) : ( text + "-" + record.id ); }, }, { title: "项目类别", dataIndex: "cname", key: "cname", }, { title: "项目数量", dataIndex: "commodityQuantity", key: "commodityQuantity", render: (text, record) => { if (record.splitStatus == 1) { return ( {text}{" "} { e.stopPropagation(); this.showRes(record); }} > 已拆 ); } else { return text; } }, }, { title: "服务市价(万元)", dataIndex: "commodityPrice", key: "commodityPrice", }, { title: "项目状态", dataIndex: "projectStatus", key: "projectStatus", render: (text) => { return getProjectName(text); }, }, { title: "证书编号", dataIndex: "certificateNumber", key: "certificateNumber", }, { title: "是否主要项目", dataIndex: "main", key: "main", render: (text) => { return text ? "是" : "否"; }, }, { title: "项目说明", dataIndex: "taskComment", key: "taskComment", render: (text) => { return text && text.length > 8 ? ( {text.substr(0, 8)}... ) : ( text ); }, }, ], columnsX: [ { title: "流程", dataIndex: "processName", key: "processName", }, { title: "操作人", dataIndex: "adminName", key: "adminName", }, { title: "时间", dataIndex: "createDate", key: "createDate", }, ], ContactsListsNew: [ { title: "项目名称", dataIndex: "commodityName", key: "commodityName", render: (text, record) => { return {text + "-" + record.tid}; }, }, { title: "项目分类", dataIndex: "projectType", key: "projectType", render: (text) => { let arr = this.state.dataSource || []; let str = ""; for (let i = 0; i < arr.length; i++) { if (this.state.dataSource[i].sort == text) { str = this.state.dataSource[i].cname; return {str}; } } }, }, { title: "催款科目", dataIndex: "dunTypeName", key: "dunTypeName", render: (text, record) => { if (record.customizeName) { return text + record.customizeName; } return {text}; }, }, { title: "时间(天)", dataIndex: "waitDay", key: "waitDay", render: (text, record) => { if (record.dunTypeName) { if (record.customizeTimes) { return record.customizeTimes; } return {text}; } }, }, { title: "金额(万元)", dataIndex: "money", key: "money", render: (text, record) => { if (record.dunTypeName) { if (record.appropriationRatio) { return {record.appropriationRatio}(拨款比例); } else { return {text}; } } }, }, { title: "服务年限", dataIndex: "startDate", key: "startDate", render: (text, record) => { if (record.dunTypeName) { return {text}; } }, }, { title: "催款状态", dataIndex: "status", key: "status", render: (text) => { return {text == 1 ? "已启动" : "未启动"}; }, }, ], ContactsLists: [ { title: "催款科目", dataIndex: "dunSubject", key: "dunSubject", render: (text) => { return getjiedian(text); }, }, { title: "金额(万元)", dataIndex: "money", key: "money", }, { title: "催款状态", dataIndex: "dunStatus", key: "dunStatus", render: (text) => { return getCuikuan(text); }, }, ], }; }, //点击打卡项目详情 tableRowClick(record) { if (record.type == "1") { this.setState({ displayFees: "block", costReduction: record.costReduction, officialCost: record.officialCost, }); }else{ this.setState({ displayFees: "none", }); } this.setState({ jid: record.id, //项目ID kid: record.commodityId, //商品ID commodityName: record.commodityName, //金额 commodityPrice: record.commodityPrice, //金额 commodityQuantity: record.commodityQuantity, //数量 taskComment: record.taskComment, //备注 main: record.main.toString(), //是否为主要 addnextVisible: true, dataInfor:record, addState: 0, }); }, //项目详情关闭 nextCancel() { this.setState({ addnextVisible: false, displayFees: "none", officialCost: "", //是否有官费 costReduction: "", //是否有费减 }); }, // 拆分详细 showRes(record) { this.setState({ resVisible: true, resRecord: record, }); }, resCancel() { this.setState({ resVisible: false, }); }, loadData(record) { this.state.orderList = []; $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/newOrder/getOrderNewDetail", data: { orderNo: record ? record.orderNo : this.props.data.orderNo, }, success: function (data) { let thisData = data.data; if (!thisData) { if (data.error && data.error.length) { message.warning(data.error[0].message); } thisData = {}; } this.setState({ id: thisData.id, orderUid: thisData.uid, orderList: thisData, approval: thisData.approval == 0 ? thisData.approval.toString() : thisData.approval, orderRemarks: thisData.orderRemarks, orgCodeUrl: thisData.contractPictureUrl ? splitUrl( thisData.contractPictureUrl, ",", globalConfig.avatarHost + "/upload" ) : [], replenishUrl: thisData.agreementUrl ? splitUrl( thisData.agreementUrl, ",", globalConfig.avatarHost + "/upload" ) : [], orderNo: thisData.orderNo, //订单编号 buyerId: thisData.buyerId, depName: thisData.depName, outsource: thisData.outsource == 0 ? "否" : "是", deleteSign:thisData.deleteSign, }); }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, jdDate(record) { $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/newOrder/selectOrderDun", data: { orderNo: record ? record.orderNo : this.props.data.orderNo, }, success: function (data) { let thisData = data.data; if (!thisData.length) { if (data.error && data.error.length) { message.warning(data.error[0].message); } thisData = {}; } else { this.setState({ jsDate: thisData, }); } }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, rizhi() { this.setState({ loading: true, }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: "/api/admin/newOrder/selectOrderLog", data: { orderNo: this.props.data.orderNo, }, success: function (data) { let theArr = []; let thisData = data.data; if (!thisData.length) { if (data.error && data.error.length) { message.warning(data.error[0].message); } thisData = {}; } else { for (let i = 0; i < data.data.length; i++) { let thisdata = data.data[i]; theArr.push({ processName: thisdata.processName, adminName: thisdata.adminName, createDate: thisdata.createDate, remarks: thisdata.remarks, }); } } this.setState({ dataSourceX: theArr, }); }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, getOrderLog() { this.setState({ avisible: true, }); this.rizhi(); }, closeOrderLog() { this.setState({ avisible: false, }); }, getPictureUrl(e) { this.setState({ pictureUrl: e }); }, componentWillMount() { if (this.props.data.orderNo) { this.loadData(); this.loadXmu(); this.jdDate(); this.jiedian(this.props.data.orderNo); this.jiedianNew(this.props.data.orderNo); } else { this.state.data = {}; } }, componentWillReceiveProps(nextProps) { if (!this.props.visible && nextProps.visible) { this.state.textFileList = []; this.state.videoFileList = []; if (nextProps.data.orderNo) { this.loadData(nextProps.data); this.loadXmu(nextProps.data); this.jdDate(nextProps.data); this.jiedian(nextProps.data.orderNo); this.jiedianNew(nextProps.data.orderNo); } else { this.state.data = {}; this.state.pictureUrl = []; this.state.pictureUrlMin = []; } this.props.form.resetFields(); } }, downImg() { let num = 0; for (let i = 0; i < this.state.orgCodeUrl.length; i++) { if (this.state.orgCodeUrl[i].url == this.state.previewImage) { num = i; } } if (num == this.state.orgCodeUrl.length - 1) { return message.warning("已经是最后一张了哦"); } this.state.previewImage = this.state.orgCodeUrl[num + 1].url; this.setState({ previewImage: this.state.previewImage, rotateDeg: 0, }); }, upImg() { let num = 0; for (let i = 0; i < this.state.orgCodeUrl.length; i++) { if (this.state.orgCodeUrl[i].url == this.state.previewImage) { num = i; } } if (num == 0) { return message.warning("已经是第一张了哦"); } this.state.previewImage = this.state.orgCodeUrl[num - 1].url; this.setState({ previewImage: this.state.previewImage, rotateDeg: 0, }); }, rotate() { let rotateDeg = this.state.rotateDeg + 90; this.setState({ rotateDeg, }); }, downImgs() { let num = 0; for (let i = 0; i < this.state.replenishUrl.length; i++) { if (this.state.replenishUrl[i].url == this.state.previewImage) { num = i; } } if (num == this.state.replenishUrl.length - 1) { return message.warning("已经是最后一张了哦"); } this.state.previewImage = this.state.replenishUrl[num + 1].url; this.setState({ previewImage: this.state.previewImage, rotateDeg: 0, }); }, upImgs() { let num = 0; for (let i = 0; i < this.state.replenishUrl.length; i++) { if (this.state.replenishUrl[i].url == this.state.previewImage) { num = i; } } if (num == 0) { return message.warning("已经是第一张了哦"); } this.state.previewImage = this.state.replenishUrl[num - 1].url; this.setState({ previewImage: this.state.previewImage, rotateDeg: 0, }); }, rotates() { let rotateDeg = this.state.rotateDeg + 90; this.setState({ rotateDeg, }); }, //节点列表 jiedian(orderNos) { $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/newOrder/selectOrderDun", data: { orderNo: orderNos, }, success: function (data) { let theArr = []; let thisData = []; 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++) { thisData = data.data[i]; theArr.push({ key: i, dunSubject: thisData.dunSubject ? thisData.dunSubject.toString() : "", //催款科目 id: thisData.id, //节点Id money: thisData.money, //催款金额 dunStatus: thisData.dunStatus, //催款状态 orderNo: thisData.orderNo, }); } this.setState({ contactList: theArr, }); } }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, //查看催款节点 jiedianNew(orderNos) { $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/newOrderDun/selectListNewOrderDun", data: { orderNo: orderNos, }, success: function (data) { if (data.error && data.error.length) { message.warning(data.error[0].message); } else { let theArr = []; let thisData = []; let arr = data.data || []; let totalCui = 0; for (let i = 0; i < arr.length; i++) { thisData = arr[i]; totalCui += +thisData.money; theArr.push({ key: i, dunSubject: thisData.dunSubject ? thisData.dunSubject.toString() : "", //催款科目 id: thisData.id, //节点Id money: thisData.money, //催款金额 // orderNo: record ? record.orderNo : this.props.datauser.orderNo, commodityName: thisData.commodityName, projectType: thisData.projectType, dunTypeName: thisData.dunTypeName, status: thisData.status, waitDay: thisData.waitDay, effectiveCount: thisData.effectiveCount, startDate: thisData.startDate, dunType: thisData.dunType, appropriationRatio: thisData.appropriationRatio, customizeName: thisData.customizeName, customizeTimes: thisData.customizeTimes, tid: thisData.tid, }); } if (!totalCui) { totalCui = 0; } totalCui = (Math.round(totalCui * 1000000) / 1000000).toFixed(6); this.setState({ contactListNew: theArr, totalCui, }); } }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, render() { const theData = this.state.orderList || {}; const FormItem = Form.Item; const formItemLayout = { labelCol: { span: 10 }, wrapperCol: { span: 12 }, }; const jsDate = this.state.jsDate || []; const cuiDataList = this.state.contactList || []; return (
{this.state.resVisible ? ( ) : ( "" )}
{theData.orderNo} {theData.signDate} {theData.userName} {getProcessStatus(theData.processStatus)} {getNewOrderType(theData.orderType)} {getLiquidationStatus(theData.liquidationStatus)} {theData.totalAmount} {theData.firstAmount} {theData.settlementAmount} {getApproval(theData.approval)} {this.state.outsource} {this.props.data.orderStatus == "6" && ( {this.props.data.refundAmount} )}
{/* {*/} {/* this.setState({*/} {/* previewImage: file.url || file.thumbUrl,*/} {/* previewVisible: true,*/} {/* });*/} {/* }}*/} {/*/>*/}
{this.state.orgCodeUrl ? :
}
{ this.setState({ previewVisible: false, rotateDeg: 0 }); }} > {/*
旋转
*/}
{/* {*/} {/* this.setState({*/} {/* previewImage: file.url || file.thumbUrl,*/} {/* previewVisibles: true,*/} {/* });*/} {/* }}*/} {/*/>*/}
{this.state.replenishUrl ? :
}
{ this.setState({ previewVisibles: false, rotateDeg: 0 }); }} > {/*
旋转
*/}
{theData.contractNo} {theData.depName}

{this.state.orderRemarks}

{/*
{jsDate.map(item => { return (

{getjiedian(item.dunSubject)} -- {item.money} 万元

); })}
*/}
{theData.salesmanName} {theData.salesmanMobile} {theData.nowFinance} {theData.nowFinanceMobile} {theData.oldSalesmanName} {theData.oldSalesmanMobile} {theData.financeName} {theData.financeMobile}
{/*
*/}

项目业务

催款节点 金额总计(万元): {this.state.totalCui}
{this.state.addnextVisible && } ); }, }) ); export default OrderDetail;