public void AtualizaFOLLOW_UP(Dictionary <string, object> dados, List <string> DESTINATARIOS, decimal ID_USUARIO, string LOGIN_USUARIO) { try { using (Doran_ERP_Servicos_DadosDataContext ctx = new Doran_ERP_Servicos_DadosDataContext()) { string CLIENTE = (from linha in ctx.TB_PEDIDO_VENDAs where linha.NUMERO_PEDIDO == Convert.ToDecimal(dados["NUMERO_PEDIDO"]) select linha.TB_ITEM_ORCAMENTO_VENDA.TB_ORCAMENTO_VENDA.TB_CLIENTE.NOMEFANTASIA_CLIENTE).ToList().First(); var query = (from item in ctx.TB_FOLLOW_UP_PEDIDOs where item.NUMERO_FOLLOW_UP == Convert.ToDecimal(dados["NUMERO_FOLLOW_UP"]) select item).ToList(); foreach (var uf in query) { uf.NUMERO_PEDIDO = Convert.ToDecimal(dados["NUMERO_PEDIDO"]); uf.ID_USUARIO_FOLLOW_UP = ID_USUARIO; uf.DATA_HORA_FOLLOW_UP = DateTime.Now; uf.TEXTO_FOLLOW_UP = dados["TEXTO_FOLLOW_UP"].ToString(); Doran_Base.Auditoria_ERP_Servicos.Doran_Auditoria.Audita_Update_PEDIDO_VENDA(ctx, ctx.TB_FOLLOW_UP_PEDIDOs.GetModifiedMembers(uf), ctx.TB_FOLLOW_UP_PEDIDOs.ToString(), Convert.ToDecimal(dados["NUMERO_PEDIDO"]), ID_USUARIO); ctx.SubmitChanges(); } if (DESTINATARIOS.Count > 0) { using (Doran_Email_Posicao_Pedido email = new Doran_Email_Posicao_Pedido(ID_USUARIO)) { string _OBS = string.Concat(LOGIN_USUARIO.ToUpper(), " salvou uma nova mensagem de Follow Up no pedido ", dados["NUMERO_PEDIDO"].ToString(), "<br /><br />", dados["TEXTO_FOLLOW_UP"].ToString(), "<br /><br />", dados["ASSINATURA"].ToString()); email.NUMERO_PEDIDO = Convert.ToDecimal(dados["NUMERO_PEDIDO"]); email.CLIENTE = CLIENTE; email.CODIGO_PRODUTO = ""; email.HISTORICO = _OBS; email.DESTINATARIOS = DESTINATARIOS; email.ID_CONTA_EMAIL = Convert.ToDecimal(dados["ID_CONTA_EMAIL"]); email.FROM_ADDRESS = dados["FROM_ADDRESS"].ToString(); email.Envia_Email_Posicao_Pedido(); } } } } catch (Exception ex) { Doran_Base.Auditoria_ERP_Servicos.Doran_Exception.GravaErro(ex, ID_USUARIO); throw ex; } }
public void GravaNovo(Dictionary <string, object> dados, List <string> DESTINATARIOS, decimal ID_USUARIO, string LOGIN_USUARIO) { try { using (Doran_ERP_Servicos_DadosDataContext ctx = new Doran_ERP_Servicos_DadosDataContext()) { string CLIENTE = (from linha in ctx.TB_PEDIDO_VENDAs where linha.NUMERO_PEDIDO == Convert.ToDecimal(dados["NUMERO_PEDIDO"]) select linha.TB_ITEM_ORCAMENTO_VENDA.TB_ORCAMENTO_VENDA.TB_CLIENTE.NOMEFANTASIA_CLIENTE).ToList().First(); System.Data.Linq.Table <Doran_Servicos_ORM.TB_FOLLOW_UP_PEDIDO> Entidade = ctx.GetTable <Doran_Servicos_ORM.TB_FOLLOW_UP_PEDIDO>(); Doran_Servicos_ORM.TB_FOLLOW_UP_PEDIDO novo = new Doran_Servicos_ORM.TB_FOLLOW_UP_PEDIDO(); novo.NUMERO_PEDIDO = Convert.ToDecimal(dados["NUMERO_PEDIDO"]); novo.ID_USUARIO_FOLLOW_UP = ID_USUARIO; novo.DATA_HORA_FOLLOW_UP = DateTime.Now; novo.TEXTO_FOLLOW_UP = dados["TEXTO_FOLLOW_UP"].ToString(); Entidade.InsertOnSubmit(novo); Doran_Base.Auditoria_ERP_Servicos.Doran_Auditoria.Audita_Insert_PEDIDO_VENDA(ctx, novo, Entidade.ToString(), Convert.ToDecimal(dados["NUMERO_PEDIDO"]), ID_USUARIO); ctx.SubmitChanges(); if (DESTINATARIOS.Count > 0) { using (Doran_Email_Posicao_Pedido email = new Doran_Email_Posicao_Pedido(ID_USUARIO)) { string _OBS = string.Concat(LOGIN_USUARIO.ToUpper(), " salvou uma nova mensagem de Follow Up no pedido ", dados["NUMERO_PEDIDO"].ToString(), "<br /><br />", dados["TEXTO_FOLLOW_UP"].ToString(), "<br /><br />", dados["ASSINATURA"].ToString()); email.NUMERO_PEDIDO = Convert.ToDecimal(dados["NUMERO_PEDIDO"]); email.CLIENTE = CLIENTE; email.CODIGO_PRODUTO = ""; email.HISTORICO = _OBS; email.DESTINATARIOS = DESTINATARIOS; email.ID_CONTA_EMAIL = Convert.ToDecimal(dados["ID_CONTA_EMAIL"]); email.FROM_ADDRESS = dados["FROM_ADDRESS"].ToString(); email.Envia_Email_Posicao_Pedido(); } } } } catch (Exception ex) { Doran_Base.Auditoria_ERP_Servicos.Doran_Exception.GravaErro(ex, ID_USUARIO); throw ex; } }