using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using NetinaShop.Domain.Dtos.LargDtos; using NetinaShop.Domain.Dtos.SmallDtos; using NetinaShop.Domain.Entities.Products; namespace NetinaShop.Domain.Mappers { public static partial class ProductMapper { public static Product AdaptToProduct(this ProductLDto p1) { return p1 == null ? null : new Product() { PersianName = p1.PersianName, EnglishName = p1.EnglishName, Summery = p1.Summery, ExpertCheck = p1.ExpertCheck, Tags = p1.Tags, Warranty = p1.Warranty, BrandId = p1.BrandId, Specifications = funcMain1(p1.Specifications), Reviews = funcMain2(p1.Reviews), Files = funcMain3(p1.Files), Id = p1.Id }; } public static Product AdaptTo(this ProductLDto p5, Product p6) { if (p5 == null) { return null; } Product result = p6 ?? new Product(); result.PersianName = p5.PersianName; result.EnglishName = p5.EnglishName; result.Summery = p5.Summery; result.ExpertCheck = p5.ExpertCheck; result.Tags = p5.Tags; result.Warranty = p5.Warranty; result.BrandId = p5.BrandId; result.Specifications = funcMain4(p5.Specifications, result.Specifications); result.Reviews = funcMain5(p5.Reviews, result.Reviews); result.Files = funcMain6(p5.Files, result.Files); result.Id = p5.Id; return result; } public static Expression> ProjectToProduct => p13 => new Product() { PersianName = p13.PersianName, EnglishName = p13.EnglishName, Summery = p13.Summery, ExpertCheck = p13.ExpertCheck, Tags = p13.Tags, Warranty = p13.Warranty, BrandId = p13.BrandId, Specifications = p13.Specifications.Select(p14 => new Specification() { Title = p14.Title, Detail = p14.Detail, Value = p14.Value, IsFeature = p14.IsFeature, ProductId = p14.ProductId, ParentId = p14.ParentId, Id = p14.Id }).ToList(), Reviews = p13.Reviews.Select(p15 => new Review() { Title = p15.Title, Comment = p15.Comment, Rate = p15.Rate, IsBuyer = p15.IsBuyer, ProductId = p15.ProductId, UserId = p15.UserId, Id = p15.Id }).ToList(), Files = p13.Files.Select(p16 => new ProductStorageFile() { Name = p16.Name, FileLocation = p16.FileLocation, FileName = p16.FileName, IsHeader = p16.IsHeader, IsPrimary = p16.IsPrimary, FileType = p16.FileType, Id = p16.Id }).ToList(), Id = p13.Id }; public static ProductLDto AdaptToLDto(this Product p17) { return p17 == null ? null : new ProductLDto() { PersianName = p17.PersianName, EnglishName = p17.EnglishName, Summery = p17.Summery, ExpertCheck = p17.ExpertCheck, Tags = p17.Tags, Warranty = p17.Warranty, BrandId = p17.BrandId, Specifications = funcMain7(p17.Specifications), Reviews = funcMain8(p17.Reviews), Files = funcMain9(p17.Files), Id = p17.Id }; } public static ProductLDto AdaptTo(this Product p21, ProductLDto p22) { if (p21 == null) { return null; } ProductLDto result = p22 ?? new ProductLDto(); result.PersianName = p21.PersianName; result.EnglishName = p21.EnglishName; result.Summery = p21.Summery; result.ExpertCheck = p21.ExpertCheck; result.Tags = p21.Tags; result.Warranty = p21.Warranty; result.BrandId = p21.BrandId; result.Specifications = funcMain10(p21.Specifications, result.Specifications); result.Reviews = funcMain11(p21.Reviews, result.Reviews); result.Files = funcMain12(p21.Files, result.Files); result.Id = p21.Id; return result; } public static Expression> ProjectToLDto => p29 => new ProductLDto() { PersianName = p29.PersianName, EnglishName = p29.EnglishName, Summery = p29.Summery, ExpertCheck = p29.ExpertCheck, Tags = p29.Tags, Warranty = p29.Warranty, BrandId = p29.BrandId, Specifications = p29.Specifications.Select(p30 => new SpecificationSDto() { Title = p30.Title, Detail = p30.Detail, Value = p30.Value, IsFeature = p30.IsFeature, ProductId = p30.ProductId, ParentId = p30.ParentId, Id = p30.Id }).ToList(), Reviews = p29.Reviews.Select(p31 => new ReviewSDto() { Title = p31.Title, Comment = p31.Comment, Rate = p31.Rate, IsBuyer = p31.IsBuyer, ProductId = p31.ProductId, UserId = p31.UserId, Id = p31.Id }).ToList(), Files = p29.Files.Select(p32 => new StorageFileSDto() { Name = p32.Name, FileLocation = p32.FileLocation, FileName = p32.FileName, IsHeader = p32.IsHeader, IsPrimary = p32.IsPrimary, FileType = p32.FileType, Id = p32.Id }).ToList(), Id = p29.Id }; public static Product AdaptToProduct(this ProductSDto p33) { return p33 == null ? null : new Product() { PersianName = p33.PersianName, EnglishName = p33.EnglishName, Summery = p33.Summery, ExpertCheck = p33.ExpertCheck, Tags = p33.Tags, Warranty = p33.Warranty, Cost = p33.Cost, IsEnable = p33.IsEnable, BeDisplayed = p33.BeDisplayed, PackingCost = p33.PackingCost, Rate = p33.Rate, ReviewCount = p33.ReviewCount, Viewed = p33.Viewed, BrandId = p33.BrandId, CategoryId = p33.CategoryId, Id = p33.Id }; } public static Product AdaptTo(this ProductSDto p34, Product p35) { if (p34 == null) { return null; } Product result = p35 ?? new Product(); result.PersianName = p34.PersianName; result.EnglishName = p34.EnglishName; result.Summery = p34.Summery; result.ExpertCheck = p34.ExpertCheck; result.Tags = p34.Tags; result.Warranty = p34.Warranty; result.Cost = p34.Cost; result.IsEnable = p34.IsEnable; result.BeDisplayed = p34.BeDisplayed; result.PackingCost = p34.PackingCost; result.Rate = p34.Rate; result.ReviewCount = p34.ReviewCount; result.Viewed = p34.Viewed; result.BrandId = p34.BrandId; result.CategoryId = p34.CategoryId; result.Id = p34.Id; return result; } public static ProductSDto AdaptToSDto(this Product p36) { return p36 == null ? null : new ProductSDto() { PersianName = p36.PersianName, EnglishName = p36.EnglishName, Summery = p36.Summery, ExpertCheck = p36.ExpertCheck, Tags = p36.Tags, Warranty = p36.Warranty, Cost = p36.Cost, IsEnable = p36.IsEnable, BeDisplayed = p36.BeDisplayed, PackingCost = p36.PackingCost, Rate = p36.Rate, ReviewCount = p36.ReviewCount, Viewed = p36.Viewed, CategoryId = p36.CategoryId, BrandId = p36.BrandId, Id = p36.Id }; } public static ProductSDto AdaptTo(this Product p37, ProductSDto p38) { if (p37 == null) { return null; } ProductSDto result = p38 ?? new ProductSDto(); result.PersianName = p37.PersianName; result.EnglishName = p37.EnglishName; result.Summery = p37.Summery; result.ExpertCheck = p37.ExpertCheck; result.Tags = p37.Tags; result.Warranty = p37.Warranty; result.Cost = p37.Cost; result.IsEnable = p37.IsEnable; result.BeDisplayed = p37.BeDisplayed; result.PackingCost = p37.PackingCost; result.Rate = p37.Rate; result.ReviewCount = p37.ReviewCount; result.Viewed = p37.Viewed; result.CategoryId = p37.CategoryId; result.BrandId = p37.BrandId; result.Id = p37.Id; return result; } public static Expression> ProjectToSDto => p39 => new ProductSDto() { PersianName = p39.PersianName, EnglishName = p39.EnglishName, Summery = p39.Summery, ExpertCheck = p39.ExpertCheck, Tags = p39.Tags, Warranty = p39.Warranty, Cost = p39.Cost, IsEnable = p39.IsEnable, BeDisplayed = p39.BeDisplayed, PackingCost = p39.PackingCost, Rate = p39.Rate, ReviewCount = p39.ReviewCount, Viewed = p39.Viewed, CategoryId = p39.CategoryId, BrandId = p39.BrandId, Id = p39.Id }; private static List funcMain1(List p2) { if (p2 == null) { return null; } List result = new List(p2.Count); int i = 0; int len = p2.Count; while (i < len) { SpecificationSDto item = p2[i]; result.Add(item == null ? null : new Specification() { Title = item.Title, Detail = item.Detail, Value = item.Value, IsFeature = item.IsFeature, ProductId = item.ProductId, ParentId = item.ParentId, Id = item.Id }); i++; } return result; } private static List funcMain2(List p3) { if (p3 == null) { return null; } List result = new List(p3.Count); int i = 0; int len = p3.Count; while (i < len) { ReviewSDto item = p3[i]; result.Add(item == null ? null : new Review() { Title = item.Title, Comment = item.Comment, Rate = item.Rate, IsBuyer = item.IsBuyer, ProductId = item.ProductId, UserId = item.UserId, Id = item.Id }); i++; } return result; } private static List funcMain3(List p4) { if (p4 == null) { return null; } List result = new List(p4.Count); int i = 0; int len = p4.Count; while (i < len) { StorageFileSDto item = p4[i]; result.Add(item == null ? null : new ProductStorageFile() { Name = item.Name, FileLocation = item.FileLocation, FileName = item.FileName, IsHeader = item.IsHeader, IsPrimary = item.IsPrimary, FileType = item.FileType, Id = item.Id }); i++; } return result; } private static List funcMain4(List p7, List p8) { if (p7 == null) { return null; } List result = new List(p7.Count); int i = 0; int len = p7.Count; while (i < len) { SpecificationSDto item = p7[i]; result.Add(item == null ? null : new Specification() { Title = item.Title, Detail = item.Detail, Value = item.Value, IsFeature = item.IsFeature, ProductId = item.ProductId, ParentId = item.ParentId, Id = item.Id }); i++; } return result; } private static List funcMain5(List p9, List p10) { if (p9 == null) { return null; } List result = new List(p9.Count); int i = 0; int len = p9.Count; while (i < len) { ReviewSDto item = p9[i]; result.Add(item == null ? null : new Review() { Title = item.Title, Comment = item.Comment, Rate = item.Rate, IsBuyer = item.IsBuyer, ProductId = item.ProductId, UserId = item.UserId, Id = item.Id }); i++; } return result; } private static List funcMain6(List p11, List p12) { if (p11 == null) { return null; } List result = new List(p11.Count); int i = 0; int len = p11.Count; while (i < len) { StorageFileSDto item = p11[i]; result.Add(item == null ? null : new ProductStorageFile() { Name = item.Name, FileLocation = item.FileLocation, FileName = item.FileName, IsHeader = item.IsHeader, IsPrimary = item.IsPrimary, FileType = item.FileType, Id = item.Id }); i++; } return result; } private static List funcMain7(List p18) { if (p18 == null) { return null; } List result = new List(p18.Count); int i = 0; int len = p18.Count; while (i < len) { Specification item = p18[i]; result.Add(item == null ? null : new SpecificationSDto() { Title = item.Title, Detail = item.Detail, Value = item.Value, IsFeature = item.IsFeature, ProductId = item.ProductId, ParentId = item.ParentId, Id = item.Id }); i++; } return result; } private static List funcMain8(List p19) { if (p19 == null) { return null; } List result = new List(p19.Count); int i = 0; int len = p19.Count; while (i < len) { Review item = p19[i]; result.Add(item == null ? null : new ReviewSDto() { Title = item.Title, Comment = item.Comment, Rate = item.Rate, IsBuyer = item.IsBuyer, ProductId = item.ProductId, UserId = item.UserId, Id = item.Id }); i++; } return result; } private static List funcMain9(List p20) { if (p20 == null) { return null; } List result = new List(p20.Count); int i = 0; int len = p20.Count; while (i < len) { ProductStorageFile item = p20[i]; result.Add(item == null ? null : new StorageFileSDto() { Name = item.Name, FileLocation = item.FileLocation, FileName = item.FileName, IsHeader = item.IsHeader, IsPrimary = item.IsPrimary, FileType = item.FileType, Id = item.Id }); i++; } return result; } private static List funcMain10(List p23, List p24) { if (p23 == null) { return null; } List result = new List(p23.Count); int i = 0; int len = p23.Count; while (i < len) { Specification item = p23[i]; result.Add(item == null ? null : new SpecificationSDto() { Title = item.Title, Detail = item.Detail, Value = item.Value, IsFeature = item.IsFeature, ProductId = item.ProductId, ParentId = item.ParentId, Id = item.Id }); i++; } return result; } private static List funcMain11(List p25, List p26) { if (p25 == null) { return null; } List result = new List(p25.Count); int i = 0; int len = p25.Count; while (i < len) { Review item = p25[i]; result.Add(item == null ? null : new ReviewSDto() { Title = item.Title, Comment = item.Comment, Rate = item.Rate, IsBuyer = item.IsBuyer, ProductId = item.ProductId, UserId = item.UserId, Id = item.Id }); i++; } return result; } private static List funcMain12(List p27, List p28) { if (p27 == null) { return null; } List result = new List(p27.Count); int i = 0; int len = p27.Count; while (i < len) { ProductStorageFile item = p27[i]; result.Add(item == null ? null : new StorageFileSDto() { Name = item.Name, FileLocation = item.FileLocation, FileName = item.FileName, IsHeader = item.IsHeader, IsPrimary = item.IsPrimary, FileType = item.FileType, Id = item.Id }); i++; } return result; } } }