longz
2026-08-11 2a3c3cdbf2398695d61633e072f98ee2757e9e27
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
package com.sinata.appointment.dto;
 
import io.swagger.v3.oas.annotations.media.Schema;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
 
@Data
@Schema(description = "小程序我的预约详情")
public class MiniMyAppointmentDetailVo {
 
    @Schema(description = "预约单ID")
    private Long orderId;
 
    @Schema(description = "预约单UUID")
    private String orderUuid;
 
    @Schema(description = "预约单号")
    private String orderNo;
 
    @Schema(description = "预约单状态")
    private String status;
 
    @Schema(description = "列表展示状态")
    private String displayStatus;
 
    @Schema(description = "状态文案")
    private String statusText;
 
    @Schema(description = "是否可取消")
    private Boolean cancelable;
 
    @Schema(description = "是否可删除当前记录(仅提交人隐藏)")
    private Boolean deletable;
 
    @Schema(description = "被访人ID")
    private Long visitedUserId;
 
    @Schema(description = "被访人姓名")
    private String visitedUserName;
 
    @Schema(description = "被访人部门名称")
    private String visitedDeptName;
 
    @Schema(description = "被访人展示文案")
    private String visitedUserDisplay;
 
    @Schema(description = "访问区域文案")
    private String accessAreaText;
 
    @Schema(description = "来访类型文案")
    private String visitTypeText;
 
    @Schema(description = "来访事由文案")
    private String visitReasonText;
 
    @Schema(description = "来访事由编码")
    private String visitReasonCode;
 
    @Schema(description = "其他事由补充说明")
    private String visitReasonOther;
 
    @Schema(description = "来访时间文案")
    private String visitTimeText;
 
    @Schema(description = "来访时间模式")
    private String visitTimeMode;
 
    @Schema(description = "单日时段")
    private String visitTimeSlot;
 
    @Schema(description = "来访开始日期")
    private LocalDate visitStartDate;
 
    @Schema(description = "来访结束日期")
    private LocalDate visitEndDate;
 
    @Schema(description = "人员进场")
    private Boolean personEntry;
 
    @Schema(description = "车辆进场")
    private Boolean vehicleEntry;
 
    @Schema(description = "创建时间")
    private LocalDateTime createTime;
 
    @Schema(description = "来访人列表")
    private List<MiniApprovalDetailVisitorVo> visitors = new ArrayList<>();
 
    @Schema(description = "再次预约回填用来访人列表")
    private List<RebookVisitorItem> rebookVisitors = new ArrayList<>();
 
    @Schema(description = "再次预约回填用车辆列表")
    private List<RebookVehicleItem> rebookVehicles = new ArrayList<>();
 
    @Schema(description = "审批流程树")
    private List<ApprovalFlowNodeVo> flowTree = new ArrayList<>();
 
    @Data
    @Schema(description = "再次预约回填用来访人")
    public static class RebookVisitorItem {
 
        @Schema(description = "访客ID")
        private Long visitorId;
 
        @Schema(description = "访客UUID")
        private String visitorUuid;
 
        @Schema(description = "姓名")
        private String name;
 
        @Schema(description = "性别")
        private String gender;
 
        @Schema(description = "单位名称")
        private String companyName;
 
        @Schema(description = "手机号脱敏")
        private String mobileMasked;
 
        @Schema(description = "身份证脱敏")
        private String idCardMasked;
    }
 
    @Data
    @Schema(description = "再次预约回填用车辆")
    public static class RebookVehicleItem {
 
        @Schema(description = "车牌号")
        private String plateNo;
 
        @Schema(description = "驾驶员访客ID")
        private Long driverVisitorId;
 
        @Schema(description = "驾驶员姓名")
        private String driverName;
    }
}