blob: 14bb5e761cde2e2dfad22bce682e8a7e6c915953 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
from django.utils import formats
from datetime import datetime, timedelta
from dateutil import rrule
import uuid
def get_week_dates(date=None):
week_dates = {}
if date == None:
date = formats.date_format(datetime.now(), "SHORT_DATE_FORMAT")
dt = datetime.strptime(date, '%m/%d/%Y')
weekday = dt.weekday()
if weekday == 6:
week_dates['start_date'] = dt
else:
weekday = weekday + 1
week_dates['start_date'] = dt - timedelta(days=weekday)
week_dates['end_date'] = week_dates['start_date'] + timedelta(days=6)
week_dates['next_week'] = week_dates['end_date'] + timedelta(days=1)
week_dates['previous_week'] = week_dates['start_date'] - timedelta(days=1)
return week_dates
def split_loads_by_day(loads,start_date,end_date):
split_loads = {}
for date in rrule.rrule(rrule.DAILY,dtstart=start_date, until=end_date):
if date not in split_loads:
split_loads[date] = loads.filter(date=date)
return split_loads
# This is used to set the upload path of the document for Paperwork Objects
def paperwork_user_directory_path(instance, filename):
# We don't want the UUID to be too long, just enough so there aren't any
# filename conflicts
return 'paperwork/{:d}/'.format(instance.load.pk) + \
str(uuid.uuid4())[0:9] + filename
|