Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- StringBuilder sql = new StringBuilder();
- sql.append("FROM Message WHERE text IS NOT NULL AND sended = true AND messageType in :messageType");
- if(retriveType.equals(MessageRetrieveType.ALL)){
- if(recipient!=null){
- sql.append(" AND ((fromUser=:user AND toUser=:recipient AND (hiddenForSender IS NULL OR hiddenForSender <> true)) OR (toUser=:user AND fromUser=:recipient AND (hiddenForReceiver IS NULL OR hiddenForReceiver <> true)");
- if(toDate!=null){
- sql.append(" AND sentAt < :toDate");
- }
- sql.append("))");
- }else{
- sql.append(" AND (fromUser=:user OR toUser=:user)");
- }
- }else if(retriveType.equals(MessageRetrieveType.SEND)){
- if(recipient!=null){
- sql.append(" AND fromUser=:user AND toUser=:recipient AND (hiddenForSender IS NULL OR hiddenForSender <> true)");
- }else{
- sql.append(" AND fromUser=:user AND (hiddenForSender IS NULL OR hiddenForSender <> true)");
- }
- }else if(retriveType.equals(MessageRetrieveType.RECEIVED)){
- if(recipient!=null){
- sql.append(" AND fromUser=:recipient AND toUser=:user AND (hiddenForReceiver IS NULL OR hiddenForReceiver <> true)");
- if(toDate!=null){
- sql.append(" AND sentAt < :toDate");
- }
- }else{
- sql.append(" AND toUser=:user AND (hiddenForReceiver IS NULL OR hiddenForReceiver <> true)");
- }
- }
- if(fromDate!=null){
- sql.append(" AND sentAt > :fromDate");
- }
- if(onlyUnreaded!=null && onlyUnreaded == true){
- sql.append(" AND readed = :readed");
- }
- sql.append(" ORDER BY sentAt DESC");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement