InoutQueryDto.cs 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. namespace Admin.NET.Plugin.AiDOP.MaterialWarehouse.Dto;
  2. /// <summary>
  3. /// S5 进出存查询 列表查询入参(只读)。
  4. ///
  5. /// 数据源:aidopdev.InvTransHist(库存交易流水),按证据 sql.txt 口径 join
  6. /// GeneralizedCodeMaster(交易类型名)/LocationMaster(货位名)/ItemMaster(物料名/单位)。
  7. /// 进出存口径由 SQL 内定义:期初=BeginBalance;入库=QtyChange&gt;0?QtyChange:0;
  8. /// 出库=QtyChange&lt;0?abs(QtyChange):0;期末=BeginBalance+QtyChange。
  9. /// Domain 由 GeneralizedCodeMaster(SystemConfig/CompanyCode) 解析,默认 8010。
  10. /// InvTransHist 无 tenant_id;TenantId 仅为前端 withAidopTenantParams 注入的透传参数,本查询不据其过滤。
  11. /// </summary>
  12. public class InoutQueryListInput
  13. {
  14. /// <summary>页码(从 1 开始)</summary>
  15. public int Page { get; set; } = 1;
  16. /// <summary>每页条数</summary>
  17. public int PageSize { get; set; } = 10;
  18. /// <summary>物料编码(InvTransHist.ItemNum,模糊匹配)</summary>
  19. public string? MaterialCode { get; set; }
  20. /// <summary>货位(InvTransHist.Loc,精确匹配,下拉选择)</summary>
  21. public string? Location { get; set; }
  22. /// <summary>批次号(InvTransHist.LotSerial,模糊匹配)</summary>
  23. public string? BatchNo { get; set; }
  24. /// <summary>工单号(InvTransHist.WorkOrd,模糊匹配)</summary>
  25. public string? WorkOrderNo { get; set; }
  26. /// <summary>交易类型(InvTransHist.TransType 代码,精确匹配,下拉选择)</summary>
  27. public string? TransType { get; set; }
  28. /// <summary>创建时间(InvTransHist.CreateTime 当日,yyyy-MM-dd)</summary>
  29. public string? CreateTime { get; set; }
  30. /// <summary>创建用户(InvTransHist.CreateUser,模糊匹配)</summary>
  31. public string? CreateUser { get; set; }
  32. /// <summary>租户 ID(前端 withAidopTenantParams 注入;InvTransHist 无租户列,本查询忽略)</summary>
  33. public long? TenantId { get; set; }
  34. }
  35. /// <summary>
  36. /// S5 进出存查询 列表行(只读)。字段对齐前端列 prop(camelCase),源列见注释(sql.txt / InvTransHist)。
  37. /// </summary>
  38. public class InoutQueryListRow
  39. {
  40. /// <summary>交易时间(InvTransHist.CreateTime)</summary>
  41. public DateTime? TransTime { get; set; }
  42. /// <summary>物料编码(InvTransHist.ItemNum)</summary>
  43. public string? MaterialCode { get; set; }
  44. /// <summary>物料名称(ItemMaster.Descr)</summary>
  45. public string? MaterialName { get; set; }
  46. /// <summary>货位(InvTransHist.Loc)</summary>
  47. public string? Location { get; set; }
  48. /// <summary>货位名称(LocationMaster.Descr)</summary>
  49. public string? LocationName { get; set; }
  50. /// <summary>批次号(InvTransHist.LotSerial)</summary>
  51. public string? BatchNo { get; set; }
  52. /// <summary>期初数(InvTransHist.BeginBalance)</summary>
  53. public decimal? BeginQty { get; set; }
  54. /// <summary>入库数(QtyChange&gt;0?QtyChange:0)</summary>
  55. public decimal? InQty { get; set; }
  56. /// <summary>出库数(QtyChange&lt;0?abs(QtyChange):0)</summary>
  57. public decimal? OutQty { get; set; }
  58. /// <summary>期末数(BeginBalance+QtyChange)</summary>
  59. public decimal? EndQty { get; set; }
  60. /// <summary>单位(ItemMaster.UM)</summary>
  61. public string? Unit { get; set; }
  62. /// <summary>交易类型(GeneralizedCodeMaster TransType.Comments 名称,无解码回落代码)</summary>
  63. public string? TransType { get; set; }
  64. /// <summary>工单号(InvTransHist.WorkOrd)</summary>
  65. public string? WorkOrderNo { get; set; }
  66. /// <summary>发货单号(InvTransHist.ShipperNum)</summary>
  67. public string? DeliveryNo { get; set; }
  68. /// <summary>发货类型(InvTransHist.ShipType)</summary>
  69. public string? DeliveryType { get; set; }
  70. /// <summary>备注(InvTransHist.Remark)</summary>
  71. public string? Remark { get; set; }
  72. /// <summary>创建用户(InvTransHist.CreateUser)</summary>
  73. public string? CreateUser { get; set; }
  74. }
  75. /// <summary>货位下拉选项(LocationMaster.Location + Descr)。</summary>
  76. public class InoutQueryLocationOption
  77. {
  78. /// <summary>货位(LocationMaster.Location)</summary>
  79. public string? Val { get; set; }
  80. /// <summary>货位名称(LocationMaster.Descr)</summary>
  81. public string? Label { get; set; }
  82. }
  83. /// <summary>交易类型下拉选项(GeneralizedCodeMaster TransType:Val 代码 + Comments 名称)。</summary>
  84. public class InoutQueryTransTypeOption
  85. {
  86. /// <summary>交易类型代码(GeneralizedCodeMaster.Val)</summary>
  87. public string? Val { get; set; }
  88. /// <summary>交易类型名称(GeneralizedCodeMaster.Comments)</summary>
  89. public string? Label { get; set; }
  90. }