/// <summary> /// Obtém a imagem engenharia do projeto, com as quotas posicionadas e calculadas de acordo com o item projeto. /// </summary> public Imagem[] ObterImagemEngenharia(int idItemProjeto, float percentualImagem) { var itemProjeto = ItemProjetoDAO.Instance.GetElementByPrimaryKey(idItemProjeto); var retorno = new List <Imagem>(); var imgUrl = UtilsProjeto.GetFiguraAssociadaUrl((uint)idItemProjeto, itemProjeto.IdProjetoModelo); byte[] imagem = Utils.GetImageFromRequest(HttpContext.Current, imgUrl); if (imagem.Length == 0) { return(null); } imagem = ManipulacaoImagem.Redimensionar(imagem, 0, 0, percentualImagem); if (retorno.Count > 0 && retorno[retorno.Count - 1].Imagem2 == null) { retorno[retorno.Count - 1].Imagem2 = imagem; } else { Imagem nova = new Imagem(); nova.Chave = (uint)idItemProjeto; nova.Imagem1 = imagem; retorno.Add(nova); } return(retorno.ToArray()); }
/// <summary> /// Salva a foto do pedido. /// </summary> /// <param name="fotoPedido"></param> public Glass.Api.Pedido.IFotoPedidoDescritor SalvarFotoPedido(Glass.Api.Pedido.IFotoPedido fotoPedido) { // Cadastra a foto var foto = Glass.Data.Model.IFoto.Nova(Data.Model.IFoto.TipoFoto.Pedido); foto.Path = ServiceLocator.Current.GetInstance <IConfiguracao>().CaminhoFotoPedido; foto.IdParent = (uint)fotoPedido.IdPedido; foto.Descricao = fotoPedido.Descricao; foto.Extensao = string.Format(".{0}", fotoPedido.Extensao); // Insere entrada de foto e recupera o identificador. foto.IdFoto = foto.Insert(); if (!System.IO.Directory.Exists(foto.Path)) { System.IO.Directory.CreateDirectory(foto.Path); } var salva = ManipulacaoImagem.SalvarImagem(foto.FilePath, fotoPedido.Imagem); if (!salva) { return(null); } return(new Glass.Api.Implementacao.Pedido.FotoPedidoDescritor(foto)); }
public override int Update(GDASession session, ProjetoModelo objUpdate) { if (objUpdate.Codigo.Contains('§') || objUpdate.Codigo.Contains('+')) { throw new Exception("O código do Projeto Modelo não pode conter os caracteres '§' e '+'."); } // Verifica se já existe um modelo com o código informado. if (objPersistence.ExecuteScalar(session, string.Format("SELECT COUNT(*) FROM projeto_modelo WHERE Codigo=?codigo AND IdProjetoModelo<>{0}", objUpdate.IdProjetoModelo), new GDAParameter("?codigo", objUpdate.Codigo)).ToString().StrParaInt() > 0) { throw new Exception("Já existe um modelo cadastrado com o código informado."); } // Verifica se alguma medida foi retirada sendo que a mesma estava sendo usada no projeto if (MedidaProjetoModeloDAO.Instance.MedidasRetiradasEmUso(session, objUpdate.IdProjetoModelo, objUpdate.MedidasProjMod)) { throw new Exception("Algumas das medidas retiradas deste modelo de projeto já estão sendo usadas em expressões de cálculo."); } var projModOld = GetElementByPrimaryKey(session, objUpdate.IdProjetoModelo); // Se o código do modelo antigo for diferente do atual, renomeia a figura do modelo e figura engenharia if (objUpdate.Codigo != projModOld.Codigo) { ManipulacaoImagem.RenomearImagem(Utils.GetModelosProjetoPath + projModOld.NomeFigura, Utils.GetModelosProjetoPath + objUpdate.Codigo + ".jpg"); ManipulacaoImagem.RenomearImagem(Utils.GetModelosProjetoPath + projModOld.NomeFiguraAssociada, Utils.GetModelosProjetoPath + objUpdate.Codigo + "§E.jpg"); objUpdate.NomeFigura = objUpdate.Codigo + ".jpg"; objUpdate.NomeFiguraAssociada = objUpdate.Codigo + "§E.jpg"; /* Chamado 53479. */ foreach (var peca in PecaProjetoModeloDAO.Instance.GetByModelo(session, objUpdate.IdProjetoModelo)) { if (peca.Tipo == 1) { ManipulacaoImagem.RenomearImagem(Utils.GetModelosProjetoPath + projModOld.NomeFigura.Replace(".jpg", string.Format("§{0}.jpg", peca.Item)), Utils.GetModelosProjetoPath + objUpdate.Codigo + string.Format("§{0}.jpg", peca.Item)); } } } // Salva os tipos de medidas utilizadas neste modelo MedidaProjetoModeloDAO.Instance.SalvaMedidas(session, objUpdate.IdProjetoModelo, objUpdate.MedidasProjMod); // Se o modelo de projeto não for configurável, não permite alterar alguns campos if (!IsConfiguravel(session, objUpdate.IdProjetoModelo)) { objUpdate.TipoMedidasInst = projModOld.TipoMedidasInst; objUpdate.TipoCalcAluminio = projModOld.TipoCalcAluminio; objUpdate.TipoDesenho = projModOld.TipoDesenho; objUpdate.EixoPuxador = projModOld.EixoPuxador; } objUpdate.TextoOrcamento = projModOld.TextoOrcamento; objUpdate.TextoOrcamentoVidro = projModOld.TextoOrcamentoVidro; LogAlteracaoDAO.Instance.LogProjetoModelo(session, objUpdate); return(base.Update(session, objUpdate)); }
public Imagem[] GetProjetosModelo(string codigo, string descricao, uint idGrupoProjModelo, int situacao) { List <ProjetoModelo> lstProjModelos = ProjetoModeloDAO.Instance.GetList(codigo, descricao, idGrupoProjModelo, situacao); string criterio = (idGrupoProjModelo > 0 ? " Grupo: " + GrupoModeloDAO.Instance.ObtemDescricao(idGrupoProjModelo) : " ") + (String.IsNullOrEmpty(codigo) ? " " : " Código: " + codigo + " ") + (String.IsNullOrEmpty(descricao) ? " " : " Descrição: " + descricao + " "); List <Imagem> retorno = new List <Imagem>(); foreach (ProjetoModelo pm in lstProjModelos) { try { string path = Utils.GetModelosProjetoPath + pm.NomeFigura; if (File.Exists(path)) { byte[] imagem = Utils.GetImageFromFile(path); imagem = ManipulacaoImagem.Redimensionar(imagem, 300, 300, (float)0.75); if (imagem.Length == 0) { continue; } if (retorno.Count > 0 && retorno[retorno.Count - 1].Imagem2 == null) { retorno[retorno.Count - 1].Imagem2 = imagem; retorno[retorno.Count - 1].CodImagem2 = pm.Codigo; retorno[retorno.Count - 1].DescImagem2 = pm.Descricao; } else if (retorno.Count > 0 && retorno[retorno.Count - 1].Imagem3 == null) { retorno[retorno.Count - 1].Imagem3 = imagem; retorno[retorno.Count - 1].CodImagem3 = pm.Codigo; retorno[retorno.Count - 1].DescImagem3 = pm.Descricao; } else { Imagem nova = new Imagem(); nova.Chave = pm.IdProjetoModelo; nova.Imagem1 = imagem; nova.CodImagem1 = pm.Codigo; nova.DescImagem1 = pm.Descricao; nova.Criterio = criterio; retorno.Add(nova); } } } catch (Exception ex) { throw new Exception(MensagemAlerta.FormatErrorMsg("Falha ao carregar imagens do projeto " + pm.Codigo + ".", ex)); } } return(retorno.ToArray()); }
/// <summary> /// Salva a imagem da ferragem. /// </summary> /// <param name="idFerragem">Identificador da ferragem.</param> /// <param name="stream">Stream contendo os dados da imagem que será salva.</param> public bool SalvarImagem(int idFerragem, System.IO.Stream stream) { var arquivo = ObterCaminho(idFerragem); // Caso a ferragem já possua imagem, o arquivo deve ser removido, para que seja salva a nova imagem. if (File.Exists(arquivo)) { File.Delete(arquivo); } return(ManipulacaoImagem.SalvarImagem(arquivo, stream)); }
/// <summary> /// Salva o CalcPackage da ferragem. /// </summary> /// <param name="idFerragem">Identificador da ferragem.</param> /// <param name="stream">Stream contendo os dados do CalcPackage que será salva.</param> public bool SalvarCalcPackage(int idFerragem, System.IO.Stream stream) { var arquivo = ObterCaminho(idFerragem); // Caso o a ferragem já possua CalcPackage, o arquivo deve ser removido, para que o novo CalcPackage seja inserido. if (File.Exists(arquivo)) { File.Delete(arquivo); } return(ManipulacaoImagem.SalvarImagem(arquivo, stream)); }
protected void grdProdutosOrcamento_RowUpdating(object sender, GridViewUpdateEventArgs e) { FileUpload fluImagem = grdProdutosAmbienteOrcamento.Rows[e.RowIndex].FindControl("fluImagem") as FileUpload; if (fluImagem == null || !fluImagem.HasFile) { return; } var idProd = e.Keys[0].ToString().StrParaInt(); ManipulacaoImagem.SalvarImagem($"{ Data.Helper.Utils.GetProdutosOrcamentoPath }{ idProd }.jpg", fluImagem.FileBytes); }
protected void btnSalvarImagem_Click(object sender, EventArgs e) { if (!ManipulacaoImagem.SalvarImagem(Server.MapPath(NomeFigura()), file_imagem.PostedFile.InputStream)) { Page.ClientScript.RegisterClientScriptBlock(typeof(string), "msg", "alert('Falha ao salvar imagem.');", true); return; } img_inicial.ImageUrl = NomeFigura(); LogAlteracaoDAO.Instance.LogImagemProducao(Convert.ToUInt32(Request["IdPecaItemProj"]), Request["Item"], "Edição da imagem do item " + Request["item"] + "."); PecaItemProjetoDAO.Instance.ImagemEditada(Convert.ToUInt32(Request["IdPecaItemProj"]), true); Page.ClientScript.RegisterClientScriptBlock(typeof(string), "msg", "alert('Imagem salva!.');", true); }
public static void InserirAnexo(IFoto.TipoFoto tipo, uint idParent, byte[] buffer, string fileName, string descricao) { // Cadastra a foto var foto = IFoto.Nova(tipo); foto.IdParent = idParent; var extensao = Path.GetExtension(fileName); if (string.IsNullOrEmpty(extensao)) { throw new Exception("O arquivo informado não possui extensão."); } foto.Extensao = extensao; if (foto.ApenasImagens && !Arquivos.IsImagem(foto.Extensao)) { throw new Exception("Apenas imagens podem ser cadastradas."); } if (foto.Tipo == IFoto.TipoFoto.Pedido) { if (PedidoEspelhoDAO.Instance.IsPedidoImpresso(null, foto.IdParent)) { throw new Exception("Não é possível inserir imagem em pedidos que já possuam etiqueta(s) impressa(s)."); } } foto.Descricao = descricao; foto.IdFoto = foto.Insert(); if (foto.IdFoto == 0) { throw new Exception("Falha ao cadastrar foto."); } try { // Salva o arquivo da foto if (!Directory.Exists(foto.Path)) { Directory.CreateDirectory(foto.Path); } ManipulacaoImagem.SalvarImagem(foto.FilePath, buffer); if (tipo == IFoto.TipoFoto.Pedido) { // Cria o Log de inserção do Anexo imagem Pedido LogAlteracao log = new LogAlteracao(); log.Tabela = (int)LogAlteracao.TabelaAlteracao.Pedido; log.IdRegistroAlt = (int)idParent; log.NumEvento = LogAlteracaoDAO.Instance.GetNumEvento(LogAlteracao.TabelaAlteracao.Pedido, (int)idParent); log.Campo = "Anexo Pedido"; log.DataAlt = DateTime.Now; log.IdFuncAlt = UserInfo.GetUserInfo.CodUser; log.ValorAnterior = null; log.ValorAtual = string.Format("{0} - Imagem Anexada", foto.IdFoto); log.Referencia = LogAlteracao.GetReferencia(log.Tabela, idParent); LogAlteracaoDAO.Instance.Insert(log); } } catch (Exception ex) { foto.Delete(); throw ex; } }
protected void btnAplicar_Click(object sender, EventArgs e) { try { for (int i = 0; i < grdPecas.Rows.Count; i++) { Table tblImagens = (Table)grdPecas.Rows[i].FindControl("tblImagens"); for (int j = 0; j < tblImagens.Rows.Count; j++) { int item = Glass.Conversoes.StrParaInt(tblImagens.Rows[j].Cells[0].Attributes["item"]); FileUpload f = (FileUpload)tblImagens.Rows[j].FindControl("flu" + j); if (f == null || !f.HasFile) { continue; } uint idPecaItemProj = Glass.Conversoes.StrParaUint(tblImagens.Rows[j].Cells[0].Attributes["idPecaItemProj"]); // Garante que a imagem pode ser alterada na peça if (idPecaItemProj > 0 && !UtilsProjeto.PodeAlterarImagemPeca(PecaItemProjetoDAO.Instance.GetElementExt(null, idPecaItemProj, true), item, j + 1, false)) { continue; } string extensao = f.FileName.Substring(f.FileName.LastIndexOf('.')); if (!Arquivos.IsImagem(extensao)) { throw new Exception("Apenas imagens podem ser selecionadas."); } HiddenField h = (HiddenField)grdPecas.Rows[i].FindControl("hdfIdProdPed"); var idPedido = Request["idPedido"].StrParaUint(); var idProdPed = h.Value.StrParaUint(); if (Request["tipo"] == "pedido" && !PedidoEspelhoDAO.Instance.ExisteEspelho(idPedido) && (ProdutosPedidoDAO.Instance.TemProdutoLamComposicao(idPedido) || Request["pecaAvulsa"] == "True")) { var urlImagem = ProdutosPedidoDAO.Instance.ObterUrlImagemSalvar(idProdPed); ManipulacaoImagem.SalvarImagem(urlImagem, f.FileBytes); // Cria Log de alteração da Imagem do Produto Pedido LogAlteracaoDAO.Instance.Insert(new LogAlteracao { Tabela = (int)LogAlteracao.TabelaAlteracao.ImagemProdPed, IdRegistroAlt = (int)idProdPed, Campo = "Imagem Produto Pedido", ValorAtual = f.FileName, DataAlt = DateTime.Now, IdFuncAlt = UserInfo.GetUserInfo.CodUser, Referencia = "Imagem do Produto Pedido " + idProdPed, NumEvento = LogAlteracaoDAO.Instance.GetNumEvento(null, LogAlteracao.TabelaAlteracao.ImagemProdPed, (int)idProdPed) }); } if (Request["tipo"] == "pcp") { ProdutosPedidoEspelho ppe = ProdutosPedidoEspelhoDAO.Instance.GetElementByPrimaryKey(Glass.Conversoes.StrParaUint(h.Value)); if (ppe != null) { var nomeImagem = string.Empty; if (item > 0) { ppe.Item = item; nomeImagem = ppe.ImagemUrlSalvarItem; } else { nomeImagem = ppe.ImagemUrlSalvar; } ManipulacaoImagem.SalvarImagem(Server.MapPath(nomeImagem), f.FileBytes); // Cria Log de alteração da Imagem do Produto Pedido Espelho LogAlteracaoDAO.Instance.Insert(new LogAlteracao { Tabela = (int)LogAlteracao.TabelaAlteracao.ImagemProdPedEsp, IdRegistroAlt = (int)ppe.IdProdPed, Campo = "Imagem Produto Pedido Espelho", ValorAtual = f.FileName, DataAlt = DateTime.Now, IdFuncAlt = UserInfo.GetUserInfo.CodUser, Referencia = "Imagem do Produto Pedido Espelho " + ppe.IdProdPed, NumEvento = LogAlteracaoDAO.Instance.GetNumEvento(null, LogAlteracao.TabelaAlteracao.ImagemProdPedEsp, (int)ppe.IdProdPed) }); if (idPecaItemProj > 0) { LogAlteracaoDAO.Instance.LogImagemProducao(idPecaItemProj, item.ToString(), "Nova imagem atribuída à peça"); } } } } } Glass.MensagemAlerta.ShowMsg("Imagens alteradas.", Page); Response.Redirect(Request.Url.ToString()); } catch (Exception ex) { Glass.MensagemAlerta.ErrorMsg("Falha ao salvar imagem.", ex, Page); } }
/// <summary> /// Salva a imagem do funcionário. /// </summary> /// <param name="idFuncionario">Identificador do funcionário.</param> /// <param name="stream">Stream contendo os dados da imagem que será salva.</param> public bool SalvarImagem(int idFuncionario, System.IO.Stream stream) { var arquivo = ObtemCaminho(idFuncionario); return(ManipulacaoImagem.SalvarImagem(arquivo, stream)); }
protected void Page_Load(object sender, EventArgs e) { // Busca o item projeto passado por query string ItemProjeto itemProj = ItemProjetoDAO.Instance.GetElementByPrimaryKey(Glass.Conversoes.StrParaUint(Request["idItemProjeto"])); ProjetoModelo projMod = ProjetoModeloDAO.Instance.GetElementByPrimaryKey(itemProj.IdProjetoModelo); bool isPcp = itemProj.IdPedidoEspelho > 0; string nomeFigura = NomeFigura(); int item = Convert.ToInt32(Request["item"]); // Busca o produto pedido espelho para recuperar a URL da imagem if (isPcp) { var produtoPedidoEspelho = ProdutosPedidoEspelhoDAO.Instance.GetByMaterItemProj( MaterialItemProjetoDAO.Instance.GetMaterialByPeca(Convert.ToUInt32(Request["IdPecaItemProj"])).IdMaterItemProj).First(); produtoPedidoEspelho.Item = item; nomeFigura = produtoPedidoEspelho.ImagemUrlSalvarItem; } else if (itemProj.IdPedido.GetValueOrDefault() > 0) { uint idProdPed = ProdutosPedidoDAO.Instance.GetIdProdPedByMaterItemProj(itemProj.IdPedido.Value, MaterialItemProjetoDAO.Instance.GetMaterialByPeca(Convert.ToUInt32(Request["IdPecaItemProj"])).IdMaterItemProj); nomeFigura = Data.Helper.Utils.GetPecaComercialVirtualPath + idProdPed.ToString().PadLeft(10, '0') + "_" + item + ".jpg"; } if (Request["Ajax"] == null) { // Se o arquivo já tiver sido editado, busca ele mesmo if (File.Exists(Server.MapPath(nomeFigura))) { img_inicial.ImageUrl = nomeFigura; } else { // Se o pedido não tiver sido editado ainda, busca a imagem padrão com suas devidas medidas calculadas e inseridas na imagem nomeFigura = !String.IsNullOrEmpty(Request["item"]) ? projMod.Codigo + "§" + Request["item"] + ".jpg" : projMod.NomeFiguraAssociada; if (!File.Exists(Data.Helper.Utils.GetModelosProjetoPath + nomeFigura)) { nomeFigura = projMod.IdProjetoModelo.ToString("0##") + "_" + Request["item"] + ".jpg"; } img_inicial.ImageUrl = "../../Handlers/LoadFiguraAssociada.ashx?tipoDesenho=0&path=" + Data.Helper.Utils.GetModelosProjetoPath + nomeFigura + "&idProjetoModelo=" + Request["IdProjetoModelo"] + "&idPecaItemProj=" + Request["IdPecaItemProj"] + "&Item=" + Request["Item"] + "&IdItemProjeto=" + Request["IdItemProjeto"]; } } else if (Request["Ajax"] == "SalvarImagem" || Request["Ajax"] == "AbrirBiblioteca") { var b = new StringBuilder(Request["base64"].Split(',')[1]); b.Replace("\r\n", String.Empty); b.Replace(" ", String.Empty); var imagem = Convert.FromBase64String(b.ToString()); if (!ManipulacaoImagem.SalvarImagem(Server.MapPath(nomeFigura), imagem)) { Response.Write("Falha ao salvar imagem."); Response.End(); return; } LogAlteracaoDAO.Instance.LogImagemProducao(Convert.ToUInt32(Request["IdPecaItemProj"]), Request["Item"], "Edição da imagem do item " + Request["item"] + "."); PecaItemProjetoDAO.Instance.ImagemEditada(Convert.ToUInt32(Request["IdPecaItemProj"]), true); Response.Write("Imagem salva!"); Response.End(); } else if (Request["Ajax"] == "UploadImagem") { img_inicial.ImageUrl = Request["urlUpload"]; } }
/// <summary> /// Salva a imagem do funcionário. /// </summary> /// <param name="idFuncionario">Identificador do funcionário.</param> /// <param name="stream">Stream contendo os dados da imagem que será salva.</param> public bool SalvarImagem(int idLoja, bool cor, Stream stream) { var arquivo = ObtemCaminho(idLoja, cor); return(ManipulacaoImagem.SalvarImagem(arquivo, stream)); }
public Imagem[] GetPecasAlteradas(GDASession sessao, uint idItemProjeto, float percentualImagem) { ItemProjeto itemProj = ItemProjetoDAO.Instance.GetElementByPrimaryKey(sessao, idItemProjeto); PecaItemProjeto[] pecas = PecaItemProjetoDAO.Instance.GetByItemProjetoRpt(sessao, idItemProjeto, itemProj.IdProjetoModelo).ToArray(); List <Imagem> retorno = new List <Imagem>(); foreach (PecaItemProjeto p in pecas) { if (p.Tipo != 1) { continue; } ProdutosPedidoEspelho ppe = p.IdProdPed.GetValueOrDefault() == 0 ? null : ProdutosPedidoEspelhoDAO.Instance.GetForImagemPeca(sessao, p.IdProdPed.Value); foreach (int item in Array.ConvertAll(UtilsProjeto.GetItensFromPeca(p.Item), x => Glass.Conversoes.StrParaInt(x))) { //Se o item da peça for 99(geração dinâmica e não houver etiqueta, não gera a imagem. if ((item == 90 || item == 91 || item == 92 || item == 93 || item == 94 || item == 95 || item == 96 || item == 97 || item == 98 || item == 99) && string.IsNullOrEmpty(p.Etiquetas)) { continue; } if (item == 90 || item == 91 || item == 92 || item == 93 || item == 94 || item == 95 || item == 96 || item == 97 || item == 98 || item == 99) { string[] etiquetas = p.Etiquetas.Split(','); foreach (string etq in etiquetas) { string imgUrl = UtilsProjeto.GetFiguraAssociadaUrl(sessao, idItemProjeto, itemProj.IdProjetoModelo, p.IdPecaItemProj, item); imgUrl += "&numEtiqueta=" + etq; byte[] imagem = Utils.GetImageFromRequest(HttpContext.Current, imgUrl); if (imagem.Length == 0) { continue; } imagem = ManipulacaoImagem.Redimensionar(imagem, 0, 0, percentualImagem); if (retorno.Count > 0 && retorno[retorno.Count - 1].Imagem2 == null) { retorno[retorno.Count - 1].Imagem2 = imagem; } else { Imagem nova = new Imagem(); nova.Chave = idItemProjeto; nova.Imagem1 = imagem; retorno.Add(nova); } } } else { string urlImagem = null; if (ppe != null) { ppe.Item = item; urlImagem = ppe.ImagemUrl; } else if (itemProj.IdPedido > 0) { MaterialItemProjeto mip = MaterialItemProjetoDAO.Instance.GetMaterialByPeca(sessao, p.IdPecaItemProj); if (mip != null) { // Se estiver imprimindo projeto de pedido que está no comercial, // busca a imagem que pode ter sido editada do comercial urlImagem = Utils.GetPecaComercialVirtualPath + ProdutosPedidoDAO.Instance.GetIdProdPedByMaterItemProj(sessao, itemProj.IdPedido.Value, mip.IdMaterItemProj).ToString().PadLeft(10, '0') + "_" + item + ".jpg"; if (!File.Exists(HttpContext.Current.Server.MapPath(urlImagem))) { urlImagem = null; } } } if (urlImagem == null) { urlImagem = UtilsProjeto.GetFiguraAssociadaUrl(sessao, idItemProjeto, itemProj.IdProjetoModelo, p.IdPecaItemProj, item); } byte[] imagem = Utils.GetImageFromRequest(HttpContext.Current, urlImagem); if (imagem.Length == 0) { continue; } imagem = ManipulacaoImagem.Redimensionar(imagem, 0, 0, percentualImagem); if (retorno.Count > 0 && retorno[retorno.Count - 1].Imagem2 == null) { retorno[retorno.Count - 1].Imagem2 = imagem; } else { Imagem nova = new Imagem(); nova.Chave = idItemProjeto; nova.Imagem1 = imagem; retorno.Add(nova); } } } } return(retorno.ToArray()); }
/// <summary> /// Salva o arquivo do relatório. /// </summary> /// <param name="idRelatorioDinamico">Identificador do relatório.</param> /// <param name="stream">Stream contendo os dados do arquivo que será salvo.</param> public bool SalvarArquivo(int idRelatorioDinamico, System.IO.Stream stream) { var arquivo = ObterCaminho(idRelatorioDinamico); return(ManipulacaoImagem.SalvarImagem(arquivo, stream)); }
protected void Page_Load(object sender, EventArgs e) { Ajax.Utility.RegisterTypeForAjax(typeof(Glass.UI.Web.Cadastros.Projeto.DesenhaProjeto1)); // Busca o item projeto passado por query string ItemProjeto itemProj = ItemProjetoDAO.Instance.GetElementByPrimaryKey(Glass.Conversoes.StrParaUint(Request["idItemProjeto"])); ProjetoModelo projMod = ProjetoModeloDAO.Instance.GetElementByPrimaryKey(itemProj.IdProjetoModelo); bool isPcp = itemProj.IdPedidoEspelho > 0; string nomeFigura = String.Empty; int item = Convert.ToInt32(Request["item"]); // Busca o produto pedido espelho para recuperar a URL da imagem if (isPcp) { var produtoPedidoEspelho = ProdutosPedidoEspelhoDAO.Instance.GetByMaterItemProj( MaterialItemProjetoDAO.Instance.GetMaterialByPeca(Convert.ToUInt32(Request["IdPecaItemProj"])).IdMaterItemProj).First(); produtoPedidoEspelho.Item = item; nomeFigura = produtoPedidoEspelho.ImagemUrlSalvarItem; } else { uint idProdPed = ProdutosPedidoDAO.Instance.GetIdProdPedByMaterItemProj(itemProj.IdPedido.Value, MaterialItemProjetoDAO.Instance.GetMaterialByPeca(Convert.ToUInt32(Request["IdPecaItemProj"])).IdMaterItemProj); nomeFigura = Data.Helper.Utils.GetPecaComercialVirtualPath + idProdPed.ToString().PadLeft(10, '0') + "_" + item + ".jpg"; } if (!IsPostBack) { if (Request["Ajax"] == null) { // Carrega imagem na tela if (File.Exists(Server.MapPath(nomeFigura))) { img_inicial.ImageUrl = nomeFigura; } else { // Carrega imagem na tela nomeFigura = !String.IsNullOrEmpty(Request["item"]) ? projMod.Codigo + "§" + Request["item"] + ".jpg" : projMod.NomeFiguraAssociada; if (!File.Exists(Data.Helper.Utils.GetModelosProjetoPath + nomeFigura)) { nomeFigura = projMod.IdProjetoModelo.ToString("0##") + "_" + Request["item"] + ".jpg"; } img_inicial.ImageUrl = "../../Handlers/LoadFiguraAssociada.ashx?tipoDesenho=0&path=" + Data.Helper.Utils.GetModelosProjetoPath + nomeFigura; } } else if (Request["Ajax"] == "SalvarImagem" || Request["Ajax"] == "AbrirBiblioteca") { var b = new StringBuilder(Request["base64"].Split(',')[1]); b.Replace("\r\n", String.Empty); b.Replace(" ", String.Empty); var imagem = Convert.FromBase64String(b.ToString()); ManipulacaoImagem.SalvarImagem(Server.MapPath(nomeFigura), imagem); LogAlteracaoDAO.Instance.LogImagemProducao(Convert.ToUInt32(Request["IdPecaItemProj"]), Request["Item"], "Edição da imagem do item " + Request["item"] + "."); PecaItemProjetoDAO.Instance.ImagemEditada(Convert.ToUInt32(Request["IdPecaItemProj"]), true); } MontaTabelaFiguras(); } }
private string InserirMult(string descricao, IFoto.TipoFoto tipo) { var hfc = Request.Files; var arquivosNaoAnexados = ""; for (var i = 0; i < hfc.Count; i++) { // Cadastra a foto. var foto = IFoto.Nova(tipo); // Recupera os dados do arquivo. var arquivo = hfc[i]; // Recupera o nome do arquivo, que deve ser exatamente o id da referência. var idReferencia = Conversoes.StrParaUint(arquivo.FileName.Split('-', '.', ' ')[0]); // Verifica se são arquivos de pedidos ou de liberações. switch (Request["tipo"]) { case "pedido": if (PedidoEspelhoDAO.Instance.IsPedidoImpresso(null, foto.IdParent)) { return("Não é possível inserir imagem em pedidos que já possuam etiqueta(s) impressa(s)."); } // Se o tipo for pedido e o nome do arquivo não for o id de um pedido válido então o arquivo não é anexado. else if (!PedidoDAO.Instance.Exists(idReferencia)) { arquivosNaoAnexados += arquivo.FileName + ", "; continue; } break; case "liberacao": // Se o tipo for pedido e o nome do arquivo não for o id de uma liberação válida então o arquivo não é anexado. if (!LiberarPedidoDAO.Instance.Exists(idReferencia)) { arquivosNaoAnexados += arquivo.FileName + ", "; continue; } break; default: continue; } foto.IdParent = idReferencia; foto.Extensao = arquivo.FileName.Substring(arquivo.FileName.LastIndexOf('.')); if (foto.ApenasImagens && !Arquivos.IsImagem(foto.Extensao)) { arquivosNaoAnexados += arquivo.FileName + ", "; continue; } foto.Descricao = descricao; foto.IdFoto = foto.Insert(); if (foto.IdFoto == 0) { arquivosNaoAnexados += arquivo.FileName + ", "; foto.Delete(); continue; } try { ManipulacaoImagem.SalvarImagem(foto.FilePath, arquivo.InputStream); } catch { foto.Delete(); arquivosNaoAnexados += arquivo.FileName + ", "; continue; } } return(arquivosNaoAnexados = !String.IsNullOrEmpty(arquivosNaoAnexados) ? "Arquivos não anexados: " + arquivosNaoAnexados.Trim(' ').Trim(',') + ".\\n\\nCertifique-se de que os nomes dos arquivos estão corretos." : "Arquivos anexados com sucesso."); }
/// <summary> /// Salva a imagemd o produto. /// </summary> /// <param name="idProd">Identificador do produto.</param> /// <param name="stream">Stream contendo os dados da imagem que será salva.</param> public bool SalvarImagem(int idProdBaixaEst, System.IO.Stream stream) { var arquivo = ObtemCaminho(idProdBaixaEst); return(ManipulacaoImagem.SalvarImagem(arquivo, stream)); }
/// <summary> /// Salva a imagem do cliente. /// </summary> /// <param name="idCliente">Identificador do cliente.</param> /// <param name="stream">Stream contendo os dados da imagem que será salva.</param> public bool SalvarImagem(int idCliente, System.IO.Stream stream) { var arquivo = ObterCaminho(idCliente); return(ManipulacaoImagem.SalvarImagem(arquivo, stream)); }