Пример #1
0
 def get(self):
     companies = CompanyNew.query().fetch()
     for company in companies:
         try:
             get_menu(company.iiko_org_id, force_reload=True)
         except Exception as e:
             logging.exception(e)
Пример #2
0
    def get(self):
        companies = CompanyNew.query().fetch()
        companies_dict = {}
        for company in companies:
            companies_dict[company.iiko_org_id] = self.get_square_table(
                company)

        JsonStorage.save("square_table", companies_dict)
Пример #3
0
 def get(self):
     companies = CompanyNew.query().fetch()
     for company in companies:
         if not company.menu:
             continue
         try:
             deferred.defer(_defer_load_images, company.iiko_org_id, 0)
         except Exception as e:
             logging.exception(e)
Пример #4
0
 def post(self):
     companies = CompanyNew.query().fetch()
     for company in companies:
         if PushAdmin.query(PushAdmin.company == company.key).get():
             continue
         login = company.app_title or company.app_name[0] or company.iiko_org_id
         success, info = PushAdmin.create(login.strip().lower(), company.key, '0000')
         if not success:
             logging.info(info)
             self.abort(500)
     self.redirect_to('push_admin_main')
Пример #5
0
 def dispatch(self):
     company_id = self.request.get("organizationId")
     if company_id:
         self.company = CompanyNew.get_by_id(int(company_id))
     if not self.company:
         ua = self.request.headers["User-Agent"]
         name = ua.split('/', 1)[0].lower().strip()
         self.company = CompanyNew.query(CompanyNew.app_name == name).get()
     if not self.company:
         self.abort(400)
     return super(AlfaBaseHandler, self).dispatch()
Пример #6
0
 def get(self):
     org_id = self.request.get("selected_company")
     if org_id == "0":
         org_id = None
     start, end = self.get_date_range()
     change_dicts = []
     for company in (CompanyNew.query().fetch() if not org_id else
                     [CompanyNew.get_by_iiko_id(org_id)]):
         for order in Order.query(Order.venue_id == company.iiko_org_id,
                                  Order.date > start,
                                  Order.date < end).fetch():
             if order.status != Order.CLOSED:
                 continue
             for log in OrderChangeLog.query(
                     OrderChangeLog.order_id == order.order_id).fetch():
                 for change in log.changes:
                     if change.what == 'sum':
                         change_dicts.append({
                             'company':
                             company.app_title,
                             'day':
                             order.date,
                             'number':
                             order.number,
                             'status':
                             Order.STATUS_MAPPING[order.status][0],
                             'type':
                             PaymentType.PAYMENT_MAP[order.payment_type],
                             'old':
                             change.old,
                             'new':
                             change.new
                         })
     return self.render_report(
         'changes', {
             'companies': CompanyNew.query().fetch(),
             'chosen_company': CompanyNew.get_by_iiko_id(org_id),
             'start': start,
             'end': end,
             'changes': change_dicts
         })
Пример #7
0
    def post(self):
        logging.info(self.request.POST)

        text = self.request.get('text')
        full_text = self.request.get('full_text')
        head = self.request.get('head')
        companies = CompanyNew.query().fetch()
        android_avail = bool(self.request.get('android'))
        ios_avail = bool(self.request.get('ios'))
        chosen_companies = [
            company.key.id() for company in companies
            if bool(self.request.get(str(company.key.id())))
        ]

        push_venues(chosen_companies, full_text, text, head, android_avail,
                    ios_avail, 'admins', jinja2.get_jinja2(app=self.app))

        self.redirect_to('mt_push_history')
Пример #8
0
 def get(self):
     square_list = JsonStorage.get("square_table")
     companies = CompanyNew.query().fetch()
     if square_list:
         for square in square_list.values():
             for row in square:
                 for cell in row:
                     cell["begin"] = datetime.fromtimestamp(cell["begin"])
                     cell["end"] = datetime.fromtimestamp(cell["end"])
         company_id = self.request.get_range('selected_company')
         if not company_id:
             company_id = CompanyNew.get_by_iiko_id(
                 CompanyNew.ORANGE_EXPRESS).key.id()
         self.render('reports/square_table.html',
                     square=square_list,
                     chosen_company=CompanyNew.get_by_id(company_id),
                     companies=companies)
     else:
         self.response.write("Report not ready")
Пример #9
0
 def get(self):
     for company_key in CompanyNew.query().fetch(keys_only=True):
         deferred.defer(_load_streets, company_key)
Пример #10
0
 def get(self):
     companies = CompanyNew.query().fetch()
     self.render('/pushes.html', companies=companies, has_choices=True)
Пример #11
0
 def get(self):
     companies = CompanyNew.query().fetch()
     self.render('/mt/pushes.html', companies=companies, has_choices=False, user=self.user)