Example #1
0
def generate_reports(report_type, year, month , day=settings.LEAVE_REPORT_FIRST_DAY, start_date=None, end_date=None):
	employee_set = list(Employee.objects.all().order_by('display_name'))
	
	if report_type == 'leavereport':
		report.generate_leave_report_file(employee_set, day, month, year)
	if report_type == 'leaverecord':
		report.generate_leave_record_report_file(employee_set, start_date, end_date)
Example #2
0
def GenerateLeavesReport():
    now = datetime.now()
    employees = Employee.objects.all()

    # generate leave report file automaticaly,
    # use Windows Task Scheduler to control
    report.generate_leave_report_file(employees, now.day, now.month, now.year)

    # send email to notice admin
    subject = "Monthly leave report %s" % now.strftime("%Y-%m-%d")
    send_email_to_admin("report_notification.txt", subject, now, type="leave report")
Example #3
0
def generate_leave_report(modeladmin, request, queryset):
	opts = modeladmin.model._meta
	app_label = opts.app_label
	
	if request.POST.get('post'):
		if queryset.count():
			#start_date = request.POST.get('start_date').strip()
			end_date = request.POST.get('end_date').strip()
			import datetime
			date = datetime.datetime.strptime(end_date, '%Y-%m-%d')
			
			from common.report import generate_leave_report_file
			filename = generate_leave_report_file(queryset, date.day, date.month, date.year, prefix='export_')
			
			link = '/eleave/main/reports/download/leavereport/%s?export=1' % date.strftime('%Y/%m/%d/')
			cont={'link': link}
			return render_to_response('maitenance/generate_report_successful.html',cont, context_instance=template.RequestContext(request))
	
	if len(queryset) == 1:
		objects_name = force_unicode(opts.verbose_name)
	else:
		objects_name = force_unicode(opts.verbose_name_plural)
	
	title = "Are you sure?"
	
	context = {
		"title": title,
		"objects_name": objects_name,
		'queryset': queryset,
		"opts": opts,
		"app_label": app_label,
		'action_checkbox_name': helpers.ACTION_CHECKBOX_NAME,
	}
	
	return render_to_response(
		'maitenance/generate_report_confirmation.html',
		context,
		context_instance=template.RequestContext(request)
	)