Search in sources :

Example 31 with Grade

use of com.remswork.project.alice.model.Grade in project classify-system by anverliedoit.

the class AttendanceInputActivityF method onCreate.

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_z_input_attendace);
    classId = getIntent().getExtras().getLong("classId");
    termId = getIntent().getExtras().getLong("termId");
    init();
    btnBack.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            Intent intent = getIntent().setClass(AttendanceInputActivityF.this, AttendanceAddActivityF.class);
            startActivity(intent);
            finish();
        }
    });
    btnOk.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            Intent intent = getIntent().setClass(AttendanceInputActivityF.this, AttendanceAddActivityF.class);
            startActivity(intent);
            finish();
        }
    });
    btnTryagain.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            cardmessage.setVisibility(View.GONE);
            cardViewFailed.setVisibility(View.GONE);
            hidesomthing.setVisibility(View.VISIBLE);
        }
    });
    buttonSubmit.setOnClickListener(new Button.OnClickListener() {

        @Override
        public void onClick(View v) {
            switch(v.getId()) {
                case btn_submit3_attendance:
                    new Thread(new Runnable() {

                        @Override
                        public void run() {
                            new Handler(getMainLooper()).post(new Runnable() {

                                @Override
                                public void run() {
                                    try {
                                        Attendance attendance = new Attendance();
                                        attendance.setTitle(!editTextName.getText().toString().trim().isEmpty() ? editTextName.getText().toString().trim() : "Attendance");
                                        attendance.setDate(textViewDate.getText().toString());
                                        listener.onValidate();
                                        if (attendanceInputAdapter.getErrorCount() == 0) {
                                            rlDisruptor.setVisibility(View.VISIBLE);
                                            attendance = attendanceService.addAttendance(attendance, classId, termId);
                                            for (int i = 0; i < studentList.size(); i++) {
                                                final long studentId = studentList.get(i).getId();
                                                int status = attendanceInputAdapter.getStatus(i);
                                                Student student = studentList.get(i);
                                                attendanceService.addAttendanceResult(status, attendance.getId(), student.getId());
                                                // Adding Grade for activity
                                                new Thread(new Runnable() {

                                                    @Override
                                                    public void run() {
                                                        try {
                                                            final List<Attendance> attendanceList = attendanceService.getAttendanceListByClassId(classId);
                                                            final double[] fAttendance = new double[attendanceList.size()];
                                                            final long sId = studentId;
                                                            double tempTotal = 0;
                                                            try {
                                                                List<Grade> tempList = gradeService.getGradeListByClass(classId, sId, 2L);
                                                                grade = (tempList.size() > 0 ? tempList.get(0) : null);
                                                            } catch (GradingFactorException e) {
                                                                e.printStackTrace();
                                                                grade = null;
                                                            }
                                                            if (grade == null) {
                                                                Grade _grade = new Grade();
                                                                grade = gradeService.addGrade(_grade, classId, studentId, 2L);
                                                            }
                                                            final Grade lGrade = grade;
                                                            final long gradeId = grade.getId();
                                                            for (int i = 0; i < fAttendance.length; i++) {
                                                                final double total = 1;
                                                                final double status = attendanceService.getAttendanceResultByAttendanceAndStudentId(attendanceList.get(i).getId(), sId).getStatus();
                                                                final double score = (status == 1 ? 1 : 0);
                                                                fAttendance[i] = (score / total) * 100;
                                                                Log.i("Attendance[" + i + "] :", fAttendance[i] + "");
                                                            }
                                                            for (int i = 0; i < fAttendance.length; i++) tempTotal += fAttendance[i];
                                                            // after looping
                                                            if (fAttendance.length > 0)
                                                                tempTotal /= fAttendance.length;
                                                            else
                                                                tempTotal = 0;
                                                            lGrade.setActivityScore(tempTotal);
                                                            lGrade.setTotalScore(lGrade.getTotalScore() + tempTotal);
                                                            gradeService.updateGradeById(gradeId, lGrade);
                                                        } catch (GradingFactorException e) {
                                                            e.printStackTrace();
                                                        }
                                                    }
                                                }).start();
                                            }
                                            cardmessage.setVisibility(View.VISIBLE);
                                            // txMessageStatus.setText("Success");
                                            Toast.makeText(AttendanceInputActivityF.this, "Success", Toast.LENGTH_LONG).show();
                                            cardViewSucces.setVisibility(View.VISIBLE);
                                        } else {
                                            cardmessage.setVisibility(View.VISIBLE);
                                            txMessageStatus.setText("Found " + attendanceInputAdapter.getErrorCount() + " errors");
                                            cardViewFailed.setVisibility(View.VISIBLE);
                                            hidesomthing.setVisibility(View.GONE);
                                        }
                                        rlDisruptor.setVisibility(View.GONE);
                                    } catch (Exception e) {
                                        e.printStackTrace();
                                    }
                                }
                            });
                        }
                    }).start();
                    break;
            }
        }
    });
}
Also used : Attendance(com.remswork.project.alice.model.Attendance) GradingFactorException(com.remswork.project.alice.exception.GradingFactorException) Handler(android.os.Handler) Intent(android.content.Intent) Grade(com.remswork.project.alice.model.Grade) Student(com.remswork.project.alice.model.Student) View(android.view.View) CardView(android.support.v7.widget.CardView) RecyclerView(android.support.v7.widget.RecyclerView) TextView(android.widget.TextView) GradingFactorException(com.remswork.project.alice.exception.GradingFactorException) Button(android.widget.Button)

Example 32 with Grade

use of com.remswork.project.alice.model.Grade in project classify-system by anverliedoit.

the class ActivityGradeActivity method load.

public void load() {
    try {
        final FormulaService formulaService = new FormulaServiceImpl();
        final GradeService gradeService = new GradeServiceImpl();
        final long termId = getIntent().getExtras().getLong("termId");
        final long classId = getIntent().getExtras().getLong("classId");
        final Class _class = classService.getClassById(classId);
        final long subjectId = _class.getSubject() != null ? _class.getSubject().getId() : 0;
        final long teacherId = _class.getTeacher() != null ? _class.getTeacher().getId() : 0;
        final Formula formula = formulaService.getFormulaBySubjectAndTeacherId(subjectId, teacherId, termId);
        Log.i("SOMETHINGGG", "CLASSID" + classId + " FORMULAID" + formula.getId());
        for (final Student student : classService.getStudentList(classId)) {
            final Student cStudent = student;
            Log.i("SOMETHINGGG", "Student" + student.getId());
            Log.i("FORMULA", formula.getId() + "");
            new Thread(new Runnable() {

                @Override
                public void run() {
                    try {
                        long studentId = cStudent.getId();
                        List<Grade> temp = gradeService.getGradeListByClass(classId, studentId, termId);
                        Grade grade = temp.size() > 0 ? temp.get(0) : new Grade();
                        Log.i("GRADE", grade.getId() + "");
                        double totalScore = ((double) formula.getActivityPercentage() / 100) * grade.getActivityScore();
                        grade.setTotalScore(totalScore);
                        grade.setStudent(student);
                        Log.i("SOMETHINGGG", "totalScore" + formula.getActivityPercentage());
                        gradeList.add(grade);
                        notifyChange();
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            }).start();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}
Also used : GradeService(com.remswork.project.alice.service.GradeService) FormulaService(com.remswork.project.alice.service.FormulaService) Grade(com.remswork.project.alice.model.Grade) Student(com.remswork.project.alice.model.Student) Formula(com.remswork.project.alice.model.Formula) GradeServiceImpl(com.remswork.project.alice.service.impl.GradeServiceImpl) Class(com.remswork.project.alice.model.Class) FormulaServiceImpl(com.remswork.project.alice.service.impl.FormulaServiceImpl)

Aggregations

Grade (com.remswork.project.alice.model.Grade)32 GradingFactorException (com.remswork.project.alice.exception.GradingFactorException)25 Student (com.remswork.project.alice.model.Student)20 ArrayList (java.util.ArrayList)17 CardView (android.support.v7.widget.CardView)13 RecyclerView (android.support.v7.widget.RecyclerView)13 View (android.view.View)13 Button (android.widget.Button)13 TextView (android.widget.TextView)13 List (java.util.List)12 CompoundButton (android.widget.CompoundButton)11 ToggleButton (android.widget.ToggleButton)11 GradingFactorDaoException (com.remswork.project.alice.dao.exception.GradingFactorDaoException)7 Class (com.remswork.project.alice.model.Class)7 Session (org.hibernate.Session)7 Formula (com.remswork.project.alice.model.Formula)6 FormulaService (com.remswork.project.alice.service.FormulaService)6 GradeService (com.remswork.project.alice.service.GradeService)6 FormulaServiceImpl (com.remswork.project.alice.service.impl.FormulaServiceImpl)6 GradeServiceImpl (com.remswork.project.alice.service.impl.GradeServiceImpl)6