ContractVO.java
4.52 KB
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
package vion.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.github.liaochong.myexcel.core.annotation.ExcelColumn;
import com.github.liaochong.myexcel.core.annotation.ExcelModel;
import lombok.Getter;
import lombok.Setter;
import vion.model.ContractLog;
import vion.model.ContractPayment;
import vion.model.RContractProduct;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@Getter
@Setter
@ExcelModel(sheetName = "合同列表", includeAllField = false)
public class ContractVO {
private Long id;
/**
* 合同名称
*/
@ExcelColumn(order = 1, title = "合同名称")
private String name;
/**
* 合同编号
*/
@ExcelColumn(order = 0, title = "合同编号")
private String contractNo;
/**
* 合同类型:1-维保合同 2-框架合同 3-集成合同 4-供货合同 5-供货施工合同 0-其他
*/
@ExcelColumn(order = 3, title = "合同类型", mapping = "1:维保合同,2:框架合同,3:集成合同,4:供货合同,5:供货施工合同,0:其他")
private Integer type;
/**
* 合同签订日期
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ExcelColumn(order = 4, title = "签订日期", format = "yyyy-MM-dd")
private Date signDate;
/**
* 合同维保开始日期
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ExcelColumn(order = 5, title = "维保开始日期", format = "yyyy-MM-dd")
private Date maintainSdate;
/**
* 合同维保结束日期
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ExcelColumn(order = 6, title = "维保结束日期", format = "yyyy-MM-dd")
private Date maintainEdate;
/**
* 合同进度:1-签订 2-到货 3-系统验收(初验) 4-项目验收(终验) 5-质保 6-第一笔维保款 7-第二笔维保款 8-第三笔维保款 9-维保进度款 10-维保验收款
*/
@ExcelColumn(order = 7, title = "合同进度", mapping = "1:合同签订,2:到货,3:系统验收,4:项目验收,5:质保,6:第一笔维保款,7:第二笔维保款,8:第三笔维保款,9:维保进度款,10:维保验收款")
private Integer status;
/**
* 合同总金额
*/
@ExcelColumn(order = 9, title = "总金额")
private BigDecimal totalAmount;
/**
* 合同已收金额
*/
@ExcelColumn(order = 10, title = "已收款")
private BigDecimal paidAmount;
/**
* 合同应收金额:
* 根据【合同进度】,由系统判断出应该收到的金额
*/
@ExcelColumn(order = 11, title = "应收款")
private BigDecimal receivableAmount;
/**
* 合同未收金额:total-(paid+receivable)
*/
@ExcelColumn(order = 12, title = "合同余额")
private BigDecimal outstandingAmount;
/**
* 结算差异
*/
@ExcelColumn(order = 13, title = "结算差异")
private BigDecimal diffAmount;
/**
* 合同签订主体
*/
private String subject;
/**
* 合同甲方名称
*/
@ExcelColumn(order = 15, title = "甲方名称")
private String customerName;
/**
* 销售人员名称
*/
@ExcelColumn(order = 8, title = "销售人")
private String saleName;
/**
* 备注
*/
private String remark;
/**
* 记录创建者
*/
private Long createUser;
/**
* 记录最后一次修改者
*/
private Long modifyUser;
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime;
/**
* 修改时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date modifyTime;
/**
* 合同质保周期(月)
*/
private Integer warrantyPeriod;
/**
* 终验日期
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date finalDate;
/**
* 财务状态
*/
private Integer financialStatus;
/**
* 合同背景情况说明
*/
private String backInfo;
/**
* 开票金额
*/
@ExcelColumn(order = 14, title = "已开票")
private BigDecimal invoiceAmount;
/**
* 录入时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date entryTime;
/**
* 合同关联的项目名
*/
private List<StoreVO> storeVOS;
private List<ContractLog> contractLogs;
private List<RContractProduct> contractProducts;
private List<ContractPayment> contractPayments;
}