Files
energy_storage/src/common/DataFields.h

155 lines
3.2 KiB
C
Raw Normal View History

2025-05-19 09:54:33 +08:00
#ifndef _DataFields_H_
#define _DataFields_H_
#include <string>
#include <vector>
#include <map>
#include <unordered_map>
#include <functional>
using namespace std;
struct PageInfo
{
int total {0};
int pageIndex {0};
int pageSize {10};
int pageCount {0};
2025-05-19 09:54:33 +08:00
};
class DataFields
{
public:
/**
*
* @param: [string key]
* @param: [string val]
*/
void set(string key, string val);
/**
*
* @param: [string key]
* @param: [float val]
*/
void set(string key, float val);
/**
*
* @param: [string key]
* @param: [int val]
*/
void set(string key, int val);
/**
*
* @param: [string key]
* @param: [int64_t val]
*/
void set(string key, int64_t val);
/**
* string
* @param: [string key]
*/
string getStr(string key);
2025-05-19 09:54:33 +08:00
/**
* int
* @param: [string key]
*/
int getInt(string key);
2025-05-19 09:54:33 +08:00
/**
* float
* @param: [string key]
*/
float getFloat(string key);
/**
* double
* @param: [string key]
*/
double getDouble(string key);
2025-05-19 09:54:33 +08:00
/**
*
* @param: [string key]
*/
void remove(string key);
/**
*
* @param: [DataFields& fields]
*/
void append(DataFields& fields);
/**
* map
*/
map<string, string>& fields();
/**
* vald
* @param: [string key]
* @param: [string val]
* @param: [string d]
*/
void check(string key, string val, string d);
/**
* sql
* @param: [string tbname]
*/
string get_insert_sql(string tbname);
/**
* sql
* @param: [string tbname]
* @param: [string sql_c] sql的更新条件 where id='1'
*/
string get_update_sql(string tbname, string sql_c);
/**
* sql
* @param: [string tbname]
* @param: [string vec_keys]
* @param: [string sql_c] sql的更新条件 where id='1'
*/
string get_update_sql(string tbname, std::vector<std::string> vec_keys, string sql_c);
/**
*
* @param: [function... on_foraach]
*/
void foreachItem(function<void(string key, string val)> on_foraach);
2025-05-19 09:54:33 +08:00
/**
*
* @param: [string key]
*/
bool isEmpty(string key);
2025-05-19 09:54:33 +08:00
/**
* float数值类型
* @param: [string key]
*/
bool is_float_number(string key);
/**
*
*/
string toStr();
2025-05-19 09:54:33 +08:00
/**
*
*/
int size();
void clear();
private:
map<string, string> mapFields_;
2025-05-19 09:54:33 +08:00
};
#endif