Search in sources :

Example 36 with ClassException

use of com.remswork.project.alice.exception.ClassException in project classify-system by anverliedoit.

the class ClassServiceImpl method getClassById.

@Override
public Class getClassById(long id) throws ClassException {
    try {
        StringBuilder uri = new StringBuilder();
        uri.append(targetProperties.getDomain());
        uri.append("/");
        uri.append(targetProperties.getBaseUri());
        uri.append("/");
        uri.append(payload);
        uri.append("/");
        uri.append(id);
        Client client = ClientBuilder.newClient();
        WebTarget target = client.target(uri.toString());
        Response response = target.request().get();
        if (response.getStatus() == 200) {
            return (Class) response.readEntity(Class.class);
        } else if (response.getStatus() == 404) {
            Message message = (Message) response.readEntity(Message.class);
            throw new ClassServiceException(message.getMessage());
        } else
            throw new ClassServiceException("The request might invalid or server is down");
    } catch (ClassServiceException e) {
        throw new ClassException(e.getMessage());
    }
}
Also used : Response(javax.ws.rs.core.Response) ClassServiceException(com.remswork.project.alice.web.service.exception.ClassServiceException) Message(com.remswork.project.alice.model.support.Message) ClassException(com.remswork.project.alice.exception.ClassException) Class(com.remswork.project.alice.model.Class) WebTarget(javax.ws.rs.client.WebTarget) Client(javax.ws.rs.client.Client)

Example 37 with ClassException

use of com.remswork.project.alice.exception.ClassException in project classify-system by anverliedoit.

the class ClassServiceImpl method updateClassById.

@Override
public Class updateClassById(long id, Class newClass, long teacherId, long subjectId, long sectionId) throws ClassException {
    try {
        StringBuilder uri = new StringBuilder();
        uri.append(targetProperties.getDomain());
        uri.append("/");
        uri.append(targetProperties.getBaseUri());
        uri.append("/");
        uri.append(payload);
        uri.append("/");
        uri.append(id);
        Client client = ClientBuilder.newClient();
        WebTarget target = client.target(uri.toString());
        Builder builder = target.queryParam("teacherId", teacherId).queryParam("subjectId", subjectId).queryParam("sectionId", sectionId).request();
        builder.accept("application/json");
        Response response = builder.put(Entity.json(newClass));
        if (response.getStatus() == 200) {
            return (Class) response.readEntity(Class.class);
        } else if (response.getStatus() == 400) {
            Message message = (Message) response.readEntity(Message.class);
            throw new ClassServiceException(message.getMessage());
        } else
            throw new ClassServiceException("The request might invalid or server is down");
    } catch (ClassServiceException e) {
        throw new ClassException(e.getMessage());
    }
}
Also used : Response(javax.ws.rs.core.Response) ClassServiceException(com.remswork.project.alice.web.service.exception.ClassServiceException) Message(com.remswork.project.alice.model.support.Message) ClientBuilder(javax.ws.rs.client.ClientBuilder) Builder(javax.ws.rs.client.Invocation.Builder) ClassException(com.remswork.project.alice.exception.ClassException) Class(com.remswork.project.alice.model.Class) WebTarget(javax.ws.rs.client.WebTarget) Client(javax.ws.rs.client.Client)

Example 38 with ClassException

use of com.remswork.project.alice.exception.ClassException in project classify-system by anverliedoit.

the class ScheduleController method updateScheduleOnClass.

@RequestMapping(value = "c/update", method = RequestMethod.POST)
public String updateScheduleOnClass(@RequestParam("day") String day, @RequestParam("room") String room, @RequestParam("time") String time, @RequestParam("period") String period, @RequestParam("classId") long classId, @RequestParam("scheduleId") long scheduleId, ModelMap modelMap) {
    try {
        Schedule schedule = new Schedule();
        schedule.setDay(day);
        schedule.setTime(time);
        schedule.setPeriod(period);
        schedule.setRoom(room);
        schedule = scheduleService.updateScheduleById(scheduleId, schedule);
        Set<Schedule> scheduleList = classService.getScheduleList(classId);
        modelMap.put("scheduleList", scheduleList);
    } catch (ScheduleException | ClassException e) {
        e.printStackTrace();
    }
    return "schedule";
}
Also used : Schedule(com.remswork.project.alice.model.Schedule) ClassException(com.remswork.project.alice.exception.ClassException) ScheduleException(com.remswork.project.alice.exception.ScheduleException) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 39 with ClassException

use of com.remswork.project.alice.exception.ClassException in project classify-system by anverliedoit.

the class ScheduleController method addScheduleOnClass.

@RequestMapping(value = "c/add", method = RequestMethod.POST)
public String addScheduleOnClass(@RequestParam("day") String day, @RequestParam("room") String room, @RequestParam("time") String time, @RequestParam("period") String period, @RequestParam("classId") long classId, ModelMap modelMap) {
    try {
        Schedule schedule = new Schedule();
        schedule.setDay(day);
        schedule.setTime(time);
        schedule.setPeriod(period);
        schedule.setRoom(room);
        schedule = scheduleService.addSchedule(schedule);
        classService.addScheduleById(classId, schedule.getId());
        Set<Schedule> scheduleList = classService.getScheduleList(classId);
        modelMap.put("scheduleList", scheduleList);
    } catch (ScheduleException | ClassException e) {
        e.printStackTrace();
    }
    return "schedule";
}
Also used : Schedule(com.remswork.project.alice.model.Schedule) ClassException(com.remswork.project.alice.exception.ClassException) ScheduleException(com.remswork.project.alice.exception.ScheduleException) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 40 with ClassException

use of com.remswork.project.alice.exception.ClassException in project classify-system by anverliedoit.

the class GradeResultActivity method loadBigData.

public void loadBigData() {
    // final long studentId = 462;
    final long classId = 1270;
    try {
        for (Student student : classService.getStudentList(classId)) {
            final long studentId = student.getId();
            Log.i("STUDENTIDdddddd", studentId + "");
            new Thread(new Runnable() {

                @Override
                public void run() {
                    new Thread(new Runnable() {

                        @Override
                        public void run() {
                            try {
                                final List<Activity> activityList = activityService.getActivityListByClassId(classId);
                                final double[] fActivity = new double[activityList.size()];
                                double tempTotal = 0;
                                for (int i = 0; i < fActivity.length; i++) {
                                    final double total = activityList.get(i).getItemTotal();
                                    final double score = activityService.getActivityResultByActivityAndStudentId(activityList.get(i).getId(), studentId).getScore();
                                    fActivity[i] = (score / total) * 100;
                                }
                                for (int i = 0; i < fActivity.length; i++) tempTotal += fActivity[i];
                                // after looping
                                tempTotal /= fActivity.length;
                                activityGrade = tempTotal;
                                // notify finish
                                gradeIsReadyAct = true;
                                if (isReady())
                                    notifyChange();
                            } catch (GradingFactorException e) {
                                e.printStackTrace();
                            }
                        }
                    }).start();
                    new Thread(new Runnable() {

                        @Override
                        public void run() {
                            try {
                                final List<Assignment> assignmentList = assignmentService.getAssignmentListByClassId(classId);
                                final double[] fAssignment = new double[assignmentList.size()];
                                double tempTotal = 0;
                                for (int i = 0; i < fAssignment.length; i++) {
                                    final double total = assignmentList.get(i).getItemTotal();
                                    final double score = assignmentService.getAssignmentResultByAssignmentAndStudentId(assignmentList.get(i).getId(), studentId).getScore();
                                    fAssignment[i] = (score / total) * 100;
                                }
                                for (int i = 0; i < fAssignment.length; i++) tempTotal += fAssignment[i];
                                // after looping
                                tempTotal /= fAssignment.length;
                                assignmentGrade = tempTotal;
                                // notify finish
                                gradeIsReadyAss = true;
                                if (isReady())
                                    notifyChange();
                            } catch (GradingFactorException e) {
                                e.printStackTrace();
                            }
                        }
                    }).start();
                    new Thread(new Runnable() {

                        @Override
                        public void run() {
                            try {
                                final List<Attendance> attendanceList = attendanceService.getAttendanceListByClassId(classId);
                                final double[] fAttendance = new double[attendanceList.size()];
                                double tempTotal = 0;
                                for (int i = 0; i < fAttendance.length; i++) {
                                    final double total = 1;
                                    final double score = attendanceService.getAttendanceResultByAttendanceAndStudentId(attendanceList.get(i).getId(), studentId).getStatus() == 1 ? 1 : 0;
                                    fAttendance[i] = (score / total) * 100;
                                }
                                for (int i = 0; i < fAttendance.length; i++) tempTotal += fAttendance[i];
                                // after looping
                                tempTotal /= fAttendance.length;
                                attendanceGrade = tempTotal;
                                // notify finish
                                gradeIsReadyAtt = true;
                                if (isReady())
                                    notifyChange();
                            } catch (GradingFactorException e) {
                                e.printStackTrace();
                            }
                        }
                    }).start();
                    new Thread(new Runnable() {

                        @Override
                        public void run() {
                            try {
                                final List<Exam> examList = examService.getExamListByClassId(classId);
                                final double[] fExam = new double[examList.size()];
                                double tempTotal = 0;
                                for (int i = 0; i < fExam.length; i++) {
                                    final double total = examList.get(i).getItemTotal();
                                    final double score = examService.getExamResultByExamAndStudentId(examList.get(i).getId(), studentId).getScore();
                                    fExam[i] = (score / total) * 100;
                                }
                                for (int i = 0; i < fExam.length; i++) tempTotal += fExam[i];
                                // after looping
                                tempTotal /= fExam.length;
                                examGrade = tempTotal;
                                // notify finish
                                gradeIsReadyExa = true;
                                if (isReady())
                                    notifyChange();
                            } catch (GradingFactorException e) {
                                e.printStackTrace();
                            }
                        }
                    }).start();
                    new Thread(new Runnable() {

                        @Override
                        public void run() {
                            try {
                                final List<Project> projectList = projectService.getProjectListByClassId(classId);
                                final double[] fProject = new double[projectList.size()];
                                double tempTotal = 0;
                                for (int i = 0; i < fProject.length; i++) {
                                    final double total = projectList.get(i).getItemTotal();
                                    final double score = projectService.getProjectResultByProjectAndStudentId(projectList.get(i).getId(), studentId).getScore();
                                    fProject[i] = (score / total) * 100;
                                }
                                for (int i = 0; i < fProject.length; i++) tempTotal += fProject[i];
                                // after looping
                                tempTotal /= fProject.length;
                                projectGrade = tempTotal;
                                // notify finish
                                gradeIsReadyPro = true;
                                if (isReady())
                                    notifyChange();
                            } catch (GradingFactorException e) {
                                e.printStackTrace();
                            }
                        }
                    }).start();
                    new Thread(new Runnable() {

                        @Override
                        public void run() {
                            try {
                                final List<Quiz> quizList = quizService.getQuizListByClassId(classId);
                                final double[] fQuiz = new double[quizList.size()];
                                double tempTotal = 0;
                                for (int i = 0; i < fQuiz.length; i++) {
                                    final double total = quizList.get(i).getItemTotal();
                                    final double score = quizService.getQuizResultByQuizAndStudentId(quizList.get(i).getId(), studentId).getScore();
                                    fQuiz[i] = (score / total) * 100;
                                }
                                for (int i = 0; i < fQuiz.length; i++) tempTotal += fQuiz[i];
                                // after looping
                                tempTotal /= fQuiz.length;
                                quizGrade = tempTotal;
                                // notify finish
                                gradeIsReadyQui = true;
                                if (isReady())
                                    notifyChange();
                            } catch (GradingFactorException e) {
                                e.printStackTrace();
                            }
                        }
                    }).start();
                }
            }).start();
        }
    } catch (ClassException e) {
        e.printStackTrace();
    }
}
Also used : Attendance(com.remswork.project.alice.model.Attendance) GradingFactorException(com.remswork.project.alice.exception.GradingFactorException) AppCompatActivity(android.support.v7.app.AppCompatActivity) Activity(com.remswork.project.alice.model.Activity) ClassException(com.remswork.project.alice.exception.ClassException) Student(com.remswork.project.alice.model.Student) Assignment(com.remswork.project.alice.model.Assignment) Project(com.remswork.project.alice.model.Project) Quiz(com.remswork.project.alice.model.Quiz) Exam(com.remswork.project.alice.model.Exam)

Aggregations

ClassException (com.remswork.project.alice.exception.ClassException)55 Message (com.remswork.project.alice.model.support.Message)46 Class (com.remswork.project.alice.model.Class)18 AsyncTask (android.os.AsyncTask)17 Gson (com.google.gson.Gson)17 IOException (java.io.IOException)17 InputStream (java.io.InputStream)17 HttpURLConnection (java.net.HttpURLConnection)17 URL (java.net.URL)17 ExecutionException (java.util.concurrent.ExecutionException)17 ClassServiceException (com.remswork.project.alice.web.service.exception.ClassServiceException)16 Client (javax.ws.rs.client.Client)16 WebTarget (javax.ws.rs.client.WebTarget)16 Response (javax.ws.rs.core.Response)16 Student (com.remswork.project.alice.model.Student)14 Schedule (com.remswork.project.alice.model.Schedule)13 ArrayList (java.util.ArrayList)9 ClientBuilder (javax.ws.rs.client.ClientBuilder)7 Builder (javax.ws.rs.client.Invocation.Builder)7 JSONArray (org.json.JSONArray)7