diff --git a/fineract-provider/build.gradle b/fineract-provider/build.gradle index e99acd8dedf..6a174d303bf 100644 --- a/fineract-provider/build.gradle +++ b/fineract-provider/build.gradle @@ -419,13 +419,13 @@ task createDB { task dropDB { description= "Drops the specified database. The database name has to be passed (like: -PdbName=someDBname)" doLast { - def sql = Sql.newInstance( 'jdbc:mysql:thin://localhost:3306/', mysqlUser, mysqlPassword, 'org.drizzle.jdbc.DrizzleDriver' ) + def sql = Sql.newInstance( 'jdbc:mysql://localhost:3306/', mysqlUser, mysqlPassword, 'com.mysql.jdbc.Driver' ) sql.execute( 'DROP DATABASE '+"`$dbName`") } } task setBlankPassword { doLast { - def sql = Sql.newInstance( 'jdbc:mysql:thin://localhost:3306/', mysqlUser, mysqlPassword, 'org.drizzle.jdbc.DrizzleDriver' ) + def sql = Sql.newInstance( 'jdbc:mysql://localhost:3306/', mysqlUser, mysqlPassword, 'com.mysql.jdbc.Driver' ) sql.execute('USE `mifosplatform-tenants`') sql.execute('UPDATE mifosplatform-tenants.tenants SET schema_server = \'localhost\', schema_server_port = \'3306\', schema_username = \'mifos\', schema_password = \'mysql\' WHERE id=1;') } diff --git a/fineract-provider/dependencies.gradle b/fineract-provider/dependencies.gradle index 0a24ad13b0e..f6c2380fd2c 100644 --- a/fineract-provider/dependencies.gradle +++ b/fineract-provider/dependencies.gradle @@ -64,8 +64,8 @@ dependencies { // no slf4j & logback here (anymore), as spring-boot-starter-logging already brings this now, better assembled (log4j-over-slf4j was originally forgotten here) - //[group: 'mysql', name: 'mysql-connector-java', version: '5.1.27'], - [group: 'org.drizzle.jdbc', name: 'drizzle-jdbc', version: '1.4'], + [group: 'mysql', name: 'mysql-connector-java', version: '8.0.17'], + //[group: 'org.drizzle.jdbc', name: 'drizzle-jdbc', version: '1.4'], // [group: 'org.apache.tomcat', name: 'tomcat-jdbc', version: tomcatVersion], @@ -92,17 +92,21 @@ dependencies { [group: 'io.swagger', name: 'swagger-jersey-jaxrs', version: '1.5.15'], [group: 'org.springframework', name:'spring-jms', version: '4.0.7.RELEASE'], [group: 'org.apache.activemq', name: 'activemq-broker', version: '5.9.1'], - [group: 'javax.validation', name: 'validation-api', version: '2.0.0.Final'] + [group: 'javax.validation', name: 'validation-api', version: '2.0.0.Final'], + + [group: 'junit', name: 'junit', version: '4.11'], + [group: 'junit', name: 'junit-dep', version: '4.11', ext: 'pom'], + [group: 'com.jayway.restassured', name: 'rest-assured', version: '2.3.4'], + 'org.mockito:mockito-core:1.9.5' ) implementation 'org.apache.bval:org.apache.bval.bundle:2.0.2' - testCompile 'junit:junit:4.11', - 'junit:junit-dep:4.11', - 'org.mockito:mockito-core:1.9.5', - 'com.jayway.restassured:rest-assured:2.3.3', + testCompile 'org.mockito:mockito-core:1.9.5', + [group: 'junit', name: 'junit', version: '4.11'], + [group: 'junit', name: 'junit-dep', version: '4.11', ext: 'pom'], + [group: 'com.jayway.restassured', name: 'rest-assured', version: '2.3.4'], [group: 'org.springframework.boot', name: 'spring-boot-starter-test', version: springBootVersion], [group: 'com.mockrunner', name: 'mockrunner-jms', version: '1.0.6'], [group: 'com.mockrunner', name: 'mockrunner-jdbc', version: '1.0.6'] - } diff --git a/fineract-provider/dev-dependencies.gradle b/fineract-provider/dev-dependencies.gradle index eebaafdef65..fee1035083b 100644 --- a/fineract-provider/dev-dependencies.gradle +++ b/fineract-provider/dev-dependencies.gradle @@ -25,10 +25,13 @@ dependencies { } tomcat "org.apache.tomcat:tomcat-dbcp:${tomcatVersion}" - providedRuntime("org.springframework.boot:spring-boot-starter-tomcat:${springBootVersion}") + providedRuntime( + ["org.springframework.boot:spring-boot-starter-tomcat:${springBootVersion}"], + [group: 'javax.servlet', name: 'javax.servlet-api', version: '4.0.1'] + ) providedCompile( -// [group: 'javax.servlet', name: 'servlet-api', version: '2.5'], + [group: 'javax.servlet', name: 'javax.servlet-api', version: '4.0.1'], ) compile( @@ -66,11 +69,11 @@ dependencies { // no slf4j & logback here (anymore), as spring-boot-starter-logging already brings this now, better assembled (log4j-over-slf4j was originally forgotten here) - //[group: 'mysql', name: 'mysql-connector-java', version: '5.1.27'], - [group: 'org.drizzle.jdbc', name: 'drizzle-jdbc', version: '1.3'], + [group: 'mysql', name: 'mysql-connector-java', version: '8.0.17'], + //[group: 'org.drizzle.jdbc', name: 'drizzle-jdbc', version: '1.3'], [group: 'org.apache.tomcat', name: 'tomcat-jdbc', version: tomcatVersion], - + [group: 'org.apache.poi',name: 'poi', version: '3.9'], [group: 'org.apache.poi',name: 'poi-ooxml', version: '3.9'], [group: 'org.apache.poi',name: 'poi-ooxml-schemas', version: '3.9'], @@ -92,17 +95,21 @@ dependencies { //[group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.0'] [group: 'io.swagger', name: 'swagger-jersey-jaxrs', version: '1.5.15'], - [group: 'org.springframework', name:'spring-jms'], - [group: 'org.apache.activemq', name: 'activemq-broker'], - [group: 'javax.validation', name: 'validation-api', version: '2.0.0.Final'] + [group: 'org.springframework', name: 'spring-jms', version: '4.1.9.RELEASE'], + [group: 'org.apache.activemq', name: 'activemq-broker', version: '5.13.0'], + [group: 'javax.validation', name: 'validation-api', version: '2.0.0.Final'], + + [group: 'junit', name: 'junit', version: '4.11'], + [group: 'junit', name: 'junit-dep', version: '4.11', ext: 'pom'], + [group: 'com.jayway.restassured', name: 'rest-assured', version: '2.3.4'], + 'org.mockito:mockito-core:1.9.5' ) - testCompile 'junit:junit:4.11', - 'junit:junit-dep:4.11', - 'org.mockito:mockito-core:1.9.5', - 'com.jayway.restassured:rest-assured:2.3.3', - [group: 'org.springframework.boot', name: 'spring-boot-starter-test', version: springBootVersion], - [group: 'com.mockrunner', name: 'mockrunner-jms', version: '1.0.6'], - [group: 'com.mockrunner', name: 'mockrunner-jdbc', version: '1.0.6'] - + testCompile 'org.mockito:mockito-core:1.9.5', + [group: 'junit', name: 'junit', version: '4.11'], + [group: 'junit', name: 'junit-dep', version: '4.11', ext: 'pom'], + [group: 'com.jayway.restassured', name: 'rest-assured', version: '2.3.4'], + [group: 'org.springframework.boot', name: 'spring-boot-starter-test', version: springBootVersion], + [group: 'com.mockrunner', name: 'mockrunner-jms', version: '1.0.6'], + [group: 'com.mockrunner', name: 'mockrunner-jdbc', version: '1.0.6'] } diff --git a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/core/boot/db/DataSourceProperties.java b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/core/boot/db/DataSourceProperties.java index 24276f7828b..6be82bfe33f 100644 --- a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/core/boot/db/DataSourceProperties.java +++ b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/core/boot/db/DataSourceProperties.java @@ -48,7 +48,7 @@ public class DataSourceProperties extends PoolProperties { @Value("${" + HOST + ":localhost}") private volatile @NotNull String hostname; - @Value("${" + DB + ":mifosplatform-tenants}") + @Value("${" + DB + ":mifosplatform-tenants?serverTimezone=UTC}") private volatile @NotNull String dbName; @Value("${" + UID + ":root}") @@ -60,7 +60,7 @@ public class DataSourceProperties extends PoolProperties { @Value("${" + PROTOCOL + ":jdbc}") private volatile @NotNull String jdbcProtocol; - @Value("${" + SUBPROTOCOL + ":mysql:thin}") + @Value("${" + SUBPROTOCOL + ":mysql}") private volatile @NotNull String jdbcSubprotocol; public DataSourceProperties(String driverClassName, String protocol, String subProtocol, Integer port) { diff --git a/fineract-provider/src/main/resources/META-INF/spring/jdbc.properties b/fineract-provider/src/main/resources/META-INF/spring/jdbc.properties index 8d64dc515ea..6bc97bd13b9 100644 --- a/fineract-provider/src/main/resources/META-INF/spring/jdbc.properties +++ b/fineract-provider/src/main/resources/META-INF/spring/jdbc.properties @@ -17,7 +17,7 @@ # under the License. # -DRIVERCLASS_NAME:org.drizzle.jdbc.DrizzleDriver +DRIVERCLASS_NAME:com.mysql.jdbc.Driver PROTOCOL:jdbc -SUB_PROTOCOL:mysql:thin +SUB_PROTOCOL:mysql PORT:3306 \ No newline at end of file diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V134_2__permissions_spelling_correction.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V134_2__permissions_spelling_correction.sql index 333819e3a50..d3794f45a96 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V134_2__permissions_spelling_correction.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V134_2__permissions_spelling_correction.sql @@ -17,4 +17,4 @@ -- under the License. -- -update m_permission set grouping="organisation" where grouping = "organistion"; +update m_permission set `grouping`="organisation" where `grouping` = "organistion"; diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V13__add_group_and_client_pending_configuration.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V13__add_group_and_client_pending_configuration.sql index 7d355ef2edf..b8eb57f7437 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V13__add_group_and_client_pending_configuration.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V13__add_group_and_client_pending_configuration.sql @@ -26,13 +26,13 @@ INSERT INTO c_configuration (`name`, `enabled`) VALUES ('allow-pending-client-st INSERT INTO c_configuration (`name`, `enabled`) VALUES ('allow-pending-group-status', '0'); -INSERT INTO .`r_enum_value` (`enum_name`, `enum_id`, `enum_message_property`, `enum_value`) +INSERT INTO `r_enum_value` (`enum_name`, `enum_id`, `enum_message_property`, `enum_value`) VALUES ('status_id', '0', 'Invalid', 'Invalid'); -INSERT INTO .`r_enum_value` (`enum_name`, `enum_id`, `enum_message_property`, `enum_value`) +INSERT INTO `r_enum_value` (`enum_name`, `enum_id`, `enum_message_property`, `enum_value`) VALUES ('status_id', '100', 'Pending', 'Pending'); -INSERT INTO .`r_enum_value` (`enum_name`, `enum_id`, `enum_message_property`, `enum_value`) +INSERT INTO `r_enum_value` (`enum_name`, `enum_id`, `enum_message_property`, `enum_value`) VALUES ('status_id', '300', 'Active', 'Active'); -INSERT INTO .`r_enum_value` (`enum_name`, `enum_id`, `enum_message_property`, `enum_value`) +INSERT INTO `r_enum_value` (`enum_name`, `enum_id`, `enum_message_property`, `enum_value`) VALUES ('status_id', '600', 'Closed', 'Closed'); -INSERT INTO .`r_enum_value` (`enum_name`, `enum_id`, `enum_message_property`, `enum_value`) +INSERT INTO `r_enum_value` (`enum_name`, `enum_id`, `enum_message_property`, `enum_value`) VALUES ('loan_status_id', '0', 'Invalid', 'Invalid'); \ No newline at end of file diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V202__savings_officer_history_table.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V202__savings_officer_history_table.sql index e43ee03d529..f258414bec1 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V202__savings_officer_history_table.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V202__savings_officer_history_table.sql @@ -34,6 +34,6 @@ CREATE TABLE `m_savings_officer_assignment_history` ( CONSTRAINT `fk_m_savings_officer_assignment_history_0002` FOREIGN KEY (`savings_officer_id`) REFERENCES `m_staff` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -insert into m_permission (grouping,code,entity_name,action_name) values ('portfolio','REMOVESAVINGSOFFICER_SAVINGSACCOUNT','SAVINGSACCOUNT','REMOVESAVINGSOFFICER'); -insert into m_permission (grouping,code,entity_name,action_name) values ('portfolio','UPDATESAVINGSOFFICER_SAVINGSACCOUNT','SAVINGSACCOUNT','UPDATESAVINGSOFFICER'); +insert into m_permission (`grouping`,code,entity_name,action_name) values ('portfolio','REMOVESAVINGSOFFICER_SAVINGSACCOUNT','SAVINGSACCOUNT','REMOVESAVINGSOFFICER'); +insert into m_permission (`grouping`,code,entity_name,action_name) values ('portfolio','UPDATESAVINGSOFFICER_SAVINGSACCOUNT','SAVINGSACCOUNT','UPDATESAVINGSOFFICER'); diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V20__report_maint_perms_really_configuration.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V20__report_maint_perms_really_configuration.sql index 31ba00f7192..8e511e08187 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V20__report_maint_perms_really_configuration.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V20__report_maint_perms_really_configuration.sql @@ -18,4 +18,4 @@ -- -update m_permission set grouping = 'configuration' where entity_name = 'report'; +update m_permission set `grouping` = 'configuration' where entity_name = 'report'; diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V229__teller_cash_management.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V229__teller_cash_management.sql index 41c2d946d21..b7879cdcfe5 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V229__teller_cash_management.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V229__teller_cash_management.sql @@ -69,42 +69,42 @@ CREATE TABLE `m_cashier_transactions` ( INSERT INTO m_permission ( - grouping, code, entity_name, action_name, can_maker_checker + `grouping`, code, entity_name, action_name, can_maker_checker ) values ( 'cash_mgmt', 'CREATE_TELLER', 'TELLER', 'CREATE', 1 ); INSERT INTO m_permission ( - grouping, code, entity_name, action_name, can_maker_checker + `grouping`, code, entity_name, action_name, can_maker_checker ) values ( 'cash_mgmt', 'UPDATE_TELLER', 'TELLER', 'CREATE', 1 ); INSERT INTO m_permission ( - grouping, code, entity_name, action_name, can_maker_checker + `grouping`, code, entity_name, action_name, can_maker_checker ) values ( 'cash_mgmt', 'ALLOCATECASHIER_TELLER', 'TELLER', 'ALLOCATE', 1 ); INSERT INTO m_permission ( - grouping, code, entity_name, action_name, can_maker_checker + `grouping`, code, entity_name, action_name, can_maker_checker ) values ( 'cash_mgmt', 'UPDATECASHIERALLOCATION_TELLER', 'TELLER', 'UPDATECASHIERALLOCATION', 1 ); INSERT INTO m_permission ( - grouping, code, entity_name, action_name, can_maker_checker + `grouping`, code, entity_name, action_name, can_maker_checker ) values ( 'cash_mgmt', 'DELETECASHIERALLOCATION_TELLER', 'TELLER', 'DELETECASHIERALLOCATION', 1 ); INSERT INTO m_permission ( - grouping, code, entity_name, action_name, can_maker_checker + `grouping`, code, entity_name, action_name, can_maker_checker ) values ( 'cash_mgmt', 'ALLOCATECASHTOCASHIER_TELLER', 'TELLER', 'ALLOCATECASHTOCASHIER', 1 ); INSERT INTO m_permission ( - grouping, code, entity_name, action_name, can_maker_checker + `grouping`, code, entity_name, action_name, can_maker_checker ) values ( 'cash_mgmt', 'SETTLECASHFROMCASHIER_TELLER', 'TELLER', 'SETTLECASHFROMCASHIER', 1 ); diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V250__password_validation_policy.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V250__password_validation_policy.sql index 5bb1d2790a9..770d293a48a 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V250__password_validation_policy.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V250__password_validation_policy.sql @@ -47,13 +47,13 @@ VALUES ( NULL , '^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\\s).{6,50}$', 'Password must be at least 6 characters, no more than 50 characters long, must include at least one upper case letter, one lower case letter, one numeric digit and no space', '0' ); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUE ("authorisation","READ_PASSWORD_PREFERENCES","PASSWORD_PREFERENCES","READ",0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUE ("authorisation","UPDATE_PASSWORD_PREFERENCES","PASSWORD_PREFERENCES","UPDATE",0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUE ("authorisation","UPDATE_PASSWORD_PREFERENCES_CHECKER","PASSWORD_PREFERENCES","UPDATE_CHECKER",0); diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V257__staff_image_association.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V257__staff_image_association.sql index 7bbc3d2a584..1ecee88d8bb 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V257__staff_image_association.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V257__staff_image_association.sql @@ -22,7 +22,7 @@ ALTER TABLE `m_staff` ADD CONSTRAINT `FK_m_staff_m_image` FOREIGN KEY (`image_id`) REFERENCES `m_image` (`id`); INSERT INTO m_permission ( -grouping , +`grouping` , code , entity_name , action_name , diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V264__insert_paymenttype_and_report_read_permission.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V264__insert_paymenttype_and_report_read_permission.sql index cde3ee76449..110cf76bdcf 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V264__insert_paymenttype_and_report_read_permission.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V264__insert_paymenttype_and_report_read_permission.sql @@ -17,5 +17,5 @@ -- under the License. -- -INSERT INTO m_permission (grouping,code,entity_name,action_name,can_maker_checker) VALUES ('portfolio','READ_PAYMENTTYPE','PAYMENTTYPE','READ',0); -INSERT INTO m_permission (grouping,code,entity_name,action_name,can_maker_checker) VALUES ('report','READ_Staff Assignment History','Staff Assignment History(Pentaho)','READ',0); \ No newline at end of file +INSERT INTO m_permission (`grouping`,code,entity_name,action_name,can_maker_checker) VALUES ('portfolio','READ_PAYMENTTYPE','PAYMENTTYPE','READ',0); +INSERT INTO m_permission (`grouping`,code,entity_name,action_name,can_maker_checker) VALUES ('report','READ_Staff Assignment History','Staff Assignment History(Pentaho)','READ',0); \ No newline at end of file diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V265__modify_external_service_schema.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V265__modify_external_service_schema.sql index cdbb3feeb3f..7799f9b31d3 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V265__modify_external_service_schema.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V265__modify_external_service_schema.sql @@ -59,7 +59,7 @@ insert into c_external_service_properties (`name`, `value`, `external_service_id insert into c_external_service_properties (`name`, `value`, `external_service_id`) values('useTLS', 'true', (select id from c_external_service where name = 'SMTP_Email_Account')); -insert into m_permission(grouping, code, entity_name, action_name, can_maker_checker) values('externalservices', 'UPDATE_EXTERNALSERVICES', 'EXTERNALSERVICES', 'UPDATE', 0); +insert into m_permission(`grouping`, code, entity_name, action_name, can_maker_checker) values('externalservices', 'UPDATE_EXTERNALSERVICES', 'EXTERNALSERVICES', 'UPDATE', 0); diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V324__datatable_checks.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V324__datatable_checks.sql index 6ba065813a9..e1acacee44a 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V324__datatable_checks.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V324__datatable_checks.sql @@ -36,11 +36,11 @@ ENGINE=InnoDB ; -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUE ("datatable","READ_ENTITY_DATATABLE_CHECK","ENTITY_DATATABLE_CHECK","READ",0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUE ("datatable","CREATE_ENTITY_DATATABLE_CHECK","ENTITY_DATATABLE_CHECK","CREATE",0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUE ("datatable","DELETE_ENTITY_DATATABLE_CHECK","ENTITY_DATATABLE_CHECK","DELETE",0); diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V352__interop_init.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V352__interop_init.sql index c2b4e5f8f91..23d061b5066 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V352__interop_init.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V352__interop_init.sql @@ -48,28 +48,28 @@ INSERT INTO `m_appuser_role` VALUES ((SELECT id FROM m_appuser WHERE username = -- Interoperation permissions -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUES ('interop', 'READ_INTERID', 'INTERID', 'READ', 0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUES ('interop', 'READ_INTERREQUEST', 'INTERREQUEST', 'READ', 0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUES ('interop', 'READ_INTERQUOTE', 'INTERQUOTE', 'READ', 0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUES ('interop', 'READ_INTERTRANSFER', 'INTERTRANSFER', 'READ', 0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUES ('interop', 'PREPARE_INTERTRANSFER', 'INTERTRANSFER', 'PREPARE', 0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUES ('interop', 'CREATE_INTERID', 'INTERID', 'CREATE', 0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUES ('interop', 'CREATE_INTERREQUEST', 'INTERREQUEST', 'CREATE', 0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUES ('interop', 'CREATE_INTERQUOTE', 'INTERQUOTE', 'CREATE', 0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUES ('interop', 'CREATE_INTERTRANSFER', 'INTERTRANSFER', 'CREATE', 0); -INSERT INTO m_permission (grouping, code, entity_name, action_name, can_maker_checker) +INSERT INTO m_permission (`grouping`, code, entity_name, action_name, can_maker_checker) VALUES ('interop', 'DELETE_INTERID', 'INTERID', 'DELETE', 0); diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V3__mifosx-permissions-and-authorisation-utf8.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V3__mifosx-permissions-and-authorisation-utf8.sql index fb2561cac3a..10738ca787e 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V3__mifosx-permissions-and-authorisation-utf8.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V3__mifosx-permissions-and-authorisation-utf8.sql @@ -330,19 +330,19 @@ INSERT INTO `m_appuser_role` (`appuser_id`, `role_id`) VALUES (1,1); -- This needs to always happen at end of the script /* add a create, read, update and delete permission for each registered datatable */ -insert into m_permission(grouping, `code`, entity_name, action_name) +insert into m_permission(`grouping`, code, entity_name, action_name) select 'datatable', concat('CREATE_', r.registered_table_name), r.registered_table_name, 'CREATE' from x_registered_table r; -insert into m_permission(grouping, `code`, entity_name, action_name) +insert into m_permission(`grouping`, code, entity_name, action_name) select 'datatable', concat('READ_', r.registered_table_name), r.registered_table_name, 'READ' from x_registered_table r; -insert into m_permission(grouping, `code`, entity_name, action_name) +insert into m_permission(`grouping`, code, entity_name, action_name) select 'datatable', concat('UPDATE_', r.registered_table_name), r.registered_table_name, 'UPDATE' from x_registered_table r; -insert into m_permission(grouping, `code`, entity_name, action_name) +insert into m_permission(`grouping`, code, entity_name, action_name) select 'datatable', concat('DELETE_', r.registered_table_name), r.registered_table_name, 'DELETE' from x_registered_table r; diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V4__mifosx-core-reports-utf8.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V4__mifosx-core-reports-utf8.sql index 3804054b27b..9a238cccfa8 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V4__mifosx-core-reports-utf8.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V4__mifosx-core-reports-utf8.sql @@ -25,6 +25,6 @@ INSERT INTO `stretchy_report` VALUES (1,'Client Listing','Table',NULL,'Client',' INSERT INTO `stretchy_parameter` VALUES (1,'startDateSelect','startDate','startDate','date','date','today',NULL,NULL,NULL,NULL,NULL),(2,'endDateSelect','endDate','endDate','date','date','today',NULL,NULL,NULL,NULL,NULL),(3,'obligDateTypeSelect','obligDateType','obligDateType','select','number','0',NULL,NULL,NULL,'select * from\r\n(select 1 as id, \"Closed\" as `name` union all\r\nselect 2, \"Disbursal\" ) x\r\norder by x.`id`',NULL),(5,'OfficeIdSelectOne','officeId','Office','select','number','0',NULL,'Y',NULL,'select id, \r\nconcat(substring(\"........................................\", 1, \r\n \n\n((LENGTH(`hierarchy`) - LENGTH(REPLACE(`hierarchy`, \'.\', \'\')) - 1) * 4)), \r\n `name`) as tc\r\nfrom m_office\r\nwhere hierarchy like concat\n\n(\'${currentUserHierarchy}\', \'%\')\r\norder by hierarchy',NULL),(6,'loanOfficerIdSelectAll','loanOfficerId','Loan Officer','select','number','0',NULL,NULL,'Y','(select lo.id, lo.display_name as `Name` \r\nfrom m_office o \r\njoin m_office ounder on ounder.hierarchy like concat(o.hierarchy, \'%\')\r\njoin m_staff lo on lo.office_id = ounder.id\r\nwhere lo.is_loan_officer = true\r\nand o.id = ${officeId})\r\nunion all\r\n(select -10, \'-\')\r\norder by 2',5),(10,'currencyIdSelectAll','currencyId','Currency','select','number','0',NULL,NULL,'Y','select `code`, `name`\r\nfrom m_organisation_currency\r\norder by `code`',NULL),(20,'fundIdSelectAll','fundId','Fund','select','number','0',NULL,NULL,'Y','(select id, `name`\r\nfrom m_fund)\r\nunion all\r\n(select -10, \'-\')\r\norder by 2',NULL),(25,'loanProductIdSelectAll','loanProductId','Product','select','number','0',NULL,NULL,'Y','select p.id, p.`name`\r\nfrom m_product_loan p\r\nwhere p.currency_code = \'${currencyId}\'\r\norder by 2',10),(26,'loanPurposeIdSelectAll','loanPurposeId','Loan Purpose','select','number','0',NULL,NULL,'Y','select -10 as id, \'-\' as code_value\r\nunion all\r\nselect * from (select v.id, v.code_value\r\nfrom m_code c\r\njoin m_code_value v on v.code_id = c.id\r\nwhere c.code_name = \"loanPurpose\"\r\norder by v.order_position) x',NULL),(100,'parTypeSelect','parType','parType','select','number','0',NULL,NULL,NULL,'select * from\r\n(select 1 as id, \"Principal Only\" as `name` union all\r\nselect 2, \"Principal + Interest\" union all\r\nselect 3, \"Principal + Interest + Fees\" union all\r\nselect 4, \"Principal + Interest + Fees + Penalties\") x\r\norder by x.`id`',NULL),(1001,'FullReportList',NULL,'n/a','n/a','n/a','n/a','Y',NULL,NULL,'select r.report_id, r.report_name, r.report_type, r.report_subtype, r.report_category,\r\n \n\nrp.parameter_id, rp.report_parameter_name, p.parameter_name\r\n from stretchy_report r\r\n left join stretchy_report_parameter rp on rp.report_id = r.report_id\r\n \n\nleft join stretchy_parameter p on p.parameter_id = rp.parameter_id\r\n where r.use_report is true\r\n and exists\r\n (\r\n select \'f\'\r\n from m_appuser_role ur \n\n\r\n join m_role r on r.id = ur.role_id\r\n join m_role_permission rp on rp.role_id = r.id\r\n join m_permission p on p.id = rp.permission_id\r\n where \n\nur.appuser_id = ${currentUserId}\r\n and (p.code in (\'ALL_FUNCTIONS_READ\', \'ALL_FUNCTIONS\') or p.code = concat(\"READ_\", r.report_name))\r\n )\r\n order by \n\nr.report_category, r.report_name, rp.parameter_id',NULL),(1002,'FullParameterList',NULL,'n/a','n/a','n/a','n/a','Y',NULL,NULL,'select sp.parameter_name, sp.parameter_variable, sp.parameter_label, sp.parameter_displayType, \r\nsp.parameter_FormatType, sp.parameter_default, sp.selectOne, sp.selectAll, spp.parameter_name as parentParameterName\r\nfrom stretchy_parameter sp\r\nleft join stretchy_parameter spp on spp.parameter_id = sp.parent_parameter_id\r\nwhere sp.special is null\r\nand exists \r\n (select \'f\' \r\n from stretchy_report sr\r\n join stretchy_report_parameter srp on srp.report_id = sr.report_id\r\n where sr.report_name in(${reportListing})\r\n and srp.parameter_id = sp.parameter_id\r\n )\r\norder by sp.parameter_id',NULL),(1003,'reportCategoryList',NULL,'n/a','n/a','n/a','n/a','Y',NULL,NULL,'select r.report_id, r.report_name, r.report_type, r.report_subtype, \n\nr.report_category,\r\n rp.parameter_id, rp.report_parameter_name, p.parameter_name\r\n from stretchy_report r\r\n left join stretchy_report_parameter rp on \n\nrp.report_id = r.report_id\r\n left join stretchy_parameter p on p.parameter_id = rp.parameter_id\r\n where r.report_category = \'${reportCategory}\'\r\n and \n\nr.use_report is true\r\n and exists\r\n (\r\n select \'f\'\r\n from m_appuser_role ur \r\n join m_role r on r.id = ur.role_id\r\n join m_role_permission rp on \n\nrp.role_id = r.id\r\n join m_permission p on p.id = rp.permission_id\r\n where ur.appuser_id = ${currentUserId}\r\n and (p.code in (\'ALL_FUNCTIONS_READ\', \n\n\'ALL_FUNCTIONS\') or p.code = concat(\"READ_\", r.report_name))\r\n )\r\n order by r.report_category, r.report_name, rp.parameter_id',NULL); INSERT INTO `stretchy_report_parameter` VALUES (1,5,NULL),(2,5,NULL),(2,6,NULL),(2,10,NULL),(2,20,NULL),(2,25,NULL),(2,26,NULL),(5,5,NULL),(5,6,NULL),(5,10,NULL),(5,20,NULL),(5,25,NULL),(5,26,NULL),(6,5,NULL),(6,6,NULL),(6,10,NULL),(6,20,NULL),(6,25,NULL),(6,26,NULL),(7,5,NULL),(7,6,NULL),(7,10,NULL),(7,20,NULL),(7,25,NULL),(7,26,NULL),(8,5,NULL),(8,6,NULL),(8,10,NULL),(8,25,NULL),(8,26,NULL),(11,5,NULL),(11,6,NULL),(11,10,NULL),(11,20,NULL),(11,25,NULL),(11,26,NULL),(11,100,NULL),(12,5,NULL),(12,6,NULL),(12,10,NULL),(12,20,NULL),(12,25,NULL),(12,26,NULL),(13,1,NULL),(13,2,NULL),(13,3,NULL),(13,5,NULL),(13,6,NULL),(13,10,NULL),(13,20,NULL),(13,25,NULL),(13,26,NULL),(14,1,NULL),(14,2,NULL),(14,3,NULL),(14,5,NULL),(14,6,NULL),(14,10,NULL),(14,20,NULL),(14,25,NULL),(14,26,NULL),(15,5,NULL),(15,6,NULL),(15,10,NULL),(15,20,NULL),(15,25,NULL),(15,26,NULL),(15,100,NULL),(16,5,NULL),(16,6,NULL),(16,10,NULL),(16,20,NULL),(16,25,NULL),(16,26,NULL),(16,100,NULL),(20,1,NULL),(20,2,NULL),(20,10,NULL),(20,20,NULL),(21,1,NULL),(21,2,NULL),(21,5,NULL),(21,10,NULL),(21,20,NULL),(48,5,'branch'),(48,2,'date'),(49,5,'branch'),(49,1,'fromDate'),(49,2,'toDate'),(50,5,'branch'),(50,1,'fromDate'),(50,2,'toDate'),(51,1,NULL),(51,2,NULL),(51,5,NULL),(51,10,NULL),(51,25,NULL),(52,5,NULL),(53,5,NULL),(53,10,NULL),(54,1,NULL),(54,2,NULL),(54,5,NULL),(54,10,NULL),(54,25,NULL),(55,5,NULL),(55,6,NULL),(55,10,NULL),(55,20,NULL),(55,25,NULL),(55,26,NULL),(56,5,NULL),(56,6,NULL),(56,10,NULL),(56,20,NULL),(56,25,NULL),(56,26,NULL),(56,100,NULL),(57,5,NULL),(57,6,NULL),(57,10,NULL),(57,20,NULL),(57,25,NULL),(57,26,NULL),(58,5,NULL),(58,6,NULL),(58,10,NULL),(58,20,NULL),(58,25,NULL),(58,26,NULL),(58,100,NULL),(59,1,NULL),(59,2,NULL),(59,5,NULL),(59,6,NULL),(59,10,NULL),(59,20,NULL),(59,25,NULL),(59,26,NULL),(61,5,NULL),(61,10,NULL),(92,1,'fromDate'),(92,5,'selectOffice'),(92,2,'toDate'),(93,1,NULL),(93,2,NULL),(93,5,NULL),(93,6,NULL),(94,2,'endDate'),(94,6,'loanOfficerId'),(94,5,'officeId'),(94,1,'startDate'); -insert into m_permission(grouping, `code`, entity_name, action_name, can_maker_checker) +insert into m_permission(`grouping`, `code`, entity_name, action_name, can_maker_checker) select 'report', concat('READ_', r.report_name), r.report_name, 'READ', false from stretchy_report r; diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V76__rename_permission_grouping.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V76__rename_permission_grouping.sql index 5def9a6ef60..961603f61ef 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V76__rename_permission_grouping.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V76__rename_permission_grouping.sql @@ -20,12 +20,12 @@ /* break-out center and group permissions from porfolio grouping */ update m_permission -set grouping = "portfolio_center" +set `grouping` = "portfolio_center" where code like '%center%' -and grouping like 'portfolio'; +and `grouping` like 'portfolio'; update m_permission -set grouping = "portfolio_group" +set `grouping` = "portfolio_group" where code like '%group%' -and grouping like 'portfolio'; \ No newline at end of file +and `grouping` like 'portfolio'; \ No newline at end of file diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V78__breakdown_portfolio_grouping.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V78__breakdown_portfolio_grouping.sql index acc3bef0968..323414a5229 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V78__breakdown_portfolio_grouping.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V78__breakdown_portfolio_grouping.sql @@ -20,5 +20,5 @@ /* grouping is misspelt but also should be under accounting */ update m_permission -set grouping = 'accounting' -where grouping = 'organistion'; \ No newline at end of file +set `grouping` = 'accounting' +where `grouping` = 'organistion'; \ No newline at end of file diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V8__deposit-transaction-permissions-if-they-exist.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V8__deposit-transaction-permissions-if-they-exist.sql index 9901d0818b2..d9fc0ae26bf 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V8__deposit-transaction-permissions-if-they-exist.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V8__deposit-transaction-permissions-if-they-exist.sql @@ -17,5 +17,5 @@ -- under the License. -- -delete from m_permission where grouping = 'transaction_deposit'; +delete from m_permission where `grouping` = 'transaction_deposit'; diff --git a/fineract-provider/src/main/resources/sql/migrations/core_db/V92__group_center_assign_staff_permission.sql b/fineract-provider/src/main/resources/sql/migrations/core_db/V92__group_center_assign_staff_permission.sql index c6c4f049ab3..0743defc131 100644 --- a/fineract-provider/src/main/resources/sql/migrations/core_db/V92__group_center_assign_staff_permission.sql +++ b/fineract-provider/src/main/resources/sql/migrations/core_db/V92__group_center_assign_staff_permission.sql @@ -17,5 +17,5 @@ -- under the License. -- -INSERT INTO `m_permission` (grouping,code,`entity_name`,`action_name`,`can_maker_checker`) +INSERT INTO `m_permission` (`grouping`,code,`entity_name`,`action_name`,`can_maker_checker`) values('portfolio_group','ASSIGNSTAFF_GROUP','GROUP','ASSIGNSTAFF',0); \ No newline at end of file diff --git a/fineract-provider/src/main/resources/sql/migrations/list_db/V1_2__updated_connection_string_option.sql b/fineract-provider/src/main/resources/sql/migrations/list_db/V1_2__updated_connection_string_option.sql new file mode 100644 index 00000000000..aac50c1c864 --- /dev/null +++ b/fineract-provider/src/main/resources/sql/migrations/list_db/V1_2__updated_connection_string_option.sql @@ -0,0 +1,25 @@ +-- +-- Licensed to the Apache Software Foundation (ASF) under one +-- or more contributor license agreements. See the NOTICE file +-- distributed with this work for additional information +-- regarding copyright ownership. The ASF licenses this file +-- to you under the Apache License, Version 2.0 (the +-- "License"); you may not use this file except in compliance +-- with the License. You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, +-- software distributed under the License is distributed on an +-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +-- KIND, either express or implied. See the License for the +-- specific language governing permissions and limitations +-- under the License. +-- + +-- +-- Updating data for table `tenants` +-- + +UPDATE `tenants` SET `schema_name`= 'mifostenant-default?serverTimezone=UTC' where id=1; + diff --git a/fineract-provider/src/test/resources/META-INF/context.xml b/fineract-provider/src/test/resources/META-INF/context.xml index f5f1ba2ed08..374c715d27b 100644 --- a/fineract-provider/src/test/resources/META-INF/context.xml +++ b/fineract-provider/src/test/resources/META-INF/context.xml @@ -23,7 +23,7 @@ \ No newline at end of file