m2u-upass-core / src / my / com / upass / services / DeleteUserService.java @ 74:214028f5d496
History | View | Annotate | Download (3.7 KB)
1 |
package my.com.upass.services; |
---|---|
2 |
|
3 |
import java.text.SimpleDateFormat; |
4 |
import java.util.Date; |
5 |
import java.util.List; |
6 |
|
7 |
import org.hibernate.Session; |
8 |
|
9 |
import my.com.upass.Constants; |
10 |
import my.com.upass.MinimalConstants; |
11 |
import my.com.upass.dao.DAOFactoryProvider; |
12 |
import my.com.upass.dao.UserDAO; |
13 |
import my.com.upass.maybank.entities.UserProfile; |
14 |
import my.com.upass.pojo.MinimalUserBean; |
15 |
import my.com.upass.pojo.UserBeanBackup; |
16 |
import my.com.upass.pojo.UserMasterBeanBackup; |
17 |
|
18 |
public class DeleteUserService { |
19 |
|
20 |
public DeleteUserService() {
|
21 |
} |
22 |
|
23 |
public int deleteUser(String userAlias, Session txSession) { |
24 |
|
25 |
int rc = Constants.ERR_SYSTEM_NOT_READY;
|
26 |
|
27 |
if (userAlias == null) { |
28 |
return Constants.ERR_INVALID_INPUT;
|
29 |
} |
30 |
UserDAO userDao; |
31 |
try {
|
32 |
userDao = DAOFactoryProvider.getDAOFactory().getUserDAO(); |
33 |
UserBeanBackup ubBackup = null;
|
34 |
MinimalUserBean ub = userDao.getUserFromStore(userAlias, txSession); |
35 |
|
36 |
if (ub == null) { |
37 |
return Constants.ERR_INVALID_INPUT;
|
38 |
} |
39 |
String concatedUser = concatUser(userAlias);
|
40 |
|
41 |
if (!userAlias.equalsIgnoreCase(concatedUser)) {
|
42 |
ubBackup = new UserBeanBackup();
|
43 |
ubBackup.setUserID(ub.getUserID()); |
44 |
ubBackup.setUserAlias(concatedUser); |
45 |
ubBackup.setDescription(ub.getDescription()); |
46 |
ubBackup.setUserType(ub.getUserType()); |
47 |
ubBackup.setUstate(ub.getUstate()); |
48 |
ubBackup.setUdateCreated(ub.getUdateCreated()); |
49 |
ubBackup.setPdateCreated(ub.getPdateCreated()); |
50 |
// ubBackup.setApplicationId(ub.getApplicationId());
|
51 |
ubBackup.setPcipherText(ub.getPcipherText()); |
52 |
ubBackup.setPdateFirstUsed(ub.getPdateFirstUsed()); |
53 |
ubBackup.setPdateLastUsed(ub.getPdateLastUsed()); |
54 |
ubBackup.setPerrorCount(ub.getPerrorCount()); |
55 |
ubBackup.setPexpiredStatus(ub.getPexpiredStatus()); |
56 |
ubBackup.setPhistoryList(ub.getPhistoryList()); |
57 |
ubBackup.setPstate(ub.getPstate()); |
58 |
ubBackup.setPuseCount(ub.getPuseCount()); |
59 |
ubBackup.setUdateLastLocked(ub.getUdateLastLocked()); |
60 |
ubBackup.setUdateLockedTo(ub.getUdateLockedTo()); |
61 |
|
62 |
UserMasterBeanBackup masterBackup = new UserMasterBeanBackup();
|
63 |
masterBackup.setUserAlias(concatedUser); |
64 |
masterBackup.setUserID(ub.getUserID()); |
65 |
ubBackup.setUpassUserMasterBackup(masterBackup); |
66 |
} |
67 |
if (userDao.insertUserToBackupStore(ubBackup, txSession)) {
|
68 |
rc = Constants.ERR_SUCCESS; |
69 |
|
70 |
} else {
|
71 |
rc = Constants.ERR_SYSTEM_NOT_READY; |
72 |
} |
73 |
// UserMasterBean master = new UserMasterBean ();
|
74 |
// master.setUserAlias(ub.getUserAlias());
|
75 |
// master.setUserID(ub.getUserID());
|
76 |
// ub.setUpassUserMaster (master);
|
77 |
|
78 |
if (userDao.deleteUser(ub, txSession)) {
|
79 |
rc = Constants.ERR_SUCCESS; |
80 |
|
81 |
} else {
|
82 |
rc = Constants.ERR_SYSTEM_NOT_READY; |
83 |
} |
84 |
} catch (Exception e) { |
85 |
e.printStackTrace(); |
86 |
} |
87 |
return rc;
|
88 |
} |
89 |
|
90 |
public int deleteUser( |
91 |
String username, Integer targetAppId, Session txSession) { |
92 |
|
93 |
int rc = Constants.ERR_SYSTEM_NOT_READY;
|
94 |
|
95 |
if (username == null) { |
96 |
return Constants.ERR_INVALID_INPUT;
|
97 |
} |
98 |
try {
|
99 |
UserDAO userDao = DAOFactoryProvider.getDAOFactory().getUserDAO(); |
100 |
|
101 |
final Class<UserProfile> profileClass = (Class<UserProfile>) |
102 |
AppAccessMgtService.APP_ID_TO_PROFILE_MAP.get(targetAppId); |
103 |
|
104 |
boolean profileDeleted = userDao.deleteProfile(username, profileClass, txSession);
|
105 |
|
106 |
if (profileDeleted) {
|
107 |
List userAccesses = userDao.listUserAppAccesses(username, txSession);
|
108 |
|
109 |
rc = userAccesses.isEmpty() ? |
110 |
deleteUser(username, txSession) |
111 |
: Constants.ERR_SUCCESS; |
112 |
|
113 |
} else
|
114 |
rc = MinimalConstants.ERR_SYSTEM_NOT_READY; |
115 |
|
116 |
} catch (Exception e) { |
117 |
e.printStackTrace(); |
118 |
} |
119 |
return rc;
|
120 |
} |
121 |
|
122 |
private String concatUser(String userAlias) { |
123 |
SimpleDateFormat dateFormat = new SimpleDateFormat("ddMMyyyyHHmmss"); |
124 |
return userAlias.concat("-").concat(dateFormat.format(new Date())); |
125 |
} |
126 |
|
127 |
} |