public ViewModel.ProductModel GetProductById(int id) { DomainDeriven.AkoSatrapDb context = new DomainDeriven.AkoSatrapDb(); var product = context.Products.FirstOrDefault(r => r.Id == id); var productViewModel = new ViewModel.ProductModel { Id = product.Id, Brand = product.Brand, CategoryId = product.ProductCategoryId.Value, Description = product.Description, ImageFolderName = product.ImageFolderName }; return(productViewModel); }
public ViewModel.ReturnResult <bool> AddProduct(ViewModel.ProductModel product) { ViewModel.ReturnResult <bool> returnResult = new ViewModel.ReturnResult <bool>(); try { DomainDeriven.AkoSatrapDb context = new DomainDeriven.AkoSatrapDb(); var enDbProduct = new DomainDeriven.Product(); var dbProduct = new DomainDeriven.Product(); enDbProduct.Brand = product.EnBrand; enDbProduct.CreateDate = DateTime.Now; enDbProduct.ImageFolderName = Guid.NewGuid().ToString(); enDbProduct.ImportantTip1 = product.EnImportantTip1; enDbProduct.ImportantTip2 = product.EnImportantTip2; enDbProduct.ImportantTip3 = product.EnImportantTip3; enDbProduct.IsEnglish = true; enDbProduct.ProductCategoryId = product.Category.EnId; enDbProduct.Title = product.EnTitle; enDbProduct.Description = product.EnDescription; dbProduct.Brand = product.Brand; dbProduct.CreateDate = DateTime.Now; dbProduct.ImageFolderName = enDbProduct.ImageFolderName; dbProduct.ImportantTip1 = product.ImportantTip1; dbProduct.ImportantTip2 = product.ImportantTip2; dbProduct.ImportantTip3 = product.ImportantTip3; dbProduct.IsEnglish = false; dbProduct.ProductCategoryId = product.Category.Id; dbProduct.Title = product.Title; dbProduct.Description = product.Description; dbProduct.Product2 = enDbProduct; context.Products.Add(dbProduct); context.SaveChanges(); } catch (Exception ex) { returnResult.SetError(ex.Message); } return(returnResult); }
public ViewModel.ReturnResult <bool> UpdateProduct(ViewModel.ProductModel product) { ViewModel.ReturnResult <bool> returnResult = new ViewModel.ReturnResult <bool>(); try { DomainDeriven.AkoSatrapDb context = new DomainDeriven.AkoSatrapDb(); var dbProductCategory = context.Products.Include("Product2").FirstOrDefault(r => r.IsEnglish == false && r.Id == product.Id); if (dbProductCategory != null) { dbProductCategory.Title = product.Title; dbProductCategory.Brand = product.Brand; dbProductCategory.ImportantTip1 = product.ImportantTip1; dbProductCategory.ImportantTip2 = product.ImportantTip2; dbProductCategory.ImportantTip3 = product.ImportantTip3; dbProductCategory.Description = product.Description; dbProductCategory.Product2.Title = product.EnTitle; dbProductCategory.Product2.Brand = product.EnBrand; dbProductCategory.Product2.ImportantTip1 = product.EnImportantTip1; dbProductCategory.Product2.ImportantTip2 = product.EnImportantTip2; dbProductCategory.Product2.ImportantTip3 = product.EnImportantTip3; dbProductCategory.Product2.Description = product.EnDescription; context.SaveChanges(); } else { returnResult.SetError("دسته بندی مورد نظر پیدا نشد"); } context.SaveChanges(); } catch (Exception ex) { returnResult.SetError(ex.Message); } return(returnResult); }
public ViewModel.ProductModel GetProduct(int id) { DomainDeriven.AkoSatrapDb context = new DomainDeriven.AkoSatrapDb(); var productView = new ViewModel.ProductModel(); var product = context.Products.Include("ProductCategory").Include("ProductFeatures").FirstOrDefault(r => r.Id == id); if (product != null) { productView = new ViewModel.ProductModel { Category = new ViewModel.ProductCategotyModel { Title = product.ProductCategory.Title, Id = product.ProductCategory.Id, EnId = product.Product2.ProductCategoryId.Value, EnTitle = product.Product2.ProductCategory.Title }, Brand = product.Brand, Id = product.Id, Title = product.Title, ImportantTip1 = product.ImportantTip1, ImportantTip2 = product.ImportantTip2, ImportantTip3 = product.ImportantTip3, ImageFolderName = product.ImageFolderName, CategoryId = product.ProductCategoryId.Value, Description = product.Description }; productView.ProductFeature = new List <ViewModel.ProductFeatureModel>(); product.ProductFeatures.ToList().ForEach(feature => { productView.ProductFeature.Add(new ViewModel.ProductFeatureModel { Title = feature.Title, Id = feature.Id, Description = feature.Description }); }); } return(productView); }