wei.zhou

提交代码

1 +package com.erry.iclear.dateInterface.api;
2 +
3 +import com.erry.iclear.dateInterface.api.response.ResultRS;
4 +import lombok.extern.slf4j.Slf4j;
5 +import org.springframework.beans.factory.annotation.Autowired;
6 +import org.springframework.context.MessageSource;
7 +import org.springframework.context.i18n.LocaleContextHolder;
8 +import org.springframework.http.HttpStatus;
9 +import org.springframework.validation.BindingResult;
10 +import org.springframework.validation.FieldError;
11 +import org.springframework.web.bind.MethodArgumentNotValidException;
12 +import org.springframework.web.bind.annotation.ControllerAdvice;
13 +import org.springframework.web.bind.annotation.ExceptionHandler;
14 +import org.springframework.web.bind.annotation.ResponseBody;
15 +import org.springframework.web.bind.annotation.ResponseStatus;
16 +
17 +import java.util.List;
18 +import java.util.stream.Collectors;
19 +
20 +/**
21 + * @author Administrator
22 + */
23 +@ControllerAdvice
24 +@ResponseBody
25 +@Slf4j
26 +public class CommonExceptionAdvice {
27 + @Autowired
28 + private MessageSource messageSource;
29 +
30 + @ResponseStatus(HttpStatus.OK)
31 + @ExceptionHandler({MethodArgumentNotValidException.class,NullPointerException.class})
32 + public ResultRS handleMethodArgumentNotValidException(MethodArgumentNotValidException e) {
33 + log.error("参数验证失败:{}", e.getMessage());
34 + BindingResult result = e.getBindingResult();
35 + List<FieldError> errorList = e.getBindingResult().getFieldErrors();
36 + List<String> errorMessages = errorList.stream().map(x->{
37 + String itemMessage= messageSource.getMessage(x.getDefaultMessage(), null, x.getDefaultMessage(), LocaleContextHolder.getLocale());
38 + return String.format("%s", itemMessage);
39 + }).collect(Collectors.toList());
40 +
41 +
42 + return new ResultRS(Boolean.FALSE,"30002",errorMessages.toString());
43 + }
44 +}
...@@ -13,6 +13,7 @@ import lombok.extern.slf4j.Slf4j; ...@@ -13,6 +13,7 @@ import lombok.extern.slf4j.Slf4j;
13 import org.apache.commons.lang3.StringUtils; 13 import org.apache.commons.lang3.StringUtils;
14 import org.springframework.beans.factory.annotation.Autowired; 14 import org.springframework.beans.factory.annotation.Autowired;
15 import org.springframework.util.StopWatch; 15 import org.springframework.util.StopWatch;
16 +import org.springframework.validation.annotation.Validated;
16 import org.springframework.web.bind.annotation.*; 17 import org.springframework.web.bind.annotation.*;
17 18
18 import javax.servlet.http.HttpServletRequest; 19 import javax.servlet.http.HttpServletRequest;
...@@ -48,7 +49,7 @@ public class CustomsDataInterface { ...@@ -48,7 +49,7 @@ public class CustomsDataInterface {
48 @PostMapping("/sendMawb") 49 @PostMapping("/sendMawb")
49 @ResponseBody 50 @ResponseBody
50 public ResultRS sendMawb(HttpServletRequest request 51 public ResultRS sendMawb(HttpServletRequest request
51 - , @RequestBody Mawb mawb) { 52 + ,@Validated @RequestBody Mawb mawb) {
52 log.info("接收到请求数据billNo:"+mawb.getBillNo()+" data:" + gson.toJson(mawb)); 53 log.info("接收到请求数据billNo:"+mawb.getBillNo()+" data:" + gson.toJson(mawb));
53 ResultRS result = new ResultRS(Boolean.FALSE,"",""); 54 ResultRS result = new ResultRS(Boolean.FALSE,"","");
54 55
......
...@@ -5,8 +5,12 @@ import io.swagger.annotations.ApiModelProperty; ...@@ -5,8 +5,12 @@ import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data; 5 import lombok.Data;
6 import org.hibernate.annotations.DynamicInsert; 6 import org.hibernate.annotations.DynamicInsert;
7 import org.hibernate.annotations.DynamicUpdate; 7 import org.hibernate.annotations.DynamicUpdate;
8 +import org.springframework.validation.annotation.Validated;
8 9
9 import javax.persistence.*; 10 import javax.persistence.*;
11 +import javax.validation.Valid;
12 +import javax.validation.constraints.NotBlank;
13 +import javax.validation.constraints.NotNull;
10 import java.io.Serializable; 14 import java.io.Serializable;
11 import java.math.BigDecimal; 15 import java.math.BigDecimal;
12 import java.util.List; 16 import java.util.List;
...@@ -38,22 +42,27 @@ public class Mawb implements Serializable { ...@@ -38,22 +42,27 @@ public class Mawb implements Serializable {
38 42
39 43
40 @ApiModelProperty(value = "进出口标志", name = "IEFlag", example = "固定值:E") 44 @ApiModelProperty(value = "进出口标志", name = "IEFlag", example = "固定值:E")
45 + @NotBlank(message="参数ieFlag不能为空")
41 @Column(name = "IEFLAG") 46 @Column(name = "IEFLAG")
42 private String ieFlag; 47 private String ieFlag;
43 48
44 @ApiModelProperty(value = "报关类型", name = "Type", example = "固定值:EX") 49 @ApiModelProperty(value = "报关类型", name = "Type", example = "固定值:EX")
50 + @NotBlank(message="参数type不能为空")
45 @Column(name = "TYPE") 51 @Column(name = "TYPE")
46 private String type; 52 private String type;
47 53
48 @ApiModelProperty(value = "申报单位代码", name = "agentCode", example = "固定值:1111980005") 54 @ApiModelProperty(value = "申报单位代码", name = "agentCode", example = "固定值:1111980005")
55 + @NotBlank(message="参数agentCode不能为空")
49 @Column(name = "AGENTCODE") 56 @Column(name = "AGENTCODE")
50 private String agentCode; 57 private String agentCode;
51 58
52 @ApiModelProperty(value = "申报单位名称", name = "agentName", example = "固定值:联邦快递(中国)有限公司") 59 @ApiModelProperty(value = "申报单位名称", name = "agentName", example = "固定值:联邦快递(中国)有限公司")
60 + @NotBlank(message="参数agentName不能为空")
53 @Column(name = "AGENTNAME") 61 @Column(name = "AGENTNAME")
54 private String agentName; 62 private String agentName;
55 63
56 @ApiModelProperty(value = "提单号", name = "billNo", example = "固定值:有总单号则取值‘总单号_运单号‘,没有总单号则取值‘运单号‘") 64 @ApiModelProperty(value = "提单号", name = "billNo", example = "固定值:有总单号则取值‘总单号_运单号‘,没有总单号则取值‘运单号‘")
65 + @NotBlank(message="参数billNo不能为空")
57 @Column(name = "BILLNO") 66 @Column(name = "BILLNO")
58 private String billNo; 67 private String billNo;
59 68
...@@ -62,46 +71,57 @@ public class Mawb implements Serializable { ...@@ -62,46 +71,57 @@ public class Mawb implements Serializable {
62 private String contrNo; 71 private String contrNo;
63 72
64 @ApiModelProperty(value = "主管海关(申报地海关)", name = "customMaster", example = "固定值:0101") 73 @ApiModelProperty(value = "主管海关(申报地海关)", name = "customMaster", example = "固定值:0101")
74 + @NotBlank(message="参数customMaster不能为空")
65 @Column(name = "CUSTOMMASTER") 75 @Column(name = "CUSTOMMASTER")
66 private String customMaster; 76 private String customMaster;
67 77
68 @ApiModelProperty(value = "征免性质", name = "cutMode", example = "101") 78 @ApiModelProperty(value = "征免性质", name = "cutMode", example = "101")
79 + @NotBlank(message="参数cutMode不能为空")
69 @Column(name = "CUTMODE") 80 @Column(name = "CUTMODE")
70 private String cutMode; 81 private String cutMode;
71 82
72 @ApiModelProperty(value = "报关/转关关系标志", name = "declTrnRel", example = "固定值:0") 83 @ApiModelProperty(value = "报关/转关关系标志", name = "declTrnRel", example = "固定值:0")
84 + @NotBlank(message="参数declTrnRel不能为空")
73 @Column(name = "DECLTRNREL") 85 @Column(name = "DECLTRNREL")
74 private String declTrnRel; 86 private String declTrnRel;
75 87
76 @ApiModelProperty(value = "经停港/指运港", name = "distinatePort", example = "ASM000") 88 @ApiModelProperty(value = "经停港/指运港", name = "distinatePort", example = "ASM000")
89 + @NotBlank(message="参数distinatePort不能为空")
77 @Column(name = "DISTINATEPORT") 90 @Column(name = "DISTINATEPORT")
78 private String distinatePort; 91 private String distinatePort;
79 92
80 @ApiModelProperty(value = "报关标志", name = "EdiId", example = "001") 93 @ApiModelProperty(value = "报关标志", name = "EdiId", example = "001")
94 + @NotBlank(message="参数ediId不能为空")
81 @Column(name = "EDIID") 95 @Column(name = "EDIID")
82 private String ediId; 96 private String ediId;
83 97
84 @ApiModelProperty(value = "海关编号", name = "EntryId", example = "001") 98 @ApiModelProperty(value = "海关编号", name = "EntryId", example = "001")
99 + @NotBlank(message="参数entryId不能为空")
85 @Column(name = "ENTRYID") 100 @Column(name = "ENTRYID")
86 private String entryId; 101 private String entryId;
87 102
88 @ApiModelProperty(value = "运费币制", name = "feeCurr", example = "固定值:3") 103 @ApiModelProperty(value = "运费币制", name = "feeCurr", example = "固定值:3")
104 + @NotBlank(message="参数feeCurr不能为空")
89 @Column(name = "FEECURR") 105 @Column(name = "FEECURR")
90 private String feeCurr; 106 private String feeCurr;
91 107
92 @ApiModelProperty(value = "运费标记", name = "feeMark", example = "99.22") 108 @ApiModelProperty(value = "运费标记", name = "feeMark", example = "99.22")
109 + @NotBlank(message="参数feeMark不能为空")
93 @Column(name = "FEEMARK") 110 @Column(name = "FEEMARK")
94 private String feeMark; 111 private String feeMark;
95 112
96 @ApiModelProperty(value = "运费/率", name = "feeRate", example = "43.34358") 113 @ApiModelProperty(value = "运费/率", name = "feeRate", example = "43.34358")
114 + @NotNull(message="参数feeRate不能为空")
97 @Column(name = "FEERATE") 115 @Column(name = "FEERATE")
98 private BigDecimal feeRate; 116 private BigDecimal feeRate;
99 117
100 @ApiModelProperty(value = "毛重", name = "grossWet", example = "") 118 @ApiModelProperty(value = "毛重", name = "grossWet", example = "")
119 + @NotNull(message="参数grossWet不能为空")
101 @Column(name = "CROSSWET") 120 @Column(name = "CROSSWET")
102 private Integer grossWet; 121 private Integer grossWet;
103 122
104 @ApiModelProperty(value = "出入境关闭", name = "IEPort", example = "固定值:0101") 123 @ApiModelProperty(value = "出入境关闭", name = "IEPort", example = "固定值:0101")
124 + @NotBlank(message="参数iePort不能为空")
105 @Column(name = "IEPORT") 125 @Column(name = "IEPORT")
106 private String iePort; 126 private String iePort;
107 127
...@@ -110,6 +130,7 @@ public class Mawb implements Serializable { ...@@ -110,6 +130,7 @@ public class Mawb implements Serializable {
110 private String inputerName; 130 private String inputerName;
111 131
112 @ApiModelProperty(value = "保险费币制", name = "insurCurr", example = "MOP") 132 @ApiModelProperty(value = "保险费币制", name = "insurCurr", example = "MOP")
133 + @NotBlank(message="参数insurCurr不能为空")
113 @Column(name = "INSURCURR") 134 @Column(name = "INSURCURR")
114 private String insurCurr; 135 private String insurCurr;
115 136
...@@ -118,6 +139,7 @@ public class Mawb implements Serializable { ...@@ -118,6 +139,7 @@ public class Mawb implements Serializable {
118 private String insurMark; 139 private String insurMark;
119 140
120 @ApiModelProperty(value = "保险费/率", name = "insurRate", example = "") 141 @ApiModelProperty(value = "保险费/率", name = "insurRate", example = "")
142 + @NotNull(message="参数insurRate不能为空")
121 @Column(name = "INSURRATE") 143 @Column(name = "INSURRATE")
122 private BigDecimal insurRate; 144 private BigDecimal insurRate;
123 145
...@@ -126,6 +148,7 @@ public class Mawb implements Serializable { ...@@ -126,6 +148,7 @@ public class Mawb implements Serializable {
126 private String manualNo; 148 private String manualNo;
127 149
128 @ApiModelProperty(value = "净重", name = "netWt", example = "") 150 @ApiModelProperty(value = "净重", name = "netWt", example = "")
151 + @NotNull(message="参数netWt不能为空")
129 @Column(name = "NETWT") 152 @Column(name = "NETWT")
130 private BigDecimal netWt; 153 private BigDecimal netWt;
131 154
...@@ -142,58 +165,70 @@ public class Mawb implements Serializable { ...@@ -142,58 +165,70 @@ public class Mawb implements Serializable {
142 private String otherMark; 165 private String otherMark;
143 166
144 @ApiModelProperty(value = "消费使用/生产销售单位代码", name = "ownerCode", example = "Z321654987") 167 @ApiModelProperty(value = "消费使用/生产销售单位代码", name = "ownerCode", example = "Z321654987")
168 + @NotBlank(message="参数ownerCode不能为空")
145 @Column(name = "OWNERCODE") 169 @Column(name = "OWNERCODE")
146 private String ownerCode; 170 private String ownerCode;
147 171
148 @ApiModelProperty(value = "消费使用/生产销售单位名称", name = "ownerName", example = "上海保险") 172 @ApiModelProperty(value = "消费使用/生产销售单位名称", name = "ownerName", example = "上海保险")
173 + @NotBlank(message="参数ownerName不能为空")
149 @Column(name = "OWNERNAME") 174 @Column(name = "OWNERNAME")
150 private String ownerName; 175 private String ownerName;
151 176
152 @ApiModelProperty(value = "件数", name = "packNo", example = "") 177 @ApiModelProperty(value = "件数", name = "packNo", example = "")
178 + @NotNull(message="参数packNo不能为空")
153 @Column(name = "PACKNO") 179 @Column(name = "PACKNO")
154 private Integer packNo; 180 private Integer packNo;
155 181
156 @ApiModelProperty(value = "预录入编号", name = "preEntryId", example = "") 182 @ApiModelProperty(value = "预录入编号", name = "preEntryId", example = "")
157 - @Column(name = "PREENTRYID")
158 private String preEntryId; 183 private String preEntryId;
159 184
160 @ApiModelProperty(value = "启运国/运抵国", name = "tradeCountry", example = "USA") 185 @ApiModelProperty(value = "启运国/运抵国", name = "tradeCountry", example = "USA")
186 + @NotBlank(message="参数tradeCountry不能为空")
161 @Column(name = "TRADECOUNTRY") 187 @Column(name = "TRADECOUNTRY")
162 private String tradeCountry; 188 private String tradeCountry;
163 189
164 @ApiModelProperty(value = "监管方式", name = "tradeMode", example = "0200") 190 @ApiModelProperty(value = "监管方式", name = "tradeMode", example = "0200")
191 + @NotBlank(message="参数tradeMode不能为空")
165 @Column(name = "TRADEMODE") 192 @Column(name = "TRADEMODE")
166 private String tradeMode; 193 private String tradeMode;
167 194
168 @ApiModelProperty(value = "境内收发货人编号", name = "tradeCode", example = "Z321654987") 195 @ApiModelProperty(value = "境内收发货人编号", name = "tradeCode", example = "Z321654987")
196 + @NotBlank(message="参数tradeCode不能为空")
169 @Column(name = "TRADECODE") 197 @Column(name = "TRADECODE")
170 private String tradeCode; 198 private String tradeCode;
171 199
172 @ApiModelProperty(value = "运输方式代码", name = "trafMode", example = "1") 200 @ApiModelProperty(value = "运输方式代码", name = "trafMode", example = "1")
201 + @NotBlank(message="参数trafMode不能为空")
173 @Column(name = "TRAFMODE") 202 @Column(name = "TRAFMODE")
174 private String trafMode; 203 private String trafMode;
175 204
176 @ApiModelProperty(value = "境内收发货人名称", name = "tradeName", example = "上海铢怡国际货物运输代理有限公司") 205 @ApiModelProperty(value = "境内收发货人名称", name = "tradeName", example = "上海铢怡国际货物运输代理有限公司")
206 + @NotBlank(message="参数tradeName不能为空")
177 @Column(name = "TRADENAME") 207 @Column(name = "TRADENAME")
178 private String tradeName; 208 private String tradeName;
179 209
180 @ApiModelProperty(value = "成交方式", name = "transMode", example = "2") 210 @ApiModelProperty(value = "成交方式", name = "transMode", example = "2")
211 + @NotBlank(message="参数transMode不能为空")
181 @Column(name = "TRANSMODE") 212 @Column(name = "TRANSMODE")
182 private String transMode; 213 private String transMode;
183 214
184 @ApiModelProperty(value = "包装种类", name = "wrapType", example = "22") 215 @ApiModelProperty(value = "包装种类", name = "wrapType", example = "22")
216 + @NotBlank(message="参数wrapType不能为空")
185 @Column(name = "WRAPTYPE") 217 @Column(name = "WRAPTYPE")
186 private String wrapType; 218 private String wrapType;
187 219
188 @ApiModelProperty(value = "生产核销单位统一信用代码---报关形式类型", name = "TradeCodeScc", example = "A74125896321456987") 220 @ApiModelProperty(value = "生产核销单位统一信用代码---报关形式类型", name = "TradeCodeScc", example = "A74125896321456987")
221 + @NotBlank(message="参数tradeCodeScc不能为空")
189 @Column(name = "TRADECODESCC") 222 @Column(name = "TRADECODESCC")
190 private String tradeCodeScc; 223 private String tradeCodeScc;
191 224
192 @ApiModelProperty(value = "消费使用/生产销售单位单位统一编码", name = "ownerCodeScc", example = "") 225 @ApiModelProperty(value = "消费使用/生产销售单位单位统一编码", name = "ownerCodeScc", example = "")
226 + @NotBlank(message="参数ownerCodeScc不能为空")
193 @Column(name = "OWNERCODESCC") 227 @Column(name = "OWNERCODESCC")
194 private String ownerCodeScc; 228 private String ownerCodeScc;
195 229
196 @ApiModelProperty(value = "贸易国别", name = "tradeAreaCode", example = "") 230 @ApiModelProperty(value = "贸易国别", name = "tradeAreaCode", example = "")
231 + @NotBlank(message="参数tradeAreaCode不能为空")
197 @Column(name = "TRADEAREACODE") 232 @Column(name = "TRADEAREACODE")
198 private String tradeAreaCode; 233 private String tradeAreaCode;
199 234
...@@ -202,6 +237,7 @@ public class Mawb implements Serializable { ...@@ -202,6 +237,7 @@ public class Mawb implements Serializable {
202 private String markNo; 237 private String markNo;
203 238
204 @ApiModelProperty(value = "入境口岸代码", name = "entyPortCode", example = "固定值:310302") 239 @ApiModelProperty(value = "入境口岸代码", name = "entyPortCode", example = "固定值:310302")
240 + @NotBlank(message="参数entyPortCode不能为空")
205 @Column(name = "ENTYPORTCODE") 241 @Column(name = "ENTYPORTCODE")
206 private String entyPortCode; 242 private String entyPortCode;
207 243
...@@ -214,7 +250,6 @@ public class Mawb implements Serializable { ...@@ -214,7 +250,6 @@ public class Mawb implements Serializable {
214 private String declareName; 250 private String declareName;
215 251
216 @ApiModelProperty(value = "境外发货人代码", name = "overseasConsignorCode", example = "") 252 @ApiModelProperty(value = "境外发货人代码", name = "overseasConsignorCode", example = "")
217 - @Column(name = "OVERSEASCONSIGNORCODE")
218 private String overseasConsignorCode; 253 private String overseasConsignorCode;
219 254
220 @ApiModelProperty(value = "境外收货人编码", name = "overseasConsigneeCode", example = "") 255 @ApiModelProperty(value = "境外收货人编码", name = "overseasConsigneeCode", example = "")
...@@ -222,9 +257,11 @@ public class Mawb implements Serializable { ...@@ -222,9 +257,11 @@ public class Mawb implements Serializable {
222 private String overseasConsigneeCode; 257 private String overseasConsigneeCode;
223 258
224 @ApiModelProperty(value = "境外收货人名称(外文)", name = "overseasConsigneeEname", example = "") 259 @ApiModelProperty(value = "境外收货人名称(外文)", name = "overseasConsigneeEname", example = "")
260 + @NotBlank(message="参数overseasConsigneeEname不能为空")
225 @Column(name = "OVERSEASCONSIGNEEENAME") 261 @Column(name = "OVERSEASCONSIGNEEENAME")
226 private String overseasConsigneeEname; 262 private String overseasConsigneeEname;
227 263
264 + @Valid
228 @ApiModelProperty(value = "运单明细", name = "mawbDetailList", example = "") 265 @ApiModelProperty(value = "运单明细", name = "mawbDetailList", example = "")
229 @OneToMany(cascade = CascadeType.PERSIST) 266 @OneToMany(cascade = CascadeType.PERSIST)
230 @JoinColumn(name = "mawbId") 267 @JoinColumn(name = "mawbId")
......
...@@ -4,8 +4,11 @@ import com.fasterxml.jackson.annotation.JsonProperty; ...@@ -4,8 +4,11 @@ import com.fasterxml.jackson.annotation.JsonProperty;
4 import io.swagger.annotations.ApiModel; 4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty; 5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data; 6 import lombok.Data;
7 +import org.springframework.validation.annotation.Validated;
7 8
8 import javax.persistence.*; 9 import javax.persistence.*;
10 +import javax.validation.constraints.NotBlank;
11 +import javax.validation.constraints.NotNull;
9 import java.io.Serializable; 12 import java.io.Serializable;
10 import java.math.BigDecimal; 13 import java.math.BigDecimal;
11 14
...@@ -32,131 +35,123 @@ public class MawbDetail implements Serializable { ...@@ -32,131 +35,123 @@ public class MawbDetail implements Serializable {
32 private Long mawbId; 35 private Long mawbId;
33 36
34 @Column(name="DETAILID") 37 @Column(name="DETAILID")
38 + @NotBlank(message="参数detailId不能为空")
35 private String detailId; 39 private String detailId;
36 40
37 @ApiModelProperty(value = "商品编号", example = "空值") 41 @ApiModelProperty(value = "商品编号", example = "空值")
38 @Column(name = "CLASSMARK") 42 @Column(name = "CLASSMARK")
39 - //JsonProperty("ClassMark")
40 private String classMark; 43 private String classMark;
41 44
42 @ApiModelProperty(value = "商品编号") 45 @ApiModelProperty(value = "商品编号")
46 + @NotBlank(message="参数codeTS不能为空")
43 @Column(name = "CODETS") 47 @Column(name = "CODETS")
44 - //@JsonProperty("CodeTS")
45 private String codeTS; 48 private String codeTS;
46 49
47 @ApiModelProperty(value = "申报单价", example = "空值") 50 @ApiModelProperty(value = "申报单价", example = "空值")
51 + @NotNull(message="参数declPrice不能为空")
48 @Column(name = "DECLPRICE") 52 @Column(name = "DECLPRICE")
49 - //@JsonProperty("DeclPrice")
50 private BigDecimal declPrice; 53 private BigDecimal declPrice;
51 54
52 @ApiModelProperty(value = "申报总价") 55 @ApiModelProperty(value = "申报总价")
56 + @NotNull(message="参数declTotal不能为空")
53 @Column(name = "DECLTOTAL") 57 @Column(name = "DECLTOTAL")
54 - //@JsonProperty("DeclTotal")
55 private BigDecimal declTotal; 58 private BigDecimal declTotal;
56 59
57 @ApiModelProperty(value = "征免方式") 60 @ApiModelProperty(value = "征免方式")
61 + @NotBlank(message="参数dutyMode不能为空")
58 @Column(name = "DUTYMODE") 62 @Column(name = "DUTYMODE")
59 - //@JsonProperty("DutyMode")
60 private String dutyMode; 63 private String dutyMode;
61 64
62 @ApiModelProperty(value = "货号") 65 @ApiModelProperty(value = "货号")
63 @Column(name = "EXGNO") 66 @Column(name = "EXGNO")
64 - //@JsonProperty("ExgNo")
65 private String exgNo; 67 private String exgNo;
66 68
67 @ApiModelProperty(value = "货号") 69 @ApiModelProperty(value = "货号")
68 @Column(name = "EXGVERSION") 70 @Column(name = "EXGVERSION")
69 - //@JsonProperty("ExgVersion")
70 private String exgVersion; 71 private String exgVersion;
71 72
72 @ApiModelProperty(value = "第一计量单位(法定单位)") 73 @ApiModelProperty(value = "第一计量单位(法定单位)")
74 + @NotBlank(message="参数firstUnit不能为空")
73 @Column(name = "FIRSTUNIT") 75 @Column(name = "FIRSTUNIT")
74 - //@JsonProperty("FirstUnit")
75 private String firstUnit; 76 private String firstUnit;
76 77
77 @ApiModelProperty(value = "第一法定数量") 78 @ApiModelProperty(value = "第一法定数量")
79 + @NotNull(message="参数firstQty不能为空")
78 @Column(name = "FIRSTQTY") 80 @Column(name = "FIRSTQTY")
79 - //@JsonProperty("FirstQty")
80 private Integer firstQty; 81 private Integer firstQty;
81 82
82 @ApiModelProperty(value = "成交计量单位") 83 @ApiModelProperty(value = "成交计量单位")
84 + @NotBlank(message="参数gunit不能为空")
83 @Column(name = "GUNIT") 85 @Column(name = "GUNIT")
84 - //@JsonProperty("GUNIT")
85 private String gunit; 86 private String gunit;
86 87
87 @ApiModelProperty(value = "商品规格、型号") 88 @ApiModelProperty(value = "商品规格、型号")
89 + @NotBlank(message="参数gmodel不能为空")
88 @Column(name = "GMODE") 90 @Column(name = "GMODE")
89 - //@JsonProperty("GModel")
90 private String gmodel; 91 private String gmodel;
91 92
92 @ApiModelProperty(value = "商品名称") 93 @ApiModelProperty(value = "商品名称")
94 + @NotBlank(message="参数gname不能为空")
93 @Column(name = "GNAME") 95 @Column(name = "GNAME")
94 - //@JsonProperty("GName")
95 private String gname; 96 private String gname;
96 97
97 @ApiModelProperty(value = "商品序号") 98 @ApiModelProperty(value = "商品序号")
99 + @NotBlank(message="参数gno不能为空")
98 @Column(name = "GNO") 100 @Column(name = "GNO")
99 - //@JsonProperty("GNo")
100 private String gno; 101 private String gno;
101 102
102 @ApiModelProperty(value = "成交数量") 103 @ApiModelProperty(value = "成交数量")
104 + @NotNull(message="参数gqty不能为空")
103 @Column(name = "GQTY") 105 @Column(name = "GQTY")
104 - //@JsonProperty("GQty")
105 private BigDecimal gqty; 106 private BigDecimal gqty;
106 107
107 @ApiModelProperty(value = "原产国") 108 @ApiModelProperty(value = "原产国")
109 + @NotBlank(message="参数originCountry不能为空")
108 @Column(name = "ORIGINCURRENTY") 110 @Column(name = "ORIGINCURRENTY")
109 - //@JsonProperty("OriginCountry")
110 private String originCountry; 111 private String originCountry;
111 112
112 @ApiModelProperty(value = "第二计量单位") 113 @ApiModelProperty(value = "第二计量单位")
113 @Column(name = "SECONDUNIT") 114 @Column(name = "SECONDUNIT")
114 - //@JsonProperty("SecondUnit")
115 private String secondUnit; 115 private String secondUnit;
116 116
117 @ApiModelProperty(value = "第二法定数量") 117 @ApiModelProperty(value = "第二法定数量")
118 + @NotNull(message="参数secondQty不能为空")
118 @Column(name = "SECONDQTY") 119 @Column(name = "SECONDQTY")
119 - //@JsonProperty("SecondQty")
120 private Integer secondQty; 120 private Integer secondQty;
121 121
122 @ApiModelProperty(value = "成交币制") 122 @ApiModelProperty(value = "成交币制")
123 + @NotBlank(message="参数tradeCurr不能为空")
123 @Column(name = "TRADECURR") 124 @Column(name = "TRADECURR")
124 - //@JsonProperty("TradeCurr")
125 private String tradeCurr; 125 private String tradeCurr;
126 126
127 @ApiModelProperty(value = "用途/生产厂家") 127 @ApiModelProperty(value = "用途/生产厂家")
128 @Column(name = "USETO") 128 @Column(name = "USETO")
129 - //@JsonProperty("UseTo")
130 private String useTo; 129 private String useTo;
131 130
132 @ApiModelProperty(value = "工缴费") 131 @ApiModelProperty(value = "工缴费")
133 @Column(name = "WORKUSD") 132 @Column(name = "WORKUSD")
134 - //@JsonProperty("WorkUsd")
135 private BigDecimal workUsd; 133 private BigDecimal workUsd;
136 134
137 @ApiModelProperty(value = "检验检疫编") 135 @ApiModelProperty(value = "检验检疫编")
138 @Column(name = "CIQCODE") 136 @Column(name = "CIQCODE")
139 - //@JsonProperty("CiqCode")
140 private String ciqCode; 137 private String ciqCode;
141 138
142 @ApiModelProperty(value = "最终目的国(地区)") 139 @ApiModelProperty(value = "最终目的国(地区)")
140 + @NotBlank(message="参数destinationCountry不能为空")
143 @Column(name = "DESTINATIONCOUNTRY") 141 @Column(name = "DESTINATIONCOUNTRY")
144 - //@JsonProperty("DestinationCountry")
145 private String destinationCountry; 142 private String destinationCountry;
146 143
147 @ApiModelProperty(value = "申报货物英文名称") 144 @ApiModelProperty(value = "申报货物英文名称")
148 @Column(name = "DECLGOODSENAME") 145 @Column(name = "DECLGOODSENAME")
149 - //@JsonProperty("DeclGoodsEname")
150 private String declGoodsEname; 146 private String declGoodsEname;
151 147
152 @ApiModelProperty(value = "目的地代码") 148 @ApiModelProperty(value = "目的地代码")
153 @Column(name = "DESTCODE") 149 @Column(name = "DESTCODE")
154 - //@JsonProperty("DestCode")
155 private String destCode; 150 private String destCode;
156 151
157 @ApiModelProperty(value = "境内目的地/境内货源地") 152 @ApiModelProperty(value = "境内目的地/境内货源地")
153 + @NotBlank(message="参数districtCode不能为空")
158 @Column(name = "DISTRICTCODE") 154 @Column(name = "DISTRICTCODE")
159 - //@JsonProperty("DistrictCode")
160 private String districtCode; 155 private String districtCode;
161 156
162 157
......