|
|
@@ -134,7 +134,7 @@
|
|
|
APPROVAL_PROCESS_TABLE_OPTIONS,
|
|
|
} from './src/config';
|
|
|
import { EMERGENCY_PERMISSIONS } from '@/views/emergency/src/constant';
|
|
|
- import { EMERGENCY_PLAN_STATUS, APPROVAL_TYPE_MAP, APPROVAL_STATUS_MAP, APPROVAL_STATUS } from './src/constant';
|
|
|
+ import { EMERGENCY_PLAN_STATUS, APPROVAL_TYPE_MAP, APPROVAL_STATUS_MAP, APPROVAL_STATUS, APPROVAL_TYPE } from './src/constant';
|
|
|
|
|
|
const router = useRouter();
|
|
|
const planManagementPremissions = ref<boolean>(false);
|
|
|
@@ -183,30 +183,40 @@
|
|
|
// 遍历所有行,寻找符合条件的行
|
|
|
for (let i = 0; i < approvalProcessData.value.length; i++) {
|
|
|
const row = approvalProcessData.value[i];
|
|
|
-
|
|
|
+
|
|
|
// 如果没有审批时间,返回该行索引
|
|
|
if (!row.approvalTime) {
|
|
|
return i;
|
|
|
}
|
|
|
-
|
|
|
- // 如果有审批时间且状态为退回(假设退回状态为2),返回该行索引
|
|
|
+
|
|
|
+ // 如果有审批时间且状态为退回,返回该行索引
|
|
|
if (row.approvalTime && row.approvalStatus === APPROVAL_STATUS.REJECTED) {
|
|
|
return i;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
// 如果没有找到符合条件的行,返回最后一行索引
|
|
|
return approvalProcessData.value.length - 1;
|
|
|
};
|
|
|
-
|
|
|
+
|
|
|
// 获取应该高亮的行索引
|
|
|
const highlightRowIndex = findHighlightRowIndex();
|
|
|
-
|
|
|
+
|
|
|
// 如果当前行是应该高亮的行,则高亮
|
|
|
if (rowIndex === highlightRowIndex) {
|
|
|
return 'row--highlight';
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
+ // 特殊处理:如果高亮行是或签,且当前行与高亮行属于同一流程步骤,也高亮
|
|
|
+ const highlightRow = approvalProcessData.value[highlightRowIndex];
|
|
|
+ if (highlightRow && highlightRow.approvalType === APPROVAL_TYPE.ORDINARY_SIGN) {
|
|
|
+ // 检查当前行是否与高亮行属于同一流程步骤
|
|
|
+ const currentRow = approvalProcessData.value[rowIndex];
|
|
|
+ if (currentRow && currentRow.approvalOrder === highlightRow.approvalOrder) {
|
|
|
+ return 'row--highlight';
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
return '';
|
|
|
};
|
|
|
const { tableConfig: approvalProcessConfig } = useTableConfig(
|