Exemple #1
0
def show_canlendar(req, type=1, id=None):
    start = req.GET.get('start')
    end = req.GET.get('end')
    menu = __createMenu(req.user)
    attends = []
    if start and end:
        attends =  Attend.objects.filter(userId=req.user.id, lock_time__gte = start, lock_time__lt=end).order_by('lock_time')
        holiday = holiday_cn.objects.filter(day__gte=start,day__lt=end)
        v_attends = attendance_utils.filter_day_record(attends,True)
        res = chain(holiday,v_attends)
        return  HttpResponse(serializers.serialize('json', res ), content_type="application/json")   
    context = {
        'menu':menu,
        'lines':attendance_utils.filter_day_record(attends,True),
        }
    return render(req,"Attend/calendarpage.html",context=context)
Exemple #2
0
def task_mail_notice(req):
    users = User.objects.all()
    for user in users:
        umail_obj = mailconfig.objects.filter(userid=user.id)
        if umail_obj:
            attends = Attend.objects.filter(
                userId=user.id,
                lock_time__gte=datetime.datetime.today().strftime(
                    "%Y-%m-%d")).order_by('lock_time')
            show_list = attendance_utils.filter_day_record(attends)
            if len(show_list) > 1:
                delta_time = show_list[-1].lock_time - show_list[0].lock_time
                work_hour = float('%.2f' % (delta_time.total_seconds() / 3600))
                msg_str = umail_obj[0].mail_template % work_hour
                mailserver = mail_server.mail_server('127.0.0.1')
                msg = mailserver.build_email(EMAIL_SENDER, umail_obj[0].umail,
                                             'Work Hours', msg_str)
                mailserver.send_mail(msg)
            else:
                msg_str = umail_obj[0].mail_template % 0
                mailserver = mail_server.mail_server('127.0.0.1')
                msg = mailserver.build_email(EMAIL_SENDER, umail_obj[0].umail,
                                             'Work Hours', msg_str)
                mailserver.send_mail(msg)
    return HttpResponseRedirect("/")
Exemple #3
0
def clean_attend_database(req):
    users = User.objects.all()
    start_date =  req.GET.get('start_date',False)
    if start_date:
        today = datetime.datetime.strptime(start_date,'%Y-%m-%d')
    else:
        today = datetime.datetime.today().replace(hour=0, minute=0, second=0)
    for user in users:
        attends =  Attend.objects.filter(userId=user.id,lock_time__gte = today).order_by('lock_time')
        show_list = attendance_utils.filter_day_record(attends,True)
        for item in attends:
            if item not in show_list:
                item.delete()
    return HttpResponseRedirect("/")
def task_weichat_notice(req):
    users = User.objects.all()
    token = wechat_utils.get_weichat_token()
    for user in users:
        ref_weichat = user_weichat.objects.filter(userid=user.id)
        if ref_weichat:
            attends =  Attend.objects.filter(userId=user.id,lock_time__gte = datetime.datetime.today().strftime("%Y-%m-%d")).order_by('lock_time')
            show_list = attendance_utils.filter_day_record(attends)
            if len(show_list) > 1:
                delta_time = show_list[-1].lock_time - show_list[0].lock_time
                work_hour = float('%.2f' % (delta_time.total_seconds()/3600))
                msg_str = wechat_utils.msg_templete %(ref_weichat[0].weichatname,work_hour)
                wechat_utils.weichat_msg(msg_str,token)
            else:
                msg_str = wechat_utils.msg_templete %(ref_weichat[0].weichatname,0)
                wechat_utils.weichat_msg(msg_str,token)
    return HttpResponseRedirect("/")
def task_weichat_notice(req):
    users = User.objects.all()
    token = wechat_utils.get_weichat_token()
    for user in users:
        ref_weichat = user_weichat.objects.filter(userid=user.id)
        if ref_weichat:
            attends = Attend.objects.filter(
                userId=user.id,
                lock_time__gte=datetime.datetime.today().strftime(
                    "%Y-%m-%d")).order_by('lock_time')
            show_list = attendance_utils.filter_day_record(attends)
            if len(show_list) > 1:
                delta_time = show_list[-1].lock_time - show_list[0].lock_time
                work_hour = float('%.2f' % (delta_time.total_seconds() / 3600))
                msg_str = wechat_utils.msg_templete % (
                    ref_weichat[0].weichatname, work_hour)
                wechat_utils.weichat_msg(msg_str, token)
            else:
                msg_str = wechat_utils.msg_templete % (
                    ref_weichat[0].weichatname, 0)
                wechat_utils.weichat_msg(msg_str, token)
    return HttpResponseRedirect("/")
def task_mail_notice(req):
    users = User.objects.all()
    for user in users:
        umail_obj = mailconfig.objects.filter(userid=user.id)
        if umail_obj:
            attends =  Attend.objects.filter(userId=user.id,lock_time__gte = datetime.datetime.today().strftime("%Y-%m-%d")).order_by('lock_time')
            show_list = attendance_utils.filter_day_record(attends)
            if len(show_list) > 1:
                delta_time = show_list[-1].lock_time - show_list[0].lock_time
                work_hour = float('%.2f' % (delta_time.total_seconds()/3600))
                msg_str = umail_obj[0].mail_template % work_hour
                mailserver = mail_server.mail_server('127.0.0.1')
                msg = mailserver.build_email(EMAIL_SENDER, umail_obj[0].umail, 'Work Hours', msg_str)
                mailserver.send_mail(msg)
            else:
                msg_str = umail_obj[0].mail_template % 0
                mailserver = mail_server.mail_server('127.0.0.1')
                msg = mailserver.build_email(EMAIL_SENDER, umail_obj[0].umail, 'Work Hours', msg_str)
                mailserver.send_mail(msg)
    return HttpResponseRedirect("/")