Exemple #1
0
        public IActionResult AtualizaReleaseNatura(NaturaRelease naturaRelease, [FromServices] NaturaDAO naturaDAO)
        {
            _logger.LogInformation("Natura- Atualiza o status de execução da Release : {0} / User: {1}", naturaRelease.cod_release, User.Identity.Name);
            naturaDAO.AtualizaRelease_Natura(naturaRelease);

            return(RedirectToAction("ReleasesNatura", "Natura"));
        }
Exemple #2
0
        public IActionResult TestesNatura(string codRelease, [FromServices] NaturaDAO naturaDAO)
        {
            _logger.LogInformation("Natura- Lista de testes da Release cod: {0}/ User: {1}", codRelease, User.Identity.Name);
            NaturaRelease      naturaRelease = naturaDAO.GetRelease(codRelease);
            List <NaturaTeste> naturaTestes  = naturaDAO.ListaTestes_Natura(codRelease);

            ViewBag.Ambiente   = naturaRelease.sistema;
            ViewBag.CodRelease = (from x in naturaTestes select x.cod_release).First();

            return(View(naturaTestes));
        }
        internal void AddRelease_Natura(NaturaRelease naturaRelease)
        {
            try
            {
                _logger.LogInformation("Natura - Cadastrando release: {0} /n Ambiente: {1}, Status: {2}, Data Inicial: {3}, Data Final: {4}", naturaRelease.cod_release, naturaRelease.sistema, naturaRelease.status, naturaRelease.data_inicial, naturaRelease.data_final);

                string ConnectionString = _configuracoes.GetConnectionString("Sanity");

                using (var mysqlCon = new MySqlConnection(ConnectionString))
                {
                    mysqlCon.Execute("INSERT INTO `Sanity`.`release_natura` (`cod_release`,`sistema`,`status`,`data_inicial`,`data_final`) VALUES (@cod_release,@sistema,@status,@data_inicial,@data_final);", new { naturaRelease.cod_release, naturaRelease.sistema, status = 0, naturaRelease.data_inicial, naturaRelease.data_final });
                }
            }
            catch (Exception ex)
            {
                _logger.LogError("Erro: {0}", ex);
            }
        }
        internal void AtualizaRelease_Natura(NaturaRelease naturaRelease)
        {
            try
            {
                string ConnectionString = _configuracoes.GetConnectionString("Sanity");

                string query = @"UPDATE Sanity.release_natura SET status = @status, data_inicial = @data_inicial, data_final = @data_final, anotacoes = @anotacoes WHERE id_release = @id_release;";

                using (var mysqlCon = new MySqlConnection(ConnectionString))
                {
                    mysqlCon.Execute(query, new { naturaRelease.status, naturaRelease.data_inicial, naturaRelease.data_final, naturaRelease.anotacoes, naturaRelease.id_release });
                }
            }
            catch (Exception ex)
            {
                _logger.LogError("Erro: {0}", ex);
            }
        }
        internal NaturaRelease GetRelease(string codRelease)
        {
            NaturaRelease release = new NaturaRelease();

            try
            {
                string ConnectionString = _configuracoes.GetConnectionString("Sanity");

                using (MySqlConnection mysqlCon = new MySqlConnection(ConnectionString))
                {
                    release = mysqlCon.Query <NaturaRelease>("SELECT * FROM Sanity.release_natura WHERE cod_release = @codRelease;", new { codRelease }).SingleOrDefault();
                }
            }
            catch (Exception ex)
            {
                _logger.LogError("Erro: {0}", ex);
            }

            return(release);
        }
Exemple #6
0
        public IActionResult CadReleaseNatura(NaturaRelease naturaRelease, IFormFile file, [FromServices] NaturaDAO naturaDAO)
        {
            _logger.LogInformation("Natura- [HttPost] Cadastra nova release / User: {0}", User.Identity.Name);

            if (naturaRelease.sistema == "null")
            {
                ModelState.AddModelError("sistema", "Campo 'Ambiente' é obrigatorio");
                return(View());
            }

            if (!ModelState.IsValid)
            {
                return(View());
            }
            else
            {
                int maxId = naturaDAO.GetMaxId_Release();

                string        webRootPath = _hostingEnvironment.WebRootPath;
                StringBuilder sb          = new StringBuilder();

                if (file is null)
                {
                    ModelState.AddModelError("", "Planilha não encontrada!");
                    return(View());
                }

                naturaRelease.cod_release = "Release_" + maxId.ToString();

                List <NaturaTeste> listTestes = new List <NaturaTeste>();

                if (file.Length > 0)
                {
                    string sFileExtension = Path.GetExtension(file.FileName).ToLower();
                    ISheet sheet;
                    string fullPath = Path.Combine(webRootPath, file.FileName);
                    using (var stream = new FileStream(fullPath, FileMode.Create))
                    {
                        file.CopyTo(stream);
                        stream.Position = 0;
                        if (sFileExtension == ".xls")
                        {
                            HSSFWorkbook hssfwb = new HSSFWorkbook(stream); //This will read the Excel 97-2000 formats
                            sheet = hssfwb.GetSheetAt(0);                   //get first sheet from workbook
                        }
                        else
                        {
                            XSSFWorkbook hssfwb = new XSSFWorkbook(stream); //This will read 2007 Excel format
                            sheet = hssfwb.GetSheetAt(0);                   //get first sheet from workbook
                        }

                        IRow headerRow = sheet.GetRow(0); //Get Header Row
                        int  cellCount = headerRow.LastCellNum;

                        for (int i = (sheet.FirstRowNum + 1); i <= naturaRelease.qtdTestes; i++) //Read Excel File
                        {
                            IRow row = sheet.GetRow(i);

                            var      dataExec = row.GetCell(12)?.ToString();
                            DateTime?data     = null;
                            if (dataExec == "" || dataExec is null)
                            {
                            }
                            else
                            {
                                data = Convert.ToDateTime(dataExec);
                            }

                            var prioridadeExcel = row.GetCell(13)?.ToString();
                            int prioridadeTeste = 0;
                            if (prioridadeExcel == "" || prioridadeExcel is null)
                            {
                            }
                            else
                            {
                                prioridadeTeste = Convert.ToInt16(row.GetCell(13)?.ToString());
                            }

                            NaturaTeste naturaTeste = new NaturaTeste
                            {
                                cod_release     = naturaRelease.cod_release,
                                numero_teste    = Convert.ToInt16(row.GetCell(0)?.ToString()),
                                sistema         = row.GetCell(1)?.ToString(),
                                funcionalidade  = row.GetCell(2)?.ToString(),
                                cenario         = row.GetCell(3)?.ToString(),
                                pre_condicao    = row.GetCell(4)?.ToString(),
                                passos          = row.GetCell(5)?.ToString(),
                                result_esperado = row.GetCell(6)?.ToString(),
                                pos_condicao    = row.GetCell(7)?.ToString(),
                                executor        = row.GetCell(8)?.ToString(),
                                massa           = row.GetCell(9)?.ToString(),
                                observacao      = row.GetCell(10)?.ToString(),
                                url_doc         = row.GetCell(11)?.ToString(),
                                data_execucao   = data,
                                prioridade      = prioridadeTeste,
                                cn_login        = row.GetCell(14)?.ToString(),
                                cn_senha        = row.GetCell(15)?.ToString(),
                                gr_login        = row.GetCell(16)?.ToString(),
                                gr_senha        = row.GetCell(17)?.ToString(),
                                lider_login     = row.GetCell(18)?.ToString(),
                                lider_senha     = row.GetCell(19)?.ToString(),
                                browser         = row.GetCell(20)?.ToString(),
                                execucao_status = 0,
                                chamado_status  = 0
                            };
                            listTestes.Add(naturaTeste);
                        }
                    }

                    //Registra na tabela de releases da natura.
                    naturaDAO.AddRelease_Natura(naturaRelease);

                    //Add Testes
                    foreach (NaturaTeste teste in listTestes)
                    {
                        naturaDAO.AddTest_Natura(teste);
                    }


                    //Deleta arquivo criado
                    FileInfo fileInfo = new FileInfo(Path.Combine(webRootPath, file.FileName));
                    fileInfo.Delete();
                }

                return(RedirectToAction("ReleasesNatura", "Natura"));
            }
        }