public string Salvar(ConfiguracoesModel model)
        {
            string mensagem;

            WorkLifetimeManager.Value.BeginTransaction(IsolationLevel.Serializable);

            try
            {
                var configuracao = ConfiguracaoRepositorio.Obter(WorkLifetimeManager.Value) ?? new Configuracao();

                configuracao.NomeEmpresa = model.NomeEmpresa;
                configuracao.CNPJEmpresa = model.CNPJEmpresa;

                ConfiguracaoRepositorio.Salvar(WorkLifetimeManager.Value, configuracao);
                WorkLifetimeManager.Value.Commit();

                mensagem = "Operação efetuada com sucesso!";
            }
            catch (Exception ex)
            {
                WorkLifetimeManager.Value.Rollback();

                mensagem = "Não foi possível efetuar alteração: " + ex.InnerException;
            }

            return(mensagem);
        }
        public ActionResult Index()
        {
            var configuracao = ConfiguracaoRepositorio.Obter(WorkLifetimeManager.Value) ?? new Configuracao();

            var model = new ConfiguracoesModel
            {
                NomeEmpresa     = configuracao.NomeEmpresa,
                CNPJEmpresa     = configuracao.CNPJEmpresa,
                TiposImportacao = RadioButtonHelper.ParseEnumToRadioButtonList(EnumTipoImportacao.Fonte)
            };

            return(PartialView(model));
        }
Esempio n. 3
0
        //public JsonResult Exportar(int id)
        //{
        //    bool sucesso;
        //    string mensagem;
        //    var nomeArquivo = string.Empty;

        //    try
        //    {
        //        var laudo = LaudoRepositorio.Obter(WorkLifetimeManager.Value, id);

        //        if (laudo == null)
        //            throw new InvalidOperationException(string.Format("Laudo não encontrado (Id: {0})", id));

        //        nomeArquivo = ExportarLaudo(laudo);
        //        sucesso = true;
        //        mensagem = "Arquivo exportado com sucesso!";
        //    }
        //    catch (Exception exception)
        //    {
        //        sucesso = false;
        //        mensagem = "Não foi possível realizar a operação: " + exception.Message;
        //    }

        //    return Json(new { sucesso, mensagem, nomeArquivo });
        //}

        public ActionResult Exportar(int id)
        {
            OpenXmlHelper openXmlHelper = new OpenXmlHelper();
            MemoryStream  memoryStream  = new MemoryStream();

            var laudo = LaudoRepositorio.Obter(WorkLifetimeManager.Value, id);

            var nomeArquivo = string.Format("UPredio_{0}.xlsx", laudo.Referencia.Replace("/", ""));

            HttpContext.Response.Clear();
            HttpContext.Response.AddHeader("content-disposition", string.Format("attachment;filename={0}", nomeArquivo));
            HttpContext.Response.Charset = "";
            HttpContext.Response.Cache.SetCacheability(HttpCacheability.NoCache);
            HttpContext.Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";

            WorkLifetimeManager.Value.BeginTransaction(IsolationLevel.Serializable);

            try
            {
                var configuracao    = ConfiguracaoRepositorio.Obter(WorkLifetimeManager.Value);
                var caminhoTemplate = Path.Combine(Server.MapPath("~/Content/uploads/"), "Source.xlsx");
                //var caminhoArquivo = Path.Combine(Server.MapPath("~/Content/uploads/"), nomeArquivo);

                using (FileStream source = System.IO.File.Open(caminhoTemplate, FileMode.Open))
                {
                    source.CopyTo(memoryStream);
                    openXmlHelper.PreencherPlanilha(memoryStream, laudo, configuracao);
                }

                laudo        = LaudoRepositorio.Obter(WorkLifetimeManager.Value, laudo.LaudoID);
                laudo.Status = (int)EnumStatusLaudo.Concluido;

                LaudoRepositorio.Salvar(WorkLifetimeManager.Value, laudo);

                WorkLifetimeManager.Value.Commit();
            }
            catch
            {
                WorkLifetimeManager.Value.Rollback();
            }

            memoryStream.Flush();
            memoryStream.WriteTo(HttpContext.Response.OutputStream);
            HttpContext.Response.End();

            return(File(memoryStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", nomeArquivo));
        }