import React, {useEffect, useState, useRef} from 'react'; import {Form} from '@ant-design/compatible'; import '@ant-design/compatible/assets/index.css'; import {connect} from 'dva'; import {Steps, Button, Modal, Tooltip} from 'antd'; import styles from './Index.less'; import {getCurrentUser} from '@/utils/authority'; const {Step} = Steps; // 时间节点 function TimeNode(props) { const { isAuditor, flowDetail, style, flow, versionList, version, templateId, setAuditVisible, projectId, dispatch, stepDirection, currentUser, } = props; const {current, list, active} = flow; console.log(list.FlowNodes) function calculateHoursDifference(date1, date2) { const timestamp1 = date1.getTime(); // 获取第一个Date对象的时间戳(以毫秒为单位) const timestamp2 = date2.getTime(); // 获取第二个Date对象的时间戳(以毫秒为单位) const timeDifferenceInMillis = Math.abs(timestamp2 - timestamp1); // 计算时间戳之间的差值(毫秒数) const hoursDifference = timeDifferenceInMillis / (1000 * 60 * 60); // 将差值转换为小时数 return hoursDifference.toFixed(2); } const getDescription = (node, prevNode) => { let str = node?.AuditRoleInfo ? `审批人:${node?.AuditRoleInfo.Name || '-'}` : `审批人:${node?.AuditorUser.CName || '-'}`; const date = new Date(node.audit_time) const auditTime = node.audit_time === '0001-01-01T00:00:00Z' ? '-' : date.toLocaleDateString('zh-CN', { format: 'YYYY-MM-DD hh:mm:ss' }) // const residenceTime = auditTime === '-' ? '-' : calculateHoursDifference(date, new Date(prevNode.audit_time)) return (