def get_appliances_for_logged_in_user(self): email = self.session['email'] role = self.session['role'] appliances = [] stores = Store.all().filter(role + ' =', email) for store in stores: appliances.extend([appliance for appliance in Appliance.all().filter('store =', store).fetch(100)]) return appliances
def appliance_mapper(member, role_name): fields = member['fields'] appliance_obj = Appliance.all().filter('airtable_id =', fields['Appliance_Id']).get() if not appliance_obj: appliance_obj = Appliance() appliance_obj.name = fields['Appliance Name'][0] appliance_obj.serial_num = fields['Serial #'] appliance_obj.model = fields['Model #'] appliance_obj.manufacturer = fields['Manufacturer'][0] appliance_obj.store = obj_map[fields['Store'][0]] appliance_obj.airtable_id = fields['Appliance_Id'] appliance_obj.put()
def get_work_orders_for_logged_in_user(self): email = self.session['email'] workorders = [] if is_store_login(self): appliances = [] stores = Store.all().filter(self.session['role'] + ' =', email) for store in stores: appliances.extend([appliance.id for appliance in Appliance.all().filter('store =', store).fetch(100)]) for appliance in appliances: workorders.extend([wo for wo in WorkOrder.all().filter('appliance =', str(appliance))]) elif is_provider_login(self): providers = [p for p in Provider.all().fetch(100) if p.owner.key().name() == email] for provider in providers: workorders.extend([wo for wo in WorkOrder.all().filter('provider =', str(provider.key().id()))]) return workorders
def get(self): email = self.session["email"] role = self.session["role"] stores = Store.all().filter(role + " =", email).order("name") if stores.count() > 1: self.session["bottom_menu_1"] = "Stores" elif stores.count() == 1: self.session["bottom_menu_1"] = "Appliances" store_appliances = [] for store in stores: appliances = [appliance for appliance in Appliance.all().filter("store =", store).fetch(100)] store_appliances.append((store, appliances)) path = "appliances.html" template_values = {"store_appliances": store_appliances, "count": len(store_appliances)} self.write(self.get_rendered_html(path, template_values), 200)