TeamTalk DepartModel详解

这篇博客主要介绍了如何使用CDepartModel类从MySQL数据库IMDepart中获取更新的部门信息。通过getChgedDeptId接口获取updated时间大于指定时间的部门ID列表,getDept接口用于获取特定ID的部门详情,而getDepts接口则用于批量获取多个部门的详细信息。 DepartAction类处理部门详情请求,将查询结果封装到响应CImPdu并放入任务队列。测试用例tests/test_departmodel.cpp展示了如何构造部门信息请求并进行测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 简介

该模块主要用于获取mysql里部门信息

2. 类与接口

CDepartModel

void getChgedDeptId(uint32_t& nLastTime, list<uint32_t>& lsChangedIds)
用于从mysql表IMDepart获取updated > nLastTime的部门id,并将id存到list<uint32_t>& lsChangedIds

void getDept(uint32_t nDeptId, IM::BaseDefine::DepartInfo& cDept)
用于从mysql表IMDepart获取指定nDeptId的部门详情

void getDepts(list<uint32_t>& lsDeptIds, list<IM::BaseDefine::DepartInfo>& lsDepts)
用于从mysql表IMDepart获取id在lsDeptIds的部门详情,将这些部门详情信息存入list<IM::BaseDefine::DepartInfo>& lsDepts

DepartAction

void getChgedDepart(CImPdu* pPdu, uint32_t conn_uuid)
用于处理部门详情请求,并将查询到的部门详情封装到响应CImPdu,最后调用CProxyConn::AddResponsePdu压入loop任务队列
获取部分详情使用了getChgedDeptId和getDepts接口

3. tests/test_departmodel.cpp说明

该用例构造了个部门信息请求CImPdu
Mysql IMDepart信息如下
在这里插入图片描述

4. 源码

链接:TeamTalk_BlueBling
测试demo:tests/test_departmodel.cpp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值