def insert_item_lista(self, data): produto = data.split(',') quantidade = '' if len(produto) < 2 else produto[1].strip() semana, ano = get_semana_ano() secao = ItensLista.OUTROS produto = produto[0].strip().title() ultimo_item_lista = ItensLista.objects.all().filter(produto=produto) ultimo_item_lista = ultimo_item_lista.order_by('-ano', '-semana') if ultimo_item_lista: secao = ultimo_item_lista.first().secao ItensLista.objects.update_or_create( produto=produto, semana=semana, ano=ano, defaults={ 'quantidade': quantidade, 'secao': secao }, ) return 'Ok, anotado!'
def lista_da_semana(self): semana, ano = get_semana_ano() return self.filter(semana=semana, ano=ano).order_by('secao', 'produto')
from datetime import datetime from django.db import models from myjarvisbot.jarvis.managers import ListaDaSemanaManager from myjarvisbot.utils.semana_ano import get_semana_ano SEMANA, ANO = get_semana_ano() class ItensLista(models.Model): CEREAIS = 10 MERCEARIA = 20 FRIOS = 30 PADARIA = 35 HORTIFRUTI = 40 CARNES = 50 HIGIENE = 60 LIMPEZA = 70 BEBIDAS = 80 OUTROS = 90 SECOES = ((CEREAIS, 'CEREAIS'), (MERCEARIA, 'MERCEARIA'), (FRIOS, 'FRIOS'), (PADARIA, 'PADARIA'), (HORTIFRUTI, 'HORTIFRUTI'), (CARNES, 'CARNES'), (HIGIENE, 'HIGIENE'), (LIMPEZA, 'LIMPEZA'), (BEBIDAS, 'BEBIDAS'), (OUTROS, 'OUTROS')) semana = models.PositiveSmallIntegerField(default=SEMANA) ano = models.PositiveSmallIntegerField(default=ANO) produto = models.CharField(max_length=50) quantidade = models.CharField(max_length=10, default='', blank=True) secao = models.PositiveSmallIntegerField('seção', choices=SECOES,