Example #1
0
        internal Models.Estoque Map(DataRow row)
        {
            Models.Estoque estoque = new Models.Estoque();
            estoque.Id      = Convert.ToInt32(row["id"]);
            estoque.Id_dist = Convert.ToInt32(row["id_dist"]);
            estoque.Id_prod = Convert.ToInt32(row["id_prod"]);
            estoque.Lote    = row["lote"].ToString();
            estoque.Saldo   = Convert.ToInt32(row["saldo"]);

            return(estoque);
        }
Example #2
0
        public async Task InserirAsync(EstoqueSignature signature)
        {
            var estoque = new Models.Estoque(signature.ProdutoId, signature.Quantidade);

            var existe = await _estoqueRepository.ObterPorIdAsync(estoque.ProdutoId);

            if (existe == null)
            {
                throw new ArgumentNullException("Já existe este produto em estoque. Você deve atualiar o estoque.");
            }

            await _estoqueRepository.InserirAsync(estoque);
        }
Example #3
0
        public Models.Estoque ObterEstoque(int id_estoque)
        {
            string select = @"SELECT * FROM estoque where id = " + id_estoque;

            DataTable dt = _bd.ExecutarSelect(select);

            Models.Estoque estoque = new Models.Estoque();
            if (dt.Rows.Count > 0)
            {
                DataRow row = dt.Rows[0];
                estoque = Map(row);
            }

            return(estoque);
        }
Example #4
0
        public Models.Estoque Obter(int id)
        {
            Models.Estoque estoque = null;

            string select = @"select * 
                              from estoque 
                              where id = " + id;

            DataTable dt = _bd.ExecutarSelect(select);

            if (dt.Rows.Count == 1)
            {
                //ORM - Relacional -> Objeto
                estoque = Map(dt.Rows[0]);
            }

            return(estoque);
        }
        public IActionResult Excluir(int id)
        {
            bool operacao;

            CamadaNegocio.EstoqueCamadaNegocio ecn = new CamadaNegocio.EstoqueCamadaNegocio();
            Models.Estoque estoque = ecn.Obter(id);
            operacao = ecn.Excluir(id);

            int qtd = ecn.ObterTodosEstoque(estoque.Id_prod);

            if (operacao && qtd == 0)
            {
                CamadaNegocio.ProdDistCamadaNegocio pdcn = new CamadaNegocio.ProdDistCamadaNegocio();
                pdcn.Excluir(estoque.Id_prod);
            }

            return(Json(new
            {
                operacao
            }));
        }
Example #6
0
        //adiciona no estoque do distribuidor
        public bool AtualizaEstoque(Models.Estoque estoque)
        {
            var    parametros = _bd.GerarParametros();
            string sql, sql2;
            int    saldoAtual = 0;
            int    id_prod    = 0;

            sql2 = @"select pd.id, saldo from produto_industria as pi inner join produto_distribuidor as pd on pi.id = " + estoque.Id_prod + " and pd.cod_ref = pi.cod_ref inner join estoque as e on e.id_prod = pd.id and e.lote = '" + estoque.Lote + "'";

            DataTable dt = _bd.ExecutarSelect(sql2);

            if (dt.Rows.Count > 0)
            {
                sql = @"update estoque set saldo = @saldo where id_prod = @id_prod and lote = @lote";
                DataRow dr = dt.Rows[0];
                saldoAtual = Convert.ToInt32(dr["saldo"]);
                id_prod    = Convert.ToInt32(dr["id"]);
            }
            else
            {
                sql = @"insert into estoque(id_dist,id_prod,lote,saldo)" +
                      "values(@id_dist,@id_prod,@lote,@saldo)";

                parametros.Add("@id_dist", estoque.Id_dist);
                id_prod = estoque.Id_prod;
            }


            parametros.Add("@id_prod", id_prod);
            parametros.Add("@lote", estoque.Lote);
            parametros.Add("@saldo", saldoAtual + estoque.Saldo);

            int linhasAfetadas = _bd.ExecutarNonQuery(sql, parametros);

            return(linhasAfetadas > 0);
        }
Example #7
0
 public async Task InserirAsync(Models.Estoque estoque)
 {
     await _contexto.Estoque.InsertOneAsync(estoque);
 }