diff --git a/Code-DD-UFG/Back-End/sdd-ufg/.classpath b/Code-DD-UFG/Back-End/sdd-ufg/.classpath
index 35bca5e..13923da 100644
--- a/Code-DD-UFG/Back-End/sdd-ufg/.classpath
+++ b/Code-DD-UFG/Back-End/sdd-ufg/.classpath
@@ -6,19 +6,20 @@
-
+
+
-
-
+
-
+
+
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/.project b/Code-DD-UFG/Back-End/sdd-ufg/.project
index 2f8f96c..4b1701f 100644
--- a/Code-DD-UFG/Back-End/sdd-ufg/.project
+++ b/Code-DD-UFG/Back-End/sdd-ufg/.project
@@ -5,11 +5,21 @@
+
+ org.eclipse.wst.common.project.facet.core.builder
+
+
+
org.eclipse.jdt.core.javabuilder
+
+ org.eclipse.wst.validation.validationbuilder
+
+
+
org.eclipse.m2e.core.maven2Builder
@@ -19,5 +29,6 @@
org.eclipse.jdt.core.javanature
org.eclipse.m2e.core.maven2Nature
+ org.eclipse.wst.common.project.facet.core.nature
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.jdt.core.prefs b/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.jdt.core.prefs
index 8626026..dc0892a 100644
--- a/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.jdt.core.prefs
+++ b/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.jdt.core.prefs
@@ -1,5 +1,8 @@
eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.source=1.5
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.jpt.core.prefs b/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.jpt.core.prefs
new file mode 100644
index 0000000..45986fe
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.jpt.core.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+org.eclipse.jpt.core.platform=eclipselink2_2
+org.eclipse.jpt.jpa.core.discoverAnnotatedClasses=true
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml b/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml
new file mode 100644
index 0000000..c8ec2a6
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.wst.common.project.facet.core.xml b/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.wst.common.project.facet.core.xml
new file mode 100644
index 0000000..28d8abf
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/params.yml b/Code-DD-UFG/Back-End/sdd-ufg/params.yml
index 4d6afd9..c0c1ed2 100644
--- a/Code-DD-UFG/Back-End/sdd-ufg/params.yml
+++ b/Code-DD-UFG/Back-End/sdd-ufg/params.yml
@@ -1,7 +1,5 @@
-server:
- applicationConnectors:
- - type: http
- port: 8090
- adminConnectors:
- - type: http
- port: 8091
\ No newline at end of file
+database:
+ driverClass: org.postgresql.Driver
+ user: postgres
+ password: postgres
+ url: jdbc:postgresql://localhost/sddufg
\ No newline at end of file
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/pom.xml b/Code-DD-UFG/Back-End/sdd-ufg/pom.xml
index 605e078..abb3b18 100644
--- a/Code-DD-UFG/Back-End/sdd-ufg/pom.xml
+++ b/Code-DD-UFG/Back-End/sdd-ufg/pom.xml
@@ -13,14 +13,88 @@
UTF-8
UTF-8
- 0.8.4
+ 0.6.2
+ 0.8.4
+ 3.0
+ 4.2.20.Final
- io.dropwizard
- dropwizard-core
- ${dropwizard.version}
+ com.yammer.dropwizard
+ dropwizard-core
+ ${dropwizard.version}
+
+
+
+ io.dropwizard
+ dropwizard-hibernate
+ ${dropwizardhibernate.version}
+
+
+
+
+
+ org.hibernate
+ hibernate-core
+ ${hibernate.version}
+
+
+
+ org.hibernate
+ hibernate-entitymanager
+ ${hibernate.version}
+
+
+
+ org.hibernate
+ hibernate-validator
+ 5.0.1.Final
+
+
+
+
+
+ postgresql
+ postgresql
+ 9.1-901-1.jdbc4
+
+
+
+
+ javax.annotation
+ jsr250-api
+ 1.0
+
+
+
+ com.google.inject
+ guice
+ ${guice.version}
+
+
+
+ com.google.inject.extensions
+ guice-persist
+ ${guice.version}
+
+
+
+ org.eclipse.persistence
+ eclipselink
+ 2.5.1
+
+
+
+ joda-time
+ joda-time
+ 2.6
+
+
+
+ joda-time
+ joda-time-hibernate
+ 1.3
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/SddUfgApplication.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/SddUfgApplication.java
index 18f1314..810dee6 100644
--- a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/SddUfgApplication.java
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/SddUfgApplication.java
@@ -1,33 +1,68 @@
package br.ufg.inf.sdd_ufg;
-import io.dropwizard.Application;
-import io.dropwizard.setup.Bootstrap;
-import io.dropwizard.setup.Environment;
+import br.ufg.inf.sdd_ufg.config.JpaConfiguration;
+import br.ufg.inf.sdd_ufg.dao.ClazzDao;
+import br.ufg.inf.sdd_ufg.dao.ClazzIntentDao;
+import br.ufg.inf.sdd_ufg.dao.CourseDao;
+import br.ufg.inf.sdd_ufg.dao.DistributionProcessDao;
+import br.ufg.inf.sdd_ufg.dao.GradeDao;
+import br.ufg.inf.sdd_ufg.dao.KnowledgeGroupDao;
+import br.ufg.inf.sdd_ufg.dao.TeacherDao;
+import br.ufg.inf.sdd_ufg.dao.UserDao;
+import br.ufg.inf.sdd_ufg.jpa.ClazzDaoJpa;
+import br.ufg.inf.sdd_ufg.jpa.ClazzIntentDaoJpa;
+import br.ufg.inf.sdd_ufg.jpa.CourseDaoJpa;
+import br.ufg.inf.sdd_ufg.jpa.DistributionProcessDaoJpa;
+import br.ufg.inf.sdd_ufg.jpa.GradeDaoJpa;
+import br.ufg.inf.sdd_ufg.jpa.KnowledgeGroupDaoJpa;
+import br.ufg.inf.sdd_ufg.jpa.TeacherDaoJpa;
+import br.ufg.inf.sdd_ufg.jpa.UserDaoJpa;
+import br.ufg.inf.sdd_ufg.resource.CourseResource;
+import br.ufg.inf.sdd_ufg.resource.UserResource;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.SerializationFeature;
+import com.google.inject.AbstractModule;
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+import com.google.inject.persist.PersistFilter;
+import com.yammer.dropwizard.Service;
+import com.yammer.dropwizard.config.Bootstrap;
+import com.yammer.dropwizard.config.Environment;
-public class SddUfgApplication extends Application {
+
+public class SddUfgApplication extends Service {
public static void main(String[] args) throws Exception {
new SddUfgApplication().run(args);
}
@Override
- public String getName() {
- return "sdd-ufg";
+ public void initialize(final Bootstrap bootstrap) {
+ bootstrap.setName("mr-api");
}
-
- @Override
- public void initialize(Bootstrap bootstrap) {
- // nothing to do yet
+
+ private Injector createInjector(final SddUfgConfiguration conf) {
+ return Guice.createInjector(new AbstractModule() {
+ @Override
+ protected void configure() {
+ bind(ClazzDao.class).to(ClazzDaoJpa.class);
+ bind(ClazzIntentDao.class).to(ClazzIntentDaoJpa.class);
+ bind(CourseDao.class).to(CourseDaoJpa.class);
+ bind(DistributionProcessDao.class).to(DistributionProcessDaoJpa.class);
+ bind(GradeDao.class).to(GradeDaoJpa.class);
+ bind(KnowledgeGroupDao.class).to(KnowledgeGroupDaoJpa.class);
+ bind(TeacherDao.class).to(TeacherDaoJpa.class);
+ bind(UserDao.class).to(UserDaoJpa.class);
+ }
+ }, JpaConfiguration.createJpaPersistModule(conf));
}
+
@Override
public void run(SddUfgConfiguration configuration, Environment environment) {
- // Configure pretty print of json
- ObjectMapper factory = environment.getObjectMapper();
- factory.enable(SerializationFeature.INDENT_OUTPUT);
+ Injector injector = createInjector(configuration);
+ environment.addFilter(injector.getInstance(PersistFilter.class), "/*");
+ environment.addResource(injector.getInstance(UserResource.class));
+ environment.addResource(injector.getInstance(CourseResource.class));
}
}
\ No newline at end of file
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/SddUfgConfiguration.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/SddUfgConfiguration.java
index 4135c7b..4facffc 100644
--- a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/SddUfgConfiguration.java
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/SddUfgConfiguration.java
@@ -1,7 +1,27 @@
package br.ufg.inf.sdd_ufg;
-import io.dropwizard.Configuration;
+import io.dropwizard.db.DataSourceFactory;
+
+import com.yammer.dropwizard.config.Configuration;
+
+import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
public class SddUfgConfiguration extends Configuration {
-
-}
\ No newline at end of file
+
+ @Valid
+ @NotNull
+ private DataSourceFactory database = new DataSourceFactory();
+
+ @JsonProperty("database")
+ public DataSourceFactory getDataSourceFactory() {
+ return database;
+ }
+
+ @JsonProperty("database")
+ public void setDataSourceFactory(DataSourceFactory dataSourceFactory) {
+ this.database = dataSourceFactory;
+ }
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/config/JpaConfiguration.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/config/JpaConfiguration.java
new file mode 100644
index 0000000..db3cf8a
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/config/JpaConfiguration.java
@@ -0,0 +1,21 @@
+package br.ufg.inf.sdd_ufg.config;
+
+import java.util.Properties;
+
+import br.ufg.inf.sdd_ufg.SddUfgConfiguration;
+
+import com.google.inject.persist.jpa.JpaPersistModule;
+
+public class JpaConfiguration {
+
+ public static JpaPersistModule createJpaPersistModule(SddUfgConfiguration conf) {
+ Properties props = new Properties();
+ props.put("javax.persistence.jdbc.url", conf.getDataSourceFactory().getUrl());
+ props.put("javax.persistence.jdbc.user", conf.getDataSourceFactory().getUser());
+ props.put("javax.persistence.jdbc.password", conf.getDataSourceFactory().getPassword());
+ props.put("javax.persistence.jdbc.driver", conf.getDataSourceFactory().getDriverClass());
+ JpaPersistModule jpaModule = new JpaPersistModule("Default");
+ jpaModule.properties(props);
+ return jpaModule;
+ }
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/ClazzDao.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/ClazzDao.java
new file mode 100644
index 0000000..1da465d
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/ClazzDao.java
@@ -0,0 +1,6 @@
+package br.ufg.inf.sdd_ufg.dao;
+
+import br.ufg.inf.sdd_ufg.model.Clazz;
+
+public interface ClazzDao extends EntityDao {
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/ClazzIntentDao.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/ClazzIntentDao.java
new file mode 100644
index 0000000..06f4a46
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/ClazzIntentDao.java
@@ -0,0 +1,6 @@
+package br.ufg.inf.sdd_ufg.dao;
+
+import br.ufg.inf.sdd_ufg.model.ClazzIntent;
+
+public interface ClazzIntentDao extends EntityDao {
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/CourseDao.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/CourseDao.java
new file mode 100644
index 0000000..6ed6b47
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/CourseDao.java
@@ -0,0 +1,6 @@
+package br.ufg.inf.sdd_ufg.dao;
+
+import br.ufg.inf.sdd_ufg.model.Course;
+
+public interface CourseDao extends EntityDao {
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/DistributionProcessDao.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/DistributionProcessDao.java
new file mode 100644
index 0000000..4edad0f
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/DistributionProcessDao.java
@@ -0,0 +1,6 @@
+package br.ufg.inf.sdd_ufg.dao;
+
+import br.ufg.inf.sdd_ufg.model.DistributionProcess;
+
+public interface DistributionProcessDao extends EntityDao {
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/EntityDao.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/EntityDao.java
new file mode 100644
index 0000000..866046a
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/EntityDao.java
@@ -0,0 +1,25 @@
+package br.ufg.inf.sdd_ufg.dao;
+
+import java.util.List;
+
+import br.ufg.inf.sdd_ufg.model.Entity;
+
+public interface EntityDao > {
+
+ E create();
+
+ E findById(Long id, Integer depth);
+
+ List findAll(Integer depth);
+
+ E refresh(E entity);
+
+ E save(E entity);
+
+ E insert(E entity);
+
+ E update(E entity);
+
+ void delete(E entity);
+ void delete(Long id);
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/GradeDao.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/GradeDao.java
new file mode 100644
index 0000000..318e7c3
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/GradeDao.java
@@ -0,0 +1,6 @@
+package br.ufg.inf.sdd_ufg.dao;
+
+import br.ufg.inf.sdd_ufg.model.Grade;
+
+public interface GradeDao extends EntityDao {
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/KnowledgeGroupDao.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/KnowledgeGroupDao.java
new file mode 100644
index 0000000..739a466
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/KnowledgeGroupDao.java
@@ -0,0 +1,6 @@
+package br.ufg.inf.sdd_ufg.dao;
+
+import br.ufg.inf.sdd_ufg.model.KnowledgeGroup;
+
+public interface KnowledgeGroupDao extends EntityDao {
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/TeacherDao.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/TeacherDao.java
new file mode 100644
index 0000000..4482ecd
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/TeacherDao.java
@@ -0,0 +1,6 @@
+package br.ufg.inf.sdd_ufg.dao;
+
+import br.ufg.inf.sdd_ufg.model.Teacher;
+
+public interface TeacherDao extends EntityDao {
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/UserDao.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/UserDao.java
new file mode 100644
index 0000000..cb3571e
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/dao/UserDao.java
@@ -0,0 +1,6 @@
+package br.ufg.inf.sdd_ufg.dao;
+
+import br.ufg.inf.sdd_ufg.model.User;
+
+public interface UserDao extends EntityDao {
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/hibernate/type/LocalDateTimeUserType.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/hibernate/type/LocalDateTimeUserType.java
new file mode 100644
index 0000000..43563f2
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/hibernate/type/LocalDateTimeUserType.java
@@ -0,0 +1,10 @@
+package br.ufg.inf.sdd_ufg.hibernate.type;
+
+import org.hibernate.annotations.TypeDef;
+import org.jadira.usertype.dateandtime.joda.PersistentLocalDateTime;
+import org.joda.time.LocalDateTime;
+
+@TypeDef(defaultForType = LocalDateTime.class, typeClass = LocalDateTimeUserType.class)
+public class LocalDateTimeUserType extends PersistentLocalDateTime {
+ private static final long serialVersionUID = 2655545011460945170L;
+}
\ No newline at end of file
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/hibernate/type/LocalDateUserType.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/hibernate/type/LocalDateUserType.java
new file mode 100644
index 0000000..da34e60
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/hibernate/type/LocalDateUserType.java
@@ -0,0 +1,10 @@
+package br.ufg.inf.sdd_ufg.hibernate.type;
+
+import org.hibernate.annotations.TypeDef;
+import org.jadira.usertype.dateandtime.joda.PersistentLocalDate;
+import org.joda.time.LocalDate;
+
+@TypeDef(defaultForType = LocalDate.class, typeClass = LocalDateUserType.class)
+public class LocalDateUserType extends PersistentLocalDate {
+ private static final long serialVersionUID = -4222229387273227744L;
+}
\ No newline at end of file
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/ClazzDaoJpa.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/ClazzDaoJpa.java
new file mode 100644
index 0000000..efe2948
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/ClazzDaoJpa.java
@@ -0,0 +1,9 @@
+package br.ufg.inf.sdd_ufg.jpa;
+
+import br.ufg.inf.sdd_ufg.dao.ClazzDao;
+import br.ufg.inf.sdd_ufg.model.Clazz;
+
+public class ClazzDaoJpa extends EntityDaoJpa implements ClazzDao {
+
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/ClazzIntentDaoJpa.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/ClazzIntentDaoJpa.java
new file mode 100644
index 0000000..87effec
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/ClazzIntentDaoJpa.java
@@ -0,0 +1,9 @@
+package br.ufg.inf.sdd_ufg.jpa;
+
+import br.ufg.inf.sdd_ufg.dao.ClazzIntentDao;
+import br.ufg.inf.sdd_ufg.model.ClazzIntent;
+
+public class ClazzIntentDaoJpa extends EntityDaoJpa implements ClazzIntentDao {
+
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/CourseDaoJpa.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/CourseDaoJpa.java
new file mode 100644
index 0000000..428cd98
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/CourseDaoJpa.java
@@ -0,0 +1,8 @@
+package br.ufg.inf.sdd_ufg.jpa;
+
+import br.ufg.inf.sdd_ufg.dao.CourseDao;
+import br.ufg.inf.sdd_ufg.model.Course;
+
+public class CourseDaoJpa extends EntityDaoJpa implements CourseDao {
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/DistributionProcessDaoJpa.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/DistributionProcessDaoJpa.java
new file mode 100644
index 0000000..1ed7cc9
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/DistributionProcessDaoJpa.java
@@ -0,0 +1,9 @@
+package br.ufg.inf.sdd_ufg.jpa;
+
+import br.ufg.inf.sdd_ufg.dao.DistributionProcessDao;
+import br.ufg.inf.sdd_ufg.model.DistributionProcess;
+
+public class DistributionProcessDaoJpa extends EntityDaoJpa implements DistributionProcessDao {
+
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/EntityDaoJpa.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/EntityDaoJpa.java
new file mode 100644
index 0000000..edda72a
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/EntityDaoJpa.java
@@ -0,0 +1,141 @@
+package br.ufg.inf.sdd_ufg.jpa;
+
+import java.lang.reflect.Field;
+import java.lang.reflect.ParameterizedType;
+import java.util.List;
+
+import javax.persistence.EntityManager;
+import javax.persistence.Query;
+
+import br.ufg.inf.sdd_ufg.dao.EntityDao;
+import br.ufg.inf.sdd_ufg.jpa.exception.FailedInstantiationDaoException;
+import br.ufg.inf.sdd_ufg.model.Entity;
+
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+import com.google.inject.persist.Transactional;
+
+public class EntityDaoJpa> implements EntityDao {
+
+ protected Class entityClass;
+
+ @Inject
+ private Provider entityManagerProvider;
+
+ @SuppressWarnings("unchecked")
+ public EntityDaoJpa() {
+ Class> clazz = getClass();
+ while (!(clazz.getGenericSuperclass() instanceof ParameterizedType)) {
+ clazz = clazz.getSuperclass();
+ }
+ try {
+ ParameterizedType parameterizedType = (ParameterizedType) clazz.getGenericSuperclass();
+ entityClass = (Class) parameterizedType.getActualTypeArguments()[0];
+ } catch (Exception e) {
+ entityClass = null;
+ }
+ }
+
+ protected EntityManager getEntityManager() {
+ return entityManagerProvider.get();
+ }
+
+ protected E consist(E entity) {
+ return entity.consist();
+ }
+
+ public E create() {
+ try {
+ return entityClass.newInstance();
+ } catch (Exception e) {
+ e.printStackTrace();
+ throw new FailedInstantiationDaoException();
+ }
+ }
+
+ @Transactional
+ public E save(E entity) {
+ return entity.getPersistent() ? update(entity) : insert(entity);
+ };
+
+ @Transactional
+ public E insert(E entity) {
+ entity.setId(null);
+ getEntityManager().persist(consist(entity));
+ return entity;
+ };
+
+ @Transactional
+ public E remove(E entity) {
+ getEntityManager().remove(entity);
+ entity.setId(null);
+ return entity;
+ };
+
+
+ @Transactional
+ public void delete(E entity) {
+ getEntityManager().remove(entity);
+ }
+
+ @Transactional
+ public void delete(Long id) {
+ E entity = findById(id, 0);
+ if (entity == null) {
+ throw new IllegalArgumentException();
+ }
+ getEntityManager().remove(entity);
+ }
+
+
+ public E findById(Long id, Integer depth) {
+ E entity = getEntityManager().find(entityClass, id);
+ if (entity != null) {
+ entity = treatEntityDepth(entity, 0, depth);
+ }
+ return entity;
+ }
+
+ @SuppressWarnings("unchecked")
+ public List findAll(Integer depth) {
+ Query query = getEntityManager().createQuery("from " + entityClass.getSimpleName() + " " + entityClass.getSimpleName().substring(0,1));
+ List entities = (List) query.getResultList();
+ for (E entity : entities) {
+ entity = treatEntityDepth(entity, 0, depth);
+ }
+ return entities;
+ }
+
+ private E treatEntityDepth(E entity, Integer depth, Integer maxDepth) {
+ Field[] fields = entity.getClass().getDeclaredFields();
+ for (int i = 0; i < fields.length; i++) {
+ fields[i].setAccessible(true);
+ try {
+ if (Entity.class.isAssignableFrom(fields[i].getType()) && maxDepth >= depth) {
+ if (fields[i].get(entity) != null) {
+ fields[i].set(entity, treatEntityDepth(entity, depth + 1, maxDepth));
+ }
+ } else if (fields[i].getType().equals(Entity.class)) {
+ fields[i].set(entity, null);
+ }
+ } catch (IllegalAccessException iae) {}
+ fields[i].setAccessible(false);
+ }
+ return entity;
+ }
+
+ @Transactional
+ public E refresh(E entity) {
+ if (getEntityManager().contains(entity)) {
+ getEntityManager().refresh(entity);
+ } else {
+ entity = getEntityManager().find(entityClass, entity.getId());
+ }
+ return entity;
+ }
+
+ @Transactional
+ public E update(E entity) {
+ return getEntityManager().merge(consist(entity));
+ };
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/GradeDaoJpa.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/GradeDaoJpa.java
new file mode 100644
index 0000000..3c98116
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/GradeDaoJpa.java
@@ -0,0 +1,9 @@
+package br.ufg.inf.sdd_ufg.jpa;
+
+import br.ufg.inf.sdd_ufg.dao.GradeDao;
+import br.ufg.inf.sdd_ufg.model.Grade;
+
+public class GradeDaoJpa extends EntityDaoJpa implements GradeDao {
+
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/KnowledgeGroupDaoJpa.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/KnowledgeGroupDaoJpa.java
new file mode 100644
index 0000000..7c8c8cc
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/KnowledgeGroupDaoJpa.java
@@ -0,0 +1,9 @@
+package br.ufg.inf.sdd_ufg.jpa;
+
+import br.ufg.inf.sdd_ufg.dao.KnowledgeGroupDao;
+import br.ufg.inf.sdd_ufg.model.KnowledgeGroup;
+
+public class KnowledgeGroupDaoJpa extends EntityDaoJpa implements KnowledgeGroupDao {
+
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/TeacherDaoJpa.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/TeacherDaoJpa.java
new file mode 100644
index 0000000..cc575d0
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/TeacherDaoJpa.java
@@ -0,0 +1,9 @@
+package br.ufg.inf.sdd_ufg.jpa;
+
+import br.ufg.inf.sdd_ufg.dao.TeacherDao;
+import br.ufg.inf.sdd_ufg.model.Teacher;
+
+public class TeacherDaoJpa extends EntityDaoJpa implements TeacherDao {
+
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/UserDaoJpa.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/UserDaoJpa.java
new file mode 100644
index 0000000..4bd0fa5
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/UserDaoJpa.java
@@ -0,0 +1,9 @@
+package br.ufg.inf.sdd_ufg.jpa;
+
+import br.ufg.inf.sdd_ufg.dao.UserDao;
+import br.ufg.inf.sdd_ufg.model.User;
+
+public class UserDaoJpa extends EntityDaoJpa implements UserDao {
+
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/exception/FailedInstantiationDaoException.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/exception/FailedInstantiationDaoException.java
new file mode 100644
index 0000000..65d9283
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/jpa/exception/FailedInstantiationDaoException.java
@@ -0,0 +1,10 @@
+package br.ufg.inf.sdd_ufg.jpa.exception;
+
+
+public class FailedInstantiationDaoException extends RuntimeException {
+ private static final long serialVersionUID = 225023159798717776L;
+
+ public FailedInstantiationDaoException() {
+ super("Objeto de entidade não pode ser criado!");
+ }
+}
\ No newline at end of file
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Clazz.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Clazz.java
new file mode 100644
index 0000000..d416432
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Clazz.java
@@ -0,0 +1,70 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.FetchType;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+
+@javax.persistence.Entity
+@Table(name = "CLAZZ")
+public class Clazz extends Entity {
+
+ private DistributionProcess distributionProcess;
+ private Grade grade;
+ private List clazzSchedules;
+ private Integer workload;
+ private Integer code;
+
+ @ManyToOne
+ @JoinColumn(name = "DIST_PROCESS_ID")
+ public DistributionProcess getDistributionProcess() {
+ return distributionProcess;
+ }
+
+ public void setDistributionProcess(DistributionProcess distributionProcess) {
+ this.distributionProcess = distributionProcess;
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "GRADE_ID")
+ public Grade getGrade() {
+ return grade;
+ }
+
+ public void setGrade(Grade grade) {
+ this.grade = grade;
+ }
+
+ @OneToMany( fetch = FetchType.EAGER, mappedBy="clazz", cascade=CascadeType.ALL, orphanRemoval=true )
+ public List getClazzSchedules() {
+ return clazzSchedules;
+ }
+
+ public void setClazzSchedules(List clazzSchedules) {
+ this.clazzSchedules = clazzSchedules;
+ }
+
+ @Column(name = "WORKLOAD")
+ public Integer getWorkload() {
+ return workload;
+ }
+
+ public void setWorkload(Integer workload) {
+ this.workload = workload;
+ }
+
+ @Column(name = "CODE")
+ public Integer getCode() {
+ return code;
+ }
+
+ public void setCode(Integer code) {
+ this.code = code;
+ }
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/ClazzIntent.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/ClazzIntent.java
new file mode 100644
index 0000000..5f30c78
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/ClazzIntent.java
@@ -0,0 +1,34 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@javax.persistence.Entity
+@Table(name = "CLAZZ_INTENT")
+public class ClazzIntent extends Entity {
+
+ private Teacher teacher;
+ private Clazz clazz;
+
+ @ManyToOne
+ @JoinColumn(name = "TEACHER_ID")
+ public Teacher getTeacher() {
+ return teacher;
+ }
+
+ public void setTeacher(Teacher teacher) {
+ this.teacher = teacher;
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "CLAZZ_ID")
+ public Clazz getClazz() {
+ return clazz;
+ }
+
+ public void setClazz(Clazz clazz) {
+ this.clazz = clazz;
+ }
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/ClazzSchedule.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/ClazzSchedule.java
new file mode 100644
index 0000000..6de24a5
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/ClazzSchedule.java
@@ -0,0 +1,54 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import javax.persistence.Column;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@javax.persistence.Entity
+@Table(name = "CLAZZ_SCHEDULE")
+public class ClazzSchedule extends Entity {
+
+ private Clazz clazz;
+ private Integer weekDay;
+ private String startTime;
+ private String endTime;
+
+ @ManyToOne
+ @JoinColumn(name = "CLAZZ_ID")
+ public Clazz getClazz() {
+ return clazz;
+ }
+
+ public void setClazz(Clazz clazz) {
+ this.clazz = clazz;
+ }
+
+ @Column(name = "WEEK_DAY")
+ public Integer getWeekDay() {
+ return weekDay;
+ }
+
+ public void setWeekDay(Integer weekDay) {
+ this.weekDay = weekDay;
+ }
+
+ @Column(name = "START_TIME")
+ public String getStartTime() {
+ return startTime;
+ }
+
+ public void setStartTime(String startTime) {
+ this.startTime = startTime;
+ }
+
+ @Column(name = "END_TIME")
+ public String getEndTime() {
+ return endTime;
+ }
+
+ public void setEndTime(String endTime) {
+ this.endTime = endTime;
+ }
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Course.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Course.java
new file mode 100644
index 0000000..a7d30b1
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Course.java
@@ -0,0 +1,35 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.FetchType;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+
+@javax.persistence.Entity
+@Table(name = "COURSE")
+public class Course extends Entity {
+
+ private String name;
+ private List grades;
+
+ @Column(name = "NAME")
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ @OneToMany( fetch = FetchType.EAGER, mappedBy="course", cascade=CascadeType.ALL, orphanRemoval=true )
+ public List getGrades() {
+ return grades;
+ }
+
+ public void setGrades(List grades) {
+ this.grades = grades;
+ }
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/DistributionProcess.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/DistributionProcess.java
new file mode 100644
index 0000000..9450d1f
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/DistributionProcess.java
@@ -0,0 +1,96 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import java.util.Date;
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.FetchType;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+import javax.persistence.Temporal;
+import javax.persistence.TemporalType;
+
+@javax.persistence.Entity
+@Table(name = "DISTRIBUTION_PROCESS")
+public class DistributionProcess extends Entity {
+
+ private String semester;
+ private List clazzes;
+ private Date clazzRegistryDate;
+ private Date teacherIntentDate;
+ private Date firstResolutionDate;
+ private Date substituteDistribuitionDate;
+ private Date finishDate;
+
+ @Column(name = "SEMESTER")
+ public String getSemester() {
+ return semester;
+ }
+
+ public void setSemester(String semester) {
+ this.semester = semester;
+ }
+
+ @OneToMany( fetch = FetchType.EAGER, mappedBy="distributionProcess", cascade=CascadeType.ALL, orphanRemoval=true )
+ public List getClazzes() {
+ return clazzes;
+ }
+
+ public void setClazzes(List clazzes) {
+ this.clazzes = clazzes;
+ }
+
+ @Column(name="CLAZZ_REGISTRY_DATE")
+ @Temporal(value=TemporalType.DATE)
+ public Date getClazzRegistryDate() {
+ return clazzRegistryDate;
+ }
+
+ public void setClazzRegistryDate(Date clazzRegistryDate) {
+ this.clazzRegistryDate = clazzRegistryDate;
+ }
+
+ @Column(name="TEACHER_INTENT_DATE")
+ @Temporal(value=TemporalType.DATE)
+ public Date getTeacherIntentDate() {
+ return teacherIntentDate;
+ }
+
+ public void setTeacherIntentDate(Date teacherIntentDate) {
+ this.teacherIntentDate = teacherIntentDate;
+ }
+
+ @Column(name="FIRST_RESOLUTION_DATE")
+ @Temporal(value=TemporalType.DATE)
+ public Date getFirstResolutionDate() {
+ return firstResolutionDate;
+ }
+
+ public void setFirstResolutionDate(Date firstResolutionDate) {
+ this.firstResolutionDate = firstResolutionDate;
+ }
+
+ @Column(name="SUBSTITUTE_DIST_DATE")
+ @Temporal(value=TemporalType.DATE)
+ public Date getSubstituteDistribuitionDate() {
+ return substituteDistribuitionDate;
+ }
+
+ public void setSubstituteDistribuitionDate(Date substituteDistribuitionDate) {
+ this.substituteDistribuitionDate = substituteDistribuitionDate;
+ }
+
+ @Column(name="FINISH_DATE")
+ @Temporal(value=TemporalType.DATE)
+ public Date getFinishDate() {
+ return finishDate;
+ }
+
+ public void setFinishDate(Date finishDate) {
+ this.finishDate = finishDate;
+ }
+
+
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Entity.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Entity.java
new file mode 100644
index 0000000..50ae8b4
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Entity.java
@@ -0,0 +1,114 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import java.util.Date;
+
+import javax.persistence.Column;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.MappedSuperclass;
+import javax.persistence.PrePersist;
+import javax.persistence.PreUpdate;
+import javax.persistence.Temporal;
+import javax.persistence.TemporalType;
+import javax.persistence.Transient;
+
+import org.apache.commons.lang3.builder.CompareToBuilder;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
+@MappedSuperclass()
+public abstract class Entity> {
+
+ private Long id;
+ @JsonIgnore
+ private Date createdAt;
+ @JsonIgnore
+ private Date updatedAt;
+
+ @Id
+ @Column(name="ID", precision=18, scale=0)
+ @GeneratedValue(strategy = GenerationType.AUTO)
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ @JsonIgnore
+ @Column(name="CREATED_AT")
+ @Temporal(value=TemporalType.TIMESTAMP)
+ public Date getCreatedAt() {
+ return createdAt;
+ }
+
+ void setCreatedAt(Date createdAt) {
+ this.createdAt = createdAt;
+ }
+
+ @JsonIgnore
+ @Column(name="UPDATED_AT")
+ @Temporal(value=TemporalType.TIMESTAMP)
+ public Date getUpdatedAt() {
+ return updatedAt;
+ }
+
+ void setUpdatedAt(Date updatedAt) {
+ this.updatedAt = updatedAt;
+ }
+
+ @SuppressWarnings("unchecked")
+ public E consist() {
+ return (E) this;
+ }
+
+ @PrePersist
+ protected void preInsert() {
+ setCreatedAt(new Date());
+ }
+
+ @PreUpdate
+ protected void preUpdate() {
+ setUpdatedAt(new Date());
+ }
+
+ @JsonIgnore
+ @Transient
+ public Boolean getPersistent() {
+ return getId() != null && getId().compareTo(0L) > 0;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("dataInclusao", getCreatedAt())
+ .append("dataAlteracao", getUpdatedAt())
+ .toString();
+ }
+
+ @Override
+ @SuppressWarnings("unchecked")
+ public boolean equals(final Object other) {
+ if (this == other)
+ return true;
+ if (!(this.getClass().isInstance(other)))
+ return false;
+ return new EqualsBuilder().append(this.getId(), ((Entity) other).getId()).isEquals();
+ }
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().append(this.getId()).toHashCode();
+ }
+
+ public int compareTo(E o) {
+ return new CompareToBuilder().append(this.getId(), ((Entity) o).getId()).toComparison();
+ }
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Grade.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Grade.java
new file mode 100644
index 0000000..11258d8
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Grade.java
@@ -0,0 +1,34 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import javax.persistence.Column;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@javax.persistence.Entity
+@Table(name = "GRADE")
+public class Grade extends Entity {
+
+ private Course course;
+ private String name;
+
+ @ManyToOne
+ @JoinColumn(name = "COURSE_ID")
+ public Course getCourse() {
+ return course;
+ }
+
+ public void setCourse(Course course) {
+ this.course = course;
+ }
+
+ @Column(name = "NAME")
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/KnowledgeGroup.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/KnowledgeGroup.java
new file mode 100644
index 0000000..7fe4b6a
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/KnowledgeGroup.java
@@ -0,0 +1,44 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import javax.persistence.Column;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@javax.persistence.Entity
+@Table(name = "KNOWLEDGE_GROUP")
+public class KnowledgeGroup extends Entity {
+
+ private Grade grade;
+ private Integer code;
+ private String name;
+
+ @ManyToOne
+ @JoinColumn(name = "GRADE_ID")
+ public Grade getGrade() {
+ return grade;
+ }
+
+ public void setGrade(Grade grade) {
+ this.grade = grade;
+ }
+
+ @Column(name = "CODE")
+ public Integer getCode() {
+ return code;
+ }
+
+ public void setCode(Integer code) {
+ this.code = code;
+ }
+
+ @Column(name = "NAME")
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/KnowledgeLevel.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/KnowledgeLevel.java
new file mode 100644
index 0000000..a727558
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/KnowledgeLevel.java
@@ -0,0 +1,45 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import javax.persistence.Column;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@javax.persistence.Entity
+@Table(name = "KNOWLEDGE_LEVEL")
+public class KnowledgeLevel extends Entity {
+
+ private Teacher teacher;
+ private KnowledgeGroup knowledgeGroup;
+ private Integer level;
+
+ @ManyToOne
+ @JoinColumn(name = "TEACHER_ID")
+ public Teacher getTeacher() {
+ return teacher;
+ }
+
+ public void setTeacher(Teacher teacher) {
+ this.teacher = teacher;
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "KNOWLEDGE_GROUP_ID")
+ public KnowledgeGroup getKnowledgeGroup() {
+ return knowledgeGroup;
+ }
+
+ public void setKnowledgeGroup(KnowledgeGroup knowledgeGroup) {
+ this.knowledgeGroup = knowledgeGroup;
+ }
+
+ @Column(name = "LEVEL")
+ public Integer getLevel() {
+ return level;
+ }
+
+ public void setLevel(Integer level) {
+ this.level = level;
+ }
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Role.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Role.java
new file mode 100644
index 0000000..fd83eb8
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Role.java
@@ -0,0 +1,21 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import javax.persistence.Column;
+import javax.persistence.Table;
+
+@javax.persistence.Entity
+@Table(name = "ROLE")
+public class Role extends Entity {
+
+ private String role;
+
+ @Column(name = "ROLE")
+ public String getRole() {
+ return role;
+ }
+
+ public void setRole(String role) {
+ this.role = role;
+ }
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Teacher.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Teacher.java
new file mode 100644
index 0000000..484e6fc
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/Teacher.java
@@ -0,0 +1,144 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.FetchType;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToMany;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.Type;
+import org.joda.time.LocalDate;
+
+@javax.persistence.Entity
+@Table(name = "TEACHER")
+public class Teacher extends Entity {
+
+ private User user;
+ private List knowledgeLevels;
+ private String name;
+ private String registry;
+ private String urlLattes;
+ private LocalDate entryDate;
+ private String formation;
+ private Integer workload;
+ private String about;
+ private String rg;
+ private String cpf;
+ private LocalDate birthDate;
+
+ @OneToOne
+ @JoinColumn(name = "USER_ID")
+ public User getUser() {
+ return user;
+ }
+ public void setUser(User user) {
+ this.user = user;
+ }
+
+ @OneToMany( fetch = FetchType.EAGER, mappedBy="teacher", cascade=CascadeType.ALL, orphanRemoval=true )
+ public List getKnowledgeLevels() {
+ return knowledgeLevels;
+ }
+
+ public void setKnowledgeLevels(List knowledgeLevels) {
+ this.knowledgeLevels = knowledgeLevels;
+ }
+
+ @Column(name = "NAME")
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ @Column(name = "REGISTRY")
+ public String getRegistry() {
+ return registry;
+ }
+
+ public void setRegistry(String registry) {
+ this.registry = registry;
+ }
+
+ @Column(name = "URL_LATTES")
+ public String getUrlLattes() {
+ return urlLattes;
+ }
+
+ public void setUrlLattes(String urlLattes) {
+ this.urlLattes = urlLattes;
+ }
+
+ @Column(name = "ENTRY_DATE")
+ @Type(type="br.ufg.inf.sdd_ufg.hibernate.type.LocalDateUserType")
+ public LocalDate getEntryDate() {
+ return entryDate;
+ }
+
+ public void setEntryDate(LocalDate entryDate) {
+ this.entryDate = entryDate;
+ }
+
+ @Column(name = "FORMATION")
+ public String getFormation() {
+ return formation;
+ }
+
+ public void setFormation(String formation) {
+ this.formation = formation;
+ }
+
+ @Column(name = "WORKLOAD")
+ public Integer getWorkload() {
+ return workload;
+ }
+
+ public void setWorkload(Integer workload) {
+ this.workload = workload;
+ }
+
+ @Column(name = "ABOUT")
+ public String getAbout() {
+ return about;
+ }
+
+ public void setAbout(String about) {
+ this.about = about;
+ }
+
+ @Column(name = "RG")
+ public String getRg() {
+ return rg;
+ }
+
+ public void setRg(String rg) {
+ this.rg = rg;
+ }
+
+ @Column(name = "CPF")
+ public String getCpf() {
+ return cpf;
+ }
+
+ public void setCpf(String cpf) {
+ this.cpf = cpf;
+ }
+
+ @Column(name = "BIRTH_DATE")
+ @Type(type="br.ufg.inf.sdd_ufg.hibernate.type.LocalDateUserType")
+ public LocalDate getBirthDate() {
+ return birthDate;
+ }
+
+ public void setBirthDate(LocalDate birthDate) {
+ this.birthDate = birthDate;
+ }
+
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/User.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/User.java
new file mode 100644
index 0000000..bd8445a
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/model/User.java
@@ -0,0 +1,53 @@
+package br.ufg.inf.sdd_ufg.model;
+
+import javax.persistence.Column;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@javax.persistence.Entity
+@Table(name = "USR")
+public class User extends Entity {
+
+ private String userName;
+ private String password;
+ private String email;
+ private Role role;
+
+ @Column(name="USRNAME", length = 50)
+ public String getUserName() {
+ return userName;
+ }
+
+ public void setUserName(String userName) {
+ this.userName = userName;
+ }
+
+ @Column(name="PSSWORD", length = 20)
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ @Column(name="EMAIL", length = 70)
+ public String getEmail() {
+ return email;
+ }
+
+ public void setEmail(String email) {
+ this.email = email;
+ }
+
+ @ManyToOne
+ @JoinColumn(name = "ROLE_ID")
+ public Role getRole() {
+ return role;
+ }
+
+ public void setRole(Role role) {
+ this.role = role;
+ }
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/AbstractResource.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/AbstractResource.java
new file mode 100644
index 0000000..276de54
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/AbstractResource.java
@@ -0,0 +1,51 @@
+package br.ufg.inf.sdd_ufg.resource;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.nio.charset.Charset;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.servlet.http.HttpServletRequest;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.google.common.io.ByteSource;
+
+public abstract class AbstractResource {
+ public ByteSource getContent(final HttpServletRequest request) {
+ final ByteSource byteSource = new ByteSource() {
+ @Override
+ public InputStream openStream() throws IOException {
+ return request.getInputStream();
+ }
+ };
+
+ return byteSource;
+ }
+
+ public String getStringContent(final HttpServletRequest request) {
+ String content;
+ try {
+ content = getContent(request)
+ .asCharSource(Charset.forName("UTF-8"))
+ .read();
+ } catch (IOException e) {
+ content = "";
+ }
+
+ return content;
+ }
+
+ @SuppressWarnings("unchecked")
+ public Map getJSONContent(final HttpServletRequest request) {
+ String content = getStringContent(request);
+ HashMap contentMapped;
+ try {
+ contentMapped = new ObjectMapper().readValue(content, HashMap.class);
+ } catch (IOException e) {
+ contentMapped = new HashMap();
+ }
+
+ return contentMapped;
+ }
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/CourseResource.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/CourseResource.java
new file mode 100644
index 0000000..e0636e0
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/CourseResource.java
@@ -0,0 +1,115 @@
+package br.ufg.inf.sdd_ufg.resource;
+
+import java.util.List;
+import java.util.Map;
+
+import javax.inject.Inject;
+import javax.servlet.http.HttpServletRequest;
+import javax.ws.rs.DELETE;
+import javax.ws.rs.GET;
+import javax.ws.rs.POST;
+import javax.ws.rs.PUT;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.Produces;
+import javax.ws.rs.QueryParam;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.Response;
+
+import br.ufg.inf.sdd_ufg.dao.CourseDao;
+import br.ufg.inf.sdd_ufg.model.Course;
+import br.ufg.inf.sdd_ufg.resource.utils.ResultSetResponse;
+
+@Path("/courses")
+@Produces(MediaType.APPLICATION_JSON)
+public class CourseResource extends AbstractResource {
+
+ private final CourseDao courseDao;
+
+ @Inject
+ public CourseResource(final CourseDao courseDao) {
+ this.courseDao = courseDao;
+ }
+
+ @GET
+ @Path("/{course_id}")
+ public Response retrieveCourseById(@PathParam("course_id") Long id, @Context final HttpServletRequest request) {
+ Course course = courseDao.findById(id, 1);
+ if (course == null) {
+ return Response.status(Response.Status.NOT_FOUND).build();
+ }
+ return Response.ok(course)
+ .build();
+ }
+
+ @GET
+ public Response retrieveAllCourses(@QueryParam("page") Integer page, @Context final HttpServletRequest request) {
+ List courses = courseDao.findAll(0);
+ if (courses == null || courses.size() == 0) {
+ return Response.status(Response.Status.NOT_FOUND)
+ .build();
+ }
+ if (page == null) {
+ page = 1;
+ }
+ ResultSetResponse rsp = new ResultSetResponse(courses, page);
+
+ return Response.ok(rsp)
+ .build();
+ }
+
+ @POST
+ public Response insertCourse(@Context final HttpServletRequest request) {
+ try {
+ Course course = retrieveCourseFromJson(request);
+ courseDao.insert(course);
+ } catch (Exception e) {
+ return Response.status(Response.Status.BAD_REQUEST)
+ .build();
+ }
+ return Response.status(Response.Status.NO_CONTENT)
+ .build();
+ }
+
+ @PUT
+ @Path("/{course_id}")
+ public Response updateCourse(@PathParam("course_id") Long id, @Context final HttpServletRequest request) {
+ try {
+ Course course = retrieveCourseFromJson(request);
+ course.setId(id);
+ courseDao.update(course);
+ } catch (IllegalArgumentException iae) {
+ return Response.status(Response.Status.NOT_FOUND)
+ .build();
+ } catch (Exception e) {
+ return Response.status(Response.Status.BAD_REQUEST)
+ .build();
+ }
+ return Response.status(Response.Status.NO_CONTENT)
+ .build();
+ }
+
+ private Course retrieveCourseFromJson(final HttpServletRequest request) throws Exception {
+ Map content = getJSONContent(request);
+
+ Course course = new Course();
+ course.setName(content.get("name").toString());
+
+ return course;
+ }
+
+ @DELETE
+ @Path("/{course_id}")
+ public Response deleteCourse(@PathParam("course_id") Long id, @Context final HttpServletRequest request) {
+ try {
+ courseDao.delete(id);
+ } catch (IllegalArgumentException iae) {
+ return Response.status(Response.Status.NOT_FOUND)
+ .build();
+ }
+ return Response.status(Response.Status.NO_CONTENT)
+ .build();
+ }
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/UserResource.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/UserResource.java
new file mode 100644
index 0000000..34a4edb
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/UserResource.java
@@ -0,0 +1,125 @@
+package br.ufg.inf.sdd_ufg.resource;
+
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.inject.Inject;
+import javax.servlet.http.HttpServletRequest;
+import javax.ws.rs.DELETE;
+import javax.ws.rs.GET;
+import javax.ws.rs.POST;
+import javax.ws.rs.PUT;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.Produces;
+import javax.ws.rs.QueryParam;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.Response;
+
+import br.ufg.inf.sdd_ufg.dao.UserDao;
+import br.ufg.inf.sdd_ufg.model.Role;
+import br.ufg.inf.sdd_ufg.model.User;
+import br.ufg.inf.sdd_ufg.resource.utils.ResultSetResponse;
+
+@Path("/users")
+@Produces(MediaType.APPLICATION_JSON)
+public class UserResource extends AbstractResource {
+
+ private final UserDao userDao;
+
+ @Inject
+ public UserResource(final UserDao userDao) {
+ this.userDao = userDao;
+ }
+
+ @GET
+ @Path("/{user_id}")
+ public Response retrieveUserById(@PathParam("user_id") Long id, @Context final HttpServletRequest request) {
+ User user = userDao.findById(id, 1);
+ if (user == null) {
+ return Response.status(Response.Status.NOT_FOUND).build();
+ }
+ return Response.ok(user)
+ .build();
+ }
+
+ @GET
+ public Response retrieveAllUsers(@QueryParam("page") Integer page, @Context final HttpServletRequest request) {
+ List users = userDao.findAll(0);
+ if (users == null || users.size() == 0) {
+ return Response.status(Response.Status.NOT_FOUND)
+ .build();
+ }
+ ResultSetResponse rsp = new ResultSetResponse(users, page);
+
+ return Response.ok(rsp)
+ .build();
+ }
+
+ @POST
+ public Response insertUser(@Context final HttpServletRequest request) {
+ try {
+ User user = retrieveUserFromJson(request);
+ userDao.insert(user);
+ } catch (Exception e) {
+ return Response.status(Response.Status.BAD_REQUEST)
+ .build();
+ }
+ return Response.status(Response.Status.NO_CONTENT)
+ .build();
+ }
+
+ @PUT
+ @Path("/{user_id}")
+ public Response updateUser(@PathParam("user_id") Long id, @Context final HttpServletRequest request) {
+ try {
+ User user = retrieveUserFromJson(request);
+ user.setId(id);
+ userDao.update(user);
+ } catch (IllegalArgumentException iae) {
+ return Response.status(Response.Status.NOT_FOUND)
+ .build();
+ } catch (Exception e) {
+ return Response.status(Response.Status.BAD_REQUEST)
+ .build();
+ }
+ return Response.status(Response.Status.NO_CONTENT)
+ .build();
+ }
+
+ @SuppressWarnings("unchecked")
+ private User retrieveUserFromJson(final HttpServletRequest request) throws Exception {
+ Map content = getJSONContent(request);
+
+ User user = new User();
+ user.setUserName(content.get("username").toString());
+ user.setPassword(content.get("password").toString());
+ user.setEmail(content.get("email").toString());
+
+ if (content.get("role") != null) {
+ Map roleJson = (LinkedHashMap) content.get("role");
+
+ Role role = new Role();
+ role.setId(new Long(roleJson.get("id").toString()));
+ role.setRole(roleJson.get("role").toString());
+ }
+
+ return user;
+ }
+
+ @DELETE
+ @Path("/{user_id}")
+ public Response deleteUser(@PathParam("user_id") Long id, @Context final HttpServletRequest request) {
+ try {
+ userDao.delete(id);
+ } catch (IllegalArgumentException iae) {
+ return Response.status(Response.Status.NOT_FOUND)
+ .build();
+ }
+ return Response.status(Response.Status.NO_CONTENT)
+ .build();
+ }
+
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/utils/Pagination.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/utils/Pagination.java
new file mode 100644
index 0000000..3ed9fc6
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/utils/Pagination.java
@@ -0,0 +1,62 @@
+package br.ufg.inf.sdd_ufg.resource.utils;
+
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class Pagination {
+ @JsonIgnore
+ public static final Integer RESULTS_PER_PAGE = 20;
+
+ @JsonIgnore
+ private Integer page;
+
+ @JsonIgnore
+ private Integer totalCount;
+
+ public Pagination() {
+ // Jackson deserialization
+ }
+
+ public Pagination(Integer page, Integer totalCount) {
+ setPage(page);
+ setTotalCount(totalCount);;
+ }
+
+ @JsonProperty("page")
+ public int getPage() {
+ if(getMaxPages() < page) {
+ page = getMaxPages();
+ }
+ return page;
+ }
+
+ void setPage(int page) {
+ this.page = page;
+ }
+
+ @JsonProperty("max_pages")
+ public Integer getMaxPages() {
+ Integer pages = (totalCount / RESULTS_PER_PAGE);
+ if(pages <= 0) {
+ pages = 1;
+ }
+ return (int) Math.floor(pages);
+ }
+
+ @JsonProperty("page_count")
+ public Integer getPageCount() {
+ if (page.equals(getMaxPages())) {
+ return totalCount % RESULTS_PER_PAGE;
+ }
+ return RESULTS_PER_PAGE;
+ }
+
+ @JsonProperty("total_count")
+ public Integer getTotalCount() {
+ return totalCount;
+ }
+
+ void setTotalCount(Integer totalCount) {
+ this.totalCount = totalCount;
+ }
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/utils/ResultSetResponse.java b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/utils/ResultSetResponse.java
new file mode 100644
index 0000000..af70fdd
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/main/java/br/ufg/inf/sdd_ufg/resource/utils/ResultSetResponse.java
@@ -0,0 +1,48 @@
+package br.ufg.inf.sdd_ufg.resource.utils;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import br.ufg.inf.sdd_ufg.model.Entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class ResultSetResponse> {
+
+ @JsonProperty
+ private List data;
+
+ @JsonProperty
+ private Pagination pagination;
+
+ public ResultSetResponse() {
+
+ }
+
+ public ResultSetResponse(List data, Integer page) {
+ this.pagination = new Pagination(page, data.size());
+ this.data = new ArrayList();
+
+ int offset = pagination.getMaxPages().equals(1) ? 0 : (pagination.getPage() * Pagination.RESULTS_PER_PAGE);
+ for (int i = offset; i < data.size() || i < pagination.getPageCount() ; i++) {
+ this.data.add(data.get(i));
+ }
+
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public Pagination getPagination() {
+ return pagination;
+ }
+
+ public void setPagination(Pagination pagination) {
+ this.pagination = pagination;
+ }
+}
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/src/resources/META-INF/persistence.xml b/Code-DD-UFG/Back-End/sdd-ufg/src/resources/META-INF/persistence.xml
new file mode 100644
index 0000000..63ab954
--- /dev/null
+++ b/Code-DD-UFG/Back-End/sdd-ufg/src/resources/META-INF/persistence.xml
@@ -0,0 +1,11 @@
+
+
+
+ org.eclipse.persistence.jpa.PersistenceProvider
+ false
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/dao/ClazzDao.class b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/dao/ClazzDao.class
new file mode 100644
index 0000000..1acaa9e
Binary files /dev/null and b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/dao/ClazzDao.class differ
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/dao/CourseDao.class b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/dao/CourseDao.class
new file mode 100644
index 0000000..b4209a9
Binary files /dev/null and b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/dao/CourseDao.class differ
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/dao/GradeDao.class b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/dao/GradeDao.class
new file mode 100644
index 0000000..d862f34
Binary files /dev/null and b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/dao/GradeDao.class differ
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/Clazz.class b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/Clazz.class
new file mode 100644
index 0000000..109e0af
Binary files /dev/null and b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/Clazz.class differ
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/ClazzSchedule.class b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/ClazzSchedule.class
new file mode 100644
index 0000000..94f5447
Binary files /dev/null and b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/ClazzSchedule.class differ
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/Course.class b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/Course.class
new file mode 100644
index 0000000..064804f
Binary files /dev/null and b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/Course.class differ
diff --git a/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/Grade.class b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/Grade.class
new file mode 100644
index 0000000..16d0c21
Binary files /dev/null and b/Code-DD-UFG/Back-End/sdd-ufg/target/classes/br/ufg/inf/sdd_ufg/model/Grade.class differ
diff --git "a/Doc-DD-UFG/Arquitetura/Defini\303\247\303\265es/Proposta para a arquitetura back-end_1.0.0_SDD-UFG.docx" "b/Doc-DD-UFG/Arquitetura/Defini\303\247\303\265es/Proposta para a arquitetura back-end_1.0.0_SDD-UFG.docx"
new file mode 100644
index 0000000..9647fdd
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Defini\303\247\303\265es/Proposta para a arquitetura back-end_1.0.0_SDD-UFG.docx" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Defini\303\247\303\265es/Proposta para a arquitetura front-end_1.0.0_SDD-UFG.docx" "b/Doc-DD-UFG/Arquitetura/Defini\303\247\303\265es/Proposta para a arquitetura front-end_1.0.0_SDD-UFG.docx"
new file mode 100644
index 0000000..26347c2
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Defini\303\247\303\265es/Proposta para a arquitetura front-end_1.0.0_SDD-UFG.docx" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/Layout/LayoutSDD.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/Layout/LayoutSDD.png"
new file mode 100644
index 0000000..2f7222a
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/Layout/LayoutSDD.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/Layout/Leia me.docx" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/Layout/Leia me.docx"
new file mode 100644
index 0000000..97ffc91
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/Layout/Leia me.docx" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/Layout/vers\303\243o 1.0 (Obsoleta)/layoutComGridDeUsuariosCadastrados.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/Layout/vers\303\243o 1.0 (Obsoleta)/layoutComGridDeUsuariosCadastrados.png"
new file mode 100644
index 0000000..46c253a
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/Layout/vers\303\243o 1.0 (Obsoleta)/layoutComGridDeUsuariosCadastrados.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Cadastro-Edicao_Processo_Distribuicao_-_Msg_Campos_Obr.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Cadastro-Edicao_Processo_Distribuicao_-_Msg_Campos_Obr.png"
new file mode 100644
index 0000000..dc8c45a
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Cadastro-Edicao_Processo_Distribuicao_-_Msg_Campos_Obr.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Cadastro-Edicao_Processo_Distribuicao_-_Msg_Sucesso.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Cadastro-Edicao_Processo_Distribuicao_-_Msg_Sucesso.png"
new file mode 100644
index 0000000..24983b5
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Cadastro-Edicao_Processo_Distribuicao_-_Msg_Sucesso.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Cadastro_Processo_Distribuicao.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Cadastro_Processo_Distribuicao.png"
new file mode 100644
index 0000000..4ad86a6
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Cadastro_Processo_Distribuicao.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Edicao_Processo_Distribuicao.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Edicao_Processo_Distribuicao.png"
new file mode 100644
index 0000000..549023b
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 10_ Cria\303\247\303\243o-edi\303\247\303\243o de processos de distribui\303\247\303\243o de uma determinada disciplina/Pagina_10_Edicao_Processo_Distribuicao.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Administrador.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Administrador.png"
new file mode 100644
index 0000000..1afd149
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Administrador.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Administrador_-_Deletar.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Administrador_-_Deletar.png"
new file mode 100644
index 0000000..7b7721a
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Administrador_-_Deletar.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Docente.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Docente.png"
new file mode 100644
index 0000000..a45fa61
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Docente.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Docente_-_Sem_Disciplinas.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Docente_-_Sem_Disciplinas.png"
new file mode 100644
index 0000000..3f162c3
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 11_ Lista de processos de distribui\303\247\303\243o de disciplina de um determinado processo seletivo/Pagina_11_-_Lista_de_Processos_de_Distribui\303\247\303\243o_-_Docente_-_Sem_Disciplinas.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 1 - Docente Concorrente Acessando - Conflito - Editavel.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 1 - Docente Concorrente Acessando - Conflito - Editavel.png"
new file mode 100644
index 0000000..6952b0a
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 1 - Docente Concorrente Acessando - Conflito - Editavel.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 10 - Docente Acessando - Aberto - Um Concorrente.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 10 - Docente Acessando - Aberto - Um Concorrente.png"
new file mode 100644
index 0000000..2ff3570
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 10 - Docente Acessando - Aberto - Um Concorrente.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 11 - Docente Acessando - Cancelado.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 11 - Docente Acessando - Cancelado.png"
new file mode 100644
index 0000000..40ec82f
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 11 - Docente Acessando - Cancelado.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 12 - Docente Acessando - Fechado.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 12 - Docente Acessando - Fechado.png"
new file mode 100644
index 0000000..890bd75
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 12 - Docente Acessando - Fechado.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 13 - Docente Acessando - Nenhum Concorrente.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 13 - Docente Acessando - Nenhum Concorrente.png"
new file mode 100644
index 0000000..915cee1
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 13 - Docente Acessando - Nenhum Concorrente.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 14 - Coordenador Acessando - Nenhum Concorrente.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 14 - Coordenador Acessando - Nenhum Concorrente.png"
new file mode 100644
index 0000000..f3e826a
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 14 - Coordenador Acessando - Nenhum Concorrente.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 15 - Coordenador Acessando - Nenhum Concorrente - Mensagem.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 15 - Coordenador Acessando - Nenhum Concorrente - Mensagem.png"
new file mode 100644
index 0000000..3b14304
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 15 - Coordenador Acessando - Nenhum Concorrente - Mensagem.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 16 - Coordenador Acessando - Nenhum Concorrente - Mensagem Enviada.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 16 - Coordenador Acessando - Nenhum Concorrente - Mensagem Enviada.png"
new file mode 100644
index 0000000..3078635
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 16 - Coordenador Acessando - Nenhum Concorrente - Mensagem Enviada.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 2 - Docente Concorrente Acessando - Conflito - Editavel - Sair.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 2 - Docente Concorrente Acessando - Conflito - Editavel - Sair.png"
new file mode 100644
index 0000000..8c7b095
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 2 - Docente Concorrente Acessando - Conflito - Editavel - Sair.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 3 - Docente Concorrente Acessando - Conflito - Editavel - Saiu.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 3 - Docente Concorrente Acessando - Conflito - Editavel - Saiu.png"
new file mode 100644
index 0000000..1da6f88
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 3 - Docente Concorrente Acessando - Conflito - Editavel - Saiu.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 4 - Docente Concorrente Acessando - Conflito - Editavel - Erro ao Sair.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 4 - Docente Concorrente Acessando - Conflito - Editavel - Erro ao Sair.png"
new file mode 100644
index 0000000..511c80d
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 4 - Docente Concorrente Acessando - Conflito - Editavel - Erro ao Sair.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 5 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 5 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel.png"
new file mode 100644
index 0000000..17efa36
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 5 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 6 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel - Concorrer.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 6 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel - Concorrer.png"
new file mode 100644
index 0000000..c705807
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 6 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel - Concorrer.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 7 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel - Concorrendo.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 7 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel - Concorrendo.png"
new file mode 100644
index 0000000..e02fe3c
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 7 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel - Concorrendo.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 8 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel - Erro ao Concorrer.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 8 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel - Erro ao Concorrer.png"
new file mode 100644
index 0000000..fcfad49
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 8 - Docente N\303\243o Concorrente Acessando - Conflito - Editavel - Erro ao Concorrer.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 9 - Docente Acessando - Conflito - Editavel.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 9 - Docente Acessando - Conflito - Editavel.png"
new file mode 100644
index 0000000..422be1d
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 12_P\303\241gina de visualiza\303\247\303\243o de um determinado processo de distribui\303\247\303\243o/Pagina 12 - 9 - Docente Acessando - Conflito - Editavel.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 13_ Visualiza\303\247\303\243o de processos de distribui\303\247\303\243o de disciplinas que ainda n\303\243o possuem nenhum docente inscrito/P\303\241gina_13_Visualiza\303\247\303\243o_de_processos_de_distribui\303\247\303\243o_de_disciplinas_que_ainda_n\303\243o_possuem_nenhum_inscrito_-_Administrador.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 13_ Visualiza\303\247\303\243o de processos de distribui\303\247\303\243o de disciplinas que ainda n\303\243o possuem nenhum docente inscrito/P\303\241gina_13_Visualiza\303\247\303\243o_de_processos_de_distribui\303\247\303\243o_de_disciplinas_que_ainda_n\303\243o_possuem_nenhum_inscrito_-_Administrador.png"
new file mode 100644
index 0000000..1638171
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 13_ Visualiza\303\247\303\243o de processos de distribui\303\247\303\243o de disciplinas que ainda n\303\243o possuem nenhum docente inscrito/P\303\241gina_13_Visualiza\303\247\303\243o_de_processos_de_distribui\303\247\303\243o_de_disciplinas_que_ainda_n\303\243o_possuem_nenhum_inscrito_-_Administrador.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 13_ Visualiza\303\247\303\243o de processos de distribui\303\247\303\243o de disciplinas que ainda n\303\243o possuem nenhum docente inscrito/P\303\241gina_13_Visualiza\303\247\303\243o_de_processos_de_distribui\303\247\303\243o_de_disciplinas_que_ainda_n\303\243o_possuem_nenhum_inscrito_-_Docente.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 13_ Visualiza\303\247\303\243o de processos de distribui\303\247\303\243o de disciplinas que ainda n\303\243o possuem nenhum docente inscrito/P\303\241gina_13_Visualiza\303\247\303\243o_de_processos_de_distribui\303\247\303\243o_de_disciplinas_que_ainda_n\303\243o_possuem_nenhum_inscrito_-_Docente.png"
new file mode 100644
index 0000000..1669dca
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 13_ Visualiza\303\247\303\243o de processos de distribui\303\247\303\243o de disciplinas que ainda n\303\243o possuem nenhum docente inscrito/P\303\241gina_13_Visualiza\303\247\303\243o_de_processos_de_distribui\303\247\303\243o_de_disciplinas_que_ainda_n\303\243o_possuem_nenhum_inscrito_-_Docente.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 14_ Cadastro-Edi\303\247\303\243o de N\303\272cleo de Conhecimento/Pagina_14_CadastroEdicao_de_nucleos_de_conhecimento.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 14_ Cadastro-Edi\303\247\303\243o de N\303\272cleo de Conhecimento/Pagina_14_CadastroEdicao_de_nucleos_de_conhecimento.png"
new file mode 100644
index 0000000..46123a5
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 14_ Cadastro-Edi\303\247\303\243o de N\303\272cleo de Conhecimento/Pagina_14_CadastroEdicao_de_nucleos_de_conhecimento.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 14_ Cadastro-Edi\303\247\303\243o de N\303\272cleo de Conhecimento/Pagina_14_CadastroEdicao_de_nucleos_de_conhecimento_Msg_Erro.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 14_ Cadastro-Edi\303\247\303\243o de N\303\272cleo de Conhecimento/Pagina_14_CadastroEdicao_de_nucleos_de_conhecimento_Msg_Erro.png"
new file mode 100644
index 0000000..166f727
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 14_ Cadastro-Edi\303\247\303\243o de N\303\272cleo de Conhecimento/Pagina_14_CadastroEdicao_de_nucleos_de_conhecimento_Msg_Erro.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 14_ Cadastro-Edi\303\247\303\243o de N\303\272cleo de Conhecimento/Pagina_14_CadastroEdicao_de_nucleos_de_conhecimento_Msg_Sucesso.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 14_ Cadastro-Edi\303\247\303\243o de N\303\272cleo de Conhecimento/Pagina_14_CadastroEdicao_de_nucleos_de_conhecimento_Msg_Sucesso.png"
new file mode 100644
index 0000000..83bfc3e
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 14_ Cadastro-Edi\303\247\303\243o de N\303\272cleo de Conhecimento/Pagina_14_CadastroEdicao_de_nucleos_de_conhecimento_Msg_Sucesso.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 15_ Lista de N\303\272cleo de Conhecimento/Pagina_15_Lista_de_nucleos_de_conhecimento.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 15_ Lista de N\303\272cleo de Conhecimento/Pagina_15_Lista_de_nucleos_de_conhecimento.png"
new file mode 100644
index 0000000..9e349bc
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 15_ Lista de N\303\272cleo de Conhecimento/Pagina_15_Lista_de_nucleos_de_conhecimento.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 15_ Lista de N\303\272cleo de Conhecimento/Pagina_15_Lista_de_nucleos_de_conhecimento_Msg_Erro.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 15_ Lista de N\303\272cleo de Conhecimento/Pagina_15_Lista_de_nucleos_de_conhecimento_Msg_Erro.png"
new file mode 100644
index 0000000..69a0e51
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 15_ Lista de N\303\272cleo de Conhecimento/Pagina_15_Lista_de_nucleos_de_conhecimento_Msg_Erro.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 15_ Lista de N\303\272cleo de Conhecimento/Pagina_15_Lista_de_nucleos_de_conhecimento_Msg_Sucesso.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 15_ Lista de N\303\272cleo de Conhecimento/Pagina_15_Lista_de_nucleos_de_conhecimento_Msg_Sucesso.png"
new file mode 100644
index 0000000..5efea1d
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 15_ Lista de N\303\272cleo de Conhecimento/Pagina_15_Lista_de_nucleos_de_conhecimento_Msg_Sucesso.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 16_ Visualiza\303\247\303\243o dos N\303\272cleos de Conhecimento/Pagina_16_Visualizacao_de_nucleos_de_conhecimento.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 16_ Visualiza\303\247\303\243o dos N\303\272cleos de Conhecimento/Pagina_16_Visualizacao_de_nucleos_de_conhecimento.png"
new file mode 100644
index 0000000..f50f738
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 16_ Visualiza\303\247\303\243o dos N\303\272cleos de Conhecimento/Pagina_16_Visualizacao_de_nucleos_de_conhecimento.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente-Ext.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente-Ext.png"
new file mode 100644
index 0000000..610be1d
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente-Ext.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente_-_Mensagem_Campos_Obrigatorios-Ext.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente_-_Mensagem_Campos_Obrigatorios-Ext.png"
new file mode 100644
index 0000000..d436356
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente_-_Mensagem_Campos_Obrigatorios-Ext.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente_-_Mensagem_Senha-Ext.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente_-_Mensagem_Senha-Ext.png"
new file mode 100644
index 0000000..cf0e434
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente_-_Mensagem_Senha-Ext.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente_-_Mensagem_Sucesso-Ext.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente_-_Mensagem_Sucesso-Ext.png"
new file mode 100644
index 0000000..89f1f17
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/Pagina_1_Cadastro_Docente_-_Mensagem_Sucesso-Ext.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/P\303\241gina_1_P\303\241gina_de_cadastro_de_docente.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/P\303\241gina_1_P\303\241gina_de_cadastro_de_docente.png"
new file mode 100644
index 0000000..bfb1f11
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/P\303\241gina_1_P\303\241gina_de_cadastro_de_docente.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/P\303\241gina_1_P\303\241gina_de_cadastro_de_docente_-_Mensagem_de_Erro.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/P\303\241gina_1_P\303\241gina_de_cadastro_de_docente_-_Mensagem_de_Erro.png"
new file mode 100644
index 0000000..27d5b60
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/P\303\241gina_1_P\303\241gina_de_cadastro_de_docente_-_Mensagem_de_Erro.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/P\303\241gina_1_P\303\241gina_de_cadastro_de_docente_-_Mensagem_de_Sucesso.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/P\303\241gina_1_P\303\241gina_de_cadastro_de_docente_-_Mensagem_de_Sucesso.png"
new file mode 100644
index 0000000..649ed98
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 1_ P\303\241gina de cadastro de docente/P\303\241gina_1_P\303\241gina_de_cadastro_de_docente_-_Mensagem_de_Sucesso.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login.png"
new file mode 100644
index 0000000..cbb4df1
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_-_Usuario_senha_incorretos.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_-_Usuario_senha_incorretos.png"
new file mode 100644
index 0000000..fbcc99a
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_-_Usuario_senha_incorretos.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_Esqueci_a_Senha.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_Esqueci_a_Senha.png"
new file mode 100644
index 0000000..2498155
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_Esqueci_a_Senha.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_Esqueci_a_Senha_-_Email_invalido.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_Esqueci_a_Senha_-_Email_invalido.png"
new file mode 100644
index 0000000..500848f
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_Esqueci_a_Senha_-_Email_invalido.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_Esqueci_a_Senha_-_Msg_Sucesso.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_Esqueci_a_Senha_-_Msg_Sucesso.png"
new file mode 100644
index 0000000..7212d22
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 2_ P\303\241gina de Login/Pagina_2_Login_Esqueci_a_Senha_-_Msg_Sucesso.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_listagem_dos_usu\303\241rios_cadastrados(apenas_administrador) (29).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_listagem_dos_usu\303\241rios_cadastrados(apenas_administrador) (29).png"
new file mode 100644
index 0000000..1fe35ae
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_listagem_dos_usu\303\241rios_cadastrados(apenas_administrador) (29).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_visualiza\303\247\303\243o_do_perfil_de_docente_-_TAB_Descri\303\247\303\243o.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_visualiza\303\247\303\243o_do_perfil_de_docente_-_TAB_Descri\303\247\303\243o.png"
new file mode 100644
index 0000000..a3c2836
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_visualiza\303\247\303\243o_do_perfil_de_docente_-_TAB_Descri\303\247\303\243o.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_visualiza\303\247\303\243o_do_perfil_de_docente_-_TAB_N\303\272cleos_de_Conhecimento.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_visualiza\303\247\303\243o_do_perfil_de_docente_-_TAB_N\303\272cleos_de_Conhecimento.png"
new file mode 100644
index 0000000..98b2b9c
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_visualiza\303\247\303\243o_do_perfil_de_docente_-_TAB_N\303\272cleos_de_Conhecimento.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_visualiza\303\247\303\243o_do_perfil_de_docente_-_TAB_Quadro_de_Hor\303\241rios.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_visualiza\303\247\303\243o_do_perfil_de_docente_-_TAB_Quadro_de_Hor\303\241rios.png"
new file mode 100644
index 0000000..83e992f
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 3_ P\303\241gina de visualiza\303\247\303\243o do perfil de docente/P\303\241gina_3_P\303\241gina_de_visualiza\303\247\303\243o_do_perfil_de_docente_-_TAB_Quadro_de_Hor\303\241rios.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_Mensagem_de_Erro.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_Mensagem_de_Erro.png"
new file mode 100644
index 0000000..7f9e927
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_Mensagem_de_Erro.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_Mensagem_de_Sucesso.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_Mensagem_de_Sucesso.png"
new file mode 100644
index 0000000..1c3cb0f
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_Mensagem_de_Sucesso.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_TAB_Descri\303\247\303\243o.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_TAB_Descri\303\247\303\243o.png"
new file mode 100644
index 0000000..46a8a45
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_TAB_Descri\303\247\303\243o.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_TAB_N\303\272cleos_de_Conhecimento.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_TAB_N\303\272cleos_de_Conhecimento.png"
new file mode 100644
index 0000000..bcf4f4c
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_TAB_N\303\272cleos_de_Conhecimento.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_TAB_Quadro_de_Hor\303\241rios.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_TAB_Quadro_de_Hor\303\241rios.png"
new file mode 100644
index 0000000..a4df20d
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 4_ P\303\241gina de edi\303\247\303\243o do perfil de docente/P\303\241gina_4_P\303\241gina_de_edi\303\247\303\243o_do_perfil_de_docente_-_TAB_Quadro_de_Hor\303\241rios.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 1 - Processo Atual.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 1 - Processo Atual.png"
new file mode 100644
index 0000000..cd833fb
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 1 - Processo Atual.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 2- Processo Atual - Cancelar.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 2- Processo Atual - Cancelar.png"
new file mode 100644
index 0000000..057bbeb
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 2- Processo Atual - Cancelar.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 3 - Processo Atual - Cancelado.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 3 - Processo Atual - Cancelado.png"
new file mode 100644
index 0000000..2f65e53
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 3 - Processo Atual - Cancelado.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 4 - Processo Atual - Erro ao Cancelar.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 4 - Processo Atual - Erro ao Cancelar.png"
new file mode 100644
index 0000000..687325b
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 4 - Processo Atual - Erro ao Cancelar.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 5 - Processo Atual - Sem Inscri\303\247\303\243o.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 5 - Processo Atual - Sem Inscri\303\247\303\243o.png"
new file mode 100644
index 0000000..ca26c8f
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 5 - Processo Atual - Sem Inscri\303\247\303\243o.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 6 - Processo Anterior.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 6 - Processo Anterior.png"
new file mode 100644
index 0000000..f4877e7
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 6 - Processo Anterior.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 7 - Sem Processo.png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 7 - Sem Processo.png"
new file mode 100644
index 0000000..2c5f52c
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 5_ P\303\241gina de visualiza\303\247\303\243o de inscri\303\247\303\265es do docente em processos de distribui\303\247\303\243o/Pagina 5 - 7 - Sem Processo.png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Cadastro_de_Disciplina (4).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Cadastro_de_Disciplina (4).png"
new file mode 100644
index 0000000..a404d02
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Cadastro_de_Disciplina (4).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Cadastro_de_Disciplina_-_Erro (6).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Cadastro_de_Disciplina_-_Erro (6).png"
new file mode 100644
index 0000000..0f2ec2f
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Cadastro_de_Disciplina_-_Erro (6).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Cadastro_de_Disciplina_-_Sucesso (5).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Cadastro_de_Disciplina_-_Sucesso (5).png"
new file mode 100644
index 0000000..f1f86b9
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Cadastro_de_Disciplina_-_Sucesso (5).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Edi\303\247\303\243o_de_Disciplina (7).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Edi\303\247\303\243o_de_Disciplina (7).png"
new file mode 100644
index 0000000..fefae43
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Edi\303\247\303\243o_de_Disciplina (7).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Edi\303\247\303\243o_de_Disciplina_-_Erro (9).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Edi\303\247\303\243o_de_Disciplina_-_Erro (9).png"
new file mode 100644
index 0000000..24d6f27
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Edi\303\247\303\243o_de_Disciplina_-_Erro (9).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Edi\303\247\303\243o_de_Disciplina_-_Sucesso (8).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Edi\303\247\303\243o_de_Disciplina_-_Sucesso (8).png"
new file mode 100644
index 0000000..4804afe
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 6_ P\303\241gina de cadastro-edi\303\247\303\243o de disciplina/P\303\241gina_6_Edi\303\247\303\243o_de_Disciplina_-_Sucesso (8).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 7 _ P\303\241gina de lista de disciplinas/P\303\241gina_7_Lista_de_Disciplinas (2).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 7 _ P\303\241gina de lista de disciplinas/P\303\241gina_7_Lista_de_Disciplinas (2).png"
new file mode 100644
index 0000000..66e1340
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 7 _ P\303\241gina de lista de disciplinas/P\303\241gina_7_Lista_de_Disciplinas (2).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 7 _ P\303\241gina de lista de disciplinas/P\303\241gina_7_Lista_de_Disciplinas_-_Lista_Vazia (3).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 7 _ P\303\241gina de lista de disciplinas/P\303\241gina_7_Lista_de_Disciplinas_-_Lista_Vazia (3).png"
new file mode 100644
index 0000000..0f9c7a5
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 7 _ P\303\241gina de lista de disciplinas/P\303\241gina_7_Lista_de_Disciplinas_-_Lista_Vazia (3).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Cadastro_de_Processo_Seletivo (12).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Cadastro_de_Processo_Seletivo (12).png"
new file mode 100644
index 0000000..9e29623
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Cadastro_de_Processo_Seletivo (12).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Cadastro_de_Processo_Seletivo_-_Erro (14).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Cadastro_de_Processo_Seletivo_-_Erro (14).png"
new file mode 100644
index 0000000..bbfbbd2
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Cadastro_de_Processo_Seletivo_-_Erro (14).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Cadastro_de_Processo_Seletivo_-_Sucesso (13).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Cadastro_de_Processo_Seletivo_-_Sucesso (13).png"
new file mode 100644
index 0000000..ab94ea1
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Cadastro_de_Processo_Seletivo_-_Sucesso (13).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Edi\303\247\303\243o_de_Processo_Seletivo (15).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Edi\303\247\303\243o_de_Processo_Seletivo (15).png"
new file mode 100644
index 0000000..47977fc
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Edi\303\247\303\243o_de_Processo_Seletivo (15).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Edi\303\247\303\243o_de_Processo_Seletivo_-_Erro (17).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Edi\303\247\303\243o_de_Processo_Seletivo_-_Erro (17).png"
new file mode 100644
index 0000000..33d3816
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Edi\303\247\303\243o_de_Processo_Seletivo_-_Erro (17).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Edi\303\247\303\243o_de_Processo_Seletivo_-_Sucesso (16).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Edi\303\247\303\243o_de_Processo_Seletivo_-_Sucesso (16).png"
new file mode 100644
index 0000000..e95c13f
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 8_ P\303\241gina de cria\303\247\303\243o-edi\303\247\303\243o de processos seletivos/P\303\241gina_8__Edi\303\247\303\243o_de_Processo_Seletivo_-_Sucesso (16).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 9_ P\303\241gina de lista de processos seletivos/P\303\241gina_8_Lista_Processo_Seletivos (10).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 9_ P\303\241gina de lista de processos seletivos/P\303\241gina_8_Lista_Processo_Seletivos (10).png"
new file mode 100644
index 0000000..6776a8f
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 9_ P\303\241gina de lista de processos seletivos/P\303\241gina_8_Lista_Processo_Seletivos (10).png" differ
diff --git "a/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 9_ P\303\241gina de lista de processos seletivos/P\303\241gina_9_Lista_Processo_Seletivos_-_Lista_Vazia (11).png" "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 9_ P\303\241gina de lista de processos seletivos/P\303\241gina_9_Lista_Processo_Seletivos_-_Lista_Vazia (11).png"
new file mode 100644
index 0000000..703116a
Binary files /dev/null and "b/Doc-DD-UFG/Arquitetura/Prot\303\263tipos_1.0.0_SDD-UFG/P\303\241gina 9_ P\303\241gina de lista de processos seletivos/P\303\241gina_9_Lista_Processo_Seletivos_-_Lista_Vazia (11).png" differ
diff --git a/Doc-DD-UFG/Arquitetura/acompanhamento/Acompanhamento Design-Arquitetura_1.0.0_SDD-UFG.docx b/Doc-DD-UFG/Arquitetura/acompanhamento/Acompanhamento Design-Arquitetura_1.0.0_SDD-UFG.docx
new file mode 100644
index 0000000..c5d7486
Binary files /dev/null and b/Doc-DD-UFG/Arquitetura/acompanhamento/Acompanhamento Design-Arquitetura_1.0.0_SDD-UFG.docx differ
diff --git a/Doc-DD-UFG/Arquitetura/arquitetura/architeture-09-11-2015_1.0.0_SDD-UFG.png b/Doc-DD-UFG/Arquitetura/arquitetura/architeture-09-11-2015_1.0.0_SDD-UFG.png
new file mode 100644
index 0000000..d7b6412
Binary files /dev/null and b/Doc-DD-UFG/Arquitetura/arquitetura/architeture-09-11-2015_1.0.0_SDD-UFG.png differ
diff --git a/Doc-DD-UFG/Arquitetura/metodo_de_estimativas_arquitetura_1.0.0_SDD-UFG.xlsx b/Doc-DD-UFG/Arquitetura/metodo_de_estimativas_arquitetura_1.0.0_SDD-UFG.xlsx
new file mode 100644
index 0000000..c83351e
Binary files /dev/null and b/Doc-DD-UFG/Arquitetura/metodo_de_estimativas_arquitetura_1.0.0_SDD-UFG.xlsx differ
diff --git "a/Doc-DD-UFG/Configura\303\247\303\243o/Monitoramento/monitoramento_1.0.0_SDD-UFG_201511191900.ods" "b/Doc-DD-UFG/Configura\303\247\303\243o/Monitoramento/monitoramento_1.0.0_SDD-UFG_201511191900.ods"
new file mode 100644
index 0000000..e728c29
Binary files /dev/null and "b/Doc-DD-UFG/Configura\303\247\303\243o/Monitoramento/monitoramento_1.0.0_SDD-UFG_201511191900.ods" differ
diff --git "a/Doc-DD-UFG/Medi\303\247\303\243o/planilha_medicao_2.0.0_SDD-UFG.xlsx" "b/Doc-DD-UFG/Medi\303\247\303\243o/planilha_medicao_2.0.0_SDD-UFG.xlsx"
new file mode 100644
index 0000000..0754eec
Binary files /dev/null and "b/Doc-DD-UFG/Medi\303\247\303\243o/planilha_medicao_2.0.0_SDD-UFG.xlsx" differ
diff --git a/Doc-DD-UFG/Qualidade/Desenvolvimento/checklist_de_qualidade_de_processo_e_produto_desenvolvimento_1.0.0_SDD-UFG_201511142300.xlsx.xlsx b/Doc-DD-UFG/Qualidade/Desenvolvimento/checklist_de_qualidade_de_processo_e_produto_desenvolvimento_1.0.0_SDD-UFG_201511142300.xlsx.xlsx
new file mode 100644
index 0000000..04e7ac3
Binary files /dev/null and b/Doc-DD-UFG/Qualidade/Desenvolvimento/checklist_de_qualidade_de_processo_e_produto_desenvolvimento_1.0.0_SDD-UFG_201511142300.xlsx.xlsx differ
diff --git "a/Doc-DD-UFG/Qualidade/Ger\303\252ncia/checklist_de_qualidade_de_processo_e_produto_GPR_MED_GCO_1.0.0_SDD-UFG_201511062200.xlsx" "b/Doc-DD-UFG/Qualidade/Ger\303\252ncia/checklist_de_qualidade_de_processo_e_produto_GPR_MED_GCO_1.0.0_SDD-UFG_201511062200.xlsx"
new file mode 100644
index 0000000..7cadd57
Binary files /dev/null and "b/Doc-DD-UFG/Qualidade/Ger\303\252ncia/checklist_de_qualidade_de_processo_e_produto_GPR_MED_GCO_1.0.0_SDD-UFG_201511062200.xlsx" differ
diff --git "a/Doc-DD-UFG/Qualidade/Ger\303\252ncia/checklist_de_qualidade_de_processo_e_produto_GPR_MED_GCO_1.0.0_SDD-UFG_201511142200.xlsx" "b/Doc-DD-UFG/Qualidade/Ger\303\252ncia/checklist_de_qualidade_de_processo_e_produto_GPR_MED_GCO_1.0.0_SDD-UFG_201511142200.xlsx"
new file mode 100644
index 0000000..64d2869
Binary files /dev/null and "b/Doc-DD-UFG/Qualidade/Ger\303\252ncia/checklist_de_qualidade_de_processo_e_produto_GPR_MED_GCO_1.0.0_SDD-UFG_201511142200.xlsx" differ
diff --git a/Doc-DD-UFG/Qualidade/Requisitos/checklist_de_qualidade_de_processo_e_produto_GRE_1.0.0_SDD-UFG_201511132121.xlsx b/Doc-DD-UFG/Qualidade/Requisitos/checklist_de_qualidade_de_processo_e_produto_GRE_1.0.0_SDD-UFG_201511132121.xlsx
new file mode 100644
index 0000000..d95d8c8
Binary files /dev/null and b/Doc-DD-UFG/Qualidade/Requisitos/checklist_de_qualidade_de_processo_e_produto_GRE_1.0.0_SDD-UFG_201511132121.xlsx differ
diff --git a/Doc-DD-UFG/Qualidade/Teste/checklist_de_qualidade_de_processo_e_produto_Teste_1.0.0_SDD-UFG_201511202125.xlsx b/Doc-DD-UFG/Qualidade/Teste/checklist_de_qualidade_de_processo_e_produto_Teste_1.0.0_SDD-UFG_201511202125.xlsx
new file mode 100644
index 0000000..6e24d18
Binary files /dev/null and b/Doc-DD-UFG/Qualidade/Teste/checklist_de_qualidade_de_processo_e_produto_Teste_1.0.0_SDD-UFG_201511202125.xlsx differ
diff --git a/Doc-DD-UFG/Requisitos/requisitos_1.0.0_SDD-UFG.pdf b/Doc-DD-UFG/Requisitos/requisitos_1.0.1_SDD-UFG.pdf
similarity index 58%
rename from Doc-DD-UFG/Requisitos/requisitos_1.0.0_SDD-UFG.pdf
rename to Doc-DD-UFG/Requisitos/requisitos_1.0.1_SDD-UFG.pdf
index 1d70807..dd7ba17 100644
Binary files a/Doc-DD-UFG/Requisitos/requisitos_1.0.0_SDD-UFG.pdf and b/Doc-DD-UFG/Requisitos/requisitos_1.0.1_SDD-UFG.pdf differ