diff --git a/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 b/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 index ab89519a..d9b4bd5c 100644 Binary files a/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 and b/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 differ diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml index 524a5183..ac861432 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml @@ -1035,11 +1035,6 @@ ID - - - 单据ID(等同-入库任务单ID) - - 箱信息ID @@ -1060,11 +1055,6 @@ 明细ID - - - 单据ID(等同-入库任务单ID) - - 物料ID diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml index 7c08eef3..fc582a05 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml @@ -410,12 +410,12 @@ 入库时间(上架时间) - + 箱信息集合 - + 明细 diff --git a/src/WMS.Web.Core/Dto/InStockTask/UpdateInStockTaskBoxRequest.cs b/src/WMS.Web.Core/Dto/InStockTask/UpdateInStockTaskBoxRequest.cs index aafb0158..7c65056c 100644 --- a/src/WMS.Web.Core/Dto/InStockTask/UpdateInStockTaskBoxRequest.cs +++ b/src/WMS.Web.Core/Dto/InStockTask/UpdateInStockTaskBoxRequest.cs @@ -13,10 +13,6 @@ namespace WMS.Web.Core.Dto.InStockTask /// ID /// public override int Id { get; set; } = 0; - /// - /// 单据ID(等同-入库任务单ID) - /// - public int TaskId { get; set; } /// /// 箱信息ID diff --git a/src/WMS.Web.Core/Dto/InStockTask/UpdateInStockTaskDetailsRequest.cs b/src/WMS.Web.Core/Dto/InStockTask/UpdateInStockTaskDetailsRequest.cs index 565b6e0b..63e859f9 100644 --- a/src/WMS.Web.Core/Dto/InStockTask/UpdateInStockTaskDetailsRequest.cs +++ b/src/WMS.Web.Core/Dto/InStockTask/UpdateInStockTaskDetailsRequest.cs @@ -14,10 +14,6 @@ namespace WMS.Web.Core.Dto.InStockTask /// public override int Id { get; set; } = 0; /// - /// 单据ID(等同-入库任务单ID) - /// - public int Fid { get; set; } - /// /// 物料ID /// public int MaterialId { get; set; } diff --git a/src/WMS.Web.Domain/Entitys/InStockTaskBox.cs b/src/WMS.Web.Domain/Entitys/InStockTaskBox.cs index 5ba13c23..86cb288c 100644 --- a/src/WMS.Web.Domain/Entitys/InStockTaskBox.cs +++ b/src/WMS.Web.Domain/Entitys/InStockTaskBox.cs @@ -12,7 +12,7 @@ namespace WMS.Web.Domain.Entitys /// [Serializable] [Table("t_erp_instock_task_box")] - public class InStockTaskBox:EntityBase + public class InStockTaskBox : EntityBase { /// /// Id diff --git a/src/WMS.Web.Domain/Entitys/InstockTask.cs b/src/WMS.Web.Domain/Entitys/InstockTask.cs index db864b24..d37fcdb0 100644 --- a/src/WMS.Web.Domain/Entitys/InstockTask.cs +++ b/src/WMS.Web.Domain/Entitys/InstockTask.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; using System.Text; +using WMS.Web.Core; using WMS.Web.Domain.Values; namespace WMS.Web.Domain.Entitys @@ -11,12 +12,12 @@ namespace WMS.Web.Domain.Entitys /// [Serializable] [Table("t_erp_instock_task")] - public class InStockTask + public class InStockTask : EntityBase { /// /// ID /// - public int Id { get; set; } + public override int Id { get; set; } /// /// 单据编号 /// @@ -53,12 +54,12 @@ namespace WMS.Web.Domain.Entitys /// /// 箱信息集合 /// - public List Boxs = new List(); + public List Boxs { get; set; } /// /// 明细 /// - public List Details = new List(); + public List Details { get; set; } /// /// 创建 diff --git a/src/WMS.Web.Domain/Entitys/InstockTaskDetails.cs b/src/WMS.Web.Domain/Entitys/InstockTaskDetails.cs index de3f1f92..7bcb963d 100644 --- a/src/WMS.Web.Domain/Entitys/InstockTaskDetails.cs +++ b/src/WMS.Web.Domain/Entitys/InstockTaskDetails.cs @@ -11,12 +11,12 @@ namespace WMS.Web.Domain.Entitys /// [Serializable] [Table("t_erp_instock_task_details")] - public class InStockTaskDetails: EntityBase + public class InStockTaskDetails : EntityBase { /// /// ID /// - public override int Id { get; set; } + public override int Id { get; set; } /// /// 单据头ID /// diff --git a/src/WMS.Web.Domain/Mappers/InStockMapper.cs b/src/WMS.Web.Domain/Mappers/InStockMapper.cs index e06bde58..b0eebe08 100644 --- a/src/WMS.Web.Domain/Mappers/InStockMapper.cs +++ b/src/WMS.Web.Domain/Mappers/InStockMapper.cs @@ -17,13 +17,14 @@ namespace WMS.Web.Domain.Mappers public InStockMapper() { CreateMap() - .ForMember(x => x.Details, opt => opt.Ignore()) - .ReverseMap(); - CreateMap().ReverseMap(); - CreateMap().ReverseMap(); + .ForMember(x => x.Boxs, opt => opt.Ignore()) + .ForMember(x => x.Details, opt => opt.Ignore()); + CreateMap(); + CreateMap(); + + CreateMap().ReverseMap(); - CreateMap() .ForMember(x => x.SourceBillNo, ops => ops.MapFrom(x => x.FBillNo)); diff --git a/src/WMS.Web.Repositories/InStockTaskRepositories.cs b/src/WMS.Web.Repositories/InStockTaskRepositories.cs index 781114c4..a5e1533d 100644 --- a/src/WMS.Web.Repositories/InStockTaskRepositories.cs +++ b/src/WMS.Web.Repositories/InStockTaskRepositories.cs @@ -9,6 +9,7 @@ using System.Threading.Tasks; using WMS.Web.Core; using WMS.Web.Core.Dto; using WMS.Web.Core.Dto.InStockTask; +using WMS.Web.Core.Help; using WMS.Web.Core.Internal.Results; using WMS.Web.Domain.Entitys; using WMS.Web.Domain.Infrastructure; @@ -125,9 +126,12 @@ namespace WMS.Web.Repositories /// public async Task Get(int id) { - return await _context.InStockTask + var entity =await _context.InStockTask + .Include(x=>x.Boxs) .Include(s => s.Details) .FirstOrDefaultAsync(f => f.Id == id); + + return entity.Clone(); } /// @@ -137,11 +141,13 @@ namespace WMS.Web.Repositories /// public async Task GetBy(string boxBillNo) { - return await _context.InStockTask + var entity= await _context.InStockTask .Include(s => s.Boxs.Where(b => b.BoxBillNo == boxBillNo)) .Include(s => s.Details) .Where(w => w.Boxs.Where(b => b.BoxBillNo == boxBillNo).Count() > 0).FirstOrDefaultAsync(); + return entity.Clone(); + } /// @@ -152,10 +158,10 @@ namespace WMS.Web.Repositories public async Task IsExist(string boxBillNo) { return await _context.InStockTask + .AsNoTracking() .Include(s => s.Boxs.Where(b => b.BoxBillNo == boxBillNo)) .Include(s => s.Details) - .Where(w =>(w.Status== InstockStatus.Part || w.Status== InstockStatus.Wait) && w.Boxs.Where(b => b.BoxBillNo == boxBillNo).Count() > 0).AnyAsync(); - + .Where(w => (w.Status == InstockStatus.Part || w.Status == InstockStatus.Wait) && w.Boxs.Where(b => b.BoxBillNo == boxBillNo).Count() > 0).AnyAsync(); } /// @@ -165,10 +171,11 @@ namespace WMS.Web.Repositories /// public async Task> GetList(List ids) { - return await _context.InStockTask + var entitys= await _context.InStockTask .Include(s => s.Details) .Where(f => ids.Contains(f.Id)) .ToListAsync(); + return entitys.Clone(); } /// @@ -178,10 +185,12 @@ namespace WMS.Web.Repositories /// public async Task> GetListBy(List sourceBillNos) { - return await _context.InStockTask + var entitys= await _context.InStockTask .Include(s => s.Details) .Where(w => sourceBillNos.Contains(w.SourceBillNo)) .ToListAsync(); + + return entitys.Clone(); } /// @@ -301,8 +310,8 @@ namespace WMS.Web.Repositories try { List list = entitys.Select(s => s.Id).ToList(); - var res = await _context.InStockTask.Include(x => x.Details).Where(f => list.Contains(f.Id)).ToListAsync(); - _mapper.Map(entitys, res); + var res = await _context.InStockTask.Include(x=>x.Boxs).Include(x => x.Details).Where(f => list.Contains(f.Id)).ToListAsync(); + _mapper.ToMapList(entitys, res); await _context.SaveChangesAsync(); if (_transaction != null) _transaction.Commit(); @@ -330,18 +339,20 @@ namespace WMS.Web.Repositories try { var model = await _context.InStockTask - .AsNoTracking() + .Include(s=>s.Boxs) .Include(s => s.Details) .FirstOrDefaultAsync(f => f.Id == entity.Id); if (model == null) return null; _mapper.Map(entity, model); - await _context.SaveChangesAsync(); + _mapper.ToMapList(entity.Boxs, model.Boxs); + _mapper.ToMapList(entity.Details, model.Details); + var result= await _context.SaveChangesAsync(); if (_transaction != null) _transaction.Commit(); return model; } - catch (Exception) + catch (Exception ex) { if (_transaction != null) _transaction.Rollback();