95 lines
2.2 KiB
C++
95 lines
2.2 KiB
C++
//
|
|
// Created by dongl on 23-5-5.
|
|
//
|
|
|
|
#include "UserFriendsService.h"
|
|
|
|
UserFriendsService::~UserFriendsService() {}
|
|
|
|
// 好友群组 添加删除 任务组 决策接口
|
|
mp::sri *UserFriendsService::friendImProve(mp::body* body) {
|
|
sri_clear();
|
|
if (body->target() == 0 || body->source() == 0) {
|
|
printf("请求数据有缺\n");
|
|
sri->set_msg("请求数据有缺");
|
|
return sri;
|
|
}
|
|
|
|
auto subcommand = body->subcommand();
|
|
|
|
// 添加
|
|
if (subcommand == mp::MP_SUB_TYPE::MP_ADD_FRIENDS_ACCOUNT) {
|
|
add_contact_person(body);
|
|
}
|
|
// 拉黑
|
|
else if (subcommand == mp::MP_SUB_TYPE::MP_ADD_BLACK_LIST) {
|
|
|
|
}
|
|
// 删除
|
|
else if (subcommand == mp::MP_SUB_TYPE::MP_REMOVE_FRIEND) {
|
|
|
|
}
|
|
|
|
return sri;
|
|
}
|
|
|
|
|
|
void UserFriendsService::add_friends(mp::body *body) {
|
|
auto [state1, msg1] = userFriendsDb.add_friends(body->source(), body->target());
|
|
auto [state2, msg2] = userFriendsDb.add_friends(body->target(), body->source());
|
|
if (state1 && state2) {
|
|
sri->set_subcommand(mp::MP_SUB_TYPE::MP_ADD_SUCCESS);
|
|
sri->set_msg("添加成功");
|
|
} else {
|
|
sri->set_subcommand(mp::MP_SUB_TYPE::MP_ADD_FAIL);
|
|
sri->set_msg("添加失败,请重试");
|
|
}
|
|
}
|
|
|
|
// 添加好友函数
|
|
mp::sri* UserFriendsService::add_contact_person(mp::body *body) {
|
|
// 查看添加目标的权限类型
|
|
char type = userFriendsDb.select_add_type(body->target());
|
|
|
|
// 直接添加
|
|
if (type == '0') {
|
|
add_friends(body);
|
|
}
|
|
// 回答问题
|
|
else if (type == '1') {
|
|
if ("") {
|
|
add_friends(body);
|
|
} else {
|
|
sri->set_subcommand(mp::MP_SUB_TYPE::MP_ADD_FAIL);
|
|
sri->set_msg("答案错误");
|
|
}
|
|
}
|
|
// 账户审核
|
|
else if (type == '2') {
|
|
|
|
}
|
|
|
|
return sri;
|
|
}
|
|
|
|
mp::sri *UserFriendsService::FetchUserFriend(uint64_t account, const std::string &data) {
|
|
sri_clear();
|
|
uint8_t page_begin = data.c_str()[0];
|
|
uint8_t page_end = data.c_str()[1];
|
|
|
|
auto friends = userFriendsDb.select_friends_all(account);
|
|
if (friends.has_value())
|
|
sri->set_data(friends.value());
|
|
sri->set_msg("好友获取成功");
|
|
sri->set_subcommand(mp::MP_SUB_TYPE::MP_ADD_SUCCESS);
|
|
|
|
return sri;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|