mirror of
https://gitee.com/js-yhsec/energy_storage.git
synced 2026-05-27 18:59:26 +08:00
现场调试问题修改;本地服务端从qt5升级到qt6
This commit is contained in:
@@ -476,7 +476,6 @@ Errcode HttpEntity::deletePermission(const httplib::Request& req, njson& json, s
|
||||
return DAO::deletePermissionById(permissionId);
|
||||
}
|
||||
|
||||
|
||||
Errcode HttpEntity::queryRoleList(const httplib::Request& req, njson& json, std::string& errmsg)
|
||||
{
|
||||
std::string token = req.get_param_value("page");
|
||||
@@ -497,52 +496,49 @@ Errcode HttpEntity::queryRoleList(const httplib::Request& req, njson& json, std:
|
||||
{
|
||||
return err;
|
||||
}
|
||||
|
||||
std::map<std::string, std::vector<Fields>> mapP;
|
||||
for (int i = 0; i<vecPermission.size(); ++i)
|
||||
|
||||
std::map<std::string, std::vector<int>> mapRole;
|
||||
std::map<std::string, std::vector<int>> mapChildren;
|
||||
for (int i=0; i<vecPermission.size(); ++i)
|
||||
{
|
||||
auto& item = vecPermission[i];
|
||||
std::string roleId = item.value("role_id");
|
||||
std::string id = item.value("permission_id");
|
||||
std::string parentId = item.value("parent_id");
|
||||
|
||||
mapP[roleId].push_back(vecPermission[i]);
|
||||
mapRole[roleId].push_back(i);
|
||||
if (parentId != "")
|
||||
{
|
||||
mapChildren[roleId + "-" + parentId].push_back(i);
|
||||
}
|
||||
}
|
||||
|
||||
for (auto& item : json["data"])
|
||||
{
|
||||
auto jsonpermission = njson::array();
|
||||
std::string roleId = item["role_id"];
|
||||
std::vector<Fields>& vecP = mapP[roleId];
|
||||
|
||||
std::map<std::string, int> mapParentPos;
|
||||
for (int i = 0; i<vecP.size(); ++i)
|
||||
|
||||
for (auto& fieldsPos : mapRole[roleId])
|
||||
{
|
||||
auto& item = vecPermission[i];
|
||||
if (item.value("parent_id") == "")
|
||||
auto& fields = vecPermission[fieldsPos];
|
||||
string parentId = fields.value("parent_id");
|
||||
string permissionId = fields.value("permission_id");
|
||||
if (parentId == "")
|
||||
{
|
||||
mapParentPos[item.value("permission_id")] = i;
|
||||
njson node;
|
||||
FieldsToJson(item, node);
|
||||
node["children"] = njson::array();
|
||||
jsonpermission.push_back(node);
|
||||
}
|
||||
}
|
||||
// 重新遍历处理二级子权限,防止父权限信息还未创建时导致错误
|
||||
for (int i = 0; i<vecP.size(); ++i)
|
||||
{
|
||||
auto& item = vecP[i];
|
||||
std::string id = item.value("permission_id");
|
||||
std::string parentId = item.value("parent_id");
|
||||
if (parentId != "")
|
||||
{
|
||||
auto iter = mapParentPos.find(parentId);
|
||||
if (iter != mapParentPos.end())
|
||||
FieldsToJson(fields, node);
|
||||
|
||||
njson nodeChildren = njson::array();
|
||||
auto iter = mapChildren.find(roleId + "-" + permissionId);
|
||||
if (iter != mapChildren.end())
|
||||
{
|
||||
njson node;
|
||||
FieldsToJson(item, node);
|
||||
jsonpermission[iter->second]["children"].push_back(node);
|
||||
for (auto& fieldsChildPos : iter->second)
|
||||
{
|
||||
njson nodeChild;
|
||||
FieldsToJson(vecPermission[fieldsChildPos], nodeChild);
|
||||
nodeChildren.push_back(nodeChild);
|
||||
}
|
||||
}
|
||||
node["children"] = nodeChildren;
|
||||
jsonpermission.push_back(node);
|
||||
}
|
||||
}
|
||||
item["permission"] = jsonpermission;
|
||||
@@ -565,6 +561,19 @@ Errcode HttpEntity::insertRole(const httplib::Request& req, njson& json, std::st
|
||||
GetRequestParams(req, {"name", "describe", "is_open", "permission"}, params);
|
||||
return DAO::insertRole(params);
|
||||
};
|
||||
|
||||
|
||||
static void JsonToFieldsRole(string roleId, njson& item, Fields& fields)
|
||||
{
|
||||
fields.set("role_id", roleId);
|
||||
fields.set("permission_id", item["permission_id"].get<std::string>());
|
||||
fields.set("is_open", item["is_open"].get<std::string>());
|
||||
fields.set("is_view", item["is_view"].get<std::string>());
|
||||
fields.set("is_add", item["is_add"].get<std::string>());
|
||||
fields.set("is_edit", item["is_edit"].get<std::string>());
|
||||
fields.set("is_del", item["is_del"].get<std::string>());
|
||||
}
|
||||
|
||||
Errcode HttpEntity::updateRole(const httplib::Request& req, njson& json, std::string& errmsg)
|
||||
{
|
||||
Fields params;
|
||||
@@ -588,14 +597,18 @@ Errcode HttpEntity::updateRole(const httplib::Request& req, njson& json, std::st
|
||||
for (auto& item: jsonarray)
|
||||
{
|
||||
Fields fields;
|
||||
fields.set("role_id", roleId);
|
||||
fields.set("permission_id", item["permission_id"].get<std::string>());
|
||||
fields.set("is_open", item["is_open"].get<std::string>());
|
||||
fields.set("is_view", item["is_view"].get<std::string>());
|
||||
fields.set("is_add", item["is_add"].get<std::string>());
|
||||
fields.set("is_edit", item["is_edit"].get<std::string>());
|
||||
fields.set("is_del", item["is_del"].get<std::string>());
|
||||
JsonToFieldsRole(roleId, item, fields);
|
||||
vecFields.push_back(fields);
|
||||
|
||||
if (item.contains("children"))
|
||||
{
|
||||
for (auto& item : item["children"])
|
||||
{
|
||||
Fields fields;
|
||||
JsonToFieldsRole(roleId, item, fields);
|
||||
vecFields.push_back(fields);
|
||||
}
|
||||
}
|
||||
}
|
||||
err = DAO::updateRolePermission(dao, roleId, vecFields);
|
||||
}
|
||||
@@ -1094,14 +1107,21 @@ Errcode HttpEntity::queryPredictionDetail(const httplib::Request& req, njson& js
|
||||
{
|
||||
const int num = 144;
|
||||
std::vector<int> vecStoreIn(num, 0), vecStoreOut(num, 0), vecCharge(num, 0), vecSolar(num, 0), vecSolarP(num, 0);
|
||||
for (int i = 0; i<num; ++i)
|
||||
|
||||
for (auto& item : Application::data().mapStation)
|
||||
{
|
||||
vecStoreIn[i] = 0;
|
||||
vecStoreOut[i] = 0;
|
||||
vecCharge[i] = 0;
|
||||
vecSolar[i] = 0;
|
||||
vecSolarP[i] = 0;
|
||||
auto& station = item.second;
|
||||
|
||||
for (int i = 0; i < num; ++i)
|
||||
{
|
||||
vecStoreIn[i] += station->predictStorageIn[i];
|
||||
vecStoreOut[i] += station->predictStorageOut[i];
|
||||
vecCharge[i] += station->predictCharge[i];
|
||||
vecSolar[i] = 0;
|
||||
vecSolarP[i] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
json["data"] = {
|
||||
{"W_store_in", vecStoreIn},
|
||||
{"W_store_out", vecStoreOut},
|
||||
@@ -1263,13 +1283,14 @@ Errcode HttpEntity::queryStatTotal(const httplib::Request& req, njson& json, std
|
||||
jsondata["launch_date"] = station->launchDate;
|
||||
}
|
||||
|
||||
auto& appdata = Application::data();
|
||||
std::vector<Fields> result;
|
||||
DaoEntity::execOnce(sql, result);
|
||||
if (result.size() > 0)
|
||||
{
|
||||
auto& fields = result[0];
|
||||
|
||||
// jsondata["launch_date"] = "2025-09-01"; //场站上线日期
|
||||
//jsondata["launch_date"] = appdata.launchDate; //: 系统上线启用日期,格式:yyyy-mm-dd
|
||||
// jsondata["station_id"] = station_id;
|
||||
jsondata["storage_elect_in"] = fields.value("storage_elect_in"); //储能充电电量(kWh),精度:0.001
|
||||
jsondata["storage_elect_out"] = fields.value("storage_elect_out"); //储能放电电量(kWh),精度:0.001
|
||||
|
||||
Reference in New Issue
Block a user