Skip to content
This repository has been archived by the owner on Mar 30, 2023. It is now read-only.

Commit

Permalink
finalizado CRUD nos produtos
Browse files Browse the repository at this point in the history
  • Loading branch information
leonardocintra committed Aug 13, 2016
1 parent c5d20ae commit d956dd9
Show file tree
Hide file tree
Showing 14 changed files with 190 additions and 35 deletions.
3 changes: 1 addition & 2 deletions GeradorNF/GeradorNF.DAO/AbstractCrud.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,10 @@ public static async Task<List<E>> GetAll<E>(string entityURL) where E: class
return Newtonsoft.Json.JsonConvert.DeserializeObject<List<E>>(json).ToList();
}
else
return null;
throw new Exception(response.RequestMessage.ToString());
}
}


public static async Task<HttpResponseMessage> Add<E>(E entity, string entityURL) where E : class
{
using (var client = new HttpClient())
Expand Down
54 changes: 54 additions & 0 deletions GeradorNF/GeradorNF.DAO/ClienteDAO.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
using GeradorNF.Model;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;

namespace GeradorNF.DAO
{
public class ClienteDAO
{
/// <summary>
/// GetCliente - Buscar/Listar TODOS os Emitentes
/// </summary>
/// <returns></returns>
public static async Task<Cliente> GetClienteByIdDAO(string nomeUsuario)
{
try
{
using (var client = new HttpClient())
{
client.BaseAddress = new Uri(UtilDAO.UrlApi());
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

HttpResponseMessage response = await client.GetAsync("cliente/" + nomeUsuario);

if (response.IsSuccessStatusCode)
{
string json = await response.Content.ReadAsStringAsync();
return Newtonsoft.Json.JsonConvert.DeserializeObject<Cliente>(json);
}
else
throw new Exception(response.RequestMessage.ToString());
}
}
catch (JsonException ex)
{
throw new Exception("JsonException - Não foi possivel buscar o cliente. Erro: " + ex.Message);
}
catch (HttpRequestException ex)
{
throw new Exception("HttpRequestException - Não foi possivel buscar o cliente. Erro: " + ex.Message);
}
catch (Exception ex)
{
throw new Exception("Exception - Não foi possivel buscar os Emitentes. Erro: " + ex.Message);
}
}
}
}
1 change: 1 addition & 0 deletions GeradorNF/GeradorNF.DAO/GeradorNF.DAO.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
</ItemGroup>
<ItemGroup>
<Compile Include="AbstractCrud.cs" />
<Compile Include="ClienteDAO.cs" />
<Compile Include="EmitenteDAO.cs" />
<Compile Include="EnderecoDAO.cs" />
<Compile Include="ProdutoDAO.cs" />
Expand Down
4 changes: 2 additions & 2 deletions GeradorNF/GeradorNF.Model/Destinatario.cs
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ public class Destinatario
[JsonProperty("data_cadastro")]
public DateTime DataCadastro { get; set; }

[JsonProperty("cliente_id")]
public Cliente Cliente { get; set; }
[JsonProperty("cliente")]
public string Cliente { get; set; }
}
}
4 changes: 2 additions & 2 deletions GeradorNF/GeradorNF.Model/Emitente.cs
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ public class Emitente
[JsonProperty("data_cadastro")]
public DateTime DataCadastro { get; set; }

[JsonProperty("cliente_id")]
public Cliente Cliente { get; set; }
[JsonProperty("cliente")]
public string Cliente { get; set; }
}
}
4 changes: 2 additions & 2 deletions GeradorNF/GeradorNF.Model/Produto.cs
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ public class Produto
[JsonProperty("data_cadastro")]
public DateTime DataCadastro { get; set; }

[JsonProperty("cliente_id")]
public Cliente Cliente { get; set; }
[JsonProperty("cliente")]
public string Cliente { get; set; }
}
}
4 changes: 2 additions & 2 deletions GeradorNF/GeradorNF.Model/Transportador.cs
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ public class Transportador
[JsonProperty("data_cadastro")]
public DateTime DataCadastro { get; set; }

[JsonProperty("cliente_id")]
public Cliente Cliente { get; set; }
[JsonProperty("cliente")]
public string Cliente { get; set; }
}
}
1 change: 1 addition & 0 deletions GeradorNF/GeradorNF.UI/GeradorNF.UI.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@
<Compile Include="frmTransporador.Designer.cs">
<DependentUpon>frmTransporador.cs</DependentUpon>
</Compile>
<Compile Include="MyGlobals.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Utilidade.cs" />
Expand Down
14 changes: 14 additions & 0 deletions GeradorNF/GeradorNF.UI/MyGlobals.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
using GeradorNF.Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace GeradorNF.UI
{
public static class MyGlobals
{
public static string Cliente = "https://geradornf-prod.herokuapp.com/cliente/1/"; //hardcode - Tirar
}
}
7 changes: 4 additions & 3 deletions GeradorNF/GeradorNF.UI/frmEmitente.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions GeradorNF/GeradorNF.UI/frmEmitente.cs
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,7 @@ private async void SetEmitente(Enuns.TipoCrud tipoCrud)
emitente.Logradouro = txtEndereco.Text;
emitente.NumeroCasa = txtNumero.Text;
emitente.UF = txtEstado.Text;
emitente.Cliente = MyGlobals.Cliente;
#endregion

HttpResponseMessage response = new HttpResponseMessage();
Expand Down Expand Up @@ -329,5 +330,10 @@ private void btnEditar_Click(object sender, EventArgs e)
lblAcao.Text = "editar";
txtNomeRazao.Focus();
}

private void btnFiltro_Click(object sender, EventArgs e)
{

}
}
}
9 changes: 6 additions & 3 deletions GeradorNF/GeradorNF.UI/frmProduto.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

113 changes: 94 additions & 19 deletions GeradorNF/GeradorNF.UI/frmProduto.cs
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ private void VerificaSePrimeiroRegistro()

private bool VerificarCamposObrigatorios()
{
bool _return;
bool _return = true;

if (string.IsNullOrEmpty(txtValorUnitario.Text))
{
Expand All @@ -77,14 +77,29 @@ private bool VerificarCamposObrigatorios()
_return = false;
MessageBox.Show("Decrição do produto é obrigatório ou é menor que 3 caracteres!");
}
else if (Convert.ToDecimal(txtValorUnitario.Text) <= 0)
else if (txtValorUnitario.Text != string.Empty)
{
_return = false;
MessageBox.Show("Valor unitário não pode ser zero ou negativo.");
}
else
{
_return = true;
try
{
decimal valorUnitario = Convert.ToDecimal(txtValorUnitario.Text);

if (valorUnitario <= 0)
{
MessageBox.Show("Valor unitário não pode ser zero ou negativo.");
_return = false;
}
}
catch (FormatException ex)
{
MessageBox.Show("Verifique se digitou numeros válidos no campo Valor Unitario!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
txtValorUnitario.Focus();
_return = false;
}
catch(Exception ex)
{
_return = false;
MessageBox.Show("Erro: " + ex.Message);
}
}

return _return;
Expand All @@ -106,6 +121,7 @@ private async void SetProduto(Enuns.TipoCrud tipoCrud)
produto.NCM = Convert.ToInt32(txtNCM.Text);
produto.Unidade = txtUnidade.Text;
produto.ValorUnitario = Convert.ToDecimal(txtValorUnitario.Text);
produto.Cliente = MyGlobals.Cliente;

#endregion

Expand All @@ -125,17 +141,36 @@ private async void SetProduto(Enuns.TipoCrud tipoCrud)
}

}
//else if (tipoCrud.Equals(Enuns.TipoCrud.update))
//{
// produto.ProdutoId = int.Parse(txtIdProduto.Text);
// ProdutoBLL.AtualizarProduto(produto);

//}
//else if (tipoCrud.Equals(Enuns.TipoCrud.delete))
//{
// produto.ProdutoId = int.Parse(txtIdProduto.Text);
// ProdutoBLL.ExcluirProduto(produto);
//}
else if (tipoCrud.Equals(Enuns.TipoCrud.update))
{

produto.Id = int.Parse(txtIdProduto.Text);
response = await ProdutoBLL.AtualizarProdutoBLL(produto);

if (response.IsSuccessStatusCode)
{
MessageBox.Show("Produto " + mensagemCrud + " com sucesso!", "Produto", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else
{
MessageBox.Show("Ocorreu um erro ao " + mensagemException + " o produto! \nErro: " + response.RequestMessage, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
}

}
else if (tipoCrud.Equals(Enuns.TipoCrud.delete))
{
produto.Id = int.Parse(txtIdProduto.Text);
response = await ProdutoBLL.DeletarProdutoBLL(produto.Id);

if (response.IsSuccessStatusCode)
{
MessageBox.Show("Produto " + mensagemCrud + " com sucesso!", "Produto", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else
{
MessageBox.Show("Ocorreu um erro ao " + mensagemException + " o produto! \nErro: " + response.RequestMessage, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
else
{
MessageBox.Show("Erro ao fazer operação no Produto");
Expand Down Expand Up @@ -174,5 +209,45 @@ private void frmProduto_Load(object sender, EventArgs e)
{
PreencherGrid();
}

private void btnEditar_Click(object sender, EventArgs e)
{
btnSalvar.Enabled = true;
DesbloquearCampos(true);
lblAcao.Text = "Editar";
txtDescricao.Focus();
}

private void dataGridProduto_CellClick(object sender, DataGridViewCellEventArgs e)
{

txtIdProduto.Text = dataGridProduto[0, dataGridProduto.CurrentRow.Index].Value.ToString();
txtCFOP.Text = dataGridProduto[1, dataGridProduto.CurrentRow.Index].Value.ToString();
txtEAN.Text = dataGridProduto[2, dataGridProduto.CurrentRow.Index].Value.ToString();
txtNCM.Text = dataGridProduto[3, dataGridProduto.CurrentRow.Index].Value.ToString();
txtDescricao.Text = dataGridProduto[4, dataGridProduto.CurrentRow.Index].Value.ToString();
txtUnidade.Text = dataGridProduto[5, dataGridProduto.CurrentRow.Index].Value.ToString();
txtValorUnitario.Text = dataGridProduto[6, dataGridProduto.CurrentRow.Index].Value.ToString();

btnEditar.Enabled = true;
btnExcluir.Enabled = true;

DesbloquearCampos(false);
}

private void btnExcluir_Click(object sender, EventArgs e)
{
try
{
if (MessageBox.Show("Deseja excluir esse Produto?", "Exluir", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
{
SetProduto(Enuns.TipoCrud.delete);
}
}
catch (Exception ex)
{
MessageBox.Show("Erro ao excluir: Erro " + ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
}
1 change: 1 addition & 0 deletions GeradorNF/GeradorNF.UI/frmTransporador.cs
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ private async void SetTranportadora(Enuns.TipoCrud tipoCrud)
transportador.NomeRazao = txtNomeRazao.Text;
transportador.UF = txtEstado.Text;
transportador.CEP = txtCEP.Text;
transportador.Cliente = MyGlobals.Cliente;

#endregion

Expand Down

0 comments on commit d956dd9

Please sign in to comment.