Exemplo n.º 1
0
 def test_get_red_route(self):
     # 1 Aug is Sun and 7 Aug is Sat
     start_date = date(2021, 8, 4)
     start_dt = datetime.combine(start_date, datetime.min.time())
     res = ChatBotSession.get_red_route(start_dt)
     self.assertEqual(len(res), 40)
     self.assertListEqual(
         list(res[0].keys()),
         ['student_netid', 'datetime', 'date', 'start_time', 'end_time'])
Exemplo n.º 2
0
def get_red_route(request):
    data = json.loads(request.body)
    before_date = data.get('beforeDate')
    from_date = datetime.strptime(before_date, '%Y-%m-%d') - timedelta(days=7)
    to_date = datetime.strptime(before_date, '%Y-%m-%d')

    res = ChatBotSession.get_red_route(from_date, to_date)

    return JsonResponse(res, safe=False, status=200)
Exemplo n.º 3
0
def export_red_route(request):
    data = json.loads(request.body)
    before_date = data.get('beforeDate')
    if before_date is None:
        to_date = timezone.localtime()
    else:
        to_date = datetime.strptime(before_date, '%Y-%m-%d')
    from_date = to_date - timedelta(days=7)
    data = ChatBotSession.get_red_route(from_date, to_date)
    output = ChatBotSession.from_red_route_to_excel(data)

    response = HttpResponse(
        output,
        content_type=
        'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet')
    response['Content-Disposition'] = 'attachment; filename="red_route.xlsx"'
    return response