|
|
@ -0,0 +1,57 @@ |
|
|
|
from django.db.models import Q |
|
|
|
from fridge.models import * |
|
|
|
from general.models import * |
|
|
|
from general.views import * |
|
|
|
from datetime import datetime, timedelta |
|
|
|
|
|
|
|
|
|
|
|
def add_new_food(request): |
|
|
|
openid = request.META['HTTP_X_WX_OPENID'] |
|
|
|
name = request.POST['name'] |
|
|
|
kind = request.POST['kind'] |
|
|
|
amount = request.POST['amount'] |
|
|
|
unit = request.POST['unit'] |
|
|
|
food_type = FoodType.objects.get(name=name, kind=kind) |
|
|
|
obj = FoodStock.objects.create(type=food_type, amount=amount, unit=unit, owner_id=openid) |
|
|
|
obj.date += timedelta(hours=8) |
|
|
|
obj.save() |
|
|
|
return JsonResponse({'message': "success"}) |
|
|
|
|
|
|
|
|
|
|
|
def search_food_type(request): |
|
|
|
content = request.GET['content'] |
|
|
|
print(content) |
|
|
|
results = FoodType.objects.filter(Q(name__contains=content) | Q(kind__contains=content)).values() |
|
|
|
results = process_json(results) |
|
|
|
return JsonResponse({'result': results}) |
|
|
|
|
|
|
|
|
|
|
|
def get_food_stock(request): |
|
|
|
openid = request.META['HTTP_X_WX_OPENID'] |
|
|
|
day_limit = int(request.GET['day_limit']) |
|
|
|
results = FoodStock.objects.filter(owner_id=openid, is_active=1).values() |
|
|
|
for item in results: |
|
|
|
del item['owner_id'] |
|
|
|
del item['is_active'] |
|
|
|
item['kind'] = FoodType.objects.get(id=item['type_id']).kind |
|
|
|
item['name'] = FoodType.objects.get(id=item['type_id']).name |
|
|
|
item['days'] = (datetime.now()+timedelta(hours=8)-item['date']).days |
|
|
|
item['date'] = str(item['date'])[:16] |
|
|
|
item['outdated'] = 1 if item['days'] >= day_limit else 0 |
|
|
|
del item['type_id'] |
|
|
|
results = process_json(results) |
|
|
|
return JsonResponse({'result': results}) |
|
|
|
|
|
|
|
|
|
|
|
def change_food_stock(request): |
|
|
|
openid = request.META['HTTP_X_WX_OPENID'] |
|
|
|
stock_id = request.POST['id'] |
|
|
|
new_percentage = request.POST['percentage'] |
|
|
|
stock = FoodStock.objects.filter(id=stock_id) |
|
|
|
stock.update(percentage=new_percentage) |
|
|
|
if new_percentage == '0': |
|
|
|
stock.update(is_active=0) |
|
|
|
return JsonResponse({'message': 'Successfully updated!'}) |
|
|
|
|
|
|
|
|
|
|
|
|