def __init__(self, width, height): super(FactuurData, self).__init__(width, height) # Layout settings self.labelWidth = 23 self.minValueWidth = 20 self.otherPartyLabel = Label(0, 1, "Vereniging/Leverancier") self.otherPartyValue = VerenigingLine(1) self.leverDatumLabel = Label(0, 1, "Leverdatum") self.leverDatumValue = Textline(0) self.separatorFill = Fill(0, 0, '|') self.verantwoordelijkeLabel = Label(0, 1, "Verantwoordelijke") self.verantwoordelijkeValue = Textline(0) self.specialBudgetLabel = Label(0, 1, "Speciaal budget") self.specialBudgetValue = BudgetLine(1) self.typeValue = Optionbox(1, 1) self.typeValue.addOption('inkoop') self.typeValue.addOption('verkoop') self.btwValue = Optionbox(1, 1) self.btwValue.addOption('metbtw') self.btwValue.addOption('zonderbtw') self.typeValueIdx = self.addChild(0, 0, self.typeValue) self.btwValueIdx = self.addChild(0, 0, self.btwValue) self.otherPartyLabelIdx = self.addChild(0, 0, self.otherPartyLabel) self.otherPartyValueIdx = self.addChild(0, 0, self.otherPartyValue) self.leverDatumLabelIdx = self.addChild(0, 0, self.leverDatumLabel) self.leverDatumValueIdx = self.addChild(0, 0, self.leverDatumValue) self.separatorFillIdx = self.addChild(0, 0, self.separatorFill) self.verantwoordelijkeLabelIdx = self.addChild( 0, 0, self.verantwoordelijkeLabel) self.verantwoordelijkeValueIdx = self.addChild( 0, 0, self.verantwoordelijkeValue) self.specialBudgetLabelIdx = self.addChild(0, 0, self.specialBudgetLabel) self.specialBudgetValueIdx = self.addChild(0, 0, self.specialBudgetValue) self.resize(width, 0)
def __init__(self, width, height, vereniging_list, manager): super(verenigingList, self).__init__(width, height) self.manager = manager self.header = Label(width, 1, "Madmin ReTeX", curses.A_REVERSE) self.listbox = Listbox(width, height - 2) for vereniging_info in vereniging_list: self.listbox.append( verenigingListItem(width, vereniging_info, manager)) self.headerId = self.addChild(0, 0, self.header) self.listboxId = self.addChild(0, 2, self.listbox)
def __init__(self, width, height): super(FactuurInputHeader, self).__init__(width, height) self.totalWeight = 0 self.fieldLabel = [] self.fieldLabelIdx = [] for i in range(0, len(_regelLayout)): self.totalWeight += _regelLayout[i][1] self.fieldLabel.append(Label(0,0,_regelLayout[i][0], curses.A_BOLD)) self.fieldLabelIdx.append(self.addChild(0,0,self.fieldLabel[-1])) self.resize(width, height)
def __init__(self, width, height, facturen, manager): super(factuurList, self).__init__(width, height) if 'vereniging_id' in facturen[0]: self.name = getVerenigingNaam(facturen[0]['vereniging_id']).encode('utf-8') else: self.name = "Leveranciers en overige" self.manager = manager self.header = Label(width, 1, self.name, curses.A_REVERSE) self.factuurListbox = Listbox(width, height-2) for factuur in reversed(facturen): self.factuurListbox.append(factuurListItem(width, factuur, manager)) self.factuurListboxIndex = self.addChild(0,2, self.factuurListbox) self.headerIndex = self.addChild(0,0, self.header)
def __init__(self, width, height, factuurregel): super(factuurRegel, self).__init__(width, height) self.factuurRegel = factuurregel self.totalWeight = 0 self.fieldLabel = [] self.fieldLabelIdx = [] for i in range(0, len(_regelLayout)): self.totalWeight += _regelLayout[i][2] self.fieldLabel.append( Label(0, 0, _regelLayout[i][3](factuurregel[_regelLayout[i][1]]))) self.fieldLabelIdx.append(self.addChild(0, 0, self.fieldLabel[-1])) self.resize(width, height)
def __init__(self, width, height): super(FactuurInput, self).__init__(width, height) self.factuurData = FactuurData(1, 1) self.factuurListHeader = FactuurInputHeader(1, 1) self.factuurRegelList = FactuurRegelList(1, 1) self.statusLine = Label(1, 1, "") self.submitButton = Button(1, 1, self.sendFactuur, "Submit") self.factuurListHeaderIdx = self.addChild(0, 0, self.factuurListHeader) self.statusLineIdx = self.addChild(0, 0, self.statusLine) self.submitButtonIdx = self.addChild(0, 0, self.submitButton) self.factuurDataIdx = self.addChild(0, 0, self.factuurData) self.factuurRegelListIdx = self.addChild(0, 0, self.factuurRegelList) self.resize(width, height)
def __init__(self, width, height, facturen, manager): super(factuurOverigeList, self).__init__(width, height) self.manager = manager self.header = Label(width, 1, "Leveranciers en overige", curses.A_REVERSE) self.factuurOverigeListbox = Listbox(width, height-2) self.groups = {} self.ordering = [] for factuur in reversed(facturen): if factuur["leverancier"] not in self.groups.keys(): self.groups[factuur["leverancier"]] = [] self.ordering.append(factuur["leverancier"]) self.groups[factuur["leverancier"]].append(factuur) for key in self.ordering: self.factuurOverigeListbox.append(factuurOverigeListItem(width, str(key), self.groups[key][::-1], manager)) self.factuurOverigeListboxIndex = self.addChild(0,2, self.factuurOverigeListbox) self.headerIndex = self.addChild(0,0, self.header)
def __init__(self, width, height, factuur): super(factuurInfobox, self).__init__(width, height) #Associated data object self.factuur = factuur #Layout settings self.labelWidth = 19 self.minValueWidth = 20 if 'vereniging_id' in factuur: self.otherPartyLabel = Label(0, 1, "Vereniging:") self.otherPartyValue = Label( 0, 1, getVerenigingNaam(factuur['vereniging_id']).encode('utf-8')) else: self.otherPartyLabel = Label(0, 1, "Leverancier:") self.otherPartyValue = Label( 0, 1, factuur['leverancier'].encode('utf-8')) self.volgnummerLabel = Label(0, 1, "Volgnummer:") self.volgnummerValue = Label(0, 1, str(factuur['volgnummer'])) self.factuurDatumLabel = Label(0, 1, "Factuurdatum:") self.factuurDatumValue = Label(0, 1, factuur['factuurdatum'].encode('utf-8')) self.leverDatumLabel = Label(0, 1, "Leverdatum:") self.leverDatumValue = Label(0, 1, factuur['leverdatum'].encode('utf-8')) self.separatorFill = Fill(0, 0, '|') self.separatorFillIdx = self.addChild(0, 0, self.separatorFill) self.hasVerantwoordelijke = False if 'verantwoordelijke' in factuur: self.hasVerantwoordelijke = True self.verantwoordelijkeLabel = Label(0, 1, "Verantwoordelijke:") self.verantwoordelijkeValue = Label( 0, 1, factuur['verantwoordelijke'].encode('utf-8')) self.otherPartyLabelIdx = self.addChild(0, 0, self.otherPartyLabel) self.otherPartyValueIdx = self.addChild(0, 0, self.otherPartyValue) self.volgnummerLabelIdx = self.addChild(0, 0, self.volgnummerLabel) self.volgnummerValueIdx = self.addChild(0, 0, self.volgnummerValue) self.factuurDatumLabelIdx = self.addChild(0, 0, self.factuurDatumLabel) self.factuurDatumValueIdx = self.addChild(0, 0, self.factuurDatumValue) self.leverDatumLabelIdx = self.addChild(0, 0, self.leverDatumLabel) self.leverDatumValueIdx = self.addChild(0, 0, self.leverDatumValue) if self.hasVerantwoordelijke: self.verantwoordelijkeLabelIdx = self.addChild( 0, 0, self.verantwoordelijkeLabel) self.verantwoordelijkeValueIdx = self.addChild( 0, 0, self.verantwoordelijkeValue) self.resize(width, 0)
def __init__(self, width, height, factuur, manager): super(factuurDetail, self).__init__(width, height) #Associated data object self.factuur = factuur self.manager = manager self.infobox = factuurInfobox(width, 0, factuur) self.infoboxIdx = self.addChild(0, 0, self.infobox) self.factuurRegelHeader = factuurRegelHeader(width, 1) self.factuurRegelHeaderIdx = self.addChild(0, 0, self.factuurRegelHeader) self.factuurRegelBox = Listbox(width, 0) self.factuurRegelBoxIdx = self.addChild(0, 0, self.factuurRegelBox) self.factuurBorrelTotaal = 0 self.factuurKantineTotaal = 0 self.factuurEmballageTotaal = 0 self.factuurOverigeTotaal = 0 self.factuurBorrelTotaalOnafgerond = 0 self.factuurKantineTotaalOnafgerond = 0 self.factuurEmballageTotaalOnafgerond = 0 self.factuurOverigeTotaalOnafgerond = 0 for regel in factuur['regels']: self.factuurRegelBox.append(factuurRegel(width, 1, regel)) if 'prd_id' in regel: type = getProductType(regel['prd_id']) if type == 'kantine': self.factuurKantineTotaal += copysign( regel['totaalprijs'], regel['aantal']) self.factuurKantineTotaalOnafgerond += regel[ 'stukprijs'] * regel['aantal'] elif type == 'borrel': self.factuurBorrelTotaal += copysign( regel['totaalprijs'], regel['aantal']) self.factuurBorrelTotaalOnafgerond += regel[ 'stukprijs'] * regel['aantal'] elif type == 'emballage': self.factuurEmballageTotaal += copysign( regel['totaalprijs'], regel['aantal']) self.factuurEmballageTotaalOnafgerond += regel[ 'stukprijs'] * regel['aantal'] else: self.factuurOverigeTotaal += copysign( regel['totaalprijs'], regel['aantal']) self.factuurOverigeTotaalOnafgerond += regel[ 'stukprijs'] * regel['aantal'] else: self.factuurOverigeTotaal += copysign(regel['totaalprijs'], regel['aantal']) self.factuurOverigeTotaalOnafgerond += regel[ 'stukprijs'] * regel['aantal'] self.factuurBorrelTotaalLabel = Label( 0, 0, "Borreltotaal: " + moneyConvert(int(self.factuurBorrelTotaal))) self.factuurBorrelTotaalLabelIdx = self.addChild( 0, 0, self.factuurBorrelTotaalLabel) self.factuurBorrelmargeTotaalLabel = Label( 0, 0, "Borrelmargetotaal: " + moneyConvert(int(floor(self.factuurBorrelTotaal / 1.03)))) self.factuurBorrelmargeTotaalLabelIdx = self.addChild( 0, 0, self.factuurBorrelmargeTotaalLabel) self.factuurKantineTotaalLabel = Label( 0, 0, "Kantinetotaal: " + moneyConvert(int(self.factuurKantineTotaal))) self.factuurKantineTotaalLabelIdx = self.addChild( 0, 0, self.factuurKantineTotaalLabel) self.factuurEmballageTotaalLabel = Label( 0, 0, "Emballagetotaal: " + moneyConvert(int(self.factuurEmballageTotaal))) self.factuurEmballageTotaalLabelIdx = self.addChild( 0, 0, self.factuurEmballageTotaalLabel) self.factuurOverigeTotaalLabel = Label( 0, 0, "Overigetotaal: " + moneyConvert(int(self.factuurOverigeTotaal))) self.factuurOverigeTotaalLabelIdx = self.addChild( 0, 0, self.factuurOverigeTotaalLabel) self.factuurTotaalLabel = Label( 0, 0, "Totaal: " + moneyConvert( int(self.factuurBorrelTotaal + self.factuurKantineTotaal + self.factuurEmballageTotaal + self.factuurOverigeTotaal))) self.factuurTotaalLabelIdx = self.addChild(0, 0, self.factuurTotaalLabel) # added details: self.factuurBorrelTotaalOnafgerondLabel = Label( 0, 0, "Borreltotaal-onafgerond: " + moneyConvert(int(self.factuurBorrelTotaalOnafgerond))) self.factuurBorrelTotaalOnafgerondLabelIdx = self.addChild( 0, 0, self.factuurBorrelTotaalOnafgerondLabel) self.factuurKantineTotaalOnafgerondLabel = Label( 0, 0, "Kantinetotaal-onafgerond: " + moneyConvert(int(self.factuurKantineTotaalOnafgerond))) self.factuurKantineTotaalOnafgerondLabelIdx = self.addChild( 0, 0, self.factuurKantineTotaalOnafgerondLabel) self.factuurEmballageTotaalOnafgerondLabel = Label( 0, 0, "Emballagetotaal-onafgerond: " + moneyConvert(int(self.factuurEmballageTotaalOnafgerond))) self.factuurEmballageTotaalOnafgerondLabelIdx = self.addChild( 0, 0, self.factuurEmballageTotaalOnafgerondLabel) self.factuurOverigeTotaalOnafgerondLabel = Label( 0, 0, "Overigetotaal-onafgerond: " + moneyConvert(int(self.factuurOverigeTotaalOnafgerond))) self.factuurOverigeTotaalOnafgerondLabelIdx = self.addChild( 0, 0, self.factuurOverigeTotaalOnafgerondLabel) self.factuurTotaalOnafgerondLabel = Label( 0, 0, "Totaal-onafgerond: " + moneyConvert( int(self.factuurBorrelTotaalOnafgerond + self.factuurKantineTotaalOnafgerond + self.factuurEmballageTotaalOnafgerond + self.factuurOverigeTotaalOnafgerond))) self.factuurTotaalOnafgerondLabelIdx = self.addChild( 0, 0, self.factuurTotaalOnafgerondLabel) self.factuurAfrondingLabel = Label( 0, 0, "Afronding: " + moneyConvert( int(self.factuurBorrelTotaalOnafgerond - self.factuurBorrelTotaal + self.factuurKantineTotaalOnafgerond - self.factuurKantineTotaal + self.factuurEmballageTotaalOnafgerond - self.factuurEmballageTotaal + self.factuurOverigeTotaalOnafgerond - self.factuurOverigeTotaal))) self.factuurAfrondingLabelIdx = self.addChild( 0, 0, self.factuurAfrondingLabel) self.resize(width, height)