Commit 5718d05f authored by bsatyanarayana-nisum-com's avatar bsatyanarayana-nisum-com Committed by rbonthala-nisum-com

MT-97_4 : SNS :: Update_RoleTable_While_Account_CRUD_operations (#80)

parent ca4be969
...@@ -44,12 +44,13 @@ public class AccountServiceImpl implements AccountService { ...@@ -44,12 +44,13 @@ public class AccountServiceImpl implements AccountService {
String roleId = roleInfoService.getRole(MyTimeUtils.ACCOUNT); String roleId = roleInfoService.getRole(MyTimeUtils.ACCOUNT);
List<Account> accounts = validateAccounts(account.getAccountName());
if( action != null && action.equals(MyTimeUtils.STRING_N)) {//N means adding New Account //List<Account> accounts = accountRepo.findAll();
/* if( action != null && action.equals(MyTimeUtils.STRING_N)) {//N means adding New Account
if( !accounts.isEmpty() && accounts.size() > 0){ if( !accounts.isEmpty() && accounts.size() > 0){
response ="Account already exist"; response ="Account already exist";
}else { }else {
List<String> accDms = account.getDeliveryManagers(); List<String> accDms = account.getDeliveryManagers();
account.setAccountId(generateAccountId()); account.setAccountId(generateAccountId());
...@@ -69,52 +70,162 @@ public class AccountServiceImpl implements AccountService { ...@@ -69,52 +70,162 @@ public class AccountServiceImpl implements AccountService {
}else if(action != null && action.equals("U")){//U means updating existing Account }else if(action != null && action.equals("U")){//U means updating existing Account
if( !accounts.isEmpty() && accounts.size() > 0){ if( !accounts.isEmpty() && accounts.size() > 0){
response ="Account already exist with updated name"; for(Account accObj : accounts) {
} else { if(!accObj.getAccountId().equals(account.getAccountId()) && accObj.getAccountName().equalsIgnoreCase(account.getAccountName())){
List<String> employeeIds = null; response ="Account already exist with updated account name";
List<Account> accountList = null; return response;
List<String> dmsAddedByUser = null; }
List<String> dmsDeletedByUser = null;
Map<String, Integer> dmsCount = new HashMap<String,Integer>();
Account accountBeforeUpdate = accountRepo.findByAccountId(account.getAccountId());
List<String> updatedAccDms = account.getDeliveryManagers();
List<String> beforeAccUpdateDms = accountBeforeUpdate.getDeliveryManagers();
dmsAddedByUser = CommomUtil.getAddedManagersList(beforeAccUpdateDms, updatedAccDms);
dmsDeletedByUser = CommomUtil.getDeletedManagersList(beforeAccUpdateDms, updatedAccDms);
accountList = accountRepo.findAll();
if(accountList != null && !accountList.isEmpty() && accountList.size() >0) {
for (Account acc : accountList) {
employeeIds = acc.getDeliveryManagers();
if(employeeIds != null && !employeeIds.isEmpty() && employeeIds.size() >0) {
for(String eId:employeeIds) {
if(dmsCount.get(eId) != null)
dmsCount.put(eId, dmsCount.get(eId)+1);
else
dmsCount.put(eId, 1);
employeeIds = null;
}
}
}
} }
//response ="Account already exist";
for (String empId : dmsDeletedByUser) { }
if(dmsCount.get(empId)==1) {
//Service call for RoleMapping List<String> employeeIds = null;
roleMappingService.deleteRole(empId,roleId); List<Account> accountList = null;
} List<String> dmsAddedByUser = null;
} List<String> dmsDeletedByUser = null;
//account.setStatus(MyTimeUtils.STRING_Y); Map<String, Integer> dmsCount = new HashMap<String,Integer>();
account.setStatus(accountBeforeUpdate.getStatus());
accountResult = accountRepo.save(account); Account accountBeforeUpdate = accountRepo.findByAccountId(account.getAccountId());
roleMappingService.saveUniqueEmployeeAndRole(dmsAddedByUser, roleId);
response="Updated succesfully"; List<String> updatedAccDms = account.getDeliveryManagers();
List<String> beforeAccUpdateDms = accountBeforeUpdate.getDeliveryManagers();
dmsAddedByUser = CommomUtil.getAddedManagersList(beforeAccUpdateDms, updatedAccDms);
dmsDeletedByUser = CommomUtil.getDeletedManagersList(beforeAccUpdateDms, updatedAccDms);
accountList = accountRepo.findAll();
if(accountList != null && !accountList.isEmpty() && accountList.size() >0) {
for (Account acc : accountList) {
employeeIds = acc.getDeliveryManagers();
if(employeeIds != null && !employeeIds.isEmpty() && employeeIds.size() >0) {
for(String eId:employeeIds) {
if(dmsCount.get(eId) != null)
dmsCount.put(eId, dmsCount.get(eId)+1);
else
dmsCount.put(eId, 1);
employeeIds = null;
}
}
}
}
for (String empId : dmsDeletedByUser) {
if(dmsCount.get(empId)==1) {
//Service call for RoleMapping
roleMappingService.deleteRole(empId,roleId);
}
}
//account.setStatus(MyTimeUtils.STRING_Y);
account.setStatus(accountBeforeUpdate.getStatus());
accountResult = accountRepo.save(account);
roleMappingService.saveUniqueEmployeeAndRole(dmsAddedByUser, roleId);
response="Updated succesfully";
}*/
if( action != null && action.equals(MyTimeUtils.STRING_N)) {//N means adding New Account
boolean flag = false;
List<Account> accounts = accountRepo.findAll();
if(accounts!= null && !accounts.isEmpty() && accounts.size()>0 ){
for(Account accObj : accounts){
flag = accObj.getAccountName().trim().equalsIgnoreCase(account.getAccountName().trim());
if(flag){
break;
}
}
}
if(flag){
response ="Account already exist";
return response;
}
List<String> accDms = account.getDeliveryManagers();
account.setAccountId(generateAccountId());
account.setAccountName(account.getAccountName().trim());
account.setStatus(MyTimeUtils.STRING_Y);
accountResult = accountRepo.save(account);
if(accDms != null && !accDms.isEmpty() && accDms.size() > 0) {
roleMappingService.saveUniqueEmployeeAndRole(accDms, roleId);
}
if(accountResult.getId() != null) {
response="Saved succesfully";
}else {
response = "Error occured while account creating";
} }
}else if(action != null && action.equals("U")){//U means updating existing Account
boolean flag = false;
List<Account> accounts = accountRepo.findAll();
if(accounts!= null && !accounts.isEmpty() && accounts.size()>0 ){
for(Account accObj : accounts){
flag = accObj.getAccountName().trim().equalsIgnoreCase(account.getAccountName().trim());
if(flag){
break;
}
}
}
if(flag) {
response ="Account Already exist with update account name";
return response;
}
List<String> employeeIds = null;
List<Account> accountList = null;
List<String> dmsAddedByUser = null;
List<String> dmsDeletedByUser = null;
Map<String, Integer> dmsCount = new HashMap<String,Integer>();
Account accountBeforeUpdate = accountRepo.findByAccountId(account.getAccountId());
List<String> updatedAccDms = account.getDeliveryManagers();
List<String> beforeAccUpdateDms = accountBeforeUpdate.getDeliveryManagers();
dmsAddedByUser = CommomUtil.getAddedManagersList(beforeAccUpdateDms, updatedAccDms);
dmsDeletedByUser = CommomUtil.getDeletedManagersList(beforeAccUpdateDms, updatedAccDms);
accountList = accountRepo.findAll();
if(accountList != null && !accountList.isEmpty() && accountList.size() >0) {
for (Account acc : accountList) {
employeeIds = acc.getDeliveryManagers();
if(employeeIds != null && !employeeIds.isEmpty() && employeeIds.size() >0) {
for(String eId:employeeIds) {
if(dmsCount.get(eId) != null)
dmsCount.put(eId, dmsCount.get(eId)+1);
else
dmsCount.put(eId, 1);
employeeIds = null;
}
}
}
}
for (String empId : dmsDeletedByUser) {
if(dmsCount.get(empId)==1) {
//Service call for RoleMapping
roleMappingService.deleteRole(empId,roleId);
}
}
account.setStatus(accountBeforeUpdate.getStatus());
account.setAccountName(account.getAccountName().trim());
accountResult = accountRepo.save(account);
roleMappingService.saveUniqueEmployeeAndRole(dmsAddedByUser, roleId);
response="Updated succesfully";
} }
return response; return response;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment