Beispiel #1
0
 def post(self, *args, **kwargs):
     recipient_form = RequisitesForm(self.request.arguments)
     bill_content_form = BillContentForm(self.request.arguments)
     if not (recipient_form.validate() and bill_content_form.validate()):
         if not recipient_form.validate():
             logging.debug(u'Форма получателя не валидна.')
         if not bill_content_form.validate():
             logging.debug(u'Форма содержимого не валидна.')
         self.context.update({'title': u'Создание счёта',
                              'module_name': url_base,
                              'sender': RequisitesDB.get_one({'inn': '772160030650'}),
                              'recipient': recipient_form,
                              'bill_content': bill_content_form,
                              'bill_num': Counter.next_key('bill'),
                              'date': datetime.now(),
                              })
         self.render(tmpl('create'))
     else:
         req = RequisitesDB.create_from_data(recipient_form.data)
         contr = ContactorDB.create(self.user_id, req['_id'])['_id']
         items_from_form = bill_content_form.data['items']
         items = []
         for i in items_from_form:
             if i['count'] > 0.0 and i['name']:
                 items.append(i)
         cont = ContentDB.create(items)['_id']
         bill_num = Counter.next_key('bill')
         date = datetime.now()
         sender_user = UserDB.get_one({'id': 1})
         bill = BillDB.create_simple(sender_user['_id'], contr, cont, bill_num, date)
         logging.debug(u'Счёт сохранен.')
         self.redirect('/%s/full/%s' % (url_base, bill['_id']))
Beispiel #2
0
def create_context_by_bill(bill):
    sender_req = RequisitesDB.get_by_id(UserDB.get_by_id(bill['user'])['requisites'])
    recipient_req = RequisitesDB.get_by_id(ContactorDB.get_by_id(bill['contractor'])['requisites'])
    items = ContentDB.get_by_id(bill['content'])['items']
    return create_context(sender_req, recipient_req, bill['number'], bill['date_created'], items)
Beispiel #3
0
 def user_obj(self):
     u_id = self.session.get('user_id', None)
     if u_id:
         return UserDB.get_by_id(u_id)
     else:
         return None
Beispiel #4
0
 def test_common(self):
     assert os.path.exists(TMP_DUMPS_NAME)
     create_dumps(TMP_DUMPS_NAME)
     load_from_dumps(TMP_DUMPS_NAME)
     assert UserDB.get_count() > 0
Beispiel #5
0
 def get(self):
     self.context.update({'title': u'Профиль',
                          'user': UserDB.get_full(self.user_obj['_id'])
                     })
     self.render(tmpl('profile'))
Beispiel #6
0
 def test_em(self):
     for curr in UserDB.get_cursor(fields=["emailsettings"]):
         assert EmailSettingsDB.exists(curr["emailsettings"])
Beispiel #7
0
 def test_r(self):
     for curr in UserDB.get_cursor(fields=["requisites"]):
         assert RequisitesDB.exists(curr["requisites"])
Beispiel #8
0
 def test_account(self):
     for curr in AccountDB.get_cursor(fields=["user"]):
         if curr["user"]:
             assert UserDB.exists(curr["user"])
Beispiel #9
0
 def test_r(self):
     for curr in UserDB.get_cursor(fields=['requisites']):
         assert RequisitesDB.exists(curr['requisites'])
Beispiel #10
0
 def test_account(self):        
     for curr in AccountDB.get_cursor(fields=['user']):
         if curr['user']:
             assert UserDB.exists(curr['user'])