private async Task BitacoraAsync(string accion, ProveedorContacto contacto, Guid proveedorId, string excepcion = "")
        {
            string directorioBitacora = _configuration.GetValue <string>("DirectorioBitacora");

            await _getHelper.SetBitacoraAsync(token, accion, moduloId,
                                              contacto, proveedorId.ToString(), directorioBitacora, excepcion);
        }
        //Contactos

        public async Task <IActionResult> AddContacto(Guid?id)
        {
            var validateToken = await ValidatedToken(_configuration, _getHelper, "contacto");

            if (validateToken != null)
            {
                return(validateToken);
            }

            if (!await ValidateModulePermissions(_getHelper, moduloId, eTipoPermiso.PermisoEscritura))
            {
                return(RedirectToAction(nameof(Index)));
            }

            if (id == null)
            {
                TempData["toast"] = "Identificacor incorrecto, verifique.";
                return(RedirectToAction(nameof(Index)));
            }

            var contacto = new ProveedorContacto()
            {
                ProveedorID = (Guid)id,
                Proveedor   = await _context.Proveedores.FindAsync((Guid)id)
            };

            return(View(contacto));
        }
        public async Task <IActionResult> EditContacto(ProveedorContacto proveedorContacto)
        {
            var validateToken = await ValidatedToken(_configuration, _getHelper, "contacto");

            if (validateToken != null)
            {
                return(validateToken);
            }

            if (!await ValidateModulePermissions(_getHelper, moduloId, eTipoPermiso.PermisoEscritura))
            {
                return(RedirectToAction(nameof(Index)));
            }

            if (ModelState.IsValid)
            {
                var contacto = await _getHelper.GetContactoProveedorByIdAsync(proveedorContacto.ProveedorContactoID);

                if (contacto == null)
                {
                    ModelState.AddModelError(string.Empty,
                                             "Actualización no realizada, contacto inexistente.");
                    proveedorContacto.Proveedor = await _getHelper
                                                  .GetProveedorByIdAsync(proveedorContacto.ProveedorID);

                    return(View(proveedorContacto));
                }

                try
                {
                    contacto.NombreContacto          = proveedorContacto.NombreContacto.Trim().ToUpper();
                    contacto.PrimerApellidoContacto  = proveedorContacto.PrimerApellidoContacto.Trim().ToUpper();
                    contacto.SegundoApellidoContacto = proveedorContacto.SegundoApellidoContacto.Trim().ToUpper();
                    contacto.EmailContacto           = proveedorContacto.EmailContacto.Trim().ToLower();
                    contacto.TelefonoMovilContacto   = proveedorContacto.TelefonoMovilContacto;

                    _context.Update(contacto);
                    await _context.SaveChangesAsync();

                    TempData["toast"] = "Los datos del contacto fueron actualizados correctamente.";
                    await BitacoraAsync("Actualizar", contacto, contacto.ProveedorID);

                    return(RedirectToAction(nameof(Details), new { id = contacto.ProveedorID }));
                }
                catch (Exception ex)
                {
                    TempData["toast"] = "[Error] Los datos del contacto no fueron actualizados.";
                    string excepcion = ex.InnerException != null?ex.InnerException.Message.ToString() : ex.ToString();
                    await BitacoraAsync("Actualizar", contacto, contacto.ProveedorID, excepcion);
                }
            }

            proveedorContacto.Proveedor = await _getHelper
                                          .GetProveedorByIdAsync(proveedorContacto.ProveedorID);

            return(View(proveedorContacto));
        }
        public async Task <IActionResult> AddContacto(ProveedorContacto proveedorContacto)
        {
            var validateToken = await ValidatedToken(_configuration, _getHelper, "contacto");

            if (validateToken != null)
            {
                return(validateToken);
            }

            if (!await ValidateModulePermissions(_getHelper, moduloId, eTipoPermiso.PermisoEscritura))
            {
                return(RedirectToAction(nameof(Index)));
            }

            var proveedor = await _getHelper.GetProveedorByIdAsync(proveedorContacto.ProveedorID);

            TempData["toast"] = "Falta información en algún campo, verifique.";
            if (ModelState.IsValid)
            {
                if (proveedor == null)
                {
                    TempData["toast"] = "Identificacor incorrecto, verifique.";
                    return(RedirectToAction(nameof(Index)));
                }

                try
                {
                    proveedorContacto.ProveedorContactoID     = Guid.NewGuid();
                    proveedorContacto.NombreContacto          = proveedorContacto.NombreContacto.Trim().ToUpper();
                    proveedorContacto.PrimerApellidoContacto  = proveedorContacto.PrimerApellidoContacto.Trim().ToUpper();
                    proveedorContacto.SegundoApellidoContacto = proveedorContacto.SegundoApellidoContacto.Trim().ToUpper();
                    proveedorContacto.EmailContacto           = proveedorContacto.EmailContacto.Trim().ToLower();

                    _context.Add(proveedorContacto);

                    await _context.SaveChangesAsync();

                    TempData["toast"] = "Los datos del contacto fueron almacenados correctamente.";
                    await BitacoraAsync("Alta", proveedorContacto, proveedorContacto.ProveedorID);

                    return(RedirectToAction(nameof(Details), new { id = proveedorContacto.ProveedorID }));
                }
                catch (Exception ex)
                {
                    TempData["toast"] = "[Error] Los datos del contacto no fueron almacenados.";
                    string excepcion = ex.InnerException != null?ex.InnerException.Message.ToString() : ex.ToString();
                    await BitacoraAsync("Alta", proveedorContacto, proveedorContacto.ProveedorID, excepcion);
                }
            }

            proveedorContacto.Proveedor = proveedor;
            return(View(proveedorContacto));
        }
示例#5
0
 public void InsertarContacto(ContactoDTO entity)
 {
     try
     {
         Contacto          contacto          = Mapper.Map <Contacto>(entity);
         ProveedorContacto proveedorContacto = new ProveedorContacto();
         proveedorContacto.ProveedorId = entity.ProveedorId;
         contacto.ProveedorContacto.Add(proveedorContacto);
         contactoRepository.InsertarContacto(contacto);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
 public DetalleProveedorContacto(int Id)
 {
     InitializeComponent();
     try
     {
         //ProveedorContacto = General.GetEntityById<ProveedorContacto>("ProveedorContacto", "ProveedorContactoID", Id);
         ProveedorContacto = Datos.GetEntity<ProveedorContacto>(c => c.ProveedorContactoID == Id && c.Estatus);
         if (ProveedorContacto == null)
             throw new EntityNotFoundException(Id.ToString(), "ProveedorContacto");
         EsNuevo = false;
     }
     catch (Exception ex)
     {
         Util.MensajeError(ex.Message, GlobalClass.NombreApp);
     }
 }
示例#7
0
 public DetalleProveedorContacto(int Id)
 {
     InitializeComponent();
     try
     {
         //ProveedorContacto = General.GetEntityById<ProveedorContacto>("ProveedorContacto", "ProveedorContactoID", Id);
         ProveedorContacto = Datos.GetEntity <ProveedorContacto>(c => c.ProveedorContactoID == Id && c.Estatus);
         if (ProveedorContacto == null)
         {
             throw new EntityNotFoundException(Id.ToString(), "ProveedorContacto");
         }
         EsNuevo = false;
     }
     catch (Exception ex)
     {
         Util.MensajeError(ex.Message, GlobalClass.NombreApp);
     }
 }
示例#8
0
 public frmContactosProveedor(int id, string nombre)
 {
     InitializeComponent();
     this.Text = "Contactos de " + nombre;
     this.id   = id;
     try
     {
         p = new ProveedorContacto(id);
     }
     catch (MySql.Data.MySqlClient.MySqlException ex)
     {
         FuncionesGenerales.Mensaje(this, Mensajes.Error, "Ocurrió un error al obtener los contactos. La ventana se cerrará", "Admin CSY", ex);
         this.Close();
     }
     catch (Exception ex)
     {
         FuncionesGenerales.Mensaje(this, Mensajes.Error, "Ocurrió un error genérico al obtener los contactos. La ventana se cerrará", "Admin CSY", ex);
         this.Close();
     }
 }
        protected override void btnGuardar_Click(object sender, EventArgs e)
        {
            if (!Validaciones())
                return;

            try
            {
                int Id = 0;
                if (EsNuevo)
                {
                    var proveedorContacto = new ProveedorContacto()
                    {
                        ProveedorID = ProveedorId,
                        NombreContacto = this.txtNombreContacto.Text,
                        TelUno = this.txtTelUno.Text,
                        TelDos = this.txtTelDos.Text,
                        TelTres = this.txtTelTres.Text,
                        TelCuatro = this.txtTelCuatro.Text,
                        Departamento = this.txtDepartamento.Text,
                        CorreoElectronico = this.txtCorreoE.Text,
                        UsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                        FechaRegistro = DateTime.Now,
                        Estatus = true,
                        Actualizar = true

                    };

                    // Inicio - Detremina proveedor principal [Manuel 101014]
                    var principal = Datos.GetEntity<ProveedorContacto>(pl => pl.ProveedorID == ProveedorId && pl.Principal == true) ;
                    if (principal == null)
                    {
                        proveedorContacto.Principal = true;
                        this.cbPrincipal.Checked = true;
                    }
                    else if (this.cbPrincipal.Checked == true)
                    {
                        //quitar lo principal al contacto existente otro
                        principal.Principal = false;
                        Datos.SaveOrUpdate<ProveedorContacto>(principal);
                        //poner lo prinipal al contacto actual
                        proveedorContacto.Principal = true;
                    }
                    // Fin - Detremina proveedor principal [Manuel 101014]

                    Datos.SaveOrUpdate<ProveedorContacto>(proveedorContacto);
                    Id = proveedorContacto.ProveedorID;
                }
                else
                {
                    ProveedorContacto.NombreContacto = this.txtNombreContacto.Text;
                    ProveedorContacto.TelUno = this.txtTelUno.Text;
                    ProveedorContacto.TelDos = this.txtTelDos.Text;
                    ProveedorContacto.TelTres = this.txtTelTres.Text;
                    ProveedorContacto.TelCuatro = this.txtTelCuatro.Text;
                    ProveedorContacto.Departamento = this.txtDepartamento.Text;
                    ProveedorContacto.CorreoElectronico = this.txtCorreoE.Text;
                    ProveedorContacto.UsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                    ProveedorContacto.FechaModificacion = DateTime.Now;
                    ProveedorContacto.Estatus = true;

                    // Inicio - Detremina proveedor principal [Manuel 101014]
                    if (!(ProveedorContacto.Principal == true && this.cbPrincipal.Checked == true))
                    {
                        var principal = Datos.GetEntity<ProveedorContacto>(pl => pl.ProveedorID == ProveedorId && pl.Principal == true);

                        if (principal == null)
                        {
                            ProveedorContacto.Principal = true;
                            this.cbPrincipal.Checked = true;
                        }
                        else
                        {
                            if (principal.ProveedorContactoID == ProveedorContacto.ProveedorContactoID)
                            {
                                ProveedorContacto.Principal = true;
                                this.cbPrincipal.Checked = true;
                            }
                            else if (this.cbPrincipal.Checked == true)
                            {
                                //quitar lo principal al contacto existente otro
                                principal.Principal = false;
                                Datos.SaveOrUpdate<ProveedorContacto>(principal);
                                //poner lo prinipal al contacto actual
                                ProveedorContacto.Principal = true;
                            }
                        }
                    }
                    // Fin - Detremina proveedor principal [Manuel 101014]

                    Datos.SaveOrUpdate<ProveedorContacto>(ProveedorContacto);
                    Id = ProveedorContacto.ProveedorID;
                }
                new Notificacion("Contacto Guardado exitosamente", 2 * 1000).Mostrar(Principal.Instance);
                proveedorContactos.Instance.CustomInvoke<proveedorContactos>(m => m.ActualizarListado(Id));
            }
            catch (Exception ex)
            {
                Util.MensajeError(ex.Message, GlobalClass.NombreApp);
            }
            this.Close();
        }
示例#10
0
 public frmDatosContactoProveedor(int id, ProveedorContacto p)
 {
     InitializeComponent();
     this.p    = p;
     this.p.ID = id;
 }
示例#11
0
 public frmDatosContactoProveedor(ProveedorContacto p)
 {
     InitializeComponent();
     this.p = p;
 }
示例#12
0
        private void MostrarContactos()
        {
            dgvContactos.Rows.Clear();
            ProveedorContacto pc = p.Contacto;

            for (int i = 0; i < pc.IDCS.Count; i++)
            {
                string telefonos = "", correo = "";
                if (pc.TelefonoContactos01[i] != "" && pc.TelefonoContactos02[i] != "")
                {
                    if (pc.LadaContactos01[i] != "")
                    {
                        telefonos += pc.LadaContactos01[i] + " " + pc.TelefonoContactos01[i];
                    }
                    else
                    {
                        telefonos += pc.TelefonoContactos01[i];
                    }
                    if (pc.LadaContactos02[i] != "")
                    {
                        telefonos += ", " + pc.LadaContactos02[i] + " " + pc.TelefonoContactos02[i];
                    }
                    else
                    {
                        telefonos += ", " + pc.TelefonoContactos02[i];
                    }
                }
                else if (pc.TelefonoContactos01[i] != "")
                {
                    if (pc.LadaContactos01[i] != "")
                    {
                        telefonos += pc.LadaContactos01[i] + " " + pc.TelefonoContactos01[i];
                    }
                    else
                    {
                        telefonos += pc.TelefonoContactos01[i];
                    }
                }
                else if (pc.TelefonoContactos02[i] != "")
                {
                    if (pc.LadaContactos02[i] != "")
                    {
                        telefonos += pc.LadaContactos02[i] + " " + pc.TelefonoContactos02[i];
                    }
                    else
                    {
                        telefonos += pc.TelefonoContactos02[i];
                    }
                }
                if (pc.CorreoContactos[i] != "")
                {
                    correo = pc.CorreoContactos[i];
                }
                else
                {
                    correo = "Sin información";
                }
                dgvContactos.Rows.Add(new object[] { pc.IDCS[i], pc.NombreContactos[i], telefonos, correo });
            }
            dgvContactos_RowEnter(dgvContactos, new DataGridViewCellEventArgs(0, 0));
        }
示例#13
0
        protected override void btnGuardar_Click(object sender, EventArgs e)
        {
            if (!Validaciones())
            {
                return;
            }

            try
            {
                int Id = 0;
                if (EsNuevo)
                {
                    var proveedorContacto = new ProveedorContacto()
                    {
                        ProveedorID       = ProveedorId,
                        NombreContacto    = this.txtNombreContacto.Text,
                        TelUno            = this.txtTelUno.Text,
                        TelDos            = this.txtTelDos.Text,
                        TelTres           = this.txtTelTres.Text,
                        TelCuatro         = this.txtTelCuatro.Text,
                        Departamento      = this.txtDepartamento.Text,
                        CorreoElectronico = this.txtCorreoE.Text,
                        UsuarioID         = GlobalClass.UsuarioGlobal.UsuarioID,
                        FechaRegistro     = DateTime.Now,
                        Estatus           = true,
                        Actualizar        = true
                    };

                    // Inicio - Detremina proveedor principal [Manuel 101014]
                    var principal = Datos.GetEntity <ProveedorContacto>(pl => pl.ProveedorID == ProveedorId && pl.Principal == true);
                    if (principal == null)
                    {
                        proveedorContacto.Principal = true;
                        this.cbPrincipal.Checked    = true;
                    }
                    else if (this.cbPrincipal.Checked == true)
                    {
                        //quitar lo principal al contacto existente otro
                        principal.Principal = false;
                        Datos.SaveOrUpdate <ProveedorContacto>(principal);
                        //poner lo prinipal al contacto actual
                        proveedorContacto.Principal = true;
                    }
                    // Fin - Detremina proveedor principal [Manuel 101014]

                    Datos.SaveOrUpdate <ProveedorContacto>(proveedorContacto);
                    Id = proveedorContacto.ProveedorID;
                }
                else
                {
                    ProveedorContacto.NombreContacto    = this.txtNombreContacto.Text;
                    ProveedorContacto.TelUno            = this.txtTelUno.Text;
                    ProveedorContacto.TelDos            = this.txtTelDos.Text;
                    ProveedorContacto.TelTres           = this.txtTelTres.Text;
                    ProveedorContacto.TelCuatro         = this.txtTelCuatro.Text;
                    ProveedorContacto.Departamento      = this.txtDepartamento.Text;
                    ProveedorContacto.CorreoElectronico = this.txtCorreoE.Text;
                    ProveedorContacto.UsuarioID         = GlobalClass.UsuarioGlobal.UsuarioID;
                    ProveedorContacto.FechaModificacion = DateTime.Now;
                    ProveedorContacto.Estatus           = true;

                    // Inicio - Detremina proveedor principal [Manuel 101014]
                    if (!(ProveedorContacto.Principal == true && this.cbPrincipal.Checked == true))
                    {
                        var principal = Datos.GetEntity <ProveedorContacto>(pl => pl.ProveedorID == ProveedorId && pl.Principal == true);

                        if (principal == null)
                        {
                            ProveedorContacto.Principal = true;
                            this.cbPrincipal.Checked    = true;
                        }
                        else
                        {
                            if (principal.ProveedorContactoID == ProveedorContacto.ProveedorContactoID)
                            {
                                ProveedorContacto.Principal = true;
                                this.cbPrincipal.Checked    = true;
                            }
                            else if (this.cbPrincipal.Checked == true)
                            {
                                //quitar lo principal al contacto existente otro
                                principal.Principal = false;
                                Datos.SaveOrUpdate <ProveedorContacto>(principal);
                                //poner lo prinipal al contacto actual
                                ProveedorContacto.Principal = true;
                            }
                        }
                    }
                    // Fin - Detremina proveedor principal [Manuel 101014]

                    Datos.SaveOrUpdate <ProveedorContacto>(ProveedorContacto);
                    Id = ProveedorContacto.ProveedorID;
                }
                new Notificacion("Contacto Guardado exitosamente", 2 * 1000).Mostrar(Principal.Instance);
                proveedorContactos.Instance.CustomInvoke <proveedorContactos>(m => m.ActualizarListado(Id));
            }
            catch (Exception ex)
            {
                Util.MensajeError(ex.Message, GlobalClass.NombreApp);
            }
            this.Close();
        }