]> git.mxchange.org Git - juser-login-core.git/blobdiff - src/org/mxchange/jusercore/model/user/LoginUser.java
updated more fields
[juser-login-core.git] / src / org / mxchange / jusercore / model / user / LoginUser.java
index d01c952071b316457710d4efbcec1ea0524ed375..36f4dd37f77feef3881f84751e49c732b4ebc4b0 100644 (file)
@@ -70,24 +70,19 @@ import org.mxchange.jusercore.model.user.status.UserAccountStatus;
                        @NamedQuery (name = "SearchUserId", query = "SELECT u FROM users AS u WHERE u.userId = :id"),
                        @NamedQuery (name = "SearchEmailAddress", query = "SELECT u FROM users AS u INNER JOIN contacts AS c ON u.userContact = c WHERE LOWER(c.contactEmailAddress) LIKE LOWER(:param)"),
                        @NamedQuery (name = "SearchAllUsersExcept", query = "SELECT u FROM users AS u WHERE u != :user ORDER BY u.userId ASC"),
+                       @NamedQuery (name = "AllUsers", query = "SELECT u FROM users AS u ORDER BY u.userId ASC"),
                        @NamedQuery (name = "AllPublicUsers", query = "SELECT u FROM users AS u WHERE u.userAccountStatus = :status AND u.userProfileMode = :mode ORDER BY u.userId ASC"),
                        @NamedQuery (name = "AllMemberPublicUsers", query = "SELECT u FROM users AS u WHERE u.userAccountStatus = :status AND u.userProfileMode IN (:public, :members) ORDER BY u.userId ASC")
                }
 )
-public class LoginUser implements User, Comparable<User> {
+@SuppressWarnings ("PersistenceUnitPresent")
+public class LoginUser implements User {
 
        /**
         * Serial number
         */
        private static final long serialVersionUID = 4_328_454_581_751L;
 
-       /**
-        * Last locked reason
-        */
-       @Lob
-       @Column (name = "user_last_locked_reason")
-       private String lastLockedReason;
-
        /**
         * Account status
         */
@@ -105,7 +100,7 @@ public class LoginUser implements User, Comparable<User> {
        /**
         * Id number from "contacts" table
         */
-       @JoinColumn (name = "user_contact_id", nullable = false, updatable = false)
+       @JoinColumn (name = "user_contact_id", referencedColumnName = "contact_id", nullable = false, updatable = false, unique = true)
        @OneToOne (targetEntity = UserContact.class, cascade = CascadeType.ALL, optional = false)
        private Contact userContact;
 
@@ -139,6 +134,13 @@ public class LoginUser implements User, Comparable<User> {
        @Column (name = "user_last_locked_timestamp")
        private Calendar userLastLocked;
 
+       /**
+        * Last locked reason
+        */
+       @Lob
+       @Column (name = "user_last_locked_reason")
+       private String userLastLockedReason;
+
        /**
         * User name
         */
@@ -169,15 +171,13 @@ public class LoginUser implements User, Comparable<User> {
                this.userProfileMode = ProfileMode.INVISIBLE;
        }
 
-       @Override
-       public int compareTo (final User user) {
-               throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
-       }
-
        @Override
        public void copyAll (final User user) {
-               // Copy also contact data
-               this.getUserContact().copyAll(user.getUserContact());
+               // Is contact set?
+               if (user.getUserContact() instanceof Contact) {
+                       // Copy also contact data
+                       this.getUserContact().copyAll(user.getUserContact());
+               }
 
                // Copy other data
                this.setUserConfirmKey(user.getUserConfirmKey());
@@ -186,14 +186,15 @@ public class LoginUser implements User, Comparable<User> {
                this.setUserAccountStatus(user.getUserAccountStatus());
                this.setUserCreated(user.getUserCreated());
                this.setUserLastLocked(user.getUserLastLocked());
+               this.setUserUpdated(user.getUserUpdated());
+               this.setUserProfileMode(user.getUserProfileMode());
        }
 
        @Override
        public boolean equals (final Object object) {
-               if (object == null) {
+               if (null == object) {
                        return false;
-               }
-               if (this.getClass() != object.getClass()) {
+               } else if (this.getClass() != object.getClass()) {
                        return false;
                }
 
@@ -203,24 +204,6 @@ public class LoginUser implements User, Comparable<User> {
                                (Objects.equals(this.getUserId(), other.getUserId())));
        }
 
-       @Override
-       public int hashCode () {
-               int hash = 5;
-               hash = 83 * hash + Objects.hashCode(this.getUserName());
-               hash = 83 * hash + Objects.hashCode(this.getUserId());
-               return hash;
-       }
-
-       @Override
-       public String getLastLockedReason () {
-               return this.lastLockedReason;
-       }
-
-       @Override
-       public void setLastLockedReason (final String lastLockedReason) {
-               this.lastLockedReason = lastLockedReason;
-       }
-
        @Override
        public UserAccountStatus getUserAccountStatus () {
                return this.userAccountStatus;
@@ -252,11 +235,13 @@ public class LoginUser implements User, Comparable<User> {
        }
 
        @Override
+       @SuppressWarnings ("ReturnOfDateField")
        public Calendar getUserCreated () {
                return this.userCreated;
        }
 
        @Override
+       @SuppressWarnings ("AssignmentToDateFieldFromParameter")
        public void setUserCreated (final Calendar userCreated) {
                this.userCreated = userCreated;
        }
@@ -282,15 +267,27 @@ public class LoginUser implements User, Comparable<User> {
        }
 
        @Override
+       @SuppressWarnings ("ReturnOfDateField")
        public Calendar getUserLastLocked () {
                return this.userLastLocked;
        }
 
        @Override
+       @SuppressWarnings ("AssignmentToDateFieldFromParameter")
        public void setUserLastLocked (final Calendar userLastLocked) {
                this.userLastLocked = userLastLocked;
        }
 
+       @Override
+       public String getUserLastLockedReason () {
+               return this.userLastLockedReason;
+       }
+
+       @Override
+       public void setUserLastLockedReason (final String userLastLockedReason) {
+               this.userLastLockedReason = userLastLockedReason;
+       }
+
        @Override
        public String getUserName () {
                return this.userName;
@@ -312,13 +309,23 @@ public class LoginUser implements User, Comparable<User> {
        }
 
        @Override
+       @SuppressWarnings ("ReturnOfDateField")
        public Calendar getUserUpdated () {
                return this.userUpdated;
        }
 
        @Override
+       @SuppressWarnings ("AssignmentToDateFieldFromParameter")
        public void setUserUpdated (final Calendar userUpdated) {
                this.userUpdated = userUpdated;
        }
 
+       @Override
+       public int hashCode () {
+               int hash = 5;
+               hash = 83 * hash + Objects.hashCode(this.getUserName());
+               hash = 83 * hash + Objects.hashCode(this.getUserId());
+               return hash;
+       }
+
 }