Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


informe final de tecnologia informatica, Exámenes de Tecnología de la Información

informe final de tecnologia informatica,

Tipo: Exámenes

2021/2022

Subido el 09/06/2023

priscila-huachani-apaza
priscila-huachani-apaza 🇵🇪

1 documento

1 / 67

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
INFORME DE PRESENTACION
PUNTO DE VENTA TIENDA
Curso : Introducción a las Tecnologías de la Información
Profesora : Maria Alejandra Gonzales Balcazar
Nombre de la actividad : Proyecto Final
Semana : Semana 18
Código de clase : 59710
Integrantes:
Priscila Huachani Apaza U21213758
Carlos Alvarez Iquiapaza U22314750
Anthony Mamani Calsin U22237437
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43

Vista previa parcial del texto

¡Descarga informe final de tecnologia informatica y más Exámenes en PDF de Tecnología de la Información solo en Docsity!

INFORME DE PRESENTACION

PUNTO DE VENTA TIENDA

Curso : Introducción a las Tecnologías de la Información Profesora : Maria Alejandra Gonzales Balcazar Nombre de la actividad : Proyecto Final Semana : Semana 18 Código de clase : 59710 Integrantes:  Priscila Huachani Apaza U  Carlos Alvarez Iquiapaza U  Anthony Mamani Calsin U

1. Resumen

El objetivo de este trabajo es la implementación de una aplicación para un Minimarket,

en este caso el minimarket Don Pablito. La cual se encargará de proporcionar el

servicio de venta de diferentes productos como: lácteos, verduras, fideos, gaseosas,

licores, artículos de limpieza, etc. Para satisfacer las necesidades de los consumidores.

El propósito de nuestra aplicación es ayudar a las personas para que puedan realizar

sus compras con mayor facilidad, dando seguridad en sus compras.

2. Ejecución de la Aplicación

Empezamos con el LOGIN en donde podremos iniciar sesión. Para el cliente, tenemos

un inicio de sesión, si no esta suscrito, ponemos el numero de DNI del cliente y

mediante un API que consume datos de una página WEB. Al ingresar estaremos en el

punto de venta donde podremos encontrar un buscador que nos ayudara a encontrar

con facilidad el producto y su descripción. Tenemos también una tabla en donde se

agregarán todos los productos, en caso que el cliente no quiera un producto podemos

eliminarlo y si ya no quiere los productos totales elegidos también puede limpiar la lista.

Tenemos también el calculador de precios, y el botón de completar venta, donde se

guardará la factura y sus detalles.

En la ventana de inventario, tenemos un botón en donde nos actualiza y nos muestra la

lista de productos que tenemos hasta el momento, podemos agregar productos y

modificar la cantidad de productos que hay en el minimarket.

En la ventana Usuarios, encontramos a todos los empleadores, en donde podemos

agregar y eliminar a los usuarios, al momento de agregar a algún usuario nos pedirá:

nombre, apellidos, contraseña, sexo, DNI, correo electrónico, celular, dirección y fecha

de nacimiento.

En la ventana de Historial, nos muestra una lista de todas las facturas realizaras hasta

la fecha.

Requerimientos funcionales

 Crear un usuario  Crear empleados  Búsqueda y listado del producto  Registrar y buscar a un cliente por su DNI  Ver y editar usuario  Ventana principal  Inventario  Historial  Creación de productos  Login  Eliminar producto  Seleccionar producto  Validar los productos

Requerimientos no funcionales

 Disponibilidad  Funciones de navegación (atrás, adelante)  Botones  Link  Inventario  Historial  Ver y crear una cuenta  Número de usuarios  Número de operaciones  Tiempo de respuesta  Mantenimiento

Diseño Balsamiq

from mysql import connector import uuid import numpy as np import requests import os uuidvalue = str(uuid.uuid1()) defaultimg = "../producto_default.png" class Model(): idencargadolol = '' nombreempleadolol = ''

Código fuente

Conexión y sentencias SQL

self.config_db = self.read_config_db() self.connect_to_db() def read_config_db(self ): d = {} with open(self.config_db_file) as f_r: for line in f_r: (key,val)=line.strip().split(' :') d[key] = val return d def connect_to_db(self): self.cnx = connector.connect(**self.config_db) self.cursor = self.cnx.cursor() def close_db(self) : self.cnx.close () def login_empleado(self,correo,contrase na): try: print(correo,contrasena) sql = 'SELECT idencargado,nombre FROM encargado where correo = %s AND contraseña = %s' vals = (correo,contrasena) self.cursor.execute(sql,vals) record = self.cursor.fetchone() print(record[ 0 ],"<<>>" ) return record except connector.Error as err: return err def consultadniapi(self,dn i): response = requests.get(f"https://dniruc.apisperu.com/api/v1/dni/{dni}? token=eyJ0eXA iOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJlbWFpbCI6ImNhcmxtYXJ0Ljk5OThAZ21ha WwuY29 tIn0.khCzj-6_c4QMnTCLRbXTDXQpDasayBRR8HzEsPZ1TXE") if response: return (response.json()) def buscar_dni(self,dni ): try:

return record except connector.Error as err: return err def crear_cliente(self,nombre,apellido,dni,id=uuidva lue): id =str(uuid.uuid1()) print(nombre, apellido, "llegaron") def create_categorias(self,nombre,imagen=defaultimg,id=uuidv alue): id =str(uuid.uuid1()) try: sql = ('INSERT INTO categorias(idcategorias,nombre,imagen_url) VALUES (%s, %s,%s)') vals = (id,nombre,imagen) self.cursor.execute(sql,va ls) self.cnx.commit() return True except connector.Error as err: self.cnx.rollback() return err #self.x = self.pushButton_2.clicked.connect(lambda: m.create_categorias(lineEdit)) def create_productos(self,idcategoria,nombre,precio,marca,cantidad,imag en=def aultimg,id=uuidvalue): id =str(uuid.uuid1()) try: sql = ('INSERT INTO productos(idproductos,nombre,precio,marca,cantidad_producto,im agen_url,categorias_idcategorias) VALUES (%s,%s,%s,%s,%s,%s,%s)') vals = (id,str(nombre),float(precio),str(marca),int(cantidad),imagen,str(i dcateg oria)) self.cursor.execute(sql, vals) self.cnx.commit() except connector.Error as err: self.cnx.rollback() return err def crear_encargado(self,nombre,apellido,dni,fecha_nacimiento,sexo,dire ccion, telefono,tipo_empleado,correo,contrasena,imagen=defaultimg,id=uuidv alue):

id =str(uuid.uuid1()) try:

def buscar_id_categorias(self,nombre_categor ia): try:

-- coding: utf-8 --

Form implementation generated from reading ui

file '.\agregar_empleado.ui'

Created by: PyQt5 UI code generator

5.15.4 #

WARNING: Any manual changes made to this file will be lost when

pyuic5 is

run again. Do not edit this file unless you know what you are

doing. from PyQt5 import QtCore, QtGui, QtWidgets from model.model import Model import os import sys sql = 'select idcategorias from categorias where nombre = %s' vals = (nombre_categoria,) self.cursor.execute(sql,vals ) record = self.cursor.fetchone() return record[ 0 ] except connector.Error as err: return err def mostrarcaetgorias(self ,): try: sql = 'select nombre from categorias' self.cursor.execute(sql) records = self.cursor.fetchall() arrayrecords = [] delim = ',' for x in records: s = delim.join(x) arrayrecords.append( s) return arrayrecords except connector.Error as

Añadir Empleador