def generate_report(request): from datetime import date, datetime today = date.today() start_date = end_date = None report_type = request.GET.get('type', 'leavereport') if report_type == 'leavereport': year = request.GET.get('year', today.year) month = request.GET.get('month', today.month) day = request.GET.get('day', settings.LEAVE_REPORT_FIRST_DAY) start_date = datetime(int(year), 1, 1) end_date = datetime(int(year), int(month), int(day)) main_utils.generate_reports(report_type, int(year), int(month), int(day)) subject = "Monthly leave report %s" % end_date.strftime('%Y-%m-%d') type = 'leave report' if report_type == 'leaverecord': start = request.GET.get('start') end = request.GET.get('end') start_date = datetime.strptime(start, "%Y-%m-%d") end_date = datetime.strptime(end + ' 17:30', "%Y-%m-%d %H:%M") main_utils.generate_reports(report_type, year = today.year, month = today.month, start_date = start_date, end_date = end_date) subject = "Monthly leave record report(%s~%s)" % (start_date.strftime('%Y-%m-%d'), end_date.strftime('%Y-%m-%d')) type = 'leave record' from common.utils import send_email_to_admin send_email_to_admin('report_notification.txt', subject, end_date, start_date, type) return redirect('/eleave/main/reports/')
def GenerateLeaveRecordsReport(): now = datetime.now() start_date = report.get_lastest_month_period(now) employees = Employee.objects.all() report.generate_leave_record_report_file(employees, start_date, now) # send email to notice admin subject = "Monthly leave record report(%s~%s)" % (start_date.strftime('%Y-%m-%d'), now.strftime('%Y-%m-%d')) send_email_to_admin('report_notification.txt', subject, now, start_date, type = 'leave record')
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")