class Login(object): """docstring for Login.""" def __init__(self): super(Login, self).__init__() self.client = MongoDB()._db.usuarios def _init_usuario_db(self): admin_user = { "nombre": "admin", "apellido": "admin", "usuario": "admin", "role": "ADMIN_ROLE", "cargo": "Root", "password": "******" } if self.client.find({}).count() == 0: insert = self.client.insert_one(admin_user) def get_user(self, usuario): myfind = self.client.find_one({"usuario": usuario}) if self.client.find({"usuario": usuario}).count() == 0: self._init_usuario_db() if self.client.find({"usuario": usuario}).count() > 0: return myfind["usuario"] else: return print("El usuario es incorrecto") def get_password(self, password): myfind = self.client.find_one({"password": password}) if self.client.find({"password": password}).count() > 0: return myfind["password"] else: return print("La contraseña es incorrecta")
class Usuario(object): """docstring for Usuario.""" def __init__(self): super(Usuario, self).__init__() self.client = MongoDB()._db.usuarios def add_usuario(self, nombre, apellido, usuario, role, cargo, password): new_user = { "nombre": nombre, "apellido": apellido, "usuario": usuario, "role": role, "cargo": cargo, "password": password } if self.client.find({"usuario": usuario}).count() == 0: insert = self.client.insert_one(new_user) print("El usuario " + new_user["usuario"] + " añadido correctamente!") return new_user else: print("El usuario " + new_user["usuario"] + " ya esta registrado!") def find_by_username(self, usuario): myfind = self.client.find_one({"usuario": usuario}) if self.client.find({"usuario": usuario}).count() > 0: return myfind else: return None def find_all(self): list_users = [] for usuarios in self.client.find(): if usuarios['usuario'] != 'admin': list_users.append(usuarios) return list_users def update_user(self, nombre, apellido, usuario, role, cargo): update_user = { "nombre": nombre, "apellido": apellido, "usuario": usuario, "role": role, "cargo": cargo } update = self.client.find_one_and_update({"usuario": usuario}, {"$set": update_user}, upsert=True) def update_user_password(self, usuario, password): update = self.client.find_one_and_update( {"usuario": usuario}, {"$set": { "password": password }}, upsert=True) def delete_user(self, usuario): remove = self.client.delete_one({"usuario": usuario})
class Inventario(object): categorias = [] """docstring for Inventario.""" def __init__(self): super(Inventario, self).__init__() self.client = MongoDB()._db.productos self.client2 = MongoDB()._db.category def add_product(self, nombre, categoria, precio, cantidad): new_product = { "nombre": nombre, "categoria": categoria, "precio": precio, "cantidad": cantidad } if self.client.find({"nombre": nombre}).count() == 0: insert = self.client.insert_one(new_product) print("producto " + new_product["nombre"] + " añadido correctamente!") return new_product else: print("producto " + new_product["nombre"] + " ya esta registrado!") def find_product_by_name(self, nombre): myfind = self.client.find_one({"nombre": nombre}) if self.client.find({"nombre": nombre}).count() > 0: return myfind else: return print("No existe el producto " + nombre) def find_all(self): all_products = [] for product in self.client.find(): all_products.append(product) return all_products def update_product(self, nombre, categoria, precio, cantidad): update_product = { "nombre": nombre, "categoria": categoria, "precio": precio, "cantidad": cantidad } update = self.client.find_one_and_update({"nombre": nombre}, {"$set": update_product}, upsert=True) def delete_product(self, nombre): remove = self.client.delete_one({"nombre": nombre}) def add_category(self, nombre): new_category = {"nombre": nombre} if self.client2.find({"nombre": nombre}).count() == 0: insert = self.client2.insert_one(new_category) print("Categoria " + new_category["nombre"] + " añadido correctamente!") return new_category else: print("producto " + new_category["nombre"] + " ya esta registrado!") def find_category(self): all_category = [] for cartegory in self.client2.find(): all_category.append(cartegory) return all_category def find_category_by_name(self, nombre): myfind = self.client2.find_one({"nombre": nombre}) if self.client2.find({"nombre": nombre}).count() > 0: return myfind else: return print("No existe el producto " + nombre) def delete_category(self, nombre): remove = self.client2.delete_one({"nombre": nombre})