| | |
| | | /// <summary> |
| | | /// 数量 |
| | | /// </summary> |
| | | public decimal QTY { get; set; } |
| | | public double QTY { get; set; } |
| | | /// <summary> |
| | | /// 单位 |
| | | /// </summary> |
| | |
| | | // [SugarColumn(IsIgnore = true)] |
| | | // public List<WMS_ITEM_PKG> Children => ChildrenWithGhost?.Where(q => !q.GHOST_ROW).ToList() ?? new List<WMS_ITEM_PKG>(); |
| | | //BAS_ITEM, WMS_WAREHOUSE, WMS_REGION, WMS_SHELF, WMS_LOCATION |
| | | [Navigate(NavigateType.OneToOne, nameof(ITEM_CODE), nameof(BAS_ITEM.ITEM_CODE), "GHOST_ROW = 0")]//一对一 ClassAId是WMS_ITEM_PKG类里面的外键ID字段 |
| | | public BAS_ITEM ItemInfo { get; set; } //注意禁止手动赋值,只能是null |
| | | [Navigate(NavigateType.OneToMany, nameof(BAS_ITEM.ITEM_CODE), nameof(ITEM_CODE), "GHOST_ROW = 0")] |
| | | public List<BAS_ITEM> _ItemInfos { get; set; } //注意禁止手动赋值,只能是null |
| | | [SugarColumn(IsIgnore = true)] |
| | | public BAS_ITEM ItemInfo => _ItemInfos?.FirstOrDefault(q => q.AUTH_ORG == AUTH_ORG); |
| | | [Navigate(NavigateType.OneToOne, nameof(SN), nameof(WMS_ITEM.SN), "GHOST_ROW = 0")]//一对一 ClassAId是WMS_ITEM_PKG类里面的外键ID字段 |
| | | public WMS_ITEM Item { get; set; } //注意禁止手动赋值,只能是null |
| | | [Navigate(NavigateType.OneToOne, nameof(SN), nameof(WMS_ITEM_EXT.SN), "GHOST_ROW = 0")]//一对一 ClassAId是WMS_ITEM_PKG类里面的外键ID字段 |
| | |
| | | #endregion |
| | | |
| | | #region 公共方法 |
| | | public static List<WMS_ITEM_PKG> UpdateQty(List<WMS_ITEM_PKG> list) |
| | | { |
| | | var minPkgs = list.Where(q => !list.Any(p => p.PARENT_SN == q.SN)); |
| | | var parent = list.Where(q => minPkgs.Any(p => p.PARENT_SN == q.SN)); |
| | | while (parent.Any()) |
| | | { |
| | | foreach (var item in parent) |
| | | { |
| | | item.QTY = list.Where(q => q.PARENT_SN == item.SN).Sum(q => q.QTY); |
| | | } |
| | | parent = list.Where(q => parent.Any(p => p.PARENT_SN == q.SN)); |
| | | } |
| | | |
| | | return list; |
| | | } |
| | | #endregion |
| | | |
| | | }//endClass |