Statistics
| Branch: | Revision:

m2u-upass-core / src / my / com / upass / services / DeleteUserService.java @ 44:7a7fb8fcfd6e

History | View | Annotate | Download (3.53 KB)

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