diff --git a/pom.xml b/pom.xml
index 57f74646..4c7a67f3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -87,6 +87,10 @@
spring-boot-devtools
runtime
+
+ org.apache.tomcat
+ tomcat-jdbc
+
com.mysql
diff --git a/src/main/environment/common_ci.properties b/src/main/environment/common_ci.properties
index 98736180..e81426e1 100644
--- a/src/main/environment/common_ci.properties
+++ b/src/main/environment/common_ci.properties
@@ -4,6 +4,13 @@ spring.datasource.username=@env.DATABASE_IDENTITY_USERNAME@
spring.datasource.password=@env.DATABASE_IDENTITY_PASSWORD@
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
+
+secondary.datasource.url=@env.DATABASE_URL@
+secondary.datasource.username=@env.DATABASE_USERNAME@
+secondary.datasource.password=@env.DATABASE_PASSWORD@
+secondary.datasource.driver-class-name=com.mysql.jdbc.Driver
+
+
#ELK logging file name
logging.path=logs/
logging.file.name=@env.IDENTITY_API_LOGGING_FILE_NAME@
diff --git a/src/main/environment/common_docker.properties b/src/main/environment/common_docker.properties
index 8f66c5b0..258fadfd 100644
--- a/src/main/environment/common_docker.properties
+++ b/src/main/environment/common_docker.properties
@@ -4,6 +4,13 @@ spring.datasource.username=${DATABASE_IDENTITY_USERNAME}
spring.datasource.password=${DATABASE_IDENTITY_PASSWORD}
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
+
+secondary.datasource.url=${DATABASE_URL}
+secondary.datasource.username=${DATABASE_USERNAME}
+secondary.datasource.password=${DATABASE_PASSWORD}
+secondary.datasource.driver-class-name=com.mysql.jdbc.Driver
+
+
#ELK logging file name
logging.path=logs/
logging.file.name=${IDENTITY_API_LOGGING_FILE_NAME}
diff --git a/src/main/environment/common_example.properties b/src/main/environment/common_example.properties
index 45018aa6..d8df43c8 100644
--- a/src/main/environment/common_example.properties
+++ b/src/main/environment/common_example.properties
@@ -5,6 +5,12 @@ spring.datasource.username=root
spring.datasource.password=1234
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
+
+secondary.datasource.url=jdbc:mysql://localhost:3306/db_iemr
+secondary.datasource.username=root
+secondary.datasource.password=root123
+secondary.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
+
jwt.secret=my-32-character-ultra-secure-and-ultra-long-secret
logging.path=logs/
logging.file.name=logs/identity-api.log
diff --git a/src/main/java/com/iemr/common/identity/config/PrimaryDBConfig.java b/src/main/java/com/iemr/common/identity/config/PrimaryDBConfig.java
new file mode 100644
index 00000000..47b9e712
--- /dev/null
+++ b/src/main/java/com/iemr/common/identity/config/PrimaryDBConfig.java
@@ -0,0 +1,89 @@
+/*
+ * AMRIT – Accessible Medical Records via Integrated Technology
+ * Integrated EHR (Electronic Health Records) Solution
+ *
+ * Copyright (C) "Piramal Swasthya Management and Research Institute"
+ *
+ * This file is part of AMRIT.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see https://www.gnu.org/licenses/.
+ */
+package com.iemr.common.identity.config;
+
+import com.iemr.common.identity.utils.config.ConfigProperties;
+import jakarta.persistence.EntityManagerFactory;
+import org.apache.tomcat.jdbc.pool.DataSource;
+import org.apache.tomcat.jdbc.pool.PoolConfiguration;
+import org.apache.tomcat.jdbc.pool.PoolProperties;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
+import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
+import org.springframework.orm.jpa.JpaTransactionManager;
+import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
+import org.springframework.transaction.PlatformTransactionManager;
+import org.springframework.transaction.annotation.EnableTransactionManagement;
+
+@Configuration
+@EnableTransactionManagement
+@EnableJpaRepositories(entityManagerFactoryRef = "entityManagerFactory", basePackages = {"com.iemr.common.identity.domain.identity",
+ "com.iemr.common.identity.repo","com.iemr.common.identity.data.rmnch",})
+public class PrimaryDBConfig {
+
+ Logger logger = LoggerFactory.getLogger(this.getClass().getName());
+
+ @Primary
+ @Bean(name = "dataSource")
+ @ConfigurationProperties(prefix = "spring.datasource")
+ public DataSource dataSource() {
+ PoolConfiguration p = new PoolProperties();
+ p.setMaxActive(30);
+ p.setMaxIdle(15);
+ p.setMinIdle(5);
+ p.setInitialSize(5);
+ p.setMaxWait(10000);
+ p.setMinEvictableIdleTimeMillis(15000);
+ p.setRemoveAbandoned(true);
+ p.setLogAbandoned(true);
+ p.setRemoveAbandonedTimeout(600);
+ p.setTestOnBorrow(true);
+ p.setValidationQuery("SELECT 1");
+ org.apache.tomcat.jdbc.pool.DataSource datasource = new org.apache.tomcat.jdbc.pool.DataSource();
+ datasource.setPoolProperties(p);
+
+ datasource.setUsername(ConfigProperties.getPropertyByName("spring.datasource.username"));
+ datasource.setPassword(ConfigProperties.getPropertyByName("spring.datasource.password"));
+
+ return datasource;
+ }
+
+ @Primary
+ @Bean(name = "entityManagerFactory")
+ public LocalContainerEntityManagerFactoryBean entityManagerFactory(EntityManagerFactoryBuilder builder,
+ @Qualifier("dataSource") DataSource dataSource) {
+ return builder.dataSource(dataSource).packages("com.iemr.common.identity.domain.identity","com.iemr.common.identity.data.rmnch").persistenceUnit("db_identity").build();
+ }
+
+ @Primary
+ @Bean(name = "transactionManager")
+ public PlatformTransactionManager transactionManager(
+ @Qualifier("entityManagerFactory") EntityManagerFactory entityManagerFactory) {
+ return new JpaTransactionManager(entityManagerFactory);
+ }
+}
diff --git a/src/main/java/com/iemr/common/identity/config/SecondaryDBConfig.java b/src/main/java/com/iemr/common/identity/config/SecondaryDBConfig.java
new file mode 100644
index 00000000..2e5e09ad
--- /dev/null
+++ b/src/main/java/com/iemr/common/identity/config/SecondaryDBConfig.java
@@ -0,0 +1,86 @@
+/*
+ * AMRIT – Accessible Medical Records via Integrated Technology
+ * Integrated EHR (Electronic Health Records) Solution
+ *
+ * Copyright (C) "Piramal Swasthya Management and Research Institute"
+ *
+ * This file is part of AMRIT.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see https://www.gnu.org/licenses/.
+ */
+package com.iemr.common.identity.config;
+
+import com.iemr.common.identity.utils.config.ConfigProperties;
+import jakarta.persistence.EntityManagerFactory;
+import org.apache.tomcat.jdbc.pool.DataSource;
+import org.apache.tomcat.jdbc.pool.PoolConfiguration;
+import org.apache.tomcat.jdbc.pool.PoolProperties;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
+import org.springframework.orm.jpa.JpaTransactionManager;
+import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
+import org.springframework.transaction.PlatformTransactionManager;
+import org.springframework.transaction.annotation.EnableTransactionManagement;
+
+@Configuration
+@EnableTransactionManagement
+@EnableJpaRepositories(entityManagerFactoryRef = "secondaryEntityManagerFactory",
+ transactionManagerRef = "secondaryTransactionManager", basePackages = {"com.iemr.common.identity.domain.iemr"})
+public class SecondaryDBConfig {
+
+ Logger logger = LoggerFactory.getLogger(this.getClass().getName());
+
+ @Bean(name = "secondaryDataSource")
+ @ConfigurationProperties(prefix = "secondary.datasource")
+ public DataSource dataSource() {
+ PoolConfiguration p = new PoolProperties();
+ p.setMaxActive(30);
+ p.setMaxIdle(15);
+ p.setMinIdle(5);
+ p.setInitialSize(5);
+ p.setMaxWait(10000);
+ p.setMinEvictableIdleTimeMillis(15000);
+ p.setRemoveAbandoned(true);
+ p.setLogAbandoned(true);
+ p.setRemoveAbandonedTimeout(600);
+ p.setTestOnBorrow(true);
+ p.setValidationQuery("SELECT 1");
+ org.apache.tomcat.jdbc.pool.DataSource datasource = new org.apache.tomcat.jdbc.pool.DataSource();
+ datasource.setPoolProperties(p);
+
+ datasource.setUsername(ConfigProperties.getPropertyByName("secondary.datasource.username"));
+ datasource.setPassword(ConfigProperties.getPropertyByName("secondary.datasource.password"));
+
+
+ return datasource;
+ }
+
+ @Bean(name = "secondaryEntityManagerFactory")
+ public LocalContainerEntityManagerFactoryBean barEntityManagerFactory(EntityManagerFactoryBuilder builder,
+ @Qualifier("secondaryDataSource") DataSource dataSource) {
+ return builder.dataSource(dataSource).packages("com.iemr.common.identity.domain.iemr").persistenceUnit("db_iemr").build();
+ }
+
+ @Bean(name = "secondaryTransactionManager")
+ public PlatformTransactionManager barTransactionManager(
+ @Qualifier("secondaryEntityManagerFactory") EntityManagerFactory secondaryEntityManagerFactory) {
+ return new JpaTransactionManager(secondaryEntityManagerFactory);
+ }
+}
diff --git a/src/main/java/com/iemr/common/identity/controller/elasticsearch/ElasticsearchSyncController.java b/src/main/java/com/iemr/common/identity/controller/elasticsearch/ElasticsearchSyncController.java
index 7d8f1877..ae8d30bb 100644
--- a/src/main/java/com/iemr/common/identity/controller/elasticsearch/ElasticsearchSyncController.java
+++ b/src/main/java/com/iemr/common/identity/controller/elasticsearch/ElasticsearchSyncController.java
@@ -42,7 +42,7 @@
import co.elastic.clients.elasticsearch.ElasticsearchClient;
-import com.iemr.common.identity.domain.MBeneficiarymapping;
+import com.iemr.common.identity.domain.identity.MBeneficiarymapping;
import com.iemr.common.identity.service.elasticsearch.ElasticsearchIndexingService;
/**
diff --git a/src/main/java/com/iemr/common/identity/domain/Address.java b/src/main/java/com/iemr/common/identity/domain/identity/Address.java
similarity index 97%
rename from src/main/java/com/iemr/common/identity/domain/Address.java
rename to src/main/java/com/iemr/common/identity/domain/identity/Address.java
index c37b4507..9219903d 100644
--- a/src/main/java/com/iemr/common/identity/domain/Address.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/Address.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import lombok.Data;
diff --git a/src/main/java/com/iemr/common/identity/domain/Contact.java b/src/main/java/com/iemr/common/identity/domain/identity/Contact.java
similarity index 96%
rename from src/main/java/com/iemr/common/identity/domain/Contact.java
rename to src/main/java/com/iemr/common/identity/domain/identity/Contact.java
index 79010bcf..04b96cd9 100644
--- a/src/main/java/com/iemr/common/identity/domain/Contact.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/Contact.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import lombok.Data;
diff --git a/src/main/java/com/iemr/common/identity/domain/Identity.java b/src/main/java/com/iemr/common/identity/domain/identity/Identity.java
similarity index 96%
rename from src/main/java/com/iemr/common/identity/domain/Identity.java
rename to src/main/java/com/iemr/common/identity/domain/identity/Identity.java
index 31c6e66e..564bc614 100644
--- a/src/main/java/com/iemr/common/identity/domain/Identity.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/Identity.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.math.BigInteger;
import java.sql.Timestamp;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryAccount.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryAccount.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiaryAccount.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryAccount.java
index 312a57ea..17dfa40f 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryAccount.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryAccount.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.math.BigInteger;
import java.sql.Timestamp;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryImage.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryImage.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiaryImage.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryImage.java
index 9e266910..6d284255 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryImage.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryImage.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.math.BigInteger;
import java.sql.Timestamp;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryaddress.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryaddress.java
similarity index 99%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiaryaddress.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryaddress.java
index 0e2ab415..48b3ca6b 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryaddress.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryaddress.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.io.Serializable;
import java.math.BigInteger;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryconsent.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryconsent.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiaryconsent.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryconsent.java
index f13cfa08..c46c5b1f 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryconsent.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryconsent.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.io.Serializable;
import java.math.BigInteger;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiarycontact.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiarycontact.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiarycontact.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiarycontact.java
index cea4538c..d813871a 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiarycontact.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiarycontact.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.io.Serializable;
import java.math.BigInteger;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiarydetail.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiarydetail.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiarydetail.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiarydetail.java
index 36559ef5..ee36eaf5 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiarydetail.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiarydetail.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.io.Serializable;
import java.math.BigInteger;
@@ -27,8 +27,6 @@
import java.util.Calendar;
import java.util.Date;
-import org.json.JSONObject;
-
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
@@ -39,8 +37,6 @@
import jakarta.persistence.Table;
import jakarta.persistence.Transient;
-import com.google.gson.JsonElement;
-import com.google.gson.JsonObject;
import com.google.gson.annotations.Expose;
import lombok.AllArgsConstructor;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryfamilymapping.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryfamilymapping.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiaryfamilymapping.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryfamilymapping.java
index 39955b52..0782063e 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryfamilymapping.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryfamilymapping.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.io.Serializable;
import java.math.BigInteger;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryidentity.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryidentity.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiaryidentity.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryidentity.java
index 157345d8..9a92fae7 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryidentity.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryidentity.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.io.Serializable;
import java.math.BigInteger;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiarymapping.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiarymapping.java
similarity index 99%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiarymapping.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiarymapping.java
index 4397f21c..a13d2a95 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiarymapping.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiarymapping.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.io.Serializable;
import java.math.BigInteger;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryregidmapping.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryregidmapping.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiaryregidmapping.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryregidmapping.java
index ec4cd56e..cf2be6c9 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryregidmapping.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryregidmapping.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.io.Serializable;
import java.math.BigInteger;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryservicemapping.java b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryservicemapping.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/MBeneficiaryservicemapping.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryservicemapping.java
index 697af89d..daabb3c0 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBeneficiaryservicemapping.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBeneficiaryservicemapping.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.io.Serializable;
import java.math.BigInteger;
diff --git a/src/main/java/com/iemr/common/identity/domain/MBensecurestack.java b/src/main/java/com/iemr/common/identity/domain/identity/MBensecurestack.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/MBensecurestack.java
rename to src/main/java/com/iemr/common/identity/domain/identity/MBensecurestack.java
index 6578cbd6..d3830634 100644
--- a/src/main/java/com/iemr/common/identity/domain/MBensecurestack.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/MBensecurestack.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.sql.Timestamp;
diff --git a/src/main/java/com/iemr/common/identity/domain/Phone.java b/src/main/java/com/iemr/common/identity/domain/identity/Phone.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/Phone.java
rename to src/main/java/com/iemr/common/identity/domain/identity/Phone.java
index 4e6f835b..0d8a7c51 100644
--- a/src/main/java/com/iemr/common/identity/domain/Phone.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/Phone.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.util.ArrayList;
import java.util.List;
diff --git a/src/main/java/com/iemr/common/identity/domain/TBendataaccess.java b/src/main/java/com/iemr/common/identity/domain/identity/TBendataaccess.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/TBendataaccess.java
rename to src/main/java/com/iemr/common/identity/domain/identity/TBendataaccess.java
index 707960cd..654d4866 100644
--- a/src/main/java/com/iemr/common/identity/domain/TBendataaccess.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/TBendataaccess.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.io.Serializable;
import java.math.BigInteger;
diff --git a/src/main/java/com/iemr/common/identity/domain/VBenAdvanceSearch.java b/src/main/java/com/iemr/common/identity/domain/identity/VBenAdvanceSearch.java
similarity index 99%
rename from src/main/java/com/iemr/common/identity/domain/VBenAdvanceSearch.java
rename to src/main/java/com/iemr/common/identity/domain/identity/VBenAdvanceSearch.java
index 99ec57be..75e43e05 100644
--- a/src/main/java/com/iemr/common/identity/domain/VBenAdvanceSearch.java
+++ b/src/main/java/com/iemr/common/identity/domain/identity/VBenAdvanceSearch.java
@@ -19,7 +19,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.identity;
import java.math.BigInteger;
import java.sql.Timestamp;
diff --git a/src/main/java/com/iemr/common/identity/domain/User.java b/src/main/java/com/iemr/common/identity/domain/iemr/User.java
similarity index 98%
rename from src/main/java/com/iemr/common/identity/domain/User.java
rename to src/main/java/com/iemr/common/identity/domain/iemr/User.java
index 38fca023..969abdce 100644
--- a/src/main/java/com/iemr/common/identity/domain/User.java
+++ b/src/main/java/com/iemr/common/identity/domain/iemr/User.java
@@ -1,4 +1,4 @@
-package com.iemr.common.identity.domain;
+package com.iemr.common.identity.domain.iemr;
import java.sql.Timestamp;
import java.time.LocalDate;
diff --git a/src/main/java/com/iemr/common/identity/dto/BeneficiariesDTO.java b/src/main/java/com/iemr/common/identity/dto/BeneficiariesDTO.java
index d48cd9b5..51fa640d 100644
--- a/src/main/java/com/iemr/common/identity/dto/BeneficiariesDTO.java
+++ b/src/main/java/com/iemr/common/identity/dto/BeneficiariesDTO.java
@@ -25,16 +25,11 @@
import java.math.BigInteger;
import java.sql.Timestamp;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
-import com.google.gson.JsonElement;
-import com.google.gson.JsonObject;
-import com.google.gson.JsonParser;
-import com.iemr.common.identity.domain.Address;
-import com.iemr.common.identity.domain.Phone;
+import com.iemr.common.identity.domain.identity.Address;
+import com.iemr.common.identity.domain.identity.Phone;
import lombok.Data;
diff --git a/src/main/java/com/iemr/common/identity/dto/IdentityDTO.java b/src/main/java/com/iemr/common/identity/dto/IdentityDTO.java
index 322e57fc..7a183613 100644
--- a/src/main/java/com/iemr/common/identity/dto/IdentityDTO.java
+++ b/src/main/java/com/iemr/common/identity/dto/IdentityDTO.java
@@ -24,14 +24,10 @@
import java.sql.Timestamp;
import java.util.List;
-import org.json.JSONObject;
-
-import com.google.gson.JsonElement;
-import com.google.gson.JsonObject;
import com.google.gson.annotations.Expose;
-import com.iemr.common.identity.domain.Address;
-import com.iemr.common.identity.domain.Contact;
-import com.iemr.common.identity.domain.Identity;
+import com.iemr.common.identity.domain.identity.Address;
+import com.iemr.common.identity.domain.identity.Contact;
+import com.iemr.common.identity.domain.identity.Identity;
import lombok.Data;
diff --git a/src/main/java/com/iemr/common/identity/dto/IdentityEditDTO.java b/src/main/java/com/iemr/common/identity/dto/IdentityEditDTO.java
index 6d223a78..bcea9dfc 100644
--- a/src/main/java/com/iemr/common/identity/dto/IdentityEditDTO.java
+++ b/src/main/java/com/iemr/common/identity/dto/IdentityEditDTO.java
@@ -25,9 +25,9 @@
import java.sql.Timestamp;
import java.util.List;
-import com.iemr.common.identity.domain.Address;
-import com.iemr.common.identity.domain.Contact;
-import com.iemr.common.identity.domain.Identity;
+import com.iemr.common.identity.domain.identity.Address;
+import com.iemr.common.identity.domain.identity.Contact;
+import com.iemr.common.identity.domain.identity.Identity;
import lombok.Data;
diff --git a/src/main/java/com/iemr/common/identity/dto/IdentityFilterDTO.java b/src/main/java/com/iemr/common/identity/dto/IdentityFilterDTO.java
index f34183ad..5bb640fb 100644
--- a/src/main/java/com/iemr/common/identity/dto/IdentityFilterDTO.java
+++ b/src/main/java/com/iemr/common/identity/dto/IdentityFilterDTO.java
@@ -24,7 +24,7 @@
import java.math.BigInteger;
import java.util.Optional;
-import com.iemr.common.identity.domain.Address;
+import com.iemr.common.identity.domain.identity.Address;
public class IdentityFilterDTO {
private Optional beneficiaryId;
diff --git a/src/main/java/com/iemr/common/identity/dto/IdentitySearchDTO.java b/src/main/java/com/iemr/common/identity/dto/IdentitySearchDTO.java
index db4bf011..753128a8 100644
--- a/src/main/java/com/iemr/common/identity/dto/IdentitySearchDTO.java
+++ b/src/main/java/com/iemr/common/identity/dto/IdentitySearchDTO.java
@@ -25,7 +25,7 @@
import java.sql.Timestamp;
import com.fasterxml.jackson.annotation.JsonFormat;
-import com.iemr.common.identity.domain.Address;
+import com.iemr.common.identity.domain.identity.Address;
import lombok.Data;
diff --git a/src/main/java/com/iemr/common/identity/mapper/BenIdImportMapper.java b/src/main/java/com/iemr/common/identity/mapper/BenIdImportMapper.java
index 74715704..4d576ded 100644
--- a/src/main/java/com/iemr/common/identity/mapper/BenIdImportMapper.java
+++ b/src/main/java/com/iemr/common/identity/mapper/BenIdImportMapper.java
@@ -28,7 +28,7 @@
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;
-import com.iemr.common.identity.domain.MBeneficiaryregidmapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryregidmapping;
import com.iemr.common.identity.dto.BenIdImportDTO;
@Mapper(componentModel = "spring")
diff --git a/src/main/java/com/iemr/common/identity/mapper/IdentityEditMapper.java b/src/main/java/com/iemr/common/identity/mapper/IdentityEditMapper.java
index 64dd2995..decbf353 100644
--- a/src/main/java/com/iemr/common/identity/mapper/IdentityEditMapper.java
+++ b/src/main/java/com/iemr/common/identity/mapper/IdentityEditMapper.java
@@ -30,17 +30,17 @@
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;
-import com.iemr.common.identity.domain.Identity;
-import com.iemr.common.identity.domain.MBeneficiaryAccount;
-import com.iemr.common.identity.domain.MBeneficiaryImage;
-import com.iemr.common.identity.domain.MBeneficiaryaddress;
-import com.iemr.common.identity.domain.MBeneficiaryconsent;
-import com.iemr.common.identity.domain.MBeneficiarycontact;
-import com.iemr.common.identity.domain.MBeneficiarydetail;
-import com.iemr.common.identity.domain.MBeneficiaryfamilymapping;
-import com.iemr.common.identity.domain.MBeneficiaryidentity;
-import com.iemr.common.identity.domain.MBeneficiarymapping;
-import com.iemr.common.identity.domain.MBeneficiaryservicemapping;
+import com.iemr.common.identity.domain.identity.Identity;
+import com.iemr.common.identity.domain.identity.MBeneficiaryAccount;
+import com.iemr.common.identity.domain.identity.MBeneficiaryImage;
+import com.iemr.common.identity.domain.identity.MBeneficiaryaddress;
+import com.iemr.common.identity.domain.identity.MBeneficiaryconsent;
+import com.iemr.common.identity.domain.identity.MBeneficiarycontact;
+import com.iemr.common.identity.domain.identity.MBeneficiarydetail;
+import com.iemr.common.identity.domain.identity.MBeneficiaryfamilymapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryidentity;
+import com.iemr.common.identity.domain.identity.MBeneficiarymapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryservicemapping;
import com.iemr.common.identity.dto.BenDetailDTO;
import com.iemr.common.identity.dto.BenFamilyDTO;
import com.iemr.common.identity.dto.BenIdentityDTO;
diff --git a/src/main/java/com/iemr/common/identity/mapper/IdentityMapper.java b/src/main/java/com/iemr/common/identity/mapper/IdentityMapper.java
index bc3ad686..1656496d 100644
--- a/src/main/java/com/iemr/common/identity/mapper/IdentityMapper.java
+++ b/src/main/java/com/iemr/common/identity/mapper/IdentityMapper.java
@@ -22,31 +22,25 @@
package com.iemr.common.identity.mapper;
import java.sql.Timestamp;
-import java.util.Arrays;
import java.util.Collection;
import java.util.List;
-import java.util.stream.Collectors;
import org.mapstruct.InheritInverseConfiguration;
import org.mapstruct.IterableMapping;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
-import org.mapstruct.Mappings;
-import org.mapstruct.Named;
import org.mapstruct.factory.Mappers;
-import com.iemr.common.identity.domain.Identity;
-import com.iemr.common.identity.domain.MBeneficiaryAccount;
-import com.iemr.common.identity.domain.MBeneficiaryImage;
-import com.iemr.common.identity.domain.MBeneficiaryaddress;
-import com.iemr.common.identity.domain.MBeneficiaryconsent;
-import com.iemr.common.identity.domain.MBeneficiarycontact;
-import com.iemr.common.identity.domain.MBeneficiarydetail;
-import com.iemr.common.identity.domain.MBeneficiaryfamilymapping;
-import com.iemr.common.identity.domain.MBeneficiaryidentity;
-import com.iemr.common.identity.domain.MBeneficiarymapping;
-import com.iemr.common.identity.domain.MBeneficiaryservicemapping;
-import com.iemr.common.identity.domain.Phone;
+import com.iemr.common.identity.domain.identity.Identity;
+import com.iemr.common.identity.domain.identity.MBeneficiaryAccount;
+import com.iemr.common.identity.domain.identity.MBeneficiaryImage;
+import com.iemr.common.identity.domain.identity.MBeneficiaryconsent;
+import com.iemr.common.identity.domain.identity.MBeneficiarydetail;
+import com.iemr.common.identity.domain.identity.MBeneficiaryfamilymapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryidentity;
+import com.iemr.common.identity.domain.identity.MBeneficiarymapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryservicemapping;
+import com.iemr.common.identity.domain.identity.Phone;
import com.iemr.common.identity.dto.BenDetailDTO;
import com.iemr.common.identity.dto.BenFamilyDTO;
import com.iemr.common.identity.dto.BenIdentityDTO;
diff --git a/src/main/java/com/iemr/common/identity/mapper/IdentityPartialMapper.java b/src/main/java/com/iemr/common/identity/mapper/IdentityPartialMapper.java
index 5a1a2d64..f6710978 100644
--- a/src/main/java/com/iemr/common/identity/mapper/IdentityPartialMapper.java
+++ b/src/main/java/com/iemr/common/identity/mapper/IdentityPartialMapper.java
@@ -25,7 +25,7 @@
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;
-import com.iemr.common.identity.domain.MBeneficiarymapping;
+import com.iemr.common.identity.domain.identity.MBeneficiarymapping;
import com.iemr.common.identity.dto.BeneficiariesPartialDTO;
import com.iemr.common.identity.dto.BeneficiaryCreateResp;
diff --git a/src/main/java/com/iemr/common/identity/mapper/IdentitySearchMapper.java b/src/main/java/com/iemr/common/identity/mapper/IdentitySearchMapper.java
index 2d31e77b..1955971a 100644
--- a/src/main/java/com/iemr/common/identity/mapper/IdentitySearchMapper.java
+++ b/src/main/java/com/iemr/common/identity/mapper/IdentitySearchMapper.java
@@ -25,9 +25,9 @@
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;
-import com.iemr.common.identity.domain.MBeneficiaryaddress;
-import com.iemr.common.identity.domain.MBeneficiarycontact;
-import com.iemr.common.identity.domain.MBeneficiarydetail;
+import com.iemr.common.identity.domain.identity.MBeneficiaryaddress;
+import com.iemr.common.identity.domain.identity.MBeneficiarycontact;
+import com.iemr.common.identity.domain.identity.MBeneficiarydetail;
import com.iemr.common.identity.dto.IdentitySearchDTO;
@Mapper(componentModel = "spring")
diff --git a/src/main/java/com/iemr/common/identity/repo/BenAddressRepo.java b/src/main/java/com/iemr/common/identity/repo/BenAddressRepo.java
index 5d79f8ae..bdb77597 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenAddressRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenAddressRepo.java
@@ -32,7 +32,7 @@
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
-import com.iemr.common.identity.domain.MBeneficiaryaddress;
+import com.iemr.common.identity.domain.identity.MBeneficiaryaddress;
@Repository
public interface BenAddressRepo extends CrudRepository {
diff --git a/src/main/java/com/iemr/common/identity/repo/BenConsentRepo.java b/src/main/java/com/iemr/common/identity/repo/BenConsentRepo.java
index 9abb4cb8..77b5b856 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenConsentRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenConsentRepo.java
@@ -32,7 +32,7 @@
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
-import com.iemr.common.identity.domain.MBeneficiaryconsent;
+import com.iemr.common.identity.domain.identity.MBeneficiaryconsent;
@Repository
public interface BenConsentRepo extends CrudRepository {
diff --git a/src/main/java/com/iemr/common/identity/repo/BenContactRepo.java b/src/main/java/com/iemr/common/identity/repo/BenContactRepo.java
index fdbda216..5427ca1f 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenContactRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenContactRepo.java
@@ -32,7 +32,7 @@
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
-import com.iemr.common.identity.domain.MBeneficiarycontact;
+import com.iemr.common.identity.domain.identity.MBeneficiarycontact;
@Repository
public interface BenContactRepo extends CrudRepository {
diff --git a/src/main/java/com/iemr/common/identity/repo/BenDataAccessRepo.java b/src/main/java/com/iemr/common/identity/repo/BenDataAccessRepo.java
index 24d20829..82894190 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenDataAccessRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenDataAccessRepo.java
@@ -28,7 +28,7 @@
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;
-import com.iemr.common.identity.domain.TBendataaccess;
+import com.iemr.common.identity.domain.identity.TBendataaccess;
@Repository
public interface BenDataAccessRepo extends CrudRepository
diff --git a/src/main/java/com/iemr/common/identity/repo/BenDetailRepo.java b/src/main/java/com/iemr/common/identity/repo/BenDetailRepo.java
index 4e8bcc01..c044523b 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenDetailRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenDetailRepo.java
@@ -32,7 +32,7 @@
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
-import com.iemr.common.identity.domain.MBeneficiarydetail;
+import com.iemr.common.identity.domain.identity.MBeneficiarydetail;
import jakarta.transaction.Transactional;
diff --git a/src/main/java/com/iemr/common/identity/repo/BenDetailRepoCustom.java b/src/main/java/com/iemr/common/identity/repo/BenDetailRepoCustom.java
index 9395ba13..c7734e6e 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenDetailRepoCustom.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenDetailRepoCustom.java
@@ -25,7 +25,7 @@
import org.springframework.stereotype.Repository;
-import com.iemr.common.identity.domain.MBeneficiarydetail;
+import com.iemr.common.identity.domain.identity.MBeneficiarydetail;
import com.iemr.common.identity.dto.IdentitySearchDTO;
@Repository
diff --git a/src/main/java/com/iemr/common/identity/repo/BenDetailRepoImpl.java b/src/main/java/com/iemr/common/identity/repo/BenDetailRepoImpl.java
index 1510d70d..c4dc473a 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenDetailRepoImpl.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenDetailRepoImpl.java
@@ -34,7 +34,7 @@
import org.springframework.beans.factory.annotation.Autowired;
-import com.iemr.common.identity.domain.MBeneficiarydetail;
+import com.iemr.common.identity.domain.identity.MBeneficiarydetail;
import com.iemr.common.identity.dto.IdentitySearchDTO;
public class BenDetailRepoImpl implements BenDetailRepoCustom {
diff --git a/src/main/java/com/iemr/common/identity/repo/BenFamilyMappingRepo.java b/src/main/java/com/iemr/common/identity/repo/BenFamilyMappingRepo.java
index 3310adab..67b64ca7 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenFamilyMappingRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenFamilyMappingRepo.java
@@ -32,7 +32,7 @@
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
-import com.iemr.common.identity.domain.MBeneficiaryfamilymapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryfamilymapping;
@Repository
public interface BenFamilyMappingRepo extends CrudRepository {
diff --git a/src/main/java/com/iemr/common/identity/repo/BenIdentityRepo.java b/src/main/java/com/iemr/common/identity/repo/BenIdentityRepo.java
index f194f027..223db0b1 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenIdentityRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenIdentityRepo.java
@@ -32,7 +32,7 @@
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
-import com.iemr.common.identity.domain.MBeneficiaryidentity;
+import com.iemr.common.identity.domain.identity.MBeneficiaryidentity;
@Repository
public interface BenIdentityRepo extends CrudRepository {
diff --git a/src/main/java/com/iemr/common/identity/repo/BenMappingRepo.java b/src/main/java/com/iemr/common/identity/repo/BenMappingRepo.java
index 9c20f492..fc9a590c 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenMappingRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenMappingRepo.java
@@ -32,11 +32,7 @@
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
-import com.iemr.common.identity.domain.MBeneficiarymapping;
-import com.iemr.common.identity.domain.MBeneficiaryservicemapping;
-import com.iemr.common.identity.domain.VBenAdvanceSearch;
-import com.iemr.common.identity.dto.IdentityDTO;
-import com.iemr.common.identity.dto.IdentitySearchDTO;
+import com.iemr.common.identity.domain.identity.MBeneficiarymapping;
@Repository
public interface BenMappingRepo extends CrudRepository, BenMappingRepoCustom {
diff --git a/src/main/java/com/iemr/common/identity/repo/BenMappingRepoCustom.java b/src/main/java/com/iemr/common/identity/repo/BenMappingRepoCustom.java
index 43f92050..357d726b 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenMappingRepoCustom.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenMappingRepoCustom.java
@@ -23,8 +23,8 @@
import java.util.List;
-import com.iemr.common.identity.domain.MBeneficiarymapping;
-import com.iemr.common.identity.domain.VBenAdvanceSearch;
+import com.iemr.common.identity.domain.identity.MBeneficiarymapping;
+import com.iemr.common.identity.domain.identity.VBenAdvanceSearch;
import com.iemr.common.identity.dto.IdentityDTO;
import com.iemr.common.identity.dto.IdentitySearchDTO;
diff --git a/src/main/java/com/iemr/common/identity/repo/BenMappingRepoImpl.java b/src/main/java/com/iemr/common/identity/repo/BenMappingRepoImpl.java
index 45e2b5aa..9b8f66a4 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenMappingRepoImpl.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenMappingRepoImpl.java
@@ -39,12 +39,12 @@
import org.springframework.beans.factory.annotation.Autowired;
-import com.iemr.common.identity.domain.Address;
-import com.iemr.common.identity.domain.MBeneficiaryaddress;
-import com.iemr.common.identity.domain.MBeneficiarycontact;
-import com.iemr.common.identity.domain.MBeneficiarydetail;
-import com.iemr.common.identity.domain.MBeneficiarymapping;
-import com.iemr.common.identity.domain.VBenAdvanceSearch;
+import com.iemr.common.identity.domain.identity.Address;
+import com.iemr.common.identity.domain.identity.MBeneficiaryaddress;
+import com.iemr.common.identity.domain.identity.MBeneficiarycontact;
+import com.iemr.common.identity.domain.identity.MBeneficiarydetail;
+import com.iemr.common.identity.domain.identity.MBeneficiarymapping;
+import com.iemr.common.identity.domain.identity.VBenAdvanceSearch;
import com.iemr.common.identity.dto.IdentityDTO;
import com.iemr.common.identity.dto.IdentitySearchDTO;
import com.iemr.common.identity.mapper.IdentitySearchMapper;
diff --git a/src/main/java/com/iemr/common/identity/repo/BenRegIdMappingRepo.java b/src/main/java/com/iemr/common/identity/repo/BenRegIdMappingRepo.java
index 3875211b..67b0111a 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenRegIdMappingRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenRegIdMappingRepo.java
@@ -31,7 +31,7 @@
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
-import com.iemr.common.identity.domain.MBeneficiaryregidmapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryregidmapping;
import jakarta.transaction.Transactional;
diff --git a/src/main/java/com/iemr/common/identity/repo/BenSecureStackRepo.java b/src/main/java/com/iemr/common/identity/repo/BenSecureStackRepo.java
index 22c581be..8451616b 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenSecureStackRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenSecureStackRepo.java
@@ -23,7 +23,7 @@
import org.springframework.stereotype.Repository;
-import com.iemr.common.identity.domain.MBensecurestack;
+import com.iemr.common.identity.domain.identity.MBensecurestack;
@Repository
public interface BenSecureStackRepo {
diff --git a/src/main/java/com/iemr/common/identity/repo/BenServiceMappingRepo.java b/src/main/java/com/iemr/common/identity/repo/BenServiceMappingRepo.java
index 49ed72d1..9a1a8d1a 100644
--- a/src/main/java/com/iemr/common/identity/repo/BenServiceMappingRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/BenServiceMappingRepo.java
@@ -32,7 +32,7 @@
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
-import com.iemr.common.identity.domain.MBeneficiaryservicemapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryservicemapping;
@Repository
public interface BenServiceMappingRepo extends CrudRepository {
diff --git a/src/main/java/com/iemr/common/identity/repo/MBeneficiaryAccountRepo.java b/src/main/java/com/iemr/common/identity/repo/MBeneficiaryAccountRepo.java
index 2bf561b3..e31e9549 100644
--- a/src/main/java/com/iemr/common/identity/repo/MBeneficiaryAccountRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/MBeneficiaryAccountRepo.java
@@ -29,7 +29,7 @@
import org.springframework.data.repository.query.Param;
import org.springframework.transaction.annotation.Transactional;
-import com.iemr.common.identity.domain.MBeneficiaryAccount;
+import com.iemr.common.identity.domain.identity.MBeneficiaryAccount;
public interface MBeneficiaryAccountRepo extends CrudRepository {
@Transactional
diff --git a/src/main/java/com/iemr/common/identity/repo/MBeneficiaryImageRepo.java b/src/main/java/com/iemr/common/identity/repo/MBeneficiaryImageRepo.java
index 8cd40c2f..571b920a 100644
--- a/src/main/java/com/iemr/common/identity/repo/MBeneficiaryImageRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/MBeneficiaryImageRepo.java
@@ -29,7 +29,7 @@
import org.springframework.data.repository.query.Param;
import org.springframework.transaction.annotation.Transactional;
-import com.iemr.common.identity.domain.MBeneficiaryImage;
+import com.iemr.common.identity.domain.identity.MBeneficiaryImage;
public interface MBeneficiaryImageRepo extends CrudRepository {
@Query("select t from MBeneficiaryImage t where t.vanSerialNo = :benImageID AND t.vanID = :vanID ")
diff --git a/src/main/java/com/iemr/common/identity/repo/V_BenAdvanceSearchRepo.java b/src/main/java/com/iemr/common/identity/repo/V_BenAdvanceSearchRepo.java
index a7fd5f27..727ec8fc 100644
--- a/src/main/java/com/iemr/common/identity/repo/V_BenAdvanceSearchRepo.java
+++ b/src/main/java/com/iemr/common/identity/repo/V_BenAdvanceSearchRepo.java
@@ -29,7 +29,7 @@
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
-import com.iemr.common.identity.domain.VBenAdvanceSearch;
+import com.iemr.common.identity.domain.identity.VBenAdvanceSearch;
@Repository
public interface V_BenAdvanceSearchRepo extends CrudRepository {
diff --git a/src/main/java/com/iemr/common/identity/repo/iemr/userRepo.java b/src/main/java/com/iemr/common/identity/repo/iemr/userRepo.java
new file mode 100644
index 00000000..e1e177a1
--- /dev/null
+++ b/src/main/java/com/iemr/common/identity/repo/iemr/userRepo.java
@@ -0,0 +1,31 @@
+/*
+* AMRIT – Accessible Medical Records via Integrated Technology
+* Integrated EHR (Electronic Health Records) Solution
+*
+* Copyright (C) "Piramal Swasthya Management and Research Institute"
+*
+* This file is part of AMRIT.
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see https://www.gnu.org/licenses/.
+*/
+package com.iemr.common.identity.repo.iemr;
+
+import com.iemr.common.identity.domain.iemr.User;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface userRepo extends JpaRepository{
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/iemr/common/identity/service/IdentityService.java b/src/main/java/com/iemr/common/identity/service/IdentityService.java
index 08b9fbbe..207954e1 100644
--- a/src/main/java/com/iemr/common/identity/service/IdentityService.java
+++ b/src/main/java/com/iemr/common/identity/service/IdentityService.java
@@ -50,19 +50,19 @@
import com.google.gson.JsonParser;
import com.google.gson.LongSerializationPolicy;
import com.iemr.common.identity.data.rmnch.RMNCHBeneficiaryDetailsRmnch;
-import com.iemr.common.identity.domain.Address;
-import com.iemr.common.identity.domain.MBeneficiaryAccount;
-import com.iemr.common.identity.domain.MBeneficiaryImage;
-import com.iemr.common.identity.domain.MBeneficiaryaddress;
-import com.iemr.common.identity.domain.MBeneficiaryconsent;
-import com.iemr.common.identity.domain.MBeneficiarycontact;
-import com.iemr.common.identity.domain.MBeneficiarydetail;
-import com.iemr.common.identity.domain.MBeneficiaryfamilymapping;
-import com.iemr.common.identity.domain.MBeneficiaryidentity;
-import com.iemr.common.identity.domain.MBeneficiarymapping;
-import com.iemr.common.identity.domain.MBeneficiaryregidmapping;
-import com.iemr.common.identity.domain.MBeneficiaryservicemapping;
-import com.iemr.common.identity.domain.VBenAdvanceSearch;
+import com.iemr.common.identity.domain.identity.Address;
+import com.iemr.common.identity.domain.identity.MBeneficiaryAccount;
+import com.iemr.common.identity.domain.identity.MBeneficiaryImage;
+import com.iemr.common.identity.domain.identity.MBeneficiaryaddress;
+import com.iemr.common.identity.domain.identity.MBeneficiaryconsent;
+import com.iemr.common.identity.domain.identity.MBeneficiarycontact;
+import com.iemr.common.identity.domain.identity.MBeneficiarydetail;
+import com.iemr.common.identity.domain.identity.MBeneficiaryfamilymapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryidentity;
+import com.iemr.common.identity.domain.identity.MBeneficiarymapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryregidmapping;
+import com.iemr.common.identity.domain.identity.MBeneficiaryservicemapping;
+import com.iemr.common.identity.domain.identity.VBenAdvanceSearch;
import com.iemr.common.identity.dto.AbhaAddressDTO;
import com.iemr.common.identity.dto.BenIdImportDTO;
import com.iemr.common.identity.dto.BeneficiariesDTO;
@@ -95,7 +95,6 @@
import com.iemr.common.identity.service.elasticsearch.ElasticsearchService;
import com.iemr.common.identity.utils.mapper.OutputMapper;
import com.iemr.common.identity.utils.response.OutputResponse;
-import org.springframework.scheduling.annotation.Async;
import org.springframework.beans.factory.annotation.Value;
import com.iemr.common.identity.service.elasticsearch.BeneficiaryElasticsearchIndexUpdater;
diff --git a/src/main/java/com/iemr/common/identity/service/familyTagging/FamilyTagServiceImpl.java b/src/main/java/com/iemr/common/identity/service/familyTagging/FamilyTagServiceImpl.java
index 2a60571b..d47d9933 100644
--- a/src/main/java/com/iemr/common/identity/service/familyTagging/FamilyTagServiceImpl.java
+++ b/src/main/java/com/iemr/common/identity/service/familyTagging/FamilyTagServiceImpl.java
@@ -37,8 +37,8 @@
import com.google.gson.JsonParser;
import com.iemr.common.identity.data.familyTagging.BenFamilyMapping;
import com.iemr.common.identity.data.familyTagging.FamilyMembers;
-import com.iemr.common.identity.domain.MBeneficiarydetail;
-import com.iemr.common.identity.domain.MBeneficiarymapping;
+import com.iemr.common.identity.domain.identity.MBeneficiarydetail;
+import com.iemr.common.identity.domain.identity.MBeneficiarymapping;
import com.iemr.common.identity.exception.IEMRException;
import com.iemr.common.identity.repo.BenDetailRepo;
import com.iemr.common.identity.repo.BenMappingRepo;
diff --git a/src/main/java/com/iemr/common/identity/utils/JwtAuthenticationUtil.java b/src/main/java/com/iemr/common/identity/utils/JwtAuthenticationUtil.java
index af2539ff..95f797a6 100644
--- a/src/main/java/com/iemr/common/identity/utils/JwtAuthenticationUtil.java
+++ b/src/main/java/com/iemr/common/identity/utils/JwtAuthenticationUtil.java
@@ -14,7 +14,7 @@
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
-import com.iemr.common.identity.domain.User;
+import com.iemr.common.identity.domain.iemr.User;
import com.iemr.common.identity.exception.IEMRException;
import io.jsonwebtoken.Claims;
diff --git a/src/main/java/com/iemr/common/identity/utils/redis/RedisConfig.java b/src/main/java/com/iemr/common/identity/utils/redis/RedisConfig.java
index 49969b89..822b4872 100644
--- a/src/main/java/com/iemr/common/identity/utils/redis/RedisConfig.java
+++ b/src/main/java/com/iemr/common/identity/utils/redis/RedisConfig.java
@@ -5,13 +5,12 @@
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
-import org.springframework.data.redis.serializer.StringRedisSerializer;
import org.springframework.session.data.redis.config.ConfigureRedisAction;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
-import com.iemr.common.identity.domain.User;
+import com.iemr.common.identity.domain.iemr.User;
@Configuration
public class RedisConfig {