Advertisement
Guest User

Untitled

a guest
Apr 2nd, 2020
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.92 KB | None | 0 0
  1. import datetime
  2. from django.contrib import messages
  3. from django.contrib.auth import authenticate, login, logout
  4. from django.http import HttpResponse, HttpResponseRedirect
  5. from django.shortcuts import render, redirect
  6. from restro.EmailBackEnd import EmailBackEnd
  7. from .models import*
  8. from django.views.generic import TemplateView
  9. from django.views.generic import ListView
  10. from django.contrib.auth.decorators import login_required
  11. #json
  12. from django.views.generic import View
  13. from django.http import JsonResponse
  14. #api
  15. from django.http import HttpResponse
  16. from django.shortcuts import get_object_or_404
  17. from rest_framework.views import APIView
  18. from rest_framework.response import Response
  19. from rest_framework import status
  20. from . models import RecommendationDish
  21. from . serializer import RecommendationDishSerializer
  22. # from django.contrib.auth import login as auth_login
  23.  
  24. # Create your views here.
  25. def user_login(request):
  26. return render(request,'restro/login.html')
  27.  
  28. def doLogin(request):
  29. if request.method!="POST":
  30. return HttpResponse("<h2>Method not allowed</h2>")
  31. else:
  32. user = EmailBackEnd.authenticate(request, username=request.POST.get("email"), password=request.POST.get("password"))
  33. if user!=None:
  34. login(request, user)
  35. if user.user_type == "1":
  36. return HttpResponseRedirect('/manager_home')
  37. elif user.user_type == "2":
  38. return HttpResponseRedirect('/order')
  39. elif user.user_type == "3":
  40. return HttpResponse("Waiter login" + str(user.user_type))
  41. elif user.user_type == "4":
  42. return HttpResponse("Chef login" + str(user.user_type))
  43. else:
  44. messages.error(request, "Invalid Login Details")
  45. return HttpResponseRedirect("/")
  46.  
  47. def GetUserDetails(request):
  48. if request.user!=None:
  49. return HttpResponse("User "+request.user.email+" usertype: "+request.user.user_type)
  50. else:
  51. return HttpResponse("Please login first")
  52.  
  53. def logout_user(request):
  54. logout(request)
  55. return HttpResponseRedirect('/')
  56.  
  57. # @login_required(login_url='login')
  58. class OrdersView(ListView):
  59. model = TableOrder
  60. template_name = 'restro/restro_order.html'
  61. context_object_name = 'orders'
  62.  
  63. class CreateOrdersView(View):
  64. def get(self, request):
  65. sn1 = request.GET.get('sn', None)
  66. item1 = request.GET.get('item', None)
  67. qty1 = request.GET.get('qty', None)
  68. rate1 = request.GET.get('rate', None)
  69. total1 = request.GET.get('total', None)
  70.  
  71. obj = TableOrder.objects.create(
  72. sn=sn1,
  73. item=item1,
  74. qty=qty1,
  75. rate=rate1,
  76. total=total1
  77. )
  78.  
  79. user = {'id': obj.id, 'sn': obj.sn, 'item': obj.item, 'qty': obj.qty, 'rate': obj.rate, 'total': obj.total}
  80.  
  81. data = {
  82. 'user': user
  83. }
  84. return JsonResponse(data)
  85.  
  86. class UpdateOrdersView(View):
  87. def get(self, request):
  88. id1 = request.GET.get('id', None)
  89. sn1 = request.GET.get('sn', None)
  90. item1 = request.GET.get('item', None)
  91. qty1 = request.GET.get('qty', None)
  92. rate1 = request.GET.get('rate', None)
  93. total1 = request.GET.get('total', None)
  94.  
  95. obj = TableOrder.objects.get(id=id1)
  96. obj.sn = sn1
  97. obj.item = item1
  98. obj.qty = qty1
  99. obj.rate = rate1
  100. obj.total = total1
  101. obj.save()
  102.  
  103. user = {'id': obj.id, 'sn': obj.sn, 'item': obj.item, 'qty': obj.qty, 'rate': obj.rate, 'total': obj.total}
  104.  
  105. data = {
  106. 'user': user
  107. }
  108. return JsonResponse(data)
  109.  
  110. class DeleteOrdersView(View):
  111. def get(self, request):
  112. id1 = request.GET.get('id', None)
  113. TableOrder.objects.get(id=id1).delete()
  114. data = {
  115. 'deleted': True
  116. }
  117. return JsonResponse(data)
  118.  
  119. def beverage_list(request):
  120. beverageItem = BeverageItem.objects.all()
  121. return render(request,'restro/beverage_list.html', {'beverageItem':beverageItem})
  122.  
  123. class RecommendationDishList(APIView):
  124. def get(self, request):
  125. recommendationDish1=RecommendationDish.objects.all()
  126. serializer= RecommendationDishSerializer(recommendationDish1, many=True)
  127. return Response(serializer.data)
  128.  
  129. def post(self):
  130. pass
  131.  
  132. class AssignTableView(ListView):
  133. model = AssignTable
  134. template_name = 'restro/assign_table.html'
  135. context_object_name = 'users'
  136.  
  137. class CreateAssignTable(View):
  138. def get(self, request):
  139. name1 = request.GET.get('name', None)
  140. table1 = request.GET.get('table', None)
  141.  
  142. obj = AssignTable.objects.create(
  143. name = name1,
  144. table = table1
  145. )
  146.  
  147. user = {'id':obj.id,'name':obj.name,'table':obj.table}
  148.  
  149. data = {
  150. 'user': user
  151. }
  152. return JsonResponse(data)
  153.  
  154. class UpdateAssignTable(View):
  155. def get(self, request):
  156. id1 = request.GET.get('id', None)
  157. name1 = request.GET.get('name', None)
  158. table1 = request.GET.get('table', None)
  159.  
  160. obj = AssignTable.objects.get(id=id1)
  161. obj.name = name1
  162. obj.table = table1
  163. obj.save()
  164.  
  165. user = {'id':obj.id,'name':obj.name,'table':obj.table}
  166.  
  167. data = {
  168. 'user': user
  169. }
  170. return JsonResponse(data)
  171.  
  172. class DeleteAssignTable(View):
  173. def get(self, request):
  174. id1 = request.GET.get('id', None)
  175. AssignTable.objects.get(id=id1).delete()
  176. data = {
  177. 'deleted': True
  178. }
  179. return JsonResponse(data)
  180.  
  181. # @login_required(login_url='login')
  182. class ReservationView(ListView):
  183. model = ReservationTable
  184. template_name = 'restro/reservation_table.html'
  185. context_object_name = 'reserves'
  186.  
  187. class CreateReservation(View):
  188. def get(self, request):
  189. name1 = request.GET.get('name', None)
  190. number1 = request.GET.get('number', None)
  191. table1 = request.GET.get('table', None)
  192. reservation_date1 = request.GET.get('reservation_date', None)
  193. time_from1 = request.GET.get('time_from', None)
  194. time_to1 = request.GET.get('time_to', None)
  195.  
  196. obj = ReservationTable.objects.create(
  197. name = name1,
  198. number = number1,
  199. table = table1,
  200. reservation_date = reservation_date1,
  201. time_from = time_from1,
  202. time_to = time_to1
  203. )
  204.  
  205. user = {'id':obj.id,'name':obj.name,'number':obj.number,'table':obj.table, 'reservation_date':obj.reservation_date, 'time_from':obj.time_from,'time_to':obj.time_to}
  206.  
  207. data = {
  208. 'user': user
  209. }
  210. return JsonResponse(data)
  211.  
  212. class UpdateReservation(View):
  213. def get(self, request):
  214. id1 = request.GET.get('id', None)
  215. name1 = request.GET.get('name', None)
  216. number1 = request.GET.get('number', None)
  217. table1 = request.GET.get('table', None)
  218. reservation_date1 = request.GET.get('reservation_date', None)
  219. time_from1 = request.GET.get('time_from', None)
  220. time_to1 = request.GET.get('time_to', None)
  221.  
  222. obj = ReservationTable.objects.get(id=id1)
  223. obj.name = name1
  224. obj.number = number1
  225. obj.table = table1
  226. obj.reservation_date = reservation_date1
  227. obj.time_from = time_from1
  228. obj.time_to = time_to1
  229. obj.save()
  230.  
  231. user = {'id': obj.id, 'name': obj.name, 'number': obj.number, 'table': obj.table,
  232. 'reservation_date': obj.reservation_date, 'time_from': obj.time_from, 'time_to1': obj.time_to}
  233.  
  234. data = {
  235. 'user': user
  236. }
  237. return JsonResponse(data)
  238.  
  239. class DeleteReservation(View):
  240. def get(self, request):
  241. id1 = request.GET.get('id', None)
  242. ReservationTable.objects.get(id=id1).delete()
  243. data = {
  244. 'deleted': True
  245. }
  246. return JsonResponse(data)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement