public FileResult DownloadOrder(int id)
        {
            var orcamento          = OrcamentoService.getOrcamento(id);
            var cliente            = ClienteService.getCliente(orcamento.IDCliente);
            var usuarioResponsavel = UsuarioService.getUsuario(orcamento.IDUsuario);
            var dictValue          = new Dictionary <string, string>();

            double   cotacaoDolar = Math.Round(orcamento.CotacaoDolar, 2, MidpointRounding.ToEven);
            Contatos contato      = cliente.Contatos.FirstOrDefault();

            dictValue.Add("NumPed", id.ToString());
            dictValue.Add("DataEmissao", DateTime.Now.ToShortDateString());
            dictValue.Add("Dolar", cotacaoDolar.ToString(new CultureInfo("pt-BR")));
            dictValue.Add("NomeEmpresa", cliente.Nome);
            dictValue.Add("Endereco", cliente.Endereco);
            dictValue.Add("Cidade", cliente.Cidade);
            dictValue.Add("UF", cliente.UF);
            dictValue.Add("CEP", cliente.CEP);
            dictValue.Add("Tel", contato != null ? contato.Telefone : "");
            dictValue.Add("Email", contato != null ? contato.Email : "");
            dictValue.Add("CpfCnpj", cliente.CPFCNPJ);
            dictValue.Add("RgIe", cliente.RGIE);
            dictValue.Add("MarcaMatricula", cliente.Matricula);

            DataTable dataTable = new DataTable();

            dataTable.Columns.Add("Quant");
            dataTable.Columns.Add("Descrição");
            dataTable.Columns.Add("NSerie");
            dataTable.Columns.Add("Unitario");
            dataTable.Columns.Add("Total");
            double precoTotal = 0;

            foreach (ItensOrcamento itemOrcamento in orcamento.ItensOrcamento)
            {
                string descricaoServico = "Equipamento";
                if (orcamento.Servico)
                {
                    var servico = ServicoService.getServico(itemOrcamento.IDServico.Value);
                    descricaoServico = servico.Descricao.ToUpper();
                }
                else
                {
                    var equipamento = EquipamentoService.getEquipamento(itemOrcamento.IDEquipamento);
                    descricaoServico = equipamento != null ? equipamento.Descricao : descricaoServico;
                }
                double precoUnitarioReal = Math.Round(itemOrcamento.PrecoUnitario * orcamento.CotacaoDolar, 2, MidpointRounding.ToEven);
                precoTotal += precoUnitarioReal;
                string TotalItem = "R$ " + (itemOrcamento.Quantidade * precoUnitarioReal).ToString(new CultureInfo("pt-BR"));
                dataTable.Rows.Add(itemOrcamento.Quantidade.ToString(), descricaoServico, "", "R$ " + precoUnitarioReal.ToString(new CultureInfo("pt-BR")), TotalItem);
            }

            var b          = new CTMStorageService().GetPedidoPreenchidoAzure("PedidoMarteUpdates.docx", dataTable, dictValue);
            var fileResult = new FileContentResult(b, "application/vnd.openxmlformats-officedocument.wordprocessingml.document");

            fileResult.FileDownloadName = String.Format("Pedido{0}.docx", orcamento.IDPedido.ToString());
            return(fileResult);
        }
示例#2
0
 public OrdemController()
 {
     equipamentoService = new EquipamentoService();
     clienteService     = new ClienteService();
     ordemService       = new OrdemService();
 }
示例#3
0
 public EquipamentoController()
 {
     service        = new EquipamentoService();
     clienteService = new ClienteService();
 }
示例#4
0
 public EquipamentosController(EquipamentoService equipamentoService, AmbientesService ambientesService)
 {
     _equipamentoService = equipamentoService;
     _ambientesService   = ambientesService;
 }