Subversion Repositories bacoAlunos

Rev

Rev 1306 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
205 jmachado 1
package pt.estgp.estgweb.services.courseunits;
2
 
1040 jmachado 3
import org.apache.log4j.Logger;
4
import pt.estgp.estgweb.domain.*;
5
import pt.estgp.estgweb.domain.dao.DaoFactory;
205 jmachado 6
import pt.estgp.estgweb.services.common.*;
7
import pt.estgp.estgweb.services.common.impl.DefaultResult;
1040 jmachado 8
import pt.estgp.estgweb.services.common.impl.DefaultSearchResults;
205 jmachado 9
import pt.estgp.estgweb.services.common.impl.DefaultToDo;
1040 jmachado 10
import pt.utl.ist.berserk.logic.serviceManager.IService;
205 jmachado 11
 
12
import java.util.ArrayList;
1040 jmachado 13
import java.util.List;
205 jmachado 14
 
15
/*
16
 * @author Goncalo Luiz gedl [AT] rnl [DOT] ist [DOT] utl [DOT] pt
17
 *
18
 *
19
 * Created at 17/Out/2003 , 23:45:24
20
 *
21
 */
22
/**
23
 * @author Jorge Machado
24
 *         <p/>
25
 *         <p/>
26
 *         Created at 17/Out/2003 , 23:45:24
27
 */
457 jmachado 28
public class CourseUnitsCommonServices extends SingleSearchResults implements IService, IModuleCommonServices
205 jmachado 29
{
30
    private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger = 1.5.0/docs/api/java/util/logging/Logger.html">Logger.getLogger(CourseUnitsCommonServices.class);
31
 
32
 
33
    public int countSearch(1.5.0/docs/api/java/lang/String.html">String search, SearchTypeEnum searchType, UserSession userSession)
34
    {
35
        return 0;
36
    }
37
 
38
    public ISearchResults search(1.5.0/docs/api/java/lang/String.html">String search, SearchTypeEnum searchType, int page, int maxResults, UserSession userSession)
39
    {
40
        return search(null, search, searchType, page, maxResults, userSession);
41
    }
42
 
43
    public ISearchResults search(1.5.0/docs/api/java/lang/String.html">String from, 1.5.0/docs/api/java/lang/String.html">String search, SearchTypeEnum searchType, int page, int maxResults, UserSession userSession)
44
    {
45
        DefaultSearchResults searchResults = new DefaultSearchResults();
46
        searchResults.setModule(ModuleEnum.CourseUnits);
47
 
206 jmachado 48
        searchResults.setTotalResults(DaoFactory.getCourseUnitDaoImpl().countCourseUnitsActualYear(search, searchType));
205 jmachado 49
        if (searchResults.getTotalResults() > 0)
50
        {
206 jmachado 51
            List<CourseUnit> courseUnits = DaoFactory.getCourseUnitDaoImpl().searchActualYear(search, searchType, maxResults, page);
205 jmachado 52
            if (courseUnits == null)
53
                return searchResults;
54
            for (CourseUnit courseUnit : courseUnits)
55
            {
56
                DefaultResult defaultResult = new DefaultResult();
57
                defaultResult.setTitle(courseUnit.getName());
58
                defaultResult.setSubTitle(courseUnit.getCourseName());
59
                defaultResult.setSubTitleKey(false);
60
                defaultResult.setText(courseUnit.getObjectives());
470 jmachado 61
                defaultResult.setDate(courseUnit.getImportYear());
205 jmachado 62
                if (from == null)
63
                    defaultResult.setUrl("/startLoadCourseUnit.do?id=" + courseUnit.getId());
64
                else
65
                    defaultResult.setUrl("/user/startLoadCourseUnitFrom" + from + ".do?id=" + courseUnit.getId());
66
                searchResults.addResult(defaultResult);
67
            }
68
        }
69
        return searchResults;
70
    }
71
 
72
 
206 jmachado 73
 
207 jmachado 74
 
205 jmachado 75
    public int countToDo(UserSession userSession)
76
    {
77
        return 0;
78
    }
79
 
80
    public IToDoCat getToDo(UserSession userSession)
81
    {
82
        return null;
83
    }
84
 
85
    public List<IToDo> getAllToDos(UserSession userSession)
86
    {
87
        List<IToDo> todos = new ArrayList<IToDo>();
88
 
89
        if(userSession.getUser() != null && userSession.getUser() instanceof Teacher)
90
        {
343 jmachado 91
//            HashMap<Long,Long> doneProgramCodes = new HashMap<Long,Long>();
1040 jmachado 92
            /*List<CourseUnit> courseUnits = DaoFactory.getCourseUnitDaoImpl().loadMissingObjectivesOrPrograms(userSession.getUser().getId());
205 jmachado 93
            for(CourseUnit c: courseUnits)
94
            {
343 jmachado 95
                DefaultToDo defaultToDo = new DefaultToDo(c.getName(),null,c.getCourseName(), "courseunit.program.objectives.todo","/user/startLoadCourseUnitFromHome.do?id=" + c.getId());
205 jmachado 96
                todos.add(defaultToDo);
343 jmachado 97
//                if(c.getProgramStreamId() == null || c.getProgramStreamId().length() == 0)
98
//                {
99
////                    doneProgramCodes.put(c.getId(),c.getId());
100
//                    defaultToDo = new DefaultToDo(c.getName(),null,c.getCourseName(), "courseunit.program.todo","/user/startLoadCourseUnitFromHome.do?id=" + c.getId());
101
//                    todos.add(defaultToDo);
102
//                }
205 jmachado 103
            }
104
 
343 jmachado 105
//            courseUnits = DaoFactory.getCourseUnitDaoImpl().loadMissingPrograms(userSession.getUser().getId());
106
//            for(CourseUnit c: courseUnits)
107
//            {
108
//                if(doneProgramCodes.get(c.getId()) == null) //is not in missing objectives units
109
//                {
110
//                    doneProgramCodes.put(c.getId(),c.getId());
111
//                    DefaultToDo defaultToDo = new DefaultToDo(c.getName(),null,c.getCourseName(), "courseunit.program.todo","/user/startLoadCourseUnitFromHome.do?id=" + c.getId());
112
//                    todos.add(defaultToDo);
113
//                }
114
//            }
214 jmachado 115
 
205 jmachado 116
            List<CourseUnitQuestion> courseUnitQuestions = DaoFactory.getCourseUnitQuestionDaoImpl().loadMissingQuestions(userSession.getUser().getId());
117
            for(CourseUnitQuestion c: courseUnitQuestions)
118
            {
119
                DefaultToDo defaultToDo = new DefaultToDo(c.getQuestion(),null,c.getCourseUnit().getName(), "courseunit.question.todo","/user/startLoadCourseUnitFromHome.do?id=" + c.getId());
120
                todos.add(defaultToDo);
121
            }
1040 jmachado 122
*/
207 jmachado 123
 
205 jmachado 124
        }
207 jmachado 125
        if(userSession.getUser() != null && userSession.getUser() instanceof Student)
126
        {
127
            List<CourseUnitAssignementImpl> courseUnitAssignements = DaoFactory.getCourseUnitAssignementDaoImpl().loadActiveAssignements(userSession.getUser().getId());
128
            List<CourseUnitAssignementImpl> courseUnitAssignementsDelivered = DaoFactory.getCourseUnitAssignementDaoImpl().loadDeliveredAssignements(userSession.getUser().getId());
129
            courseUnitAssignements.removeAll(courseUnitAssignementsDelivered);
130
            for(CourseUnitAssignementImpl c: courseUnitAssignements)
131
            {
132
                DefaultToDo defaultToDo = new DefaultToDo(c.getTitle(),null,c.getCourseUnit().getName(), "courseunit.assignement.todo","/user/startLoadCourseUnitWorksFromHome.do?courseUnitView.id=" + c.getCourseUnit().getId());
133
                todos.add(defaultToDo);
134
            }
135
        }
205 jmachado 136
        return todos;
137
    }/*This method is invoked from object creation*/
138
 
139
    public void adviseNew(DomainObject object)
140
    {
141
        //To change body of implemented methods use File | Settings | File Templates.
142
    }
143
 
144
    public void adviseUpdate(DomainObject object)
145
    {
146
        //To change body of implemented methods use File | Settings | File Templates.
147
    }
148
}