import React from 'react';
import {
Icon,
Button,
Input,
Select,
Spin,
Table,
message,
DatePicker,
Upload,
Form,
Modal,
Col,
Tag,
Tabs, Tooltip
} from "antd";
import $ from 'jquery/src/ajax';
import ResolutionDetail from "@/resolutionDetail";
import ReactToPrint from "react-to-print";
import moment from 'moment';
import {
getLiquidationStatus,
getApprovedState,
getProcessStatus,
splitUrl,
getjiedian,
getboutique,
getCuikuan,
ShowModal,
getApproval,
getTaskStatus,
getProjectStatus,
getNewOrderStatus,
getInvoiceStatus,
getProjectName,
getApprovedType,
} from "@/tools.js";
import './customer.less';
import { ChooseList } from "../orderNew/chooseList";
import ShowModalDiv from "@/showModal.jsx";
import Project from "../../../../component/project";
import ImgList from "../../../common/imgList";
import ProjectDetailsReadOnly from "../../../common/projectDetailsReadOnly";
import NewEditProject from "../../../common/projectOperation/newEditProject";
import DepartmentList from "../../../common/departmentList";
import OrderItemStatus from "../../../common/orderItemStatus";
import EnterpriseNameChange from "../../../common/enterpriseNameChange";
import OrderCoor from './changeComponent/orderCoor';
import { approvalOptions } from "@/dataDic.js";
import ContentUrl from './contentUrl';
import LogPopup from "../../../common/logPopup";
import Cascaders from "../../../common/cascaders";
import FlowChart from '../../../common/flowchart'; // 流程图
import Gxczx from '../../../common/orderDetail/gxczx' // 高新纯咨询合同说明详情
import Property from '../../../common/orderDetail/property' // 知识产权情况
const { TabPane } = Tabs;
const { TextArea } = Input;
//图片组件
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 {
fileList
} = this.state;
return (
);
}
});
const IntentionCustomer = Form.create()(
React.createClass({
loadData(pageNo, pageSize) {
this.setState({
visitModul: false,
loading: true,
ispage: pageNo,
modalVisible: false,
});
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/newOrder/orderNewList",
data: {
pageNo: pageNo || 1,
pageSize: pageSize || this.state.pagination.pageSize,
specially: 3, //审核列表
name: this.state.nameSearch, //名称
orderNo: this.state.orderNoSearch, //订单编号
contractNo: this.state.contractNoSearch, //合同编号
deps: this.state.departmenttList, //订单部门
starTime: this.state.releaseDate[0], //开始时间
endTime: this.state.releaseDate[1], //结束时间
approval: this.state.approvalSearch ? this.state.approvalSearch : 0, //审批状态
liquidationStatus: this.state.liquidationStatusSearch, //结算状态
type: this.state.approvaType.length > 0 ? this.state.approvaType.toString() : undefined, //特批类型
},
success: function (data) {
ShowModal(this);
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];
theArr.push({
key: thisdata.orderNo,
orderNo: thisdata.orderNo,
orderType: thisdata.orderType,
orderStatus: thisdata.orderStatus,
salesmanName: thisdata.salesmanName,
processStatus: thisdata.processStatus,
liquidationStatus: thisdata.liquidationStatus,
approval: thisdata.approval,
settlementAmount: thisdata.settlementAmount,
signDate: thisdata.signDate,
companyId: thisdata.companyId,
companyName: thisdata.companyName,
buyerId: thisdata.buyerId,
userName: thisdata.userName,
contractNo: thisdata.contractNo,
createDate: thisdata.createDate,
depName: thisdata.depName,
invoiceAmount: thisdata.invoiceAmount,
totalAmount: thisdata.totalAmount,
financeName: thisdata.financeName,
type: thisdata.type || "", // 特批类型
typeExplain: thisdata.typeExplain,
});
}
this.state.pagination.total = data.data.totalCount;
}
if (data.data && data.data.list && !data.data.list.length) {
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 {
approvaType: [],
page: 1,
declarationBatch: 1,
orderNos: '',
dataInfor: {},
releaseDate: [],
selectedRowKeys: [],
rotateDeg: 0,
orgCodeUrl: [],
approvalSearch: "1",
paginations: false,
pagination: {
defaultCurrent: 1,
defaultPageSize: 10,
showQuickJumper: true,
pageSize: 10,
onChange: function (page) {
this.loadData(page);
}.bind(this),
showTotal: function (total) {
return "共" + total + "条数据";
},
},
columnsDate: [
{
title: "编号",
dataIndex: "id",
key: "id",
},
{
title: "订单编号",
dataIndex: "orderno",
key: "orderno",
},
{
title: "开票金额(万元)",
dataIndex: "amount",
key: "amount",
},
{
title: "申请时间",
dataIndex: "createTime",
key: "createTime",
},
{
title: "开票状态",
dataIndex: "status",
key: "status",
render: (text, record) => {
return {getInvoiceStatus(text, record)}
;
},
},
],
columns: [
{
title: "特批类型",
dataIndex: "type",
key: "type",
width: 110,
render: (text, record) => {
return (
{getApprovedType(text ? text.split(",").map(Number) : [], record.typeExplain)}
);
},
},
{
title: "合同编号",
dataIndex: "contractNo",
key: "contractNo",
className: "title-table",
},
{
title: "订单编号",
dataIndex: "orderNo",
key: "orderNo",
className: "title-table",
// fixed: "left"
},
{
title: "特批状态",
dataIndex: "approval",
key: "approval",
className: "title-table",
render: (text) => {
return {getApproval(text)};
// if (text == 1) {
// return {getApproval(text)};
// }
// return getApproval(text);
},
},
{
title: "客户名称",
dataIndex: "userName",
key: "userName",
className: "title-table",
render: text => {
return (
{text}
)
}
},
{
title: "订单部门",
dataIndex: "depName",
key: "depName",
className: "title-table",
},
{
title: "订单负责人",
dataIndex: "salesmanName",
key: "salesmanName",
className: "title-table",
},
{
title: "财务负责人",
dataIndex: "financeName",
key: "financeName",
className: "title-table",
},
{
title: "签单日期",
dataIndex: "signDate",
key: "signDate",
className: "title-table",
},
{
title: "下单日期",
dataIndex: "createDate",
key: "createDate",
className: "title-table",
},
{
title: "签单金额(万元)",
dataIndex: "totalAmount",
key: "totalAmount",
className: "title-table",
},
{
title: "开票金额(万元)",
dataIndex: "invoiceAmount",
key: "invoiceAmount",
className: "title-table",
},
{
title: "已收款(万元)",
dataIndex: "settlementAmount",
key: "settlementAmount",
className: "title-table",
},
{
title: "结算状态",
dataIndex: "liquidationStatus",
key: "liquidationStatus",
className: "title-table",
render: (text) => {
return getLiquidationStatus(text);
},
},
{
title: "流程状态",
dataIndex: "processStatus",
key: "processStatus",
className: "title-table",
render: (text, record) => {
return getProcessStatus(text, record.examineName, record.approval);
},
},
],
data: [],
dataSource: [],
columnsX: [
{
title: "业务项目名称",
dataIndex: "commodityName",
key: "commodityName",
render: (text, record) => {
return {text}{record.patentTypeName}{"-" + 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: "contacts",
key: "contacts",
},
{
title: "负责人电话",
dataIndex: "contactsMobile",
key: "contactsMobile",
},
{
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;
},
},
],
columnsrizhi: [
{
title: "流程",
dataIndex: "processName",
key: "processName",
},
{
title: "操作人",
dataIndex: "adminName",
key: "adminName",
},
{
title: "时间",
dataIndex: "createDate",
key: "createDate",
},
{
title: "备注",
dataIndex: "remarks",
key: "remarks",
},
],
dataSourceX: [],
ContactsListsNew: [
{
title: "项目名称",
dataIndex: "commodityName",
key: "commodityName",
render: (text, record) => {
return {text + "-" + record.tid};
},
},
{
title: "项目分类",
dataIndex: "projectType",
key: "projectType",
render: (text) => {
let arr = this.state.dataSourceX || [];
let str = "";
for (let i = 0; i < arr.length; i++) {
if (this.state.dataSourceX[i].sort == text) {
str = this.state.dataSourceX[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) {
let percent = Number(record.appropriationRatio * 100).toFixed(2);
percent += "%";
return {percent}(拨款比例);
} 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);
},
},
],
waterlistDate: [
{
title: "订单编号",
dataIndex: "orderNo",
key: "orderNo",
},
{
title: "平台流水号",
dataIndex: "billNo",
key: "billNo",
// fixed: "left"
},
{
title: "收款金额(万元)",
dataIndex: "transactionAmount",
key: "transactionAmount",
},
{
title: "收款方",
dataIndex: "payeeName",
key: "payeeName",
},
{
title: "付款方",
dataIndex: "payerName",
key: "payerName",
},
{
title: "流水科目",
dataIndex: "transactionSubject",
key: "transactionSubject",
render: (text) => {
return getTransactionProject(text);
},
},
{
title: "收款类型",
dataIndex: "type",
key: "type",
},
{
title: "财务流水时间",
dataIndex: "financialPayTimes",
key: "financialPayTimes",
},
{
title: "财务流水号",
dataIndex: "financialPayNo",
key: "financialPayNo",
},
{
title: "订单负责人",
dataIndex: "saleName",
key: "saleName",
},
{
title: "创建时间",
dataIndex: "createTimes",
key: "createTimes",
},
],
timeColumns: [
{
title: "合同编号",
dataIndex: "contractNo",
key: "contractNo",
},
{
title: "订单编号",
dataIndex: "orderNo",
key: "orderNo",
},
{
title: "客户名称",
dataIndex: "userName",
key: "userName",
render: text => {
return (
{text}
)
}
},
{
title: "订单部门",
dataIndex: "depName",
key: "depName",
},
{
title: "订单负责人",
dataIndex: "salesmanName",
key: "salesmanName",
},
{
title: "项目类别",
dataIndex: "cname",
key: "cname",
},
{
title: "项目编号",
dataIndex: "id",
key: "id",
},
{
title: "项目名称",
dataIndex: "taskName",
key: "taskName",
},
{
title: "项目负责人",
dataIndex: "receiverName",
key: "receiverName",
},
{
title: "项目价格(万元)",
dataIndex: "commodityPrice",
key: "commodityPrice",
},
{
title: "数量(个)",
dataIndex: "commodityQuantity",
key: "commodityQuantity",
},
{
title: "任务状态",
dataIndex: "taskStatus",
key: "taskStatus",
render: (text) => {
return getTaskStatus(text);
},
},
{
title: "项目状态",
dataIndex: "projectStatus",
key: "projectStatus",
render: (text) => {
return getProjectName(text);
},
},
{
title: "工时",
dataIndex: "hours",
key: "hours",
},
{
title: "是否外包",
dataIndex: "outsource",
key: "outsource",
render: (text) => {
if (text == 0) {
return "否";
} else if (text == 1) {
return "是";
}
},
},
{
title: "签单日期",
dataIndex: "signTime",
key: "signTime",
},
{
title: "派单日期",
dataIndex: "creteTime",
key: "creteTime",
},
{
title: "分配时间",
dataIndex: "taskDistributionTime",
key: "taskDistributionTime",
},
{
title: "完成时间",
dataIndex: "taskEndTime",
key: "taskEndTime",
},
],
resVisible: false,
cuiColumns: [
{
title: "序号",
dataIndex: "key",
key: "key",
},
{
title: "合同编号",
dataIndex: "contractNo",
key: "contractNo",
},
{
title: "订单编号",
dataIndex: "orderNo",
key: "orderNo",
},
{
title: "客户名称",
dataIndex: "userName",
key: "userName",
render: text => {
return (
{text}
)
}
},
{
title: "订单负责人",
dataIndex: "salesmanName",
key: "salesmanName",
},
{
title: "订单部门",
dataIndex: "depName",
key: "depName",
},
{
title: "订单状态",
dataIndex: "orderStatus",
key: "orderStatus",
render: (text) => {
return getNewOrderStatus(text);
},
},
{
title: "项目状态",
dataIndex: "projectStatus",
key: "projectStatus",
render: (text) => {
return getProjectName(text);
},
},
{
title: "签单金额",
dataIndex: "totalAmount",
key: "totalAmount",
},
{
title: "结算状态",
dataIndex: "liquidationStatus",
key: "liquidationStatus",
render: (text) => {
return getLiquidationStatus(text);
},
},
{
title: "已收款",
dataIndex: "settlementAmount",
key: "settlementAmount",
},
{
title: "应收款",
dataIndex: "accountsReceivable",
key: "accountsReceivable",
},
{
title: "催收科目",
dataIndex: "dunSubject",
key: "dunSubject",
// render: text => {
// return getjiedian(text);
// }
},
{
title: "催款状态",
dataIndex: "dunStatus",
key: "dunStatus",
},
{
title: "催收启动时间",
dataIndex: "startDate",
key: "startDate",
},
],
proColumns: [
{
title: "序号",
dataIndex: "key",
key: "key",
},
{
title: "合同编号",
dataIndex: "contractNo",
key: "contractNo",
},
{
title: "订单编号",
dataIndex: "orderNo",
key: "orderNo",
},
// {
// title: "项目编号",
// dataIndex: "id",
// key: "id"
// },
{
title: "客户名称",
dataIndex: "userName",
key: "userName",
render: text => {
return (
{text}
)
}
},
{
title: "订单负责人",
dataIndex: "salesmanName",
key: "salesmanName",
},
{
title: "是否主项目",
dataIndex: "main",
key: "main",
render: (text) => {
return text == 0 ? "否" : "是";
},
},
{
title: "项目类别",
dataIndex: "cname",
key: "cname",
},
{
title: "项目名称",
dataIndex: "commodityName",
key: "commodityName",
},
{
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: "certificateNumber",
key: "certificateNumber",
},
{
title: "项目状态",
dataIndex: "projectStatus",
key: "projectStatus",
render: (text) => {
return getProjectName(text);
},
},
{
title: "项目说明",
dataIndex: "taskComment",
key: "taskComment",
},
// {
// title: "外包(内部)公司",
// dataIndex: "outsourceName",
// key: "outsourceName",
// },
// {
// title: "外包(内部)价格",
// dataIndex: "outsourcePrice",
// key: "outsourcePrice",
// },
],
};
},
//页面加载函数
componentWillMount() {
this.loadData();
},
//整行点击
tableRowClick(record) {
this.setState({
visible: true,
orderNos: record.orderNo
});
this.xiangqing(record.orderNo);
this.xiangmu(record.orderNo);
this.jiedian(record.orderNo);
this.jiedianNew(record.orderNo);
},
//点击打卡项目详情
tableRowClickX(record) {
// console.log(record);
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,
});
},
//订单详情
xiangqing(orderNos) {
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/newOrder/getOrderNewDetail",
data: {
orderNo: orderNos,
},
success: function (data) {
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({
orderUid: thisdata.uid,
orderNo: thisdata.orderNo, //订单编号
contractNo: thisdata.contractNo, //合同编号
userName: thisdata.userName, //客户名称
signDate: thisdata.signDate, //签单时间
examineName: thisdata.examineName,
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"
)
: [], //图片地址
replenishUrl: thisdata.agreementUrl
? splitUrl(
thisdata.agreementUrl,
",",
globalConfig.avatarHost + "/upload"
)
: [],
contentUrl: thisdata.serviceContent
? splitUrl(
thisdata.serviceContent,
",",
globalConfig.avatarHost + "/upload"
)
: [], //图片地址
salesmanName: thisdata.salesmanName, //营销员名称
salesmanMobile: thisdata.salesmanMobile, //营销员电话
financeName: thisdata.financeName, //财务名称
financeMobile: thisdata.financeMobile, //财务电话
outsource: thisdata.outsource == 0 ? "否" : "是",
deleteSign: thisdata.deleteSign,
// 高新纯咨询合同说明
knowledgeServices: thisdata.knowledgeServices, //知识产权服务
auditServices: thisdata.auditServices, //审计服务
addDeductionServices: thisdata.addDeductionServices, //加计扣除服务
knowledgeOther: thisdata.knowledgeOther, //知识产权服务其他描述
auditOther: thisdata.auditOther, //审计服务其他描述
addDeductionOther: thisdata.addDeductionOther, //加计扣除服务其他描述
patentStatus: thisdata.patentStatus, //知识产权情况
type: thisdata.type,// 特批类型
typeExplain: thisdata.typeExplain, // 特批类型
});
}
}.bind(this),
}).always(
function () {
this.setState({
loading: false,
});
}.bind(this)
);
},
//项目列表
xiangmu(orderNos) {
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/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 {
for (let i = 0; i < data.data.length; i++) {
let thisdata = data.data[i];
thisdata.key = i;
theArr.push(thisdata);
}
}
this.setState({
dataSourceX: theArr,
});
}.bind(this),
}).always(
function () {
this.setState({
loading: false,
});
}.bind(this)
);
},
rizhi() {
// console.log(this.state.orderNo);
this.setState({
loading: true,
});
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: "/api/admin/newOrder/selectOrderLog",
data: {
orderNo: this.state.orderNo,
},
success: function (data) {
let theArr = [];
let thisData = data.data;
if (thisData && !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({
dataSourcerizhi: theArr,
});
}.bind(this),
}).always(
function () {
this.setState({
loading: false,
});
}.bind(this)
);
},
//查看订单日志
getOrderLog() {
this.setState({
rizhivisible: true,
});
this.rizhi();
},
closeOrderLog() {
this.setState({
rizhivisible: false,
});
},
//节点列表
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, //催款状态
});
}
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)
);
},
//审核通过
examOk() {
if (!this.state.reason) {
message.warning("请填写备注");
return;
}
if (!this.state.reason.replace(/\s+/g, '')) {
message.warning("请填写备注");
return;
}
this.setState({
loading: true,
});
$.ajax({
method: "post",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/newOrder/approvalOrder",
data: {
orderNo: this.state.orderNo,
confirm: 2,
reason: this.state.reason,
},
success: function (data) {
if (data.error.length || data.data.list == "") {
if (data.error && data.error.length) {
message.warning(data.error[0].message);
}
} else {
message.success("该特批订单已通过审核~");
this.setState({
visible: false,
});
this.passCancel();
this.reset();
}
}.bind(this),
}).always(
function () {
this.setState({
loading: false,
});
}.bind(this)
);
},
//审核不通过
examOks() {
if (!this.state.reason) {
message.warning("请填写备注");
return;
}
if (!this.state.reason.replace(/\s+/g, '')) {
message.warning("请填写备注");
return;
}
this.setState({
loading: true,
});
$.ajax({
method: "post",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/newOrder/approvalOrder",
data: {
orderNo: this.state.orderNo,
confirm: 3,
reason: this.state.reason,
},
success: function (data) {
if (data.error.length || data.data.list == "") {
if (data.error && data.error.length) {
message.warning(data.error[0].message);
}
} else {
message.success("该特批订单已被驳回~");
this.setState({
visible: false,
noVisible: false,
reason: "",
});
this.loadData();
this.resets();
}
}.bind(this),
}).always(
function () {
this.setState({
loading: false,
});
}.bind(this)
);
},
//点击拒绝
examNo() {
this.setState({
noVisible: true,
});
},
//关闭输入理由框
noCancel() {
this.setState({
noVisible: false,
reason: "",
});
},
//搜索
search() {
this.setState({
//signBillVisible:false
});
this.loadData();
},
//重置
reset() {
this.setState({
signBillVisible: false,
});
this.state.orderNoSearch = undefined;
this.state.contractNoSearch = undefined;
this.state.nameSearch = undefined;
this.state.liquidationStatusSearch = [];
this.state.departmenttList = undefined;
this.state.releaseDate[0] = undefined;
this.state.releaseDate[1] = undefined;
this.state.approvalSearch = "1";
this.Cascaders.empty();
this.state.approvaType = [];
this.loadData();
},
resets() {
this.state.orderNo = "";
this.state.customerName = "";
this.state.departmenttSearch = undefined;
this.state.releaseDate[0] = undefined;
this.state.releaseDate[1] = undefined;
},
getOrgCodeUrl(e) {
this.setState({ orgCodeUrl: e });
},
getReplenishUrl(e) {
this.setState({ replenishUrl: e });
},
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,
});
},
changeList(arr) {
const newArr = [];
this.state.columns.forEach((item) => {
arr.forEach((val) => {
if (val === item.title) {
newArr.push(item);
}
});
});
this.setState({
changeList: newArr,
});
},
//关闭详情
visitCancel() {
this.setState({
visible: false,
});
this.resets();
},
visitOk() {
this.setState({
visible: false,
});
this.resets();
},
waterData() {
this.state.data = [];
this.setState({
loading: true,
});
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/financial/myBillList",
data: {
orderNo: this.state.selectedRowKeys[0],
pageSize: 9999999,
whoType: 1,
},
success: function (data) {
let theArr = [];
let waterSum = 0;
if (!data.data || !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];
waterSum += parseFloat(thisdata.transactionAmount);
theArr.push({
key: i,
orderNo: thisdata.orderNo,
billNo: thisdata.billNo,
transactionAmount: thisdata.transactionAmount,
payeeName: thisdata.payeeName,
payerName: thisdata.payerName,
transactionSubject: thisdata.transactionSubject,
transactionChannel: thisdata.transactionChannel,
financialPayTimes: thisdata.financialPayTimes,
financialPayNo: thisdata.financialPayNo,
createrName: thisdata.createrName,
saleName: thisdata.saleName,
createTimes: thisdata.createTimes,
type: thisdata.type == 0 ? "手工" : "批量",
});
}
}
this.setState({
waterData: theArr,
waterSum: (Math.round(waterSum * 1000000) / 1000000).toFixed(6),
});
}.bind(this),
}).always(
function () {
this.setState({
loading: false,
});
}.bind(this)
);
},
waterCanl() {
this.setState({
cvisible: false,
});
},
// 拆分详细
showRes(record) {
this.setState({
resVisible: true,
resRecord: record,
});
},
resCancel() {
this.setState({
resVisible: false,
});
},
exportKaip() {
window.location.href =
globalConfig.context +
"/api/admin/receivables/exportInvoice?" +
`orderNo=${this.state.selectedRowKeys}`;
},
exportAll() {
message.config({
duration: 20,
});
let loading = message.loading("下载中...");
this.setState({
exportPendingLoading: true,
});
let data = {
orderNo: this.state.orderNoSearch,
buyerName: this.state.nameSearch,
deps: this.state.departmenttList,
contractNo: this.state.contractNoSearch,
processStatus: this.state.processStatusSearch,
};
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: "/api/admin/receivables/exportReceivables",
data,
success: function (data) {
if (data.error.length === 0) {
this.download(data.data);
} else {
message.warning(data.error[0].message);
}
}.bind(this),
}).always(
function () {
loading();
this.setState({
exportPendingLoading: false,
});
}.bind(this)
)
// window.location.href =
// globalConfig.context +
// "/api/admin/receivables/exportReceivables?" +
// `orderNo=${
// this.state.orderNoSearch ? this.state.orderNoSearch : ""
// }&buyerName=${
// this.state.nameSearch ? this.state.nameSearch : ""
// }&departmentId=${
// this.state.departmenttList ? this.state.departmenttList : ""
// }&contractNo=${
// this.state.contractNoSearch ? this.state.contractNoSearch : ""
// }&processStatus=${this.state.processStatusSearch}`;
},
// 下载
download(fileName) {
window.location.href =
globalConfig.context + "/open/download?fileName=" + fileName;
},
exportWater() {
window.location.href =
globalConfig.context +
"/api/admin/receivables/exportMyBill?" +
`orderNo=${this.state.selectedRowKeys}&whoType=1`;
},
timeData() {
this.setState({
loading: true,
});
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/orderProject/taskHoursList",
data: {
orderNo: this.state.selectedRowKeys[0],
pageSize: 9999999,
},
success: function (data) {
let theArr = [];
if (!data.data || !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];
theArr.push({
key: i + 1,
id: thisdata.id, //ID
orderNo: thisdata.orderNo, //订单编号
taskName: thisdata.taskName, //任务名称
userName: thisdata.userName, //客户名称
cname: thisdata.cname, //项目品类
taskStatus: thisdata.taskStatus, //任务状态
receiverName: thisdata.receiverName, //负责人
hours: thisdata.hours, //任务工时
depName: thisdata.depName, //派单公司
contractNo: thisdata.contractNo,
signTime: thisdata.signTime,
creteTime: thisdata.creteTime,
projectStatus: thisdata.projectStatus,
commodityPrice: thisdata.commodityPrice, //价格
commodityQuantity: thisdata.commodityQuantity, //数量
salesmanName: thisdata.salesmanName, //订单负责人
taskDistributionTime: thisdata.taskDistributionTime,
taskEndTime: thisdata.taskEndTime,
outsource: thisdata.outsource,
});
}
}
this.setState({
timeDataList: theArr,
});
}.bind(this),
}).always(
function () {
this.setState({
loading: false,
});
}.bind(this)
);
},
exportTime() {
const data = {
orderNo: this.state.selectedRowKeys[0],
pageSize: 9999999,
};
window.location.href =
globalConfig.context +
"/api/admin/orderProject/exportMyTaskList?" +
$.param(data);
},
exportPro() {
const data = {
orderNo: this.state.selectedRowKeys[0],
};
window.location.href =
globalConfig.context +
"/api/admin/newOrder/exportOrderTaskData?" +
$.param(data);
},
exportCui() {
var data = {
orderNo: this.state.selectedRowKeys[0]
? this.state.selectedRowKeys[0]
: undefined, //订单编号
// specially: 1,
pageSize: 9999999,
};
window.location.href =
globalConfig.context +
"/api/admin/newOrder/exportOrderDunData?" +
$.param(data);
},
cuiData() {
this.setState({
loading: true,
});
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/newOrder/dunOrderNewList",
data: {
orderNo: this.state.selectedRowKeys[0],
pageSize: 9999999,
},
success: function (data) {
let theArr = [];
if (!data.data || !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];
theArr.push({
key: i + 1,
orderNo: thisdata.orderNo,
contractNo: thisdata.contractNo,
userName: thisdata.userName,
buyerName: thisdata.buyerName,
departmentName: thisdata.departmentName,
salesmanName: thisdata.salesmanName,
depName: thisdata.depName,
orderStatus: thisdata.orderStatus,
projectStatus: thisdata.projectStatus,
totalAmount: thisdata.totalAmount,
liquidationStatus: thisdata.liquidationStatus,
settlementAmount: thisdata.settlementAmount,
accountsReceivable: thisdata.accountsReceivable,
dunSubject: thisdata.dunSubject,
startDate: thisdata.startDate,
taskStatus: thisdata.taskStatus,
cname: thisdata.cname,
id: thisdata.id,
taskName: thisdata.taskName,
hours: thisdata.hours,
taskDistributionTime: thisdata.taskDistributionTime,
taskEndTime: thisdata.taskEndTime,
dunStatus: thisdata.dunStatus == 0 ? "未触发" : "已触发",
});
}
}
this.setState({
cuiDataList: theArr,
});
}.bind(this),
}).always(
function () {
this.setState({
loading: false,
});
}.bind(this)
);
},
proData() {
this.setState({
loading: true,
});
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url: globalConfig.context + "/api/admin/newOrder/getOrderTask",
data: {
orderNo: this.state.selectedRowKeys[0],
pageSize: 9999999,
},
success: function (data) {
let theArr = [];
let totalWaibao = 0;
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];
totalWaibao += thisdata.outsourcePrice;
thisdata.key = i + 1;
theArr.push(thisdata);
}
}
totalWaibao = (Math.round(totalWaibao * 1000000) / 1000000).toFixed(6);
this.setState({
proDataList: theArr,
totalWaibao,
});
}.bind(this),
}).always(
function () {
this.setState({
loading: false,
});
}.bind(this)
);
},
inRecordCanl() {
this.setState({
bvisible: false,
});
},
inRecordData() {
this.setState({
loading: true,
});
$.ajax({
method: "get",
dataType: "json",
crossDomain: false,
url:
globalConfig.context +
"/api/admin/orderInvoice/salesmanOrderInvoiceList",
data: {
orderNo: this.state.selectedRowKeys[0],
pageSize: 9999999,
},
success: function (data) {
let theArr = [];
let sum = 0;
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];
sum += parseFloat(thisdata.amount);
theArr.push({
id: thisdata.id,
orderno: thisdata.orderno, //订单编号
amount: thisdata.amount, //签单金额
createTime: thisdata.createTime, //流程状态
status: thisdata.status, //结算状态
rejectReason: thisdata.rejectReason,
approval: thisdata.approval,//0非特批 1待审核 2审核通过
examineName: thisdata.examineName,
});
}
}
this.setState({
recordData: theArr,
sum: sum.toFixed(6),
});
}.bind(this),
}).done(
function () {
this.setState({
loading: false,
});
}.bind(this)
);
},
// 通过弹出备注框
pass() {
this.setState({
reason: "",
passVisible: true,
});
},
passCancel() {
this.setState({
reason: "",
passVisible: false,
});
},
printAll() {
this.setState({
dvisible: true,
});
this.loadData(1, 9999999);
},
// 可展开颜色不同
addRowColor(record) {
if (!!record.splitList && record.splitList.length > 0) {
return 'light'
} else {
return 'dark'
}
},
render() {
const expandedRowRenderVip = (e) => {
const data = e.splitList;
let columns = [];
if (data instanceof Array && data.length) {
if (e.cSort == 6) {
columns = [
{
title: "负责人",
dataIndex: "receiverName",
key: "receiverName",
},
{
title: "负责人电话",
dataIndex: "receiverMobile",
key: "receiverMobile",
},
{
title: "项目状态",
dataIndex: "projectStatus",
key: "projectStatus",
render: (text) => {
return getProjectName(text);
},
},
{
title: "本次派单",
dataIndex: "serviceYear",
key: "serviceYear",
},
{
title: "项目说明",
dataIndex: "taskComment",
key: "taskComment",
render: (text) => {
return (
{text}
)
},
},
];
} else {
columns = [
{
title: "子项目名称",
dataIndex: "taskName",
key: "taskName"
},
{
title: "子项目数量",
dataIndex: "commodityQuantity",
key: "commodityQuantity"
},
{
title: "拆分操作人",
dataIndex: "splitAname",
key: "splitAname"
},
{
title: "项目负责人",
dataIndex: "receiverName",
key: "receiverName"
},
{
title: "拆分时间",
dataIndex: "splitTimes",
key: "splitTimes"
}
]
}
return (
);
} else {
columns = [];
return (
{e.cSort == 6 ? "暂无派单" : "此项目暂未拆分"}
);
}
};
const formItemLayout = {
labelCol: { span: 8 },
wrapperCol: { span: 14 },
};
const FormItem = Form.Item;
const { RangePicker } = DatePicker;
const cuiDataList = this.state.contactList || [];
const rowSelection = {
selectedRowKeys: this.state.selectedRowKeys,
onChange: (selectedRowKeys, selectedRows) => {
this.setState({
modalVisible: false,
selectedRows: selectedRows.slice(-1),
selectedRowKeys: selectedRowKeys.slice(-1),
});
},
onSelect: (recordt) => {
this.setState({
modalVisible: false,
recordt: recordt.id,
});
},
};
const approvaChildren = approvalOptions.map(i => (
));
return (
{this.state.resVisible ? (
) : (
""
)}
{ this.setState({ showModal: false }) }} />
特批订单审核
{
this.setState({ orderNoSearch: e.target.value });
}}
/>
{
this.setState({ nameSearch: e.target.value });
}}
/>
this.Cascaders = node}
placeholder="订单部门"
id="id"
name="name"
children="list"
height={28}
onSel={(e) => {
this.setState({
departmenttList: JSON.stringify(e),
});
}}
/>
{/* {
this.setState({ departmenttList: e });
}} /> */}
{
this.setState({
contractNoSearch: e.target.value,
});
}}
/>
下单日期:
{
this.setState({ releaseDate: dataString });
}}
/>
{/* */}
{/*
*/}
{this.state.visible ?
:
}
{this.state.noVisible ?
:
}
{this.state.passVisible ?
:
}
{this.state.rizhivisible ?
:
}
{this.state.dvisible ?
{
// this.loadData();
this.setState({
dvisible: false,
});
}}
>
{
this.refs.all = e;
}}
>
(
)}
content={() => this.refs.all}
/>
:
}
{this.state.bvisible ?
{
this.refs.kaiPiao = e;
}}
>
开票总计}
>
{this.state.sum + "(万元)"}
(
)}
content={() => this.refs.kaiPiao}
/>
:
}
{this.state.cvisible ?
{
this.refs.shouKuan = e;
}}
>
总计金额}
>
{this.state.waterSum + "(万元)"}
(
)}
content={() => this.refs.shouKuan}
/>
:
}
{this.state.timeVisible ?
{
// this.loadData();
this.setState({
timeVisible: false,
});
}}
>
{
this.refs.all = e;
}}
>
(
)}
content={() => this.refs.all}
/>
:
}
{this.state.cuiVisible ?
{
// this.loadData();
this.setState({
cuiVisible: false,
});
}}
>
{
this.refs.all = e;
}}
>
(
)}
content={() => this.refs.all}
/>
:
}
{this.state.proVisible ?
{
// this.loadData();
this.setState({
proVisible: false,
});
}}
>
{
this.setState({ pvisible: false });
}}
/>
{
this.refs.all = e;
}}
>
外包(内部)价格总计(万元):{this.state.totalWaibao}
(
)}
content={() => this.refs.all}
/>
:
}
{/* {this.state.addnextVisible &&
} */}
{
// 项目业务详情
this.state.addnextVisible &&
0 &&
this.state.processStatus !== 0
}
visible={this.state.addnextVisible}
dataInfor={this.state.dataInfor}
onCancel={this.nextCancel}
/>
}
);
},
})
);
export default IntentionCustomer;