tvpl.api

<back to all web services

GetNotificationFilter

Lấy danh sách các Notification mới nhất của người dùng hiện tại

Requires Authentication
The following routes are available for this service:
GET/notificationsLấy danh sách các Notification mới nhất
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    /**
    * Lấy danh sách các Notification mới nhất của người dùng hiện tại
    */
    public static class GetNotificationFilter extends PagingRequest implements IGet
    {
        public NotificationFilter filter = null;
        
        public NotificationFilter getFilter() { return filter; }
        public GetNotificationFilter setFilter(NotificationFilter value) { this.filter = value; return this; }
    }

    public static class PagingRequest
    {
        public Integer page = null;
        public Integer limit = null;
        
        public Integer getPage() { return page; }
        public PagingRequest setPage(Integer value) { this.page = value; return this; }
        public Integer getLimit() { return limit; }
        public PagingRequest setLimit(Integer value) { this.limit = value; return this; }
    }

    public static enum NotificationFilter
    {
        Unread,
        All;
    }

    public static class NotificationResponse implements IResponseRequest
    {
        public Integer code = null;
        public String message = null;
        public ArrayList<Notification> notifications = null;
        public Integer unreadCount = null;
        public Integer totalCount = null;
        
        public Integer getCode() { return code; }
        public NotificationResponse setCode(Integer value) { this.code = value; return this; }
        public String getMessage() { return message; }
        public NotificationResponse setMessage(String value) { this.message = value; return this; }
        public ArrayList<Notification> getNotifications() { return notifications; }
        public NotificationResponse setNotifications(ArrayList<Notification> value) { this.notifications = value; return this; }
        public Integer getUnreadCount() { return unreadCount; }
        public NotificationResponse setUnreadCount(Integer value) { this.unreadCount = value; return this; }
        public Integer getTotalCount() { return totalCount; }
        public NotificationResponse setTotalCount(Integer value) { this.totalCount = value; return this; }
    }

    public static class Notification implements IMongoModel
    {
        public String id = null;
        public Integer accountId = null;
        @Required()
        @StringLength(200)
        public String title = null;

        public String message = null;
        public String payload = null;
        public Date createdOn = null;
        public Date readOn = null;
        public Date pushOn = null;
        public Date deletedOn = null;
        
        public String getId() { return id; }
        public Notification setId(String value) { this.id = value; return this; }
        public Integer getAccountId() { return accountId; }
        public Notification setAccountId(Integer value) { this.accountId = value; return this; }
        public String getTitle() { return title; }
        public Notification setTitle(String value) { this.title = value; return this; }
        public String getMessage() { return message; }
        public Notification setMessage(String value) { this.message = value; return this; }
        public String getPayload() { return payload; }
        public Notification setPayload(String value) { this.payload = value; return this; }
        public Date getCreatedOn() { return createdOn; }
        public Notification setCreatedOn(Date value) { this.createdOn = value; return this; }
        public Date getReadOn() { return readOn; }
        public Notification setReadOn(Date value) { this.readOn = value; return this; }
        public Date getPushOn() { return pushOn; }
        public Notification setPushOn(Date value) { this.pushOn = value; return this; }
        public Date getDeletedOn() { return deletedOn; }
        public Notification setDeletedOn(Date value) { this.deletedOn = value; return this; }
    }

}

Java GetNotificationFilter DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /notifications HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	code: 0,
	message: String,
	notifications: 
	[
		{
			id: String,
			accountId: 0,
			title: String,
			message: String,
			payload: String,
			readOn: "0001-01-01T00:00:00.0000000+07:06",
			pushOn: "0001-01-01T00:00:00.0000000+07:06",
			deletedOn: "0001-01-01T00:00:00.0000000+07:06"
		}
	],
	unreadCount: 0,
	totalCount: 0
}