public virtual async Task <int> CreateTemporaryProductandId(TemporaryProductInput input) { var TempProduct = input.MapTo <TemporaryProduct>(); var Id = 0; var dup = _productRepository.GetAll().Where(p => p.ProductCode == input.ProductCode || p.ProductCode == input.SuspectCode || p.SuspectCode == input.ProductCode || p.SuspectCode == input.SuspectCode).FirstOrDefault(); if (dup == null) { var val = _TempProductRepository.GetAll().Where(p => p.ProductCode == input.ProductCode || p.SuspectCode == input.SuspectCode).FirstOrDefault(); if (val == null) { Id = _TempProductRepository.InsertAndGetId(TempProduct); } else { throw new UserFriendlyException("Ooops!", "Duplicate Data Occured in Non Standard Product..."); } } else { throw new UserFriendlyException("Ooops!", "This Product already exixts in Product Master..."); } return(Id); }
public virtual async Task CreateTemporaryProduct(TemporaryProductInput input) { input.Width = input.Width ?? 0; input.Depth = input.Depth ?? 0; input.Height = input.Height ?? 0; var TempProduct = input.MapTo <TemporaryProduct>(); var dup = _productRepository.GetAll().Where(p => p.ProductCode == input.ProductCode || p.ProductCode == input.SuspectCode || p.SuspectCode == input.ProductCode || p.SuspectCode == input.SuspectCode); if (dup.Count() == 0) { var val = _TempProductRepository.GetAll().Where(p => p.ProductCode == input.ProductCode || p.SuspectCode == input.SuspectCode || p.Gpcode == input.Gpcode); if (val.Count() == 0) { await _TempProductRepository.InsertAsync(TempProduct); } else { throw new UserFriendlyException("Ooops!", "Duplicate Data Occured in Non Standard Product..."); } } else { throw new UserFriendlyException("Ooops!", "This Product already exixts in Product Master..."); } }
public async Task CreateOrUpdateTemporaryProduct(TemporaryProductInput input) { if (input.Id > 0) { await UpdateTemporaryProduct(input); } else { await CreateTemporaryProduct(input); } }
public virtual async Task UpdateTemporaryProduct(TemporaryProductInput input) { input.Width = input.Width ?? 0; input.Depth = input.Depth ?? 0; input.Height = input.Height ?? 0; var TempProduct = await _TempProductRepository.GetAsync(input.Id); var val = _TempProductRepository.GetAll().Where(p => (p.ProductCode == input.ProductCode || p.SuspectCode == input.SuspectCode) && p.Id != input.Id); if (val.Count() == 0) { ObjectMapper.Map(input, TempProduct); await _TempProductRepository.UpdateAsync(TempProduct); } else { throw new UserFriendlyException("Ooops!", "Duplicate Data Occured in Non Standard Product..."); } }