47 changed files with 872 additions and 222 deletions
@ -0,0 +1,28 @@ |
|||||
|
<div> |
||||
|
<h2>流程记录</h2> |
||||
|
<div class="mt-4 p-3"> |
||||
|
<nz-timeline> |
||||
|
@for (item of flowRecords; track $index) { |
||||
|
<nz-timeline-item [nzDot]="item.finishTime ? undefined : dotTemplate"> |
||||
|
<div> |
||||
|
{{ item.createTime }} |
||||
|
<span> |
||||
|
{{ item.comment?.comment }} |
||||
|
</span> |
||||
|
</div> |
||||
|
<div>任务名称:{{ item.taskName }}</div> |
||||
|
<div>审批人:{{ item?.assigneeName ?? '-' }}</div> |
||||
|
@if (item.finishTime) { |
||||
|
<div> |
||||
|
<span> 流程完成时间:{{ item.finishTime }} </span> |
||||
|
<span> 用时:{{ item.duration }} </span> |
||||
|
</div> |
||||
|
} |
||||
|
</nz-timeline-item> |
||||
|
} |
||||
|
</nz-timeline> |
||||
|
<ng-template #dotTemplate> |
||||
|
<span nz-icon nzType="clock-circle-o" style="font-size: 16px"></span> |
||||
|
</ng-template> |
||||
|
</div> |
||||
|
</div> |
||||
@ -0,0 +1,27 @@ |
|||||
|
import { Component, Input, OnInit } from '@angular/core' |
||||
|
import { ApiService } from 'app/services' |
||||
|
import { SharedModule } from 'app/shared/shared.module' |
||||
|
import { NzSafeAny } from 'ng-zorro-antd/core/types' |
||||
|
|
||||
|
@Component({ |
||||
|
selector: 'app-flow-result', |
||||
|
standalone: true, |
||||
|
imports: [SharedModule], |
||||
|
templateUrl: './flow-result.component.html', |
||||
|
styleUrl: './flow-result.component.less', |
||||
|
}) |
||||
|
export class FlowResultComponent implements OnInit { |
||||
|
constructor(private api: ApiService) {} |
||||
|
|
||||
|
@Input() flow: NzSafeAny = null |
||||
|
|
||||
|
flowRecords: NzSafeAny[] = [] |
||||
|
|
||||
|
ngOnInit(): void { |
||||
|
if (this.flow) { |
||||
|
this.api.getFlowRecord(this.flow.deployId, this.flow.procInsId).subscribe((res) => { |
||||
|
this.flowRecords = res.body.flowList |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,88 @@ |
|||||
|
.dashboard { |
||||
|
.statistic { |
||||
|
@apply flex; |
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
||||
|
.icon { |
||||
|
display: block; |
||||
|
width: 48px; |
||||
|
height: 48px; |
||||
|
border-radius: 50%; |
||||
|
background-color: #1890ff; |
||||
|
color: #fff; |
||||
|
font-size: 20px; |
||||
|
@apply flex items-center justify-center mr-2 flex-shrink-0; |
||||
|
} |
||||
|
|
||||
|
[nz-carousel-content] { |
||||
|
text-align: center; |
||||
|
height: 160px !important; |
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
||||
|
::ng-deep { |
||||
|
.ant-carousel .slick-dots-bottom { |
||||
|
bottom: 0; |
||||
|
} |
||||
|
|
||||
|
.ant-carousel .slick-dots li button { |
||||
|
background-color: rgba(0, 0, 0, .35); |
||||
|
} |
||||
|
|
||||
|
.ant-carousel .slick-dots li.slick-active button { |
||||
|
background-color: #1890ff; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.example-list { |
||||
|
width: 500px; |
||||
|
max-width: 100%; |
||||
|
border: solid 1px #ccc; |
||||
|
min-height: 30px; |
||||
|
display: block; |
||||
|
background: white; |
||||
|
border-radius: 4px; |
||||
|
overflow: hidden; |
||||
|
} |
||||
|
|
||||
|
.example-box { |
||||
|
padding: 6px 10px; |
||||
|
border-bottom: solid 1px #ccc; |
||||
|
color: rgba(0, 0, 0, 0.87); |
||||
|
display: flex; |
||||
|
flex-direction: row; |
||||
|
align-items: center; |
||||
|
|
||||
|
box-sizing: border-box; |
||||
|
cursor: move; |
||||
|
background: white; |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
|
||||
|
.cdk-drag-preview { |
||||
|
box-sizing: border-box; |
||||
|
border-radius: 4px; |
||||
|
box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), |
||||
|
0 8px 10px 1px rgba(0, 0, 0, 0.14), |
||||
|
0 3px 14px 2px rgba(0, 0, 0, 0.12); |
||||
|
} |
||||
|
|
||||
|
.cdk-drag-placeholder { |
||||
|
opacity: 0; |
||||
|
} |
||||
|
|
||||
|
.cdk-drag-animating { |
||||
|
transition: transform 250ms cubic-bezier(0, 0, 0.2, 1); |
||||
|
} |
||||
|
|
||||
|
.example-box:last-child { |
||||
|
border: none; |
||||
|
} |
||||
|
|
||||
|
.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder) { |
||||
|
transition: transform 250ms cubic-bezier(0, 0, 0.2, 1); |
||||
|
} |
||||
Loading…
Reference in new issue