def processUploadAttendance(request,course_code): redirect = checkIdentity(request, 'faculty') if redirect == "": if request.method == 'POST': form1 = read(request.POST, request.FILES) total = request.POST['date1'] course = Course.objects.get(id= course_code) if form1.is_valid(): newdoc = Document1(docfile = request.FILES['docfile']) newdoc.save() path = os.path.abspath(newdoc.docfile.url[1:]) mark = np.genfromtxt(path, dtype='str', delimiter=',',unpack='True',skip_header=1) for i in range(250): try: # k = mark[1][i] student = Student.objects.get(rollno=int(mark[1][i])) studentInCourse = course.getStudents().filter(rollno=student.id) if studentInCourse: k = str(total).split('/') l = k[2]+"-"+k[1]+'-'+k[0] if mark[2][i][0] == 'P': present = True else: present=False save = AttendanceDaily.objects.create(rollno=student,coursecode=course,date=l,present=present) save.save() except: continue return index(request) return HttpResponseRedirect(redirect)
def processUploadAttendance(request, course_code): redirect = checkIdentity(request, 'ta') if redirect == "": if request.method == 'POST': form1 = read(request.POST, request.FILES) total = request.POST['date1'] course = Course.objects.get(id=course_code) if form1.is_valid(): newdoc = Document1(docfile=request.FILES['docfile']) newdoc.save() path = os.path.abspath(newdoc.docfile.url[1:]) mark = np.genfromtxt(path, dtype='str', delimiter=',', unpack='True', skip_header=1) for i in range(250): try: # k = mark[1][i] student = Student.objects.get(rollno=int(mark[1][i])) studentInCourse = course.getStudents().filter( rollno=student.id) if studentInCourse: k = str(total).split('/') l = k[2] + "-" + k[1] + '-' + k[0] if mark[2][i][0] == 'P': present = True else: present = False save = AttendanceDaily.objects.create( rollno=student, coursecode=course, date=l, present=present) save.save() except: continue return index(request) return HttpResponseRedirect(redirect)
def attendance(request, course_code): redirect = checkIdentity(request, 'faculty') if redirect == "": template = loader.get_template('faculty/_attendance.html') current = Faculty.objects.filter(username=request.session['username'])[0] course = Course.objects.filter(pk=course_code)[0] course_semester = course.semester_offered if course_semester[0] == "M": course_semester = "Monsoon" else: course_semester = "Spring" faculty = course.getFaculty().name if request.method == "POST": ListofStudents = course.getStudents() period = request.POST['periods'] date = request.POST['date'] period = AttendanceMonthly.objects.filter(id = int(period)) if period: selectValue = period[0] attendance = [] for student in ListofStudents: l = student.id k = student.rollno total = AttendanceDaily.objects.filter(rollno=student.rollno, coursecode=course.id, present=True, date__range=(period[0].start_date, period[0].end_date)) attendance.append(total.count()) # return adf ListofStudents = zip(ListofStudents,attendance) total = period[0].classes_taken_place totalList = AttendanceMonthly.objects.filter(coursecode=course.id) else: selectValue = 0 attendance = [] for student in ListofStudents: l = student.id k = student.rollno total = AttendanceDaily.objects.filter(rollno=student.rollno, coursecode=course.id, present=True) attendance.append(total.count()) # return adf ListofStudents = zip(ListofStudents,attendance) total = AttendanceMonthly.objects.filter(coursecode=course.id).aggregate(Sum('classes_taken_place')) total = total['classes_taken_place__sum'] totalList = AttendanceMonthly.objects.filter(coursecode=course.id) if date == '1990-01-01': DselectValue = 0 else: DselectValue = date DtotalList = AttendanceDaily.objects.filter(coursecode=course.id).values_list('date', flat=True).distinct() DListofStudents = AttendanceDaily.objects.filter(coursecode=course.id,date=date) context = RequestContext(request, {'current': current, 'course': course, 'faculty': faculty, 'course_semester': course_semester, 'ListofStudents': ListofStudents, 'total': total, 'totalList': totalList, 'DtotalList': DtotalList,'DListofStudents':DListofStudents, 'selectValue': selectValue,'DselectValue': DselectValue}) else: selectValue = 0 ListofStudents = course.getStudents() attendance = [] for student in ListofStudents: l = student.id k = student.rollno total = AttendanceDaily.objects.filter(rollno=student.rollno, coursecode=course.id, present=True) attendance.append(total.count()) # return adf ListofStudents = zip(ListofStudents,attendance) total = AttendanceMonthly.objects.filter(coursecode=course.id).aggregate(Sum('classes_taken_place')) totalList = AttendanceMonthly.objects.filter(coursecode=course.id) # return wers form1 = read() DtotalList = AttendanceDaily.objects.filter(coursecode=course.id).values_list('date', flat=True).distinct() #AttendanceDaily.objects.filter(coursecode=course.id).distinct('date') total = total['classes_taken_place__sum'] context = RequestContext(request, {'current': current, 'course': course, 'faculty': faculty, 'course_semester': course_semester, 'ListofStudents': ListofStudents, 'total': total, 'totalList': totalList,'DtotalList': DtotalList, 'selectValue':selectValue,'form1':form1}) return HttpResponse(template.render(context)) return HttpResponseRedirect(redirect)
def attendance(request, course_code): redirect = checkIdentity(request, 'ta') if redirect == "": template = loader.get_template('ta/_attendance.html') current = TA.objects.filter(username=request.session['username'])[0] course = Course.objects.filter(pk=course_code)[0] course_semester = course.semester_offered if course_semester[0] == "M": course_semester = "Monsoon" else: course_semester = "Spring" faculty = course.getFaculty().name if request.method == "POST": ListofStudents = course.getStudents() period = request.POST['periods'] period = AttendanceMonthly.objects.filter(id=int(period)) if period: selectValue = period[0] attendance = [] for student in ListofStudents: l = student.id k = student.rollno total = AttendanceDaily.objects.filter( rollno=student.rollno, coursecode=course.id, present=True, date__range=(period[0].start_date, period[0].end_date)) attendance.append(total.count()) # return adf ListofStudents = zip(ListofStudents, attendance) total = period[0].classes_taken_place totalList = AttendanceMonthly.objects.filter( coursecode=course.id) else: selectValue = 0 attendance = [] for student in ListofStudents: l = student.id k = student.rollno total = AttendanceDaily.objects.filter( rollno=student.rollno, coursecode=course.id, present=True) attendance.append(total.count()) # return adf ListofStudents = zip(ListofStudents, attendance) total = AttendanceMonthly.objects.filter( coursecode=course.id).aggregate(Sum('classes_taken_place')) totalList = AttendanceMonthly.objects.filter( coursecode=course.id) # return wers total = total['classes_taken_place__sum'] context = RequestContext( request, { 'current': current, 'course': course, 'faculty': faculty, 'course_semester': course_semester, 'ListofStudents': ListofStudents, 'total': total, 'totalList': totalList, 'selectValue': selectValue }) else: selectValue = 0 ListofStudents = course.getStudents() attendance = [] for student in ListofStudents: l = student.id k = student.rollno total = AttendanceDaily.objects.filter(rollno=student.rollno, coursecode=course.id, present=True) attendance.append(total.count()) # return adf ListofStudents = zip(ListofStudents, attendance) total = AttendanceMonthly.objects.filter( coursecode=course.id).aggregate(Sum('classes_taken_place')) totalList = AttendanceMonthly.objects.filter(coursecode=course.id) # return wers form1 = read() total = total['classes_taken_place__sum'] context = RequestContext( request, { 'current': current, 'course': course, 'faculty': faculty, 'course_semester': course_semester, 'ListofStudents': ListofStudents, 'total': total, 'totalList': totalList, 'selectValue': selectValue, 'form1': form1 }) return HttpResponse(template.render(context)) return HttpResponseRedirect(redirect)