public async Task <ResponseResult <ProductEntityDomain> > InvokeAsync(ProductEntityDomain productEntityDomain) { if (!productEntityDomain.Validate()) { return(ResponseResult <ProductEntityDomain> .Failed(400, "Existem campos inválidos", productEntityDomain.Notifications)); } productEntityDomain.Id = Guid.NewGuid().ToString(); productEntityDomain.Active = 1; productEntityDomain.CreatedAt = DateTime.Now; ProductEntityDomain resultData = await _productRepository.CreateProductAsync(productEntityDomain); return(ResponseResult <ProductEntityDomain> .Succeeded(resultData, 201)); }
public static ProductEntityData ToEntityData(ProductEntityDomain fromEntityDomain) { if (fromEntityDomain != null) { return(new ProductEntityData() { Id = fromEntityDomain.Id, Description = fromEntityDomain.Description, BarCode = fromEntityDomain.BarCode, UnitMeasurementId = fromEntityDomain.UnitMeasurementId, Actve = fromEntityDomain.Actve, CreatedAt = fromEntityDomain.CreatedAt, UpdatedAt = fromEntityDomain.UpdatedAt }); } return(null); }
public async Task <ProductEntityDomain> CreateProductAsync(ProductEntityDomain product) { await _productSqlDataContext.Connection.OpenAsync(); using (var trans = _productSqlDataContext.Connection.BeginTransaction()) { try { await _productSqlDataContext.Connection.InsertAsync(ProductEntityData.ToEntityData(product), trans); trans.Commit(); _productSqlDataContext.Connection.Close(); } catch (System.Exception) { trans.Rollback(); _productSqlDataContext.Connection.Close(); } } return(product); }
public async Task <bool> UpdateProductAsync(ProductEntityDomain product) { var resultUpdate = await _productSqlDataContext.Connection.UpdateAsync <ProductEntityData>(ProductEntityData.ToEntityData(product)); return(resultUpdate); }