import React, { Component } from "react";
import {Form, Upload, Modal, Button, message, Input, Select, Table, Tooltip} from "antd";
import AgreeButton from "./agreeButton.js";
import Rizhi from "./rizhi.js";
import { getProcessStatusNew, changeColor } from "@/tools.js";
import { shenghePeo } from "@/tools.js";
import $ from "jquery/src/ajax";
import "../../../../../../css/changeDetail.less"
import quxiao from "../../../../../../image/quxiao.png";
import tongguo from "../../../../../../image/tongguo.png";
import ProAndCuiList from "./proAndCuiList.jsx";
import "./xButton.less";
// import ReactToPrint from "react-to-print";
const FormItem = Form.Item;
import Refund from "./refund.js"
import ImgList from "../../../../common/imgList";
import EnterpriseNameChange from "../../../../common/enterpriseNameChange";
const { TextArea } = Input;
const formItemLayout = {
labelCol: { span: 8 },
wrapperCol: { span: 14 }
};
const changeType = [
{
value: "0",
key: "退单退款"
},
{
value: "1",
key: "项目及金额变更"
},
{
value: "2",
key: "仅项目变更"
},
{
value: "3",
key: "仅金额变更"
},
{
value: "4",
key: "重报"
},
{
value: "5",
key: "赠送"
}
];
const getChangeType = function (e) {
if (e || e == 0) {
let str = e.toString();
let theType = "";
changeType.map(function (item) {
if (item.value == str) {
theType = item.key;
}
});
return theType;
}
};
class Itemlist extends Component {
constructor(props) {
super(props);
}
render() {
let pageData = this.props.pageData;
return (
{pageData.labelA === '变更原因' ?
{pageData.dataA}
: pageData.dataA}
{pageData.labelA === '客户名称' ? : null}
{pageData.dataB}
);
}
}
class ChangeDetail extends Component {
constructor(props) {
super(props);
this.state = {
previewVisible: false,
buttonStatus: true,
dataSource: [],
reason: "",
rejectState: 0,
rotateDeg: 0,
contactList: [],
ContactsLists: [
{
title: "金额(万元)",
dataIndex: "amount",
key: "amount",
render: (text, record) => {
return (
实际回收退票(万元)
{
record.amount = e.target.value;
this.setState({ contactList: this.state.contactList });
}}
style={{ width: "120px" }}
/>
);
}
},
{
title: "时间",
dataIndex: "createTimes",
key: "createTimes",
render: (text, record) => {
return (
{/* {
record.time = v._d;
this.setState({ contactList: this.state.contactList });
}}
onOk={v => {
record.time = v._d;
this.setState({ contactList: this.state.contactList });
console.log(this.state);
}}
/> */}
{record.createTimes}
);
}
}
// {
// title: "操作",
// dataIndex: "dels",
// key: "dels",
// render: (text, record, index) => {
// return (
//
//
{
// this.confirmDelet(record);
// }}
// okText="删除"
// cancelText="不删除"
// >
//
//
// {record.load != true ? (
//
// ) : (
// ""
// )}
//
// );
// }
// }
]
};
this.getOrgCodeUrl = this.getOrgCodeUrl.bind(this);
this.changeButtonStatus = this.changeButtonStatus.bind(this);
this.downImg = this.downImg.bind(this);
this.upImg = this.upImg.bind(this);
this.rotate = this.rotate.bind(this);
this.moneyOld = this.moneyOld.bind(this);
}
getOrgCodeUrl(e) {
this.setState({
orgCodeUrl: e
});
}
downImg() {
let num = 0;
for (let i = 0; i < this.props.pictureUrl.length; i++) {
if (this.props.pictureUrl[i].url == this.state.previewImage) {
num = i;
}
}
if (num == this.props.pictureUrl.length - 1) {
return message.warning("已经是最后一张了哦");
}
this.state.previewImage = this.props.pictureUrl[num + 1].url;
this.setState({
previewImage: this.state.previewImage,
rotateDeg: 0
});
}
upImg() {
let num = 0;
for (let i = 0; i < this.props.pictureUrl.length; i++) {
if (this.props.pictureUrl[i].url == this.state.previewImage) {
num = i;
}
}
if (num == 0) {
return message.warning("已经是第一张了哦");
}
this.state.previewImage = this.props.pictureUrl[num - 1].url;
this.setState({
previewImage: this.state.previewImage,
rotateDeg: 0
});
}
rotate() {
let rotateDeg = this.state.rotateDeg + 90;
this.setState({
rotateDeg
});
}
moneyOld(str, money) {
if (money) {
return (
{str}(原合同金额{money}万元)
);
} else {
return {str};
}
}
componentDidMount() {
window.setTimeout(() => {
const contactList = this.props.contactList;
// console.log("看看props", this.props);
contactList.forEach(item => {
item.load = true;
});
this.setState({
contactList
});
}, 0);
}
// loadDataChange() {
// $.ajax({
// method: "get",
// dataType: "json",
// crossDomain: false,
// url: globalConfig.context + "/api/admin/orderChange/orderChangeLogList",
// data: {
// changeId: this.props.data.id
// },
// success: function(data) {
// if (data.error.length || data.data.list == "") {
// if (data.error && data.error.length) {
// message.warning(data.error[0].message);
// }
// } else {
// this.setState({
// dataSource: data.data
// });
// }
// }.bind(this)
// });
// }
// componentDidMount() {
// window.setTimeout(() => {
// console.log(this.props);
// },2000)
// }
//同意拒绝按钮的有无
changeButtonStatus() {
this.setState({
buttonStatus: !this.state.buttonStatus
});
}
componentWillReceiveProps(nextProps) {
this.setState({
paymentTimes: nextProps.data.paymentTimes,
paymentAmount: nextProps.data.paymentAmount,
invoiceTimes: nextProps.data.invoiceTimes,
invoiceAmount: nextProps.data.invoiceAmount,
cwCost: nextProps.data.cwCost,
refundableAmount: nextProps.data.refundableAmount,
cwRemarks: nextProps.data.cwRemarks,
contactList: nextProps.contactList,
refundInvoice: nextProps.data.refundInvoice
});
// if (!nextProps.reset) {
// this.reset();
// }
}
onRef(ref) {
this.fun = ref;
}
render() {
const pageData = [
{
labelA: "客户名称",
formItemLayoutA: formItemLayout,
dataA: this.props.data.userName,
labelB: "合同编号",
formItemLayoutB: formItemLayout,
dataB: this.props.data.contractNo
},
{
labelA: "时间",
formItemLayoutA: formItemLayout,
dataA: this.props.data.createTimes,
labelB: "发起人",
formItemLayoutB: formItemLayout,
dataB: this.props.data.applicant
},
{
labelA: "当前进度",
formItemLayoutA: formItemLayout,
// 当前是咨询师以及咨询师经理时使用shenhePeo函数,其他流程正常显示
dataA:
this.props.data.processState == 2 || this.props.data.processState == 3
? shenghePeo(
this.props.data.processState == 2
? this.props.data.consultantExamine
: this.props.data.managerExamine,
this.props.data.processState
)
: getProcessStatusNew(
this.props.data.processState,
this.props.data.status
),
labelB: "变更类型",
formItemLayoutB: formItemLayout,
dataB: getChangeType(this.props.data.type)
},
{
labelA: "合同额(万元)",
formItemLayoutA: formItemLayout,
dataA: this.moneyOld(this.props.data.totalAmount, this.props.money),
labelB: "已收款(万元)",
formItemLayoutB: formItemLayout,
dataB: changeColor(this.props.data.settlementAmount)
},
{
labelA: "欠款(万元)",
formItemLayoutA: formItemLayout,
dataA: changeColor(this.props.data.arrears),
labelB: "申请退款(万元)",
formItemLayoutB: formItemLayout,
dataB: changeColor(this.props.data.changeAmount)
},
{
labelA: "变更原因",
formItemLayoutA: formItemLayout,
dataA: this.props.data.remarks
}
];
const planData = [
{
labelA: "项目进度",
formItemLayoutA: formItemLayout,
dataA: this.props.data.projectState,
onChangeA: value => {
this.setState({
projectState: value
});
},
labelB: "发生成本费用(万元)",
formItemLayoutB: formItemLayout,
dataB: this.props.data.zxsCost,
onChangeB: value => {
this.setState({
zxsCost: value
});
}
},
{
labelA: "备注",
formItemLayoutA: formItemLayout,
dataA: this.props.data.zxsRemarks,
onChangeA: value => {
this.setState({
zxsRemarks: value
});
}
}
];
const financeData = [
// {
// labelA: "收款时间",
// formItemLayoutA: formItemLayout,
// dataA: this.props.data.paymentTimes,
// labelB: "收款金额(万元)",
// formItemLayoutB: formItemLayout,
// dataB: this.props.data.paymentAmount
// },
// {
// labelA: "开票时间",
// formItemLayoutA: formItemLayout,
// dataA: this.props.data.invoiceTimes,
// labelB: "已开票金额(万元)",
// formItemLayoutB: formItemLayout,
// dataB: this.props.data.invoiceAmount
// },
{
labelA: "发生成本(万元)",
formItemLayoutA: formItemLayout,
dataA: this.props.data.cwCost,
labelB: "应退金额(万元)",
formItemLayoutB: formItemLayout,
dataB: this.props.data.refundableAmount
}
// {
// labelA: "补充资料/备注",
// formItemLayoutA: formItemLayout,
// dataA: this.props.data.cwRemarks
// }
];
const buttonData = [
{
name: "同意",
title: "理由",
placeholder: "请输入理由",
type: "primary",
status: 2,
onChange: value => {
this.setState({
remarks: value
});
}
},
{
name: "拒绝",
title: "理由",
placeholder: "请输入理由",
type: "danger",
status: 3,
onChange: value => {
this.setState({
remarks: value
});
}
}
];
const orgCodeUrl = this.props.pictureUrl;
return (
{
this.refs = e;
}}
>
{/*
通过
*/}
合同变更记录
{pageData.map((item, index) => {
return
;
})}
{/* {*/}
{/* this.setState({*/}
{/* previewImage: file.url || file.thumbUrl,*/}
{/* previewVisible: true,*/}
{/* });*/}
{/* }}*/}
{/*/>*/}
{
this.setState({ previewVisible: false }, () => {});
}}
>
{/*
变更日志
*/}
{/* 操作人: */}
{this.props.dataSource.map((item, index) => {
if (item.status == 0) {
item.status = "发起";
} else if (item.status == 1) {
item.status = "审核中";
} else if (item.status == 2) {
item.status = "通过";
} else if (item.status == 3) {
item.status = "驳回";
} else if (item.status == 4) {
item.status = "完成";
}
return (
-
{item.aname + ":" + "(" + item.status + ")" + item.remarks}
);
})}
收款情况
{(this.props.proceedsData.bill || []).map((item, index) => (
-
{item.payTime +
" " +
item.aName +
" 收款:" +
item.transactionAmount +
"万元"}
))}
收款总计:{this.props.proceedsTotal}万元
{(this.props.proceedsData.invoice || []).map((item, index) => (
-
{item.createTime + " " + " 开票:" + item.amount + "万元"}
))}
开票总计:{this.props.invoiceTotal}万元
系统预估 产生成本(万元):
{this.props.data.estimateCost
? this.props.data.estimateCost
: "0"}{" "}
应退金额(万元):
{this.props.data.estimateRefundable
? this.props.data.estimateRefundable
: "0"}
回收退票
{/* {this.state.processStatus == 0 ? ( */}
{/* ) : (
""
)} */}
{/* {this.props.data.type === 0 && this.props.data.processState >= 4 ? (
当前项目进度(咨询师经理填写)
{planData.map((item, index) => {
return ;
})}
) : (
""
)} */}
{/* {this.props.data.type === 0 ? (
this.props.data.processState >= 5 ? (
当前财务状态(财务填写)
{financeData.map((item, index) => {
return ;
})}
) : (
""
)
) : this.props.data.status === 4 ? (
当前财务状态(财务填写)
{financeData.map((item, index) => {
return ;
})}
) : (
""
)} */}
{this.props.data.processState > 5 &&
(this.props.data.status == 1 || this.props.data.status == 3)&&
this.props.processState == this.props.data.processState ? (
// this.state.buttonStatus ? (
当前财务状态(财务填写)
{financeData.map((item, index) => {
return ;
})}
{
this.setState({
reason: e.target.value,
});
}}
/>
{buttonData.map((item, index) => {
return (
);
})}
) : (
当前财务状态(财务填写)
{financeData.map((item, index) => {
return ;
})}
)}
{/*
(
)}
content={() => this.refs}
/> */}
);
}
}
export { ChangeDetail };