def getHouseholdIDsQuery(self): '''Get query for generating a list of households that match a users selection criteria''' projectid = self.getProjectID() selectedHChars = self.getSelectedHouseholdCharacteristics() selectedPChars = self.getSelectedPersonalCharacteristics() selectedhouseholds = self.getHouseholdsSelection() connector = DisposableHouseholdIncome() householdIDsQuery = connector.buildReportHouseholdIDsQuery(projectid,selectedhouseholds,selectedPChars,selectedHChars) return householdIDsQuery
def getReportHouseholdIDs (self): '''Get a list of households that match a users selection criteria -i.e Household names + Personal Characteristics and Household Characteristics''' selectedids = [] householdIDsQuery =self.getHouseholdIDsQuery() connector = DisposableHouseholdIncome() householdIDs = connector.getReportHouseholdIDs(householdIDsQuery) for hid in householdIDs: selectedids.append(str(hid[0])) return selectedids
def getDISortedHouseholdIDs(self): """ Returns list of household IDs ordered according to DI/AE, from poorest to richest""" householdIDs = self.getReportHouseholdIDs() pid = self.getProjectID() reporttype = 'DI/AE' connector = DisposableHouseholdIncome() disposableincome = connector.householdDisposableIncome(reporttype,pid,householdIDs) houseids = [] for row in disposableincome: houseids.append(row[0]) return houseids
def getNormalDIReportTable (self): '''Get report table''' pid = self.getProjectID() householdIDs = self.getReportHouseholdIDs() reporttype = 'Simulation' connector = DisposableHouseholdIncome() simconnector = SimulationDisposableHouseholdIncome() writeconnector = HouseholdsIncomeWrite() normalDIreportTable = connector.householdDisposableIncome(reporttype,pid,householdIDs) simulationDIreportTable = simconnector.householdDisposableIncome(reporttype,pid,householdIDs) writeconnector.writeSpreadsheetReport(normalDIreportTable,simulationDIreportTable) return simulationDIreportTable