public IMovimentoSaidaEntity Bind(DataRow source) { IMovimentoSaidaEntity saida = new MovimentoSaidaEntity(); saida.IdMovimentoSaida = Convert.ToInt32(source["IdMovimentoSaida"]); saida.IdUsuario = Convert.ToInt32(source["IdUsuario"]); saida.IdCliente = Convert.ToInt32(source["IdCliente"]); saida.DataMovimento = Convert.ToDateTime(source["DataMovimento"]); return(saida); }
private void btnSalvarSaida_Click(object sender, EventArgs e) { DialogResult result = MessageBox.Show("Deseja realmente criar um novo registro?", "Confirma a criação ", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { MovimentoSaidaEntity saida = new MovimentoSaidaEntity(); IList <MovimentoSaidaItemEntity> itens = new List <MovimentoSaidaItemEntity>(); saida.IdCliente = 1; saida.DataMovimento = DateTime.Now; saida.IdUsuario = Properties.Settings.Default.IdUsuarioLogado; foreach (DataGridViewRow row in dtgridItensSelecionados.Rows) { if (row.Cells["CodigoItem"].Value != null && row.Cells["CodigoItem"].Value.ToString() != "") { if (row.Cells["Quantidade"].Value == null) { MessageBox.Show("Preencha a quantidade para o item " + row.Cells["CodigoItem"].Value + " - " + row.Cells["Nome"].Value, "Campo Inválido"); return; } IEstoqueEntity estoque = EstoqueDao.ConsultarPorCodigoItem(Convert.ToInt32(row.Cells["CodigoItem"].Value)); if (Convert.ToInt32(row.Cells["Quantidade"].Value) > estoque.QuantidadeDisponivel) { MessageBox.Show("A quantidade disponivel para o item " + row.Cells["CodigoItem"].Value + row.Cells["Nome"].Value + " é de " + estoque.QuantidadeDisponivel); return; } IItemEntity item = ItemDao.ConsultarPorCodigo(Convert.ToInt32(row.Cells["CodigoItem"].Value)); MovimentoSaidaItemEntity saidaItem = new MovimentoSaidaItemEntity(); saidaItem.IdItem = item.IdItem; saidaItem.IdDeposito = Convert.ToInt32(row.Cells["Deposito"].Value); saidaItem.QtdTotal = Convert.ToInt32(row.Cells["Quantidade"].Value); itens.Add(saidaItem); } } saida.IdMovimentoSaida = MovimentoSaidaDao.Inserir(saida); foreach (var saidaItem in itens) { saidaItem.IdMovimentoSaida = saida.IdMovimentoSaida; MovimentoSaidaItemEntity movimento = new MovimentoSaidaItemEntity { IdMovimentoSaida = saidaItem.IdMovimentoSaida, IdItem = saidaItem.IdItem, IdDeposito = saidaItem.IdDeposito, QtdTotal = saidaItem.QtdTotal }; MovimentoSaidaItemDao.Inserir(movimento); IEstoqueEntity estoqueItem = EstoqueDao.ConsultarPorCodigoItem(saidaItem.IdItem); EstoqueEntity estoque = new EstoqueEntity { QuantidadeTotal = estoqueItem.QuantidadeTotal - saidaItem.QtdTotal }; EstoqueDao.Atualizar(estoque, saidaItem.IdItem); } MessageBox.Show("Registro gravado com sucesso!"); this.Close(); } }