This commit is contained in:
jnunez 2018-07-04 18:30:44 +00:00
parent 2f3c583172
commit 43cf62a918
3 changed files with 110 additions and 44 deletions

View file

@ -25,7 +25,7 @@ namespace AYA.SlnSinort.WCF
ProyectoNormativoJSON ObtenerProyectoNormativo(ProyectoNormativoJSON model);
[OperationContract]
int EnviarCorreo(ProyectoNormativoJSON model);
ProyectoNormativoJSON EnviarCorreo(ProyectoNormativoJSON model);
[OperationContract]
ProyectoNormativoJSON GuardarComentarioProyectoNormativo(ProyectoNormativoJSON model);
@ -50,7 +50,10 @@ namespace AYA.SlnSinort.WCF
List<TareasPendientes> ObtenerTareasPendientes(CatalogosPostJSON model);
[OperationContract]
BaseJson InsertarActualizarTareasPendientes(TareasPendientes model);
ProyectoNormativoJSON InsertarActualizarTareasPendientes(ProyectoNormativoJSON model);
[OperationContract]
NotificacionesJSON ObtenerCantidadTareasPendientes(NotificacionesJSON model);
#endregion
}
}

View file

@ -193,8 +193,8 @@ namespace AYA.SlnSinort.WCF
#endregion
#region WCFAYA Envio Correo
public int EnviarCorreo(ProyectoNormativoJSON model)
public ProyectoNormativoJSON EnviarCorreo(ProyectoNormativoJSON model)
{
PlantillaEmailDAL PlantillalDAL = new PlantillaEmailDAL();
UsuarioDAL UsuarioDAL = new UsuarioDAL();
@ -202,10 +202,12 @@ namespace AYA.SlnSinort.WCF
PlantillaEmail plantilla = new PlantillaEmail();
Usuario usuario = new Usuario();
CatalogosPostJSON catalogo = new CatalogosPostJSON();
int respuesta = 0;
string email;
string body;
try
{
@ -214,47 +216,84 @@ namespace AYA.SlnSinort.WCF
ServiciosUsuariosWCF.ServicioUsuariosClient respuestaAyA = new ServiciosUsuariosWCF.ServicioUsuariosClient();
ServiciosUsuariosWCF.correoEL correo = new ServiciosUsuariosWCF.correoEL();
Listaplantillas = PlantillalDAL.ObtenerPlantillasEmail();
catalogo.codigo = model.ProyectoNormativo.PromotorProyecto;
usuario = UsuarioDAL.BuscarUsuario(catalogo);
//Envio correo analista
plantilla = Listaplantillas.Where(p => p.IdPlantilla == 1).FirstOrDefault();
correo.FORMATO = "html";
correo.ASUNTO = plantilla.Subject.Replace("$NombreProyecto", model.ProyectoNormativo.NombreProyectoNormativo);
var body = plantilla.Body.Replace("$NombreProyecto", model.ProyectoNormativo.NombreProyectoNormativo).Replace("$Usuario", usuario.NombreUsuario).Replace("|", "</br>");
var usu = usuario.EmailUsuario;
correo.DESTINATARIOS = "jnunez@atesacr.com";
correo.CUERPO = body;
respuesta = respuestaAyA.enviarCorreo(correo);
//Envio correo convocados
plantilla = Listaplantillas.Where(p => p.IdPlantilla == 2).FirstOrDefault();
correo = new ServiciosUsuariosWCF.correoEL();
correo.FORMATO = "html";
correo.ASUNTO = plantilla.Subject.Replace("$NombreProyecto", model.ProyectoNormativo.NombreProyectoNormativo);
foreach (var participantes in model.ListaConvocatoria)
switch (model.PlantillaEmail.NombrePlatilla)
{
catalogo.codigo = participantes.UsuarioSistema;
usuario = UsuarioDAL.BuscarUsuario(catalogo);
var body2 = plantilla.Body.Replace("$NombreProyecto", model.ProyectoNormativo.NombreProyectoNormativo).Replace("$FechaMaxima", Convert.ToString(model.ProyectoNormativo.FechaMaximaConfirmarParticipacion)).Replace("$Usuario", usuario.NombreUsuario).Replace("|", "</br>");
correo.CUERPO = body2;
var usu1 = usuario.EmailUsuario;
correo.DESTINATARIOS = "jnunez@atesacr.com";
respuesta = respuestaAyA.enviarCorreo(correo);
}
case "Correo Analista" :
plantilla = Listaplantillas.Where(p => p.NombrePlatilla == model.PlantillaEmail.NombrePlatilla).FirstOrDefault();
catalogo.codigo = model.ProyectoNormativo.PromotorProyecto;
usuario = UsuarioDAL.BuscarUsuario(catalogo);
correo.FORMATO = "html";
correo.ASUNTO = plantilla.Subject.Replace("$NombreProyecto", model.ProyectoNormativo.NombreProyectoNormativo);
body = plantilla.Body.Replace("$NombreProyecto", model.ProyectoNormativo.NombreProyectoNormativo).Replace("$Usuario", usuario.NombreUsuario).Replace("|", "</br>");
email = usuario.EmailUsuario;
correo.DESTINATARIOS = "jnunez@atesacr.com";
correo.CUERPO = body;
respuesta = respuestaAyA.enviarCorreo(correo);
break;
case "Correo Convocados" :
plantilla = Listaplantillas.Where(p => p.NombrePlatilla == model.PlantillaEmail.NombrePlatilla).FirstOrDefault();
correo = new ServiciosUsuariosWCF.correoEL();
correo.FORMATO = "html";
correo.ASUNTO = plantilla.Subject.Replace("$NombreProyecto", model.ProyectoNormativo.NombreProyectoNormativo);
foreach (var participantes in model.ListaConvocatoria)
{
catalogo.codigo = participantes.UsuarioSistema;
usuario = UsuarioDAL.BuscarUsuario(catalogo);
body = plantilla.Body.Replace("$NombreProyecto", model.ProyectoNormativo.NombreProyectoNormativo).Replace("$FechaMaxima", Convert.ToString(model.ProyectoNormativo.FechaMaximaConfirmarParticipacion)).Replace("$Usuario", usuario.NombreUsuario).Replace("|", "</br>");
correo.CUERPO = body;
email = usuario.EmailUsuario;
correo.DESTINATARIOS = "jnunez@atesacr.com";
respuesta = respuestaAyA.enviarCorreo(correo);
}
break;
case "Correo Analista Confirmada" :
plantilla = Listaplantillas.Where(p => p.NombrePlatilla == model.PlantillaEmail.NombrePlatilla).FirstOrDefault();
correo = new ServiciosUsuariosWCF.correoEL();
correo.FORMATO = "html";
catalogo.codigo = model.TareasPendientes.UsuarioAsignado;
usuario = UsuarioDAL.BuscarUsuario(catalogo);
correo.ASUNTO = plantilla.Subject.Replace("$NombreProyecto", model.TareasPendientes.NombreProyectoNormativo).Replace("$Usuario", usuario.NombreUsuario);
body = plantilla.Body.Replace("$Usuario", usuario.NombreUsuario).Replace("|", "</br>");
catalogo.codigo = model.TareasPendientes.PromotorProyectoNormativo;
usuario = UsuarioDAL.BuscarUsuario(catalogo);
email = usuario.EmailUsuario;
correo.DESTINATARIOS = "jnunez@atesacr.com";
correo.CUERPO = body;
respuesta = respuestaAyA.enviarCorreo(correo);
break;
case "Correo Analista No Confirmada":
plantilla = Listaplantillas.Where(p => p.NombrePlatilla == model.PlantillaEmail.NombrePlatilla).FirstOrDefault();
correo = new ServiciosUsuariosWCF.correoEL();
correo.FORMATO = "html";
catalogo.codigo = model.TareasPendientes.UsuarioAsignado;
usuario = UsuarioDAL.BuscarUsuario(catalogo);
correo.ASUNTO = plantilla.Subject.Replace("$NombreProyecto", model.TareasPendientes.NombreProyectoNormativo).Replace("$Usuario", usuario.NombreUsuario);
body = plantilla.Body.Replace("$Usuario", usuario.NombreUsuario).Replace("$Justificacion", model.Convocado.Justificacion).Replace("|", "</br>");
catalogo.codigo = model.TareasPendientes.PromotorProyectoNormativo;
usuario = UsuarioDAL.BuscarUsuario(catalogo);
email = usuario.EmailUsuario;
correo.DESTINATARIOS = "jnunez@atesacr.com";
correo.CUERPO = body;
respuesta = respuestaAyA.enviarCorreo(correo);
break;
}
}
catch (Exception ex)
{
model.CodigoRespuesta = EnumTipoCodigoRespuesta.ERROR;
throw;
}
return respuesta;
model.CodigoRespuesta = (respuesta == 1) ? EnumTipoCodigoRespuesta.EXITOSO : EnumTipoCodigoRespuesta.ERROR; ;
return model;
}
#endregion
@ -347,20 +386,37 @@ namespace AYA.SlnSinort.WCF
return respuesta;
}
public BaseJson InsertarActualizarTareasPendientes(TareasPendientes model)
public ProyectoNormativoJSON InsertarActualizarTareasPendientes(ProyectoNormativoJSON model)
{
BaseJson respuesta = new BaseJson();
try
{
respuesta = new TareasPendientesDAL().InsertarActualizarTareasPendientes(model);
model = new TareasPendientesDAL().InsertarActualizarTareasPendientes(model);
model.CodigoRespuesta = EnumTipoCodigoRespuesta.EXITOSO;
}
catch (Exception ex)
{
model.CodigoRespuesta = EnumTipoCodigoRespuesta.ERROR;
log.Error(ex);
}
return respuesta;
return model;
}
public NotificacionesJSON ObtenerCantidadTareasPendientes(NotificacionesJSON model)
{
try
{
model = new TareasPendientesDAL().ObtenerCantidadTareasPendientes(model);
}
catch (Exception ex)
{
log.Error(ex);
}
return model;
}
#endregion

View file

@ -10,7 +10,6 @@ namespace AYA.SlnSinortModel.Sinort
{
public virtual DbSet<Aplicacion> Aplicacion { get; set; }
public virtual DbSet<Categoria> Categoria { get; set; }
public virtual DbSet<Contenido> Contenido { get; set; }
@ -580,6 +579,14 @@ namespace AYA.SlnSinortModel.Sinort
.Property(e => e.UsuarioAsignado)
.IsUnicode(false);
modelBuilder.Entity<TareasPendientes>()
.Property(e => e.NombreProyectoNormativo)
.IsUnicode(false);
modelBuilder.Entity<TareasPendientes>()
.Property(e => e.PromotorProyectoNormativo)
.IsUnicode(false);
modelBuilder.Entity<TareasPendientes>()
.Property(e => e.UsuarioCreacion)
.IsUnicode(false);