#include "RunHttpGet_getLastCheckPlanByCabinetCode.h"

RunHttpGet_getLastCheckPlanByCabinetCode::RunHttpGet_getLastCheckPlanByCabinetCode(InteractiveTask *task, QMutex *mutex)
    : RunAbstract(task, mutex)
{

}


void RunHttpGet_getLastCheckPlanByCabinetCode::run()
{
    QByteArray outData = InteractiveHttp::http_get_getLastCheckPlanByCabinetCode();

    InteractiveData *pSingletonData = SINGLETON_CREATE(InteractiveData)();

    setRespond(outData);

    // // 进行数据写操作
    // QWriteLocker locker(&pSingletonData->m_dataCacheLock);
    // if (!outData.isEmpty())
    // {
    //     // 清理Data缓存
    //     pSingletonData->m_checkPlanStatus = -1;

    //     // 解析 JSON 数据
    //     QJsonParseError parseError;
    //     QJsonDocument jsonDoc = QJsonDocument::fromJson(outData, &parseError);

    //     if (parseError.error != QJsonParseError::NoError)
    //     {
    //         qWarning() << "JSON 解析错误:" << parseError.errorString();
    //         return;
    //     }

    //     if (!jsonDoc.isObject())
    //     {
    //         qWarning() << "JSON 数据不是对象";
    //         return;
    //     }

    //     QJsonObject jsonObjRoot = jsonDoc.object();

    //     // 检查 code 字段
    //     if (jsonObjRoot["code"].toInt() == 200) {
    //         QJsonObject jsonObjData = jsonObjRoot["data"].toObject();

    //         // 获取 planId 并转换为整数
    //         int planId = jsonObjData["planId"].toInt();

    //         // 获取其他字段
    //         QString planDate = jsonObjData["planDate"].toString();
    //         int planStat = jsonObjData["status"].toInt();
    //         QString strPlanStat = "未定义";

    //         // 根据 status 值设置 strPlanStat
    //         switch (planStat) {
    //         case 0: strPlanStat = "未开始"; break;
    //         case 1: strPlanStat = "进行中"; break;
    //         case 2: strPlanStat = "已完成"; break;
    //         // 添加更多状态...
    //         default: strPlanStat = "未定义";
    //         }
    //         pSingletonData->m_checkPlanStatus = planStat;

    //     } else {
    //         qWarning() << "返回码不为 200，实际为:" << jsonObjRoot["code"].toInt();
    //     }

    // }
}
