fastlion-amis
Version:
一种MIS页面生成工具
169 lines (168 loc) • 4.63 kB
TypeScript
/// <reference types="react" />
import { Api, SchemaNode } from "../../../types";
export interface FlowingJson {
title: string;
api: Api;
detailApi: Api;
}
export interface FlowData {
items: taskList[];
total: number;
}
export interface FlowDetailList {
duration: string;
processInstanceId: string;
taskCreatedTime?: string;
taskEndTime?: string;
taskId?: string;
taskName?: string;
taskRemark?: string;
taskStatus?: string;
workCondition?: FlowList[];
endTime?: string;
processDefinitionName?: string;
processStatus?: string;
startTime?: string;
startUser?: {
userAvatar?: string;
userId?: string;
userName?: string;
userRole?: string;
};
}
interface FlowList {
label: string;
value: string;
}
export interface FlowSun {
title: string;
count: number;
name: string;
icon: JSX.Element;
hierarchy: number;
data: string;
key: string;
}
export interface AttachmentApi {
attachmentUploadApi: Api;
attachmentDownloadApi: Api;
attachmentDeleteApi: Api;
attachmentDeleteByTaskApi: Api;
attachmentGetTaskApi: Api;
addrBookApi: Api;
}
export interface FlowDetail {
flowButtonList: FlowButtonUI[];
flowProcess: flowProcess;
formUI: SchemaNode;
processInstanceId: string;
processNodeList: processNodeList[];
}
export interface flowProcess {
duration: string;
endTime: string;
processDefinitionName: string;
processInstanceId: string;
processStatus: string;
startTime: string;
startUser: startUser;
workCondition?: string;
attachmentUploadApi: Api;
attachmentDownloadApi: Api;
attachmentDeleteApi: Api;
attachmentDeleteByTaskApi: Api;
attachmentGetTaskApi: Api;
}
export interface startUser {
userAvatar: string | null;
userId: string;
userName: string;
userRole: string | null;
}
export interface processNodeList {
activeId: string;
nodeCreatedTime: string;
nodeEndTime: string;
nodeId: string;
nodeName: string;
nodeStatus: string;
nodeType: number;
nodeUser: startUser;
remarkComment: string | null;
attachments: attachments[];
nodeAddUser: {
userId: string;
userName: string;
userRole: string | null;
userAvatar: string | null;
};
}
export interface attachments {
attachmentId: string;
chunkDownload: false;
preview_name: string;
processInstanceId: string;
taskId: string;
userId: string;
name: string;
size: number;
addr: string;
thumbnailAddr: string;
}
export interface TaskHisActivity {
currentTaskName: string;
assigneeUser: string;
assigneeUserName: string;
taskCreatedTime: string;
taskEndTime: string;
taskId: string;
taskSeq: string;
businessStatus?: Exclude<BusinessStatus, 'start' | 'end'>;
optionComment?: string;
}
export interface UserTaskBean {
taskName: string;
taskSeq: number;
taskType: number;
userId: string;
userRole: string;
userName: string;
}
export interface taskList {
currentTaskName: string;
assigneeUser: string;
assigneeUserName: string;
taskCreatedTime: string;
taskEndTime: string;
taskId: string;
taskSeq: string;
businessStatus?: Exclude<BusinessStatus, 'start' | 'end'>;
optionComment?: string;
taskStatus: string;
}
export interface FlieText {
attachmentId: string;
preview_name: string;
processInstanceId: string;
taskId: string;
userId: string;
name: string;
addr: string;
thumbnailAddr: string;
size: number;
}
declare type FlowStyle<T extends string> = {
[key in T]: [color: string, label?: string];
} & Object;
export declare type ActionName = 'flow_agree' | 'flow_refuse' | 'flow_reject_to_start' | 'flow_reject_to_any' | 'flow_add_sign' | 'flow_cancel' | 'flow_assign' | 'flow_return' | 'flow_referral';
export declare type ActionLevel = 'success' | 'primary' | 'danger' | 'warning';
export declare type BusinessStatus = 'start' | 'end' | 'doing' | 'refuse' | 'reject' | 'success' | 'revert' | 'addSign' | 'none';
export interface FlowButtonUI {
level: ActionLevel;
label: string;
name: ActionName;
api: Api;
}
export declare const FLOWACTION_LEVEL_STYLE: FlowStyle<ActionLevel>;
export declare const BUSINESS_STATUS_STYLE: FlowStyle<Exclude<BusinessStatus, 'start' | 'end'>>;
export {};