def cargarProductos(self):
     """
     Carga los datos de los productos en la tabla de la ventana.
     :return:
     """
     self.cargarObjetos(self.tablaProducto,
         ProductoModel.buscarTodos("codigo_barra", self.sesion).all(),
         ("codigo_barra", "id_medicamento", "id_presentacion", "importe")
     )
Exemple #2
0
 def cargarProductos(self):
     """
     Carga la tabla de los productos con los datos de todos los productos disponibles.
     :return:
     """
     self.cargarObjetos(
         self.tablaProducto,
         ProductoModel.buscarTodos("codigo_barra", self.sesion).all(),
         ("codigo_barra", "id_medicamento", "id_presentacion", "importe"))
Exemple #3
0
 def cargar_productos(self):
     for n, obj in enumerate(ProductoModel.buscarTodos("codigo_barra",self.sesion).all()):
         self.tableProductos.insertRow(n)
         self.tableProductos.setItem(n, 0, QtGui.QTableWidgetItem(str(obj.codigo_barra)))
         self.tableProductos.setItem(n, 1, QtGui.QTableWidgetItem(str(obj.id_medicamento)))
         self.tableProductos.setItem(n, 2, QtGui.QTableWidgetItem(str(obj.id_presentacion)))
         self.tableProductos.setItem(n, 3, QtGui.QTableWidgetItem(obj.getNombreMonodroga(self.sesion)))
         self.tableProductos.setItem(n, 4, QtGui.QTableWidgetItem(str(obj.getCantidad(self.sesion))))
         self.tableProductos.setItem(n, 5, QtGui.QTableWidgetItem(str(obj.importe)))
Exemple #4
0
    def cargar_productos(self):
        """
            Carga los productos que se encuentran en el
            sistema en la Tabla de Productos
        :return:
        """

        self.limpiarTabla(self.tableProductos)
        for n, obj in enumerate(ProductoModel.buscarTodos("codigo_barra",self.sesion).all()):
            self.tableProductos.insertRow(n)
            self.tableProductos.setItem(n, 0, QtGui.QTableWidgetItem(str(obj.codigo_barra)))
            self.tableProductos.setItem(n, 1, QtGui.QTableWidgetItem(str(obj.id_medicamento)))
            self.tableProductos.setItem(n, 2, QtGui.QTableWidgetItem(str(obj.id_presentacion)))
            self.tableProductos.setItem(n, 3, QtGui.QTableWidgetItem(obj.getNombreMonodroga(self.sesion)))
            self.tableProductos.setItem(n, 4, QtGui.QTableWidgetItem(str(obj.getCantidad(self.sesion))))
Exemple #5
0
 def cargar_productos(self):
     for n, obj in enumerate(
             ProductoModel.buscarTodos("codigo_barra", self.sesion).all()):
         self.tableProductos.insertRow(n)
         self.tableProductos.setItem(
             n, 0, QtGui.QTableWidgetItem(str(obj.codigo_barra)))
         self.tableProductos.setItem(
             n, 1, QtGui.QTableWidgetItem(str(obj.id_medicamento)))
         self.tableProductos.setItem(
             n, 2, QtGui.QTableWidgetItem(str(obj.id_presentacion)))
         self.tableProductos.setItem(
             n, 3,
             QtGui.QTableWidgetItem(obj.getNombreMonodroga(self.sesion)))
         self.tableProductos.setItem(
             n, 4,
             QtGui.QTableWidgetItem(str(obj.getCantidad(self.sesion))))
         self.tableProductos.setItem(
             n, 5, QtGui.QTableWidgetItem(str(obj.importe)))
    def generarExcelProductos(self):
        """
            Crea el listado en Excel correspondiente al total de los
            productos en stock en la farmacia
        :return None:
        """
        data={}
        lotesProductos={}
        for producto in (ProductoModel.buscarTodos("codigo_barra",self.sesion).all()):
            nombreProducto = '%(medicamento)s %(presentacion)s' % \
                             {"medicamento":producto.id_medicamento,
                              "presentacion":producto.id_presentacion}
            data[nombreProducto.upper()]=producto.getCantidad(self.sesion)
            lotesProductos[nombreProducto]=producto.buscarLotes(self.sesion)

        documento=xlsxwriter.Workbook(Listar.path_excel_files + "/StockProductos.xlsx")
        hoja=documento.add_worksheet('General')
        bold = documento.add_format({'bold': 1,})
        bold.set_align('center')
        hoja.set_column(0,0,45)
        hoja.set_column(1,1,15)
        ##Añado un grafico al documento
        grafico = documento.add_chart({'type':'column'})
        productos=list(data.keys())
        cantidades=list(data.values())
        hoja.write('A1','Producto',bold)
        hoja.write('B1','Cantidad',bold)
        hoja.write_column('A2',productos)
        hoja.write_column('B2',cantidades)
        grafico.add_series({
                'categories':[hoja.name,1,0,len(productos),0],
                'values': [hoja.name,1,1,len(cantidades),1]
        })
        grafico.set_x_axis({
            'name':'Productos',
            'name-font':{'size':16,'bold':True},
            'num_font':{'italic':True},
        })
        hoja.insert_chart('E3', grafico)
        for producto in lotesProductos:
            self.generarHojaProducto(documento,producto,lotesProductos[producto])
        documento.close()

        QtGui.QMessageBox.information(self, "Listado" , "El listado ha sido generado con exito")