コード例 #1
0
        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));
        }
コード例 #2
0
 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);
 }
コード例 #3
0
        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);
        }
コード例 #4
0
        public async Task <bool> UpdateProductAsync(ProductEntityDomain product)
        {
            var resultUpdate = await _productSqlDataContext.Connection.UpdateAsync <ProductEntityData>(ProductEntityData.ToEntityData(product));

            return(resultUpdate);
        }