fix: add check for log and report

This commit is contained in:
2023-12-14 06:36:38 +00:00
parent cfb23b6e8e
commit be4903a0fa

View File

@ -392,11 +392,19 @@ std::vector<std::string> BookStoreEngineClass::ExecuteShowFinance(
std::vector<std::string> BookStoreEngineClass::ExecuteLog(
const std::string &cmd,
std::stack<std::pair<std::string, int>> &login_stack) {
static std::basic_regex<char> log_regex(
R"(^ *log *$)", std::regex_constants::optimize);
if(!std::regex_match(cmd, log_regex))
return std::vector<std::string>({"Invalid"});
return std::vector<std::string>();
}
std::vector<std::string> BookStoreEngineClass::ExecuteReport(
const std::string &cmd,
std::stack<std::pair<std::string, int>> &login_stack) {
static std::basic_regex<char> report_regex(
R"(^ *report( +finance| +employee) *$)", std::regex_constants::optimize);
if (!std::regex_match(cmd, report_regex))
return std::vector<std::string>({"Invalid"});
return std::vector<std::string>();
}