コード例 #1
0
        public IList <ServiciosWeb.Data.Model.Login> GetAll()
        {
            BPM_SIEEntities BD      = new BPM_SIEEntities();
            var             listado = BD.Login.ToList();

            return(listado);
        }
コード例 #2
0
        public GenericListResponse <Producto> GetProduct(string nombre, string SKU)
        {
            GenericListResponse <Producto> response;
            BPM_SIEEntities BD = new BPM_SIEEntities();

            try
            {
                var registro = BD.Producto.Where(x => x.nombre.Equals(nombre, StringComparison.CurrentCultureIgnoreCase) || x.SKU.Equals(SKU, StringComparison.CurrentCultureIgnoreCase));
                response = new GenericListResponse <Producto>
                {
                    Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.OK
                    },
                    Items = registro.ToList()
                };
            }
            catch (Exception ex)
            {
                response = new GenericListResponse <Producto>
                {
                    Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.InternalServerError, Message = ex.Message
                    },
                    Items = new List <Producto>()
                };
            }
            return(response);
        }
コード例 #3
0
        public GenericResponse <string> Registro(Producto product)
        {
            var mensaje = "";
            GenericResponse <string> response = new GenericResponse <string>();

            try
            {
                using (BPM_SIEEntities db = new BPM_SIEEntities())
                {
                    var registro = db.Producto.Where(x => x.SKU == product.SKU).Any();
                    if (registro)
                    {
                        mensaje = "Usuario ya existe registrado en la base de datos";
                    }
                    else
                    {
                        var producto = new Producto();
                        producto.nombre      = product.nombre;
                        producto.SKU         = product.SKU;
                        producto.cantidad    = product.cantidad;
                        producto.descripcion = product.descripcion;
                        producto.precio      = product.precio;
                        producto.imagen      = product.imagen;
                        db.Producto.Add(producto);
                        db.SaveChanges();
                        mensaje = "Registro completado con exito";
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.OK
                    };
                    response.Item = mensaje;
                };
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Mensaje: {0} Error: {1}",
                                               validationError.PropertyName,
                                               mensaje = validationError.ErrorMessage);
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.InternalServerError, Message = dbEx.Message
                    };
                    response.Item = mensaje;
                };
            }
            return(response);
        }
コード例 #4
0
ファイル: UserController.cs プロジェクト: farkas26/TechApi
        public GenericResponse <string> Registro(Login user)
        {
            var mensaje = "";
            GenericResponse <string> response = new GenericResponse <string>();

            try
            {
                using (BPM_SIEEntities db = new BPM_SIEEntities()) {
                    var registro = db.Login.Where(x => x.username == user.username || x.email == user.email).Any();
                    if (registro)
                    {
                        mensaje = "Usuario ya existe registrado en la base de datos";
                    }
                    else
                    {
                        var usuario = new Login();
                        usuario.name      = user.name;
                        usuario.number    = user.number;
                        usuario.username  = user.username;
                        usuario.birthdate = user.birthdate;
                        usuario.email     = user.email;
                        usuario.password  = user.password;
                        db.Login.Add(usuario);
                        db.SaveChanges();
                        mensaje = "Registro completado con exito";
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.OK
                    };
                    response.Item = mensaje;
                };
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Mensaje: {0} Error: {1}",
                                               validationError.PropertyName,
                                               mensaje = validationError.ErrorMessage);
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.InternalServerError, Message = dbEx.Message
                    };
                    response.Item = mensaje;
                };
            }
            return(response);
        }
コード例 #5
0
        public GenericResponse <string> EditProduct(Producto product)
        {
            var mensaje = "";
            GenericResponse <string> response = new GenericResponse <string>();

            try
            {
                using (BPM_SIEEntities db = new BPM_SIEEntities())
                {
                    var registro = db.Producto.Where(x => x.id == product.id).FirstOrDefault <Producto>();
                    if (registro is null)
                    {
                        mensaje = "El Producto no existe en la base de datos";
                    }
                    else
                    {
                        registro.nombre      = product.nombre;
                        registro.SKU         = product.SKU;
                        registro.cantidad    = product.cantidad;
                        registro.descripcion = product.descripcion;
                        registro.precio      = product.precio;
                        registro.imagen      = product.imagen;
                        db.SaveChanges();
                        mensaje = "Registro Actualizado";
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.OK
                    };
                    response.Item = mensaje;
                };
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Mensaje: {0} Error: {1}",
                                               validationError.PropertyName,
                                               mensaje = validationError.ErrorMessage);
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.InternalServerError, Message = dbEx.Message
                    };
                    response.Item = mensaje;
                };
            }
            return(response);
        }
コード例 #6
0
ファイル: UserController.cs プロジェクト: farkas26/TechApi
        public GenericResponse <string> EditUser(Login user)
        {
            var mensaje = "";
            GenericResponse <string> response = new GenericResponse <string>();

            try
            {
                using (BPM_SIEEntities db = new BPM_SIEEntities())
                {
                    var registro = db.Login.Where(x => x.id == user.id).FirstOrDefault <Login>();
                    if (registro is null)
                    {
                        mensaje = "Usuario no existe en la base de datos";
                    }
                    else
                    {
                        registro.name      = user.name;
                        registro.number    = user.number;
                        registro.password  = registro.password;
                        registro.username  = user.username;
                        registro.email     = user.email;
                        registro.birthdate = user.birthdate;
                        db.SaveChanges();
                        mensaje = "Registro Actualizado";
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.OK
                    };
                    response.Item = mensaje;
                };
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Mensaje: {0} Error: {1}",
                                               validationError.PropertyName,
                                               mensaje = validationError.ErrorMessage);
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.InternalServerError, Message = dbEx.Message
                    };
                    response.Item = mensaje;
                };
            }
            return(response);
        }
コード例 #7
0
ファイル: UserController.cs プロジェクト: farkas26/TechApi
        public GenericResponse <string> RecuperacionCuenta(string emailDestino, string emailOrigen, string password)
        {
            var mensaje = "";
            GenericResponse <string> response = new GenericResponse <string>();

            try
            {
                string token = Sha256Hash(Guid.NewGuid().ToString());
                using (BPM_SIEEntities db = new BPM_SIEEntities())
                {
                    var registro = db.Login.Where(x => x.email == emailDestino).FirstOrDefault();
                    if (registro is null)
                    {
                        mensaje = "Usuario no existe en la base de datos";
                    }
                    else
                    {
                        registro.token           = token;
                        registro.number          = registro.number.TrimEnd();
                        db.Entry(registro).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                        //Se especifica EmailOrigen y Password ya que se necesita un correo gmail para enviarlo
                        SendEmail(emailDestino, token, emailOrigen, password);
                        mensaje = "Se ha enviado un enlace a su correo para poder recuperar la contraseña";
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.OK
                    };
                    response.Item = mensaje;
                };
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Mensaje: {0} Error: {1}",
                                               validationError.PropertyName,
                                               mensaje = validationError.ErrorMessage);
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.InternalServerError, Message = dbEx.Message
                    };
                    response.Item = mensaje;
                };
            }
            return(response);
        }
コード例 #8
0
ファイル: UserController.cs プロジェクト: farkas26/TechApi
        public GenericResponse <string> Login(string email, string password)
        {
            var mensaje = "";
            GenericResponse <string> response = new GenericResponse <string>();

            try
            {
                using (BPM_SIEEntities db = new BPM_SIEEntities()) {
                    var registro = db.Login.Where(x => x.email == email && x.password == password);
                    if (registro.Count() > 0)
                    {
                        var   token = Guid.NewGuid().ToString();
                        Login user  = registro.First();
                        user.token           = token;
                        user.number          = user.number.TrimEnd();
                        db.Entry(user).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                        mensaje = "Ingreso de forma correcta";
                    }
                    else
                    {
                        mensaje = "datos incorrectos";
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.OK
                    };
                    response.Item = mensaje;
                };
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Property: {0} Error: {1}",
                                               validationError.PropertyName,
                                               mensaje = validationError.ErrorMessage);
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.InternalServerError, Message = dbEx.Message
                    };
                    response.Item = mensaje;
                };
            }
            return(response);
        }
コード例 #9
0
        public GenericResponse <string> DeleteProduct(int id)
        {
            var mensaje = "";
            GenericResponse <string> response = new GenericResponse <string>();

            try
            {
                using (BPM_SIEEntities db = new BPM_SIEEntities())
                {
                    var registro = db.Producto.Where(x => x.id == id).FirstOrDefault();
                    if (registro is null)
                    {
                        mensaje = "Usuario no existe en la base de datos";
                    }
                    else
                    {
                        db.Entry(registro).State = System.Data.Entity.EntityState.Deleted;
                        db.SaveChanges();
                        mensaje = "Registro borrado con exito";
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.OK
                    };
                    response.Item = mensaje;
                };
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Mensaje: {0} Error: {1}",
                                               validationError.PropertyName,
                                               mensaje = validationError.ErrorMessage);
                    }
                }
                {
                    response.Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.InternalServerError, Message = dbEx.Message
                    };
                    response.Item = mensaje;
                };
            }
            return(response);
        }
コード例 #10
0
        public GenericListResponse <Producto> GetAll([FromUri] PagingParameterModel pagingparametermodel)
        {
            BPM_SIEEntities BD                 = new BPM_SIEEntities();
            var             source             = BD.Producto.ToList();
            int             count              = source.Count();
            int             CurrentPage        = pagingparametermodel.pageNumber;
            int             PageSize           = pagingparametermodel.pageSize;
            int             TotalCount         = count;
            int             TotalPages         = (int)Math.Ceiling(count / (double)PageSize);
            var             items              = source.Skip((CurrentPage - 1) * PageSize).Take(PageSize).ToList();
            var             previousPage       = CurrentPage > 1 ? "Yes" : "No";
            var             nextPage           = CurrentPage < TotalPages ? "Yes" : "No";
            var             paginationMetadata = new
            {
                totalCount  = TotalCount,
                pageSize    = PageSize,
                currentPage = CurrentPage,
                totalPages  = TotalPages,
                previousPage,
                nextPage
            };

            HttpContext.Current.Response.Headers.Add("Paging-Headers", JsonConvert.SerializeObject(paginationMetadata));
            GenericListResponse <Producto> response;

            try
            {
                response = new GenericListResponse <Producto>
                {
                    Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.OK
                    },
                    Items = items
                };
            }
            catch (Exception ex)
            {
                response = new GenericListResponse <Producto>
                {
                    Status = new ResponseStatus {
                        HttpCode = HttpStatusCode.InternalServerError, Message = ex.Message
                    },
                    Items = new List <Producto>()
                };
            }
            return(response);
        }