Пример #1
0
    def clean_user_csv(self):
        user_csv = self.cleaned_data.get('user_csv')

        if user_csv and split_filename(user_csv.name)[1].lower() != 'csv':
            raise forms.ValidationError('ระบบอ่านได้เฉพาะไฟล์นามสกุล CSV เท่านั้น')
        
        return user_csv
Пример #2
0
    def clean_user_csv(self):
        user_csv = self.cleaned_data.get('user_csv')

        if user_csv and split_filename(user_csv.name)[1].lower() != 'csv':
            raise forms.ValidationError(
                'ระบบอ่านได้เฉพาะไฟล์นามสกุล CSV เท่านั้น')

        return user_csv
Пример #3
0
def submit_project_report_attachment(request, project_ref_no, report_id, schedule_date):
    if request.method == 'POST':
        project = get_object_or_404(Project, ref_no=project_ref_no)
        report = get_object_or_404(Report, pk=report_id)
        schedule_date = convert_dateid_to_date(schedule_date)

        if not request.user.get_profile().is_manage_project(project):
            raise Http403

        if not report.is_valid_schedule(schedule_date):
            raise Http404
        
        try:
            submission = ReportSubmission.objects.get(project=project, report=report, schedule_date=schedule_date)
        except ReportSubmission.DoesNotExist:
            submission = ReportSubmission(project=project, report=report, schedule_date=schedule_date)

        form = SubmitReportAttachmentForm(request.POST, request.FILES)
        if form.is_valid():
            file_attachment = form.cleaned_data['report_attachment']

            if not submission.id:
                submission.created_by = request.user
                submission.save()
            
            (file_name, file_ext) = split_filename(file_attachment.name)
            attachment = ReportSubmissionAttachment.objects.create(submission=submission, file_name=file_name, file_ext=file_ext, attachment=file_attachment, uploaded_by=request.user)

            messages.success(request, u'เพิ่มไฟล์แนบเรียบร้อย')

        else:
            return render(request, 'report/report_overview.html', {'project':project, 'report':report, 'submission':submission, 'attachment_form':form})
            
        return redirect('view_report', project_ref_no=project_ref_no, report_id=report_id, schedule_date=format_dateid(schedule_date))

    else:
        raise Http404