Beispiel #1
0
def readCsvFile(fname, parent):
	model = WStandardItemModel(0, 0, parent);
    	try:
    		f = open(fname);
		CsvUtil.readFromCsv(f, model);
                for row in range(model.rowCount()):
                  for col in range(model.columnCount()):
                    model.item(row, col).setFlags(ItemIsSelectable | ItemIsEditable);
		return model
	except IOError, e:
      		error = WString.tr("error-missing-data");
      		error.arg(fname, UTF8);
      		WText(error, parent);
      		return None;
Beispiel #2
0
def readCsvFile(fname, parent):
    model = WStandardItemModel(0, 0, parent)
    try:
        f = open(fname)
        CsvUtil.readFromCsv(f, model)
        for row in range(model.rowCount()):
            for col in range(model.columnCount()):
                model.item(row,
                           col).setFlags(ItemIsSelectable | ItemIsEditable)
        return model
    except IOError, e:
        error = WString.tr("error-missing-data")
        error.arg(fname, UTF8)
        WText(error, parent)
        return None
Beispiel #3
0
def getCsvProdsToFix():
    filenames = gui.csvList

    prodstofix = []
    for file in filenames:
        filepath = gui.getFilePath(file)

        if (filepath):
            prodstofix.extend(CsvUtil.getColumn(filepath, "id"))

    return prodstofix
Beispiel #4
0
  def populateFiles(self):
    self.fileModel.invisibleRootItem().setRowCount(0)

    f = open(self.appRoot() + "data/files.csv")
    #if (not f):
    #  raise Exception("Could not read: data/files.csv")
    CsvUtil.readFromCsv(f, self.fileModel)

    for i in range(self.fileModel.rowCount()):
      item = self.fileModel.item(i, 0)
      item.setFlags(item.flags() | ItemIsDragEnabled)
      item.setIcon("icons/file.gif")

      folderId = item.text().toUTF8()

      item.setData(folderId, UserRole)
      item.setText(self.folderNameMap[folderId])

      self.convertToDate(self.fileModel.item(i, 4))
      self.convertToDate(self.fileModel.item(i, 5))
Beispiel #5
0
    def populateFiles(self):
        self.fileModel.invisibleRootItem().setRowCount(0)

        f = open(self.appRoot() + "data/files.csv")
        #if (not f):
        #  raise Exception("Could not read: data/files.csv")
        CsvUtil.readFromCsv(f, self.fileModel)

        for i in range(self.fileModel.rowCount()):
            item = self.fileModel.item(i, 0)
            item.setFlags(item.flags() | ItemIsDragEnabled)
            item.setIcon("icons/file.gif")

            folderId = item.text().toUTF8()

            item.setData(folderId, UserRole)
            item.setText(self.folderNameMap[folderId])

            self.convertToDate(self.fileModel.item(i, 4))
            self.convertToDate(self.fileModel.item(i, 5))
def exportToCsv():

    global results

    if results is None:
        gui.setStatus("There are no results to export.")
        return

    for key in results:
        results[key].insert(0, key)

    print(results)

    zipped = zip(results['created_at'], \
                    results['action'], \
                    results['entity_type'], \
                    results['entity_id'], \
                    results['unwrapped_error'])

    filepath = cu.writeListToCSV(output=zipped,
                                 title=f'channels-ticket{gui.getTicketNum()}',
                                 prefix=gui.getPrefix())

    gui.setStatus(f"Exported to {filepath}.")
Beispiel #7
0
# -*- coding: utf-8 -*-
import CsvUtil

if __name__ == '__main__':
    categories, samples = CsvUtil.read_csv("../resources/watermelon.csv")
    for s in samples:
        if s[-1] == '是':
            print('nice')
        else:
            print(s[1])
Beispiel #8
0
import CsvUtil as cu
import requests
import datetime


domain = ''
token = ''

csvfile = '.csv'

delay= 0.5
api = VendApi(domain, token)

products = api.getProducts()

skus = cu.getColumn(csvfile, 'sku')
handles = cu.getColumn(csvfile, 'handle')
links = cu.getColumn(csvfile, 'image_url')

failedskus = ['sku']
failedhandles = ['handle']
failedlinks = ['image_url']

def getSkuHandleToProdId(products):
    skuhandlemap = {}

    for p in products:
        sku = p['sku']
        handle = p['handle']
        pid = p['id']
import CsvUtil as cu
import time
import JsonUtil as ju
import datetime as dt
import sys, getopt



customercsv = '.csv'

emailtocodeLookup = {}

code_to_keep = ['merging_customer_code']
code_to_delete = ['deleting_customer_code']

emails = cu.getColumn(customercsv, "email")
cust_codes = cu.getColumn(customercsv, "customer_code")

i = 0

while i < len(emails):
    curr_email = emails[i].lower()
    curr_code = cust_codes[i]

    lookupcode = emailtocodeLookup.get(curr_email)

    if lookupcode is None:
        emailtocodeLookup[curr_email] = curr_code
        i += 1
        continue
if __name__ == '__main__':

    testjson = ju.loadJsonFile('test.json')
    testfiles = testjson['testfiles']
    denominations = testjson['denominations']

    results = []

    for denomination in denominations:
        results.append([str(denomination)])
        for testfile in testfiles:

            print(f"Running {testfile} : {denomination}...")

            totals = cu.getColumn(testfile, 'sale_total')
            paids = cu.getColumn(testfile, 'amount')

            newAlgo3 = runTest(qca.getQuickCash,
                               totals,
                               paids,
                               numSuggestions=3,
                               sortedDenom=denomination)
            newAlgo2 = runTest(qca.getQuickCash,
                               totals,
                               paids,
                               numSuggestions=2,
                               sortedDenom=denomination)
            oldAlgo = runTest(qca.getQuickCashOld,
                              totals,
                              paids,
Beispiel #11
0
import CsvUtil as cu
from VendApi import *
import time
import JsonUtil as ju
import datetime as dt
import sys, getopt

prefix = ''
token = ''

mergecsv = '.csv'

deletecusts = cu.getColumn(mergecsv, "deleting_customer_code")
mergingcusts = cu.getColumn(mergecsv, "merging_customer_code")

delay = .8

api = VendApi(prefix, token)

print(f"Retrieving customers for {prefix}.vendhq.com...")
customers = api.getCustomers()

custToId = {}

failed_ids = ['customer_id']
failed_sales = ['sale']
failed_codes = ['status_code']
failed_response = ['response']

registers = api.getRegisters('true')
regidlookup = {}
Beispiel #12
0
domain = ''
token = ''
csvfile = 'all'

delay = 0.7

api = VendApi(domain, token)

products = api.getProducts()
prodidtoobj = api.getKeyToObjs(products, 'id')
prodtoprocess = []

prodids = []

if csvfile != 'all':
    prodids = cu.getColumn(csvfile, 'id')
    for pid in prodids:
        prodobj = prodidtoobj.get(pid)

        if prodobj is None:
            print(f"{pid} not found in lookup...")
            continue

        prodtoprocess.append(prodobj)
else:
    prodtoprocess = products

# get the prod objects

print(f'Found {len(prodtoprocess)} products to process...')
import CsvUtil as cu
from VendApi import *
import time
import JsonUtil as ju
import datetime as dt


prefix = ''
token = ''
csvFile = '.csv'
column = 'id'

consignments = cu.getColumn(csvFile, column)
api = VendApi(prefix, token)

errored = []
errored_response = []

def getConsignmentProducts(id):
    result = api.getConsigmentProducts(id)
    #print(result)
    
    return result

def reversion(getObj):
    return api.reversionConsigmentProducts(getObj)

def reversionsProducts(cons_prods, results, errored):

    for cp in cons_prods:
        #print(cp)