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
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
package com.by4cloud.platformx.business.vo;
 
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.persistence.Column;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
 
import java.math.BigDecimal;
import java.util.Date;
@Data
public class ContractPageVo {
 
    private Long id;
 
    @Schema(description = "合同编号")
    private String contractNo;
 
    @Schema(description = "合同名称")
    private String contractName;
 
    @Schema(description = "甲方id")
    private Long partyAId;
 
    @Schema(description = "甲方名称")
    private String partyA;
 
    @Schema(description = "乙方id")
    private Long partyBId;
 
    @Schema(description = "乙方名称")
    private String partyB;
 
    @Schema(description = "合同金额")
    private BigDecimal amount;
 
    @Schema(description = "币种(CNY/USD等)")
    private String currency;
 
    @Schema(description = "合同类型(0-生成式 1-备案式)")
    private Integer contractType;
 
    @Schema(description = "供应属性 0-成品 1-备件 2-大修 3-其他")
    private Integer supplyAttribute;
 
    @Schema(description = "合同状态(0-草稿 1-已生效 2-已终止 3-已过期)")
    @Column(columnDefinition = "tinyint(2) default 0 comment '合同状态'")
    private Integer contractStatus;
 
    @Schema(description = "合同服务属性(0-产品销售 1-无形服务)")
    private Integer contractAttribute;
 
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Schema(description = "签署日期")
    private Date signDate;
 
    @Schema(description = "签订地点")
    private String signPlace;
 
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Schema(description = "生效日期")
    private Date effectiveDate;
 
    @Schema(description = "交付周期")
    private Integer deliveryCycle;
 
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Schema(description = "到期日期")
    private Date expirationDate;
 
    @Schema(description = "合同附件URL")
    private String attachmentUrl;
 
    @Schema(description = "备注")
    private String remark;
 
    @Schema(description = "关联父合同id(用于合同变更时指向原合同)")
    private Long parentId;
 
 
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Schema(description = "审批时间")
    private Date approveTime;
 
    @Schema(description = "到货节点ID")
    private Long arrivalScheduleId;
 
    @Schema(description = "验收节点ID")
    private Long acceptScheduleId;
 
    @Schema(description = "erp推送标识")
    private String erpPushFlag;
 
    @Schema(description = "开票状态")
    private String billingStatus;
 
    @Schema(description = "已开票金额")
    private BigDecimal billingAmout;
 
    @Schema(description = "下一阶段")
    private String nextScheduleName;
 
    @Schema(description = "模版ID")
    private Long templateId;
 
    @Schema(description = "销售模式")
    private String salesModel;
 
    @Schema(description = "已付款金额")
    private BigDecimal paidAmount;
 
    @Schema(description = "合同分类")
    private String contractCategory;
 
    @Schema(description = "执行周期")
    private String execFrequency;
 
    @Schema(description = "执行次数")
    private Integer execTimes;
 
    @Schema(description = "执行日期后多少天生成应收")
    private Integer execDay;
 
    @Schema(description = "环境")
    private String environment;
 
    @Schema(description = "标准")
    private String standard;
 
    @Schema(description = "质保期 使用月数")
    private BigDecimal useMonth;
 
    @Schema(description = "质保期 发货后月数")
    private BigDecimal afterShipMonth;
 
    @Schema(description = "货运方式")
    private String shipMethod;
 
    @Schema(description = "货运地址")
    private String shipAddress;
 
    @Schema(description = "包装")
    private String packaging;
 
    @Schema(description = "维修或换货期限")
    private BigDecimal repairPeriod;
 
    @Schema(description = "维修或换货 违约金")
    private BigDecimal repairBreachAmount;
 
    @Schema(description = "货物数量不足 补货天数")
    private BigDecimal goodsShort;
 
    @Schema(description = "货物数量不足 违约金")
    private BigDecimal goodsShortBreachAmount;
 
    @Schema(description = "每逾期一日,承担本合同总额 违约金")
    private BigDecimal overdueBreachAmount;
 
    @Schema(description = "逾期  日以上的,甲方有权解除合同")
    private BigDecimal terminateContract;
 
    @Schema(description = "双方均可向 人民法院")
    private String court;
 
    @Schema(description = "本合同附件包括:")
    private String contractAttchment;
 
    @Schema(description = "合同签订市")
    private String city;
 
    @Schema(description = "合同签订区")
    private String region;
 
    @Schema(description = "开票通知在 个工作日内")
    private BigDecimal invoiceNotice;
 
    @Schema(description = "合同总价税率")
    private BigDecimal contractTax;
 
    @Schema(description = "出库金额")
    private BigDecimal outAmount;
}