// // Created by dongl on 23-4-20. // #include "UserProveController.h" void UserProveController::run(std::shared_ptr request, std::shared_ptr response) { if (request->m_mph->mp_type() == mp::MP_REQUEST_LOGIN) { auto sri = service.login(request->m_body.account(), request->m_body.password()); response->set(sri, request->m_bev); handler::add_user(request); } else if (request->m_mph->mp_type() == mp::MP_REQUEST_REGISTER) { auto sri = service.register_(request->m_body.account(), request->m_body.password()); response->set(sri, request->m_bev); } else if (request->m_mph->mp_type() == mp::MP_REQUEST_LOGOUT) { // 查看当前用户是否在线 bool state = handler::is_user(request->m_body.account()); // current user list used redis 在优化 if (state) { handler::remove_user(request); auto sri = service.logout(request->m_body.account(), state); response->set(sri, request->m_bev); } else { auto sri = service.logout(request->m_body.account(), state); response->set(sri, request->m_bev); } } }