public void Add_Resource_To_Part() { IPartsService repo = new PartsService(new BadgerDataModel()); PartDetailDTO part = new PartDetailDTO(); part.UnitCost = 1.25m; part.ItemDescription = "Master Widjet 1023"; part.ItemName = "MW-1023"; part.PartNum = "MW-10034"; part.MarkUp = 1.25m; part.Waste = 2.0m; part.Weight = 12.25m; part.UID = 1; part.ManuId = 245; part.Location = "AC23"; part.Obsolete = false; part.Sku = "1023847A990"; ResourceDto resource = new ResourceDto { ResourceDescription = "Chipman Home Network", CurrentVersion = 1, Data = File.ReadAllBytes(@"C:\Users\Rich.DESIGNSYNTHESIS\Documents\chipmanHomeNetwork.sdr") }; part.Resources.Add(resource); repo.InsertOrUpdate(part, "Richard Young"); Assert.IsTrue(1 == 1); }
public void InsertOrUpdate(PartDetailDTO partDTO, string user) { var part = _context.Part.Include(r => r.GetResource).FirstOrDefault(o => o.PartID == partDTO.PartID); if (part == null) { part = new Part(); part.DateAdded = DateTime.Today; part.AddedBy = user; _context.Part.Add(part); } //Map properties part.PartNum = partDTO.PartNum; part.ModifiedDate = DateTime.Today; part.ModifiedBy = user; part.ObsoluteFlag = partDTO.Obsolete; part.Cost = partDTO.UnitCost; part.UID = partDTO.UID; part.Location = partDTO.Location; part.PartTypeId = partDTO.PartTypeID; part.ManuId = partDTO.ManuId; part.ItemDescription = partDTO.ItemDescription; part.ItemName = partDTO.ItemName; part.PartNum = partDTO.PartNum; part.MarkUp = partDTO.MarkUp; part.Waste = partDTO.Waste; part.Weight = partDTO.Weight; //remove deleted resource - part.GetResource .Where(d => !partDTO.Resources.Any(ResourceDto => ResourceDto.ResourceID == d.ResourceID)).ToList() .ForEach(deleted => _context.Resource.Remove(deleted)); //update or add resource partDTO.Resources.ToList().ForEach(detailDTO => { var detail = part.GetResource.FirstOrDefault(d => d.ResourceID == detailDTO.ResourceID); if (detail == null) { detail = new Resource(); detail.CreatedDate = DateTime.Today; detail.Createdby = user; part.GetResource.Add(detail); } detail.CurrentVersion = detailDTO.CurrentVersion; detail.ResourceDescription = detailDTO.ResourceDescription; detail.PartID = detailDTO.PartID; detail.Data = detailDTO.Data; detail.FileSize = FileHelpers.GetSizeInMemory(detailDTO.Data.Length); }); _context.SaveChanges(); }
public void Update(PartDetailDTO dto) { throw new NotImplementedException(); }