ludc
2025-01-16 68fd566d21b3efc3a670a5295289b1801f5a4155
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
/*
 * This idl file is generated by the ORB Plugin
 */
 
#include "01-base.idl"
 
module com {
    module vci {
        module corba {
            module message {
                module data {
                    struct RefObject {
                        wstring btName;        // 业务对象类型
                        wstring oid;        // 对象OID
                    };
                    typedef sequence<RefObject> RefObjectList;
                    
                      // 消息对象
                    struct PLMessage{
                        wstring oid;        // ID
                        wstring title;        // 标题
                        wstring content;     // 内容
                        wstring creator;     // 创建者
                        wstring createTime; // 创建时间
                        wstring status;        // 状态
                        RefObjectList refObjs; // 关联的业务对象
                    };
                    typedef sequence<PLMessage> PLMessageList;
                };
                
                // 消息服务
                interface MessageService {
                    // 注册业务对象事件消息
                    long regBusinessObjectMessage(in wstring btName, in wstring eventName) raises(com::vci::corba::common::VCIError);
                    
                    // 订阅事件消息
                    boolean subscribeMessage(in wstring user, in wstring btName, in wstring eventName) raises(com::vci::corba::common::VCIError);
                
                    // 检查我的消息数量, 根据状态查询我的消息数量,如果不设置status,则查询未读消息
                    long checkMessage(in wstring user);
                    
                    // 获取指定消息
                    data::PLMessage getMessage(in wstring msgid) raises(com::vci::corba::common::VCIError);
                    
                    // 获取指定用户的所有未读消息
                    data::PLMessageList getMessages(in wstring user) raises(com::vci::corba::common::VCIError);
                    
                    // 获取指定消息
                    data::PLMessageList getMessagesByIds(in com::vci::corba::common::data::WStringArray msgids) raises(com::vci::corba::common::VCIError);
 
                    // 获取指定用户的所有指定状态的消息,不指定状态则获取所有消息
                    data::PLMessageList getMessagesByPage(in wstring user, in wstring status, in long pageNo, in long pageSize) raises(com::vci::corba::common::VCIError);
 
                    // 设置指定消息指定用户已读
                    boolean setMessageReaded(in wstring user, in wstring msgid) raises(com::vci::corba::common::VCIError);
                    
                    // 设置指定用户指定消息已完成
                    boolean setMessageCompleted(in wstring user, in wstring msgid) raises(com::vci::corba::common::VCIError);
 
                    // 创建消息,返回消息OID
                    wstring createMessage(in wstring title, in wstring msg, in data::RefObjectList refObjs) raises(com::vci::corba::common::VCIError);
 
                    // 保存并发送消息,用户账号数组
                    boolean createAndSendMessage(in wstring title, in wstring msg, in data::RefObjectList refObjs, in com::vci::corba::common::data::WStringArray users) raises(com::vci::corba::common::VCIError);
 
                    // 发送消息给指定用户
                    boolean sendMessageTo(in wstring msgid, in com::vci::corba::common::data::WStringArray users) raises(com::vci::corba::common::VCIError);
                };
            };
        };
    };
};