def exportMultiple(self): files = QtGui.QFileDialog.getOpenFileNames( self, None, os.path.join(get_data_dir(), "raw"), "Ruwe verkoopdata (*.csv)") for file in files: proc = Processor(file).process() logger.info("%s verwerkt" % os.path.basename(file)) if not files: logger.warn("Geen bestanden geselecteerd")
def removeLine(self): if self.cart.isCheckedOut(): logger.warn("Deze transactie is al afgerekend") return item = self.ui.amountList.selectedItems() if not item: logger.warn("Geen regel geselecteerd") return row = self.ui.amountList.row(item[0]) self.cart.contents.pop(row) self.updateReceipt()
def __init__(self, filename=""): self.products = [] if not os.path.exists(filename): logger.warn("Productdatabase niet gevonden (%s)" % filename) return self._filename = os.path.abspath(filename) with open(self._filename, 'r') as f: reader = csv.reader(f, dialect='excel_semicolon') for row in reader: if len(row) != 4: continue product = Product(row[0], row[1], row[2], row[3]) self.products.append(product) num_products = len(self.products) if num_products: logger.info("%d producten uit database ingeladen" % num_products) else: logger.warn("Productdatabase is leeg")
def addToFile(self, method): row = [0] * (len(self.productDb) + 2) row[0] = time.strftime('%H:%M:%S') row[1] = method with open(self.filename, 'r') as f: reader = csv.reader(f, dialect='excel_semicolon') headerrow = next(reader) with open(self.filename, 'a') as f: writer = csv.writer(f, dialect='excel_semicolon') for entry in self.contents: idx = -1 for i, name in enumerate(headerrow): if name == entry[1]: idx = i break if idx == -1: logger.warn('Het product %s is niet gevonden in de rawX' % entry[1]) return row[idx] += entry[0] writer.writerow(row)
def export(self): date = -1 for f in os.listdir(os.path.join(get_data_dir(), 'raw')): if date < int(f.split('_')[0]): date = int(f.split('_')[0]) if date == -1: return logger.warn("Geen raw rapportage gevonden") proc = Processor( os.path.join(get_data_dir(), 'raw', '%s_raw.csv' % date)) proc.process() os.startfile(proc.outfile) logger.info("Geƫxporteerd naar %s_proc.csv" % str(date))
def pay(self, method, retour=False): if self.cart.isCheckedOut(): return logger.warn('Deze transactie is al afgerekend') if self.cart.isEmpty(): return self.lastMethod = method if retour: self.cart.negate() self.updateReceipt() self.cart.checkOut(method) self.ui.amountList.setStyleSheet(PROCESSED_STYLE) self.ui.productList.setStyleSheet(PROCESSED_STYLE) self.ui.priceList.setStyleSheet(PROCESSED_STYLE) self.ui.totalAmountLineEdit.setStyleSheet(PROCESSED_STYLE) self.ui.totalPriceLineEdit.setStyleSheet(PROCESSED_STYLE) self.setPage(list(self.pages.keys())[1])