def form_valid(self, form): if form.is_valid(): reporting_period = form.cleaned_data['reporting_period'] line_items = io.StringIO( self.request.FILES['line_items'].read().decode('utf-8'), newline=None) c = csv.DictReader(line_items) for line_item in c: user, created = get_user_model().objects.get_or_create( username=email_to_username(line_item['Tock Name'].lower())) timecard, created = Timecard.objects.get_or_create( user=user, reporting_period=reporting_period) timecard.save() try: project = Project.objects.get(id=line_item['Tock Code']) except Project.DoesNotExist: raise ValidationError('Project %s (Code %s) Does Not Exist' % ( line_item['Tock Proj. Name'], line_item['Tock Code'])) try: TimecardObject.objects.get( timecard=timecard, project=project, hours_spent=line_item['Hours Logged']) except TimecardObject.DoesNotExist: TimecardObject.objects.create( timecard=timecard, project=project, hours_spent=line_item['Hours Logged']) return super(ReportingPeriodBulkImportView, self).form_valid(form)
def form_valid(self, form): if form.is_valid(): user, created = User.objects.get_or_create(username=self.kwargs['username']) user.email = form.cleaned_data['email'] user.username = email_to_username(form.cleaned_data['email']) user.first_name = form.cleaned_data['first_name'] user.last_name = form.cleaned_data['last_name'] user.save() user_data, created = UserData.objects.get_or_create(user=user) user_data.start_date = form.cleaned_data['start_date'] user_data.end_date = form.cleaned_data['end_date'] user_data.save() return super(UserFormView, self).form_valid(form)
def form_valid(self, form): if form.is_valid(): reporting_period = form.cleaned_data['reporting_period'] line_items = io.StringIO( self.request.FILES['line_items'].read().decode('utf-8'), newline=None, ) c = csv.DictReader(line_items) for line_item in c: user, created = get_user_model().objects.get_or_create( username=email_to_username(line_item['Tock Name'].lower())) timecard, created = Timecard.objects.get_or_create( user=user, reporting_period=reporting_period) timecard.save() try: project = Project.objects.get(id=line_item['Tock Code']) except Project.DoesNotExist: raise ValidationError( 'Project %s (Code %s) Does Not Exist' % (line_item['Tock Proj. Name'], line_item['Tock Code'])) try: TimecardObject.objects.get( timecard=timecard, project=project, hours_spent=line_item['Hours Logged']) except TimecardObject.DoesNotExist: TimecardObject.objects.create( timecard=timecard, project=project, hours_spent=line_item['Hours Logged']) return super(ReportingPeriodBulkImportView, self).form_valid(form)