Ver código fonte

feat: 新增审批中节点

xlsea 1 ano atrás
pai
commit
035cd9c1b0

+ 8 - 0
src/components/Flow/FlowTypeDot.vue

@@ -6,6 +6,11 @@
 				<svg-icon color="#FFF" style="font-size: 20px" icon-class="flow-publish" class-name="svg-icon" />
 			</el-avatar>
 		</template>
+		<template v-else-if="status === 1">
+			<el-avatar :size="36" style="background-color: #3f73f6">
+				<svg-icon color="#FFF" style="font-size: 32px" icon-class="flow-approval" class-name="svg-icon" />
+			</el-avatar>
+		</template>
 		<template v-else>
 			<flow-node-avatar :size="36" :show-name="false" :name="name" />
 		</template>
@@ -15,6 +20,9 @@
 			<template v-if="type === 3">
 				<svg-icon icon-class="reject" />
 			</template>
+			<template v-else-if="status === 1">
+				<svg-icon icon-class="active" color="#2a5eff" />
+			</template>
 			<template v-else>
 				<svg-icon icon-class="approval" />
 			</template>

+ 8 - 3
src/views/approve/components/approvedContent.vue

@@ -46,9 +46,14 @@
 
 						<!--审批流-->
 						<el-timeline style="margin-left: 50px">
-							<el-timeline-item v-for="active in activeData" :key="active.id" hollow :timestamp="formatTimestamp(new Date(active.createTime))">
+							<el-timeline-item
+								v-for="active in activeData"
+								:key="active.id"
+								hollow
+								:timestamp="active.id ? formatTimestamp(new Date(active.createTime)) : ''"
+							>
 								<template #dot>
-									<FlowTypeDot :status="active.taskState" :type="active.taskType" :name="active.createBy" />
+									<FlowTypeDot :status="active.id ? 0 : 1" :type="active.taskType" :name="active.createBy" />
 								</template>
 								<div v-show="active.type === 0" class="timeline-box flex-1">
 									<span style="color: #86909c; display: block; margin-bottom: 3px; padding-left: 4px">评论</span>
@@ -67,7 +72,7 @@
 									<span style="color: #86909c; display: block; margin-bottom: 3px; padding-left: 4px">{{ active.taskName }}</span>
 									<div class="flex flex-align-center">
 										<div class="timeline-box-user flex-1">
-											<span style="padding-left: 4px">{{ active.createBy }}</span>
+											<span v-if="active.id" style="padding-left: 4px">{{ active.createBy }}</span>
 											<div style="display: flex; gap: 6px; margin-top: 3px">
 												<FlowNodeAvatar v-for="nodeUser in JSON.parse(active.content).nodeUserList" :key="nodeUser.id" :name="nodeUser.name" />
 												<FlowNodeAvatar v-for="nodeRole in JSON.parse(active.content).nodeRoleList" :key="nodeRole.id" :name="nodeRole.name" />