SalesOutboundPostRequest.java
5.49 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
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
package com.huaheng.api.erp.domain;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* ERP2过账销售出库请求实体。
*
* <p>WMS出库作业完成后,通知ERP过账销售出库单时使用。</p>
*/
@Data
public class SalesOutboundPostRequest implements Serializable {
private static final long serialVersionUID = 1L;
public static final String DEFAULT_KEY = "f5458f5c0f9022db743a7c0710145903";
public static final String DEFAULT_TYPE = "sync";
public static final String DEFAULT_CLIENT_PROD = "WMS";
public static final String DEFAULT_LANG = "zh_CN";
public static final String DEFAULT_SERVICE_PROD = "T100";
public static final String DEFAULT_SERVICE_NAME = "DeliveryOrder.Create";
public static final String DEFAULT_SERVICE_IP = "10.1.1.200";
public static final String SERVICE_ID_PROD = "topprd";
public static final String SERVICE_ID_TEST = "toptst";
public static final String DEFAULT_XMDK000 = "1";
/**
* 唯一值,ERP接口固定值。
*/
private String key = DEFAULT_KEY;
/**
* 请求类型,固定值:sync。
*/
private String type = DEFAULT_TYPE;
/**
* 客户端产品,固定值:WMS。
*/
private String prod = DEFAULT_CLIENT_PROD;
/**
* 客户端主机信息。
*/
private Host host = new Host();
/**
* ERP服务信息。
*/
private Service service = new Service();
/**
* 业务数据。
*/
private DataKey datakey = new DataKey();
/**
* 客户端主机信息。
*/
@Data
public static class Host implements Serializable {
private static final long serialVersionUID = 1L;
/**
* WMS客户端IP。
*/
private String ip;
/**
* 语言别,固定值:zh_CN。
*/
private String lang = DEFAULT_LANG;
}
/**
* ERP服务调用信息。
*/
@Data
public static class Service implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 用户编号。
*/
private String acct;
/**
* 时间戳,17位。例如:20201015123204361。
*/
private String timestamp;
/**
* 服务端,固定值:T100。
*/
private String prod = DEFAULT_SERVICE_PROD;
/**
* 服务名,固定值:DeliveryOrder.Create。
*/
private String name = DEFAULT_SERVICE_NAME;
/**
* ERP服务端IP。
*/
private String ip = DEFAULT_SERVICE_IP;
/**
* ERP环境产品。正式区:topprd,测试区:toptst。
*/
private String id;
}
/**
* ERP业务数据。
*/
@Data
public static class DataKey implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 企业代号。
*/
@JSONField(name = "EntId")
private String entId;
/**
* 营运据点。
*/
@JSONField(name = "CompanyId")
private String companyId;
/**
* 销售出库单主档。
*/
private Master master = new Master();
}
/**
* 销售出库单主档。
*/
@Data
public static class Master implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 单别,销售出库单别。
*/
private String xmdkdocno;
/**
* 单据日期。
*/
private String xmdkdocdt;
/**
* 单据性质,固定值:1(axmt540出货单)。
*/
private String xmdk000 = DEFAULT_XMDK000;
/**
* 出库性质。
*/
private String xmdk002;
/**
* 申请人。
*/
private String xmdk003;
/**
* 客户编号。
*/
private String xmdk007;
/**
* WMS来源单号。
*/
@JSONField(name = "source_no")
private String sourceNo;
/**
* 销售出库单明细。
*/
private List<Detail> detail;
}
/**
* 销售出库单明细。
*/
@Data
public static class Detail implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 出货通知单号。
*/
private String xmdl001;
/**
* 出货通知项次。
*/
private BigDecimal xmdl002;
/**
* 料号。
*/
private String xmdl008;
/**
* 单位。
*/
private String xmdl017;
/**
* 数量,必须大于0。
*/
private BigDecimal xmdl018;
/**
* 项目编号。
*/
private String xmdl030;
/**
* 单价,为空时默认0。
*/
private BigDecimal xmdl024;
/**
* 库位。
*/
private String xmdl014;
/**
* 储位。
*/
private String xmdl015;
/**
* 批号。
*/
private String xmdl016;
/**
* 备注。
*/
private String xmdl051;
/**
* WMS来源项次。
*/
@JSONField(name = "source_seq")
private String sourceSeq;
}
}