Subversion Repositories SmartDukaan

Rev

Rev 3087 | Rev 3137 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3087 Rev 3106
Line 11... Line 11...
11
    OPEN = 0,
11
    OPEN = 0,
12
    CLOSED = 1,
12
    CLOSED = 1,
13
    REOPEN = 2
13
    REOPEN = 2
14
}
14
}
15
 
15
 
16
enum ContactMedium {
-
 
17
    PHONE = 0,
-
 
18
    EMAIL = 1
-
 
19
}
-
 
20
 
-
 
21
enum TicketCategory {
16
enum TicketCategory {
22
    RETURN_FORM = 1,
17
    RETURN_FORM = 1,
23
    ORDER_CANCELLATION = 2,
18
    ORDER_CANCELLATION = 2,
24
    DELIVERY_PROBLEM = 3,
19
    DELIVERY_PROBLEM = 3,
25
    PAYMENT_STATUS = 4,
20
    PAYMENT_STATUS = 4,
Line 27... Line 22...
27
    PRODUCT_REQUEST = 6,
22
    PRODUCT_REQUEST = 6,
28
    PRODUCT_QUESTION = 7,
23
    PRODUCT_QUESTION = 7,
29
    OTHER = 8
24
    OTHER = 8
30
}
25
}
31
 
26
 
-
 
27
enum ActivityType {
-
 
28
    EMAIL_CUSTOMER = 1,
-
 
29
    CALL_CUSTOMER = 2,
-
 
30
    OTHER = 3
-
 
31
}
-
 
32
 
32
struct Ticket {
33
struct Ticket {
33
    1:i64 id,
34
    1:i64 id,
34
    2:i64 customerId,
35
    2:i64 customerId,
35
    3:i64 openDate,
36
    3:i64 openDate,
36
    4:i64 closeDate,
37
    4:i64 closeDate,
37
    5:string subject,
38
    5:string description,
-
 
39
    6:TicketPriority priority,
-
 
40
    7:TicketCategory category,
-
 
41
    8:TicketStatus status,
38
    6:i64 creatorId,
42
    9:i64 assigneeId
39
    7:i64 receipientId,
43
    10:i64 creatorId,
40
    8:i64 orderId,
44
    11:i64 orderId,
41
    9:string airwayBillNo,
45
    12:string airwayBillNo,
42
   10:string productName
46
    13:string productName
43
}
47
}
44
 
48
 
45
struct Activity {
49
struct Activity {
46
    1:i64 id,
50
    1:i64 id,
47
    2:string description,
51
    2:string description,
48
    3:i64 contactTimestamp,
52
    3:i64 creationTimestamp, // represents time at which this activity occurred
49
    4:ContactMedium contactMedium,
53
    4:ActivityType type,
50
    5:i64 customerId,
54
    5:i64 customerId,
51
    6:i64 creatorId,
55
    6:i64 creatorId,
52
    7:i64 contactingAgentId, // id of agent that contacted the customer!
-
 
53
 
56
 
54
    // ticket related fields
57
    // ticket related fields to track changes on ticket fields
55
    8:i64 ticketId,
58
    7:i64 ticketId,
56
    9:TicketPriority ticketPriority,
59
    8:TicketPriority ticketPriority,
57
   10:i64 ticketAssigneeId,
60
    9:i64 ticketAssigneeId,
58
   11:TicketStatus ticketStatus,
61
   10:TicketStatus ticketStatus,
59
   12:TicketCategory ticketCategory
62
   11:TicketCategory ticketCategory,
-
 
63
   12:string ticketDescription
60
}
64
}
61
 
65
 
62
struct Agent {
66
struct Agent {
63
    1:i64 id,
67
    1:i64 id,
64
    2:string name,
68
    2:string name,
Line 89... Line 93...
89
    Agent getAgentByEmailId(1:string agentEmailId);
93
    Agent getAgentByEmailId(1:string agentEmailId);
90
    void updatePasswordForAgent(1:string agentEmailId, 2:string password);
94
    void updatePasswordForAgent(1:string agentEmailId, 2:string password);
91
 
95
 
92
    // Methods to read roles and permissions information
96
    // Methods to read roles and permissions information
93
    list<string> getRoleNamesForAgent(1:string agentEmailId);
97
    list<string> getRoleNamesForAgent(1:string agentEmailId);
94
    list<string> getPermissionsForRoleName(1:string roleName);    
98
    list<string> getPermissionsForRoleName(1:string roleName);
95
}
99
}