schangxiang@126.com
2025-09-17 ff43ddf18764629ff875478e4e47a7281cbd230a
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
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
using Admin.NET.Core;
using System.ComponentModel.DataAnnotations;
 
namespace Admin.NET.Application;
 
    /// <summary>
    /// ASN明细表基础输入参数
    /// </summary>
    public class WmsOrderAsnDetailsBaseInput
    {
        /// <summary>
        /// PO单ID
        /// </summary>
        public virtual long? PoId { get; set; }
        
        /// <summary>
        /// PO单号
        /// </summary>
        public virtual string PoNo { get; set; }
        
        /// <summary>
        /// PO单明细行号
        /// </summary>
        public virtual string PoLineNumber { get; set; }
        
        /// <summary>
        /// 物料编号
        /// </summary>
        public virtual string MaterialCode { get; set; }
        
        /// <summary>
        /// 物料名称
        /// </summary>
        public virtual string MaterialName { get; set; }
        
        /// <summary>
        /// 送货数量
        /// </summary>
        public virtual decimal Quantity { get; set; }
        
        /// <summary>
        /// 已收数量
        /// </summary>
        public virtual decimal GoodsQuantity { get; set; }
        
        /// <summary>
        /// 供应商编号
        /// </summary>
        public virtual string SupplierCode { get; set; }
        
        /// <summary>
        /// 供应商名称
        /// </summary>
        public virtual string SupplierName { get; set; }
        
        /// <summary>
        /// 单位
        /// </summary>
        public virtual string Unit { get; set; }
        
        /// <summary>
        /// 单据状态
        /// </summary>
        public virtual Admin.NET.Application.OrderStatusEnum AsnStatus { get; set; }
        
        /// <summary>
        /// 单据状态名称
        /// </summary>
        public virtual string AsnStatusName { get; set; }
        
        /// <summary>
        /// 一维条码
        /// </summary>
        public virtual string SN_1d { get; set; }
        
        /// <summary>
        /// 二维条码
        /// </summary>
        public virtual string SN_2d { get; set; }
        
        /// <summary>
        /// 包装名称
        /// </summary>
        public virtual string Package { get; set; }
        
        /// <summary>
        /// 计划开始时间
        /// </summary>
        public virtual DateTime? PlannedStartTime { get; set; }
        
        /// <summary>
        /// 计划结束时间
        /// </summary>
        public virtual DateTime? PlannedEndTime { get; set; }
        
        /// <summary>
        /// 是否冻结
        /// </summary>
        public virtual bool? IsFreeze { get; set; }
        
        /// <summary>
        /// 操作原因
        /// </summary>
        public virtual string OperReason { get; set; }
        
        /// <summary>
        /// 项目号
        /// </summary>
        public virtual string ProjectNo { get; set; }
        
        /// <summary>
        /// 工厂ID
        /// </summary>
        public virtual long FactoryId { get; set; }
        
        /// <summary>
        /// 工厂名称
        /// </summary>
        public virtual string FactoryName { get; set; }
        
        /// <summary>
        /// 工厂编号
        /// </summary>
        public virtual string FactoryCode { get; set; }
        
        /// <summary>
        /// 收货道口
        /// </summary>
        public virtual string Dock { get; set; }
        
        /// <summary>
        /// 创建时间
        /// </summary>
        public virtual DateTime? CreateTime { get; set; }
        
        /// <summary>
        /// 修改时间
        /// </summary>
        public virtual DateTime? UpdateTime { get; set; }
        
        /// <summary>
        /// 创建人Id
        /// </summary>
        public virtual long? CreateUserId { get; set; }
        
        /// <summary>
        /// 创建人
        /// </summary>
        public virtual string CreateUserName { get; set; }
        
        /// <summary>
        /// 修改人Id
        /// </summary>
        public virtual long? UpdateUserId { get; set; }
        
        /// <summary>
        /// 修改人
        /// </summary>
        public virtual string UpdateUserName { get; set; }
        
        /// <summary>
        /// 软删除
        /// </summary>
        public virtual bool IsDelete { get; set; }
        
        /// <summary>
        /// ASN单ID
        /// </summary>
        public virtual long AsnId { get; set; }
        
        /// <summary>
        /// ASN单号
        /// </summary>
        public virtual string AsnNo { get; set; }
        
        /// <summary>
        /// 批次
        /// </summary>
        public virtual string SupplierBatch { get; set; }
        
        /// <summary>
        /// 供应商批次
        /// </summary>
        public virtual string Batch { get; set; }
        
        /// <summary>
        /// ERP库存地
        /// </summary>
        public virtual string ErpCode { get; set; }
        
        /// <summary>
        /// ERP单号
        /// </summary>
        public virtual string ErpOrderNo { get; set; }
        
    }
 
    /// <summary>
    /// ASN明细表分页查询输入参数
    /// </summary>
    public class WmsOrderAsnDetailsInput : BasePageInput
    {
    public long? Id { get; set; }
 
    /// <summary>
    /// 关键字查询
    /// </summary>
    public string? SearchKey { get; set; }
 
        /// <summary>
        /// PO单ID
        /// </summary>
        public long? PoId { get; set; }
        
        /// <summary>
        /// PO单号
        /// </summary>
        public string? PoNo { get; set; }
        
        /// <summary>
        /// PO单明细行号
        /// </summary>
        public string? PoLineNumber { get; set; }
    /// <summary>
    /// Asn单明细行号
    /// </summary>
 
    public string AsnLineNumber { get; set; }
    /// <summary>
    /// 物料编号
    /// </summary>
    public string? MaterialCode { get; set; }
        
        /// <summary>
        /// 物料名称
        /// </summary>
        public string? MaterialName { get; set; }
        
         /// <summary>
        /// 采购数量
        /// </summary>
        public decimal? POQuantity { get; set; }
 
        /// <summary>
        /// 送货数量
        /// </summary>
        public decimal? Quantity { get; set; }
        
        /// <summary>
        /// 已收数量
        /// </summary>
        public decimal? GoodsQuantity { get; set; }
        
        /// <summary>
        /// 供应商编号
        /// </summary>
        public string? SupplierCode { get; set; }
        
        /// <summary>
        /// 供应商名称
        /// </summary>
        public string? SupplierName { get; set; }
        
        /// <summary>
        /// 单位
        /// </summary>
        public string? POUnit { get; set; }
        public string? MaterialUnit { get; set; }
 
    /// <summary>
    /// 单据状态
    /// </summary>
    public Admin.NET.Application.OrderStatusEnum? AsnStatus { get; set; }
        
        /// <summary>
        /// 单据状态名称
        /// </summary>
        public string? AsnStatusName { get; set; }
        
        /// <summary>
        /// 一维条码
        /// </summary>
        public string? SN_1d { get; set; }
        
        /// <summary>
        /// 二维条码
        /// </summary>
        public string? SN_2d { get; set; }
        
        /// <summary>
        /// 包装名称
        /// </summary>
        public string? Package { get; set; }
        
        /// <summary>
        /// 计划开始时间
        /// </summary>
        public DateTime? PlannedStartTime { get; set; }
        
        /// <summary>
         /// 计划开始时间范围
         /// </summary>
         public List<DateTime?> PlannedStartTimeRange { get; set; } 
        /// <summary>
        /// 计划结束时间
        /// </summary>
        public DateTime? PlannedEndTime { get; set; }
        
        /// <summary>
         /// 计划结束时间范围
         /// </summary>
         public List<DateTime?> PlannedEndTimeRange { get; set; } 
        /// <summary>
        /// 是否冻结
        /// </summary>
        public bool? IsFreeze { get; set; }
        
        /// <summary>
        /// 冻结原因
        /// </summary>
        public string? FreezeReason { get; set; }
        
        /// <summary>
        /// 项目号
        /// </summary>
        public string? ProjectNo { get; set; }
        
        /// <summary>
        /// 工厂ID
        /// </summary>
        public long? FactoryId { get; set; }
        
        /// <summary>
        /// 工厂名称
        /// </summary>
        public string? FactoryName { get; set; }
        
        /// <summary>
        /// 工厂编号
        /// </summary>
        public string? FactoryCode { get; set; }
        
        /// <summary>
        /// 收货道口
        /// </summary>
        public string? Dock { get; set; }
        
        /// <summary>
        /// ASN单ID
        /// </summary>
        public long? AsnId { get; set; }
        
        /// <summary>
        /// ASN单号
        /// </summary>
        public string? AsnNo { get; set; }
        
        /// <summary>
        /// 批次
        /// </summary>
        public string? SupplierBatch { get; set; }
        
        /// <summary>
        /// 供应商批次
        /// </summary>
        public string? Batch { get; set; }
        
        /// <summary>
        /// ERP库存地
        /// </summary>
        public string? ErpCode { get; set; }
        
        /// <summary>
        /// ERP单号
        /// </summary>
        public string? ErpOrderNo { get; set; }
        
    }
 
    /// <summary>
    /// ASN明细表增加输入参数
    /// </summary>
    public class AddWmsOrderAsnDetailsInput : WmsOrderAsnDetailsBaseInput
    {
        /// <summary>
        /// PO单明细行号
        /// </summary>
        //[Required(ErrorMessage = "PO单明细行号不能为空")]
        public override string PoLineNumber { get; set; }
        /// <summary>
        /// Asn单明细行号
        /// </summary>
        public string AsnLineNumber { get; set; }
    /// <summary>
    /// 物料编号
    /// </summary>
    [Required(ErrorMessage = "物料编号不能为空")]
        public override string MaterialCode { get; set; }
        
        /// <summary>
        /// 物料名称
        /// </summary>
        [Required(ErrorMessage = "物料名称不能为空")]
        public override string MaterialName { get; set; }
        
        /// <summary>
        /// 送货数量
        /// </summary>
        [Required(ErrorMessage = "送货数量不能为空")]
        public override decimal Quantity { get; set; }
        
        /// <summary>
        /// 已收数量
        /// </summary>
        [Required(ErrorMessage = "已收数量不能为空")]
        public override decimal GoodsQuantity { get; set; }
        
        /// <summary>
        /// 供应商编号
        /// </summary>
        [Required(ErrorMessage = "供应商编号不能为空")]
        public override string SupplierCode { get; set; }
        
        /// <summary>
        /// 供应商名称
        /// </summary>
        [Required(ErrorMessage = "供应商名称不能为空")]
        public override string SupplierName { get; set; }
        
        /// <summary>
        /// 单据状态
        /// </summary>
        [Required(ErrorMessage = "单据状态不能为空")]
        public override Admin.NET.Application.OrderStatusEnum AsnStatus { get; set; }
        
        /// <summary>
        /// 单据状态名称
        /// </summary>
        [Required(ErrorMessage = "单据状态名称不能为空")]
        public override string AsnStatusName { get; set; }
        
        /// <summary>
        /// 工厂ID
        /// </summary>
        [Required(ErrorMessage = "工厂ID不能为空")]
        public override long FactoryId { get; set; }
        
        /// <summary>
        /// 软删除
        /// </summary>
        [Required(ErrorMessage = "软删除不能为空")]
        public override bool IsDelete { get; set; }
        
        /// <summary>
        /// ASN单ID
        /// </summary>
        [Required(ErrorMessage = "ASN单ID不能为空")]
        public override long AsnId { get; set; }
        
        /// <summary>
        /// ASN单号
        /// </summary>
        [Required(ErrorMessage = "ASN单号不能为空")]
        public override string AsnNo { get; set; }
        
    }
 
    /// <summary>
    /// ASN明细表删除输入参数
    /// </summary>
    public class DeleteWmsOrderAsnDetailsInput : BaseIdInput
    {
    }
 
    /// <summary>
    /// ASN明细表更新输入参数
    /// </summary>
    public class UpdateWmsOrderAsnDetailsInput : AddWmsOrderAsnDetailsInput
    {
        /// <summary>
        /// 主键Id
        /// </summary>
        [Required(ErrorMessage = "主键Id不能为空")]
        public long Id { get; set; }
        
    }
 
public class UpdateWmsOrderAsnIdsInput 
{
    /// <summary>
    /// 主键Id
    /// </summary>
    [Required(ErrorMessage = "主键Id不能为空")]
    public List<long> Id { get; set; }
 
}
/// <summary>
/// ASN明细表主键查询输入参数
/// </summary>
public class QueryByIdWmsOrderAsnDetailsInput : DeleteWmsOrderAsnDetailsInput
    {
 
    }