#include "remotepackconfig.h" #include "globalinfo.h" RemotePackConfig::RemotePackConfig(QObject *parent) : QObject(parent) { connect(&_request,&HttpRequest::result,this,&RemotePackConfig::result); } void RemotePackConfig::refConfig() { GlobalInfo * glo = GlobalInfo::this_(); // _aid = QString::number(body["user_id"].toInt()); // _token = body["access_token"].toString(); _request.setUserToken(QString::number( glo->user().accountId) ,glo->user().acessToken); QString url = glo->config().baseUrl + "/v1/configuration"; _request.get(url); } void RemotePackConfig::result(int code, const QJsonObject & body) { int ecode = body.value("code").toInt(404); if(ecode != 200){ emit configUpdateError(ecode,body.value("message").toString("")); return; } QJsonArray object = body.value("data").toArray(); _config.jitai = getConfig(object, "A1000100");//机台 _config.dangchegongbanci = getConfig(object, "A1000101");//挡车工班次 _config.dabaogongbanci = getConfig(object, "A1000102");//机台 _config.xiangzhong = getConfig(object, "A1000103");//箱重 _config.tongzhong = getConfig(object, "A1000104");//筒重 _config.guanse = getConfig(object, "A1000105");//管色 _config.nianxiang = getConfig(object, "A1000106");//捻向 _config.zhixiang = getConfig(object, "A1000107");//纸箱 _config.mashu = getConfig(object, "A1000108");//码数 _config.chezhong = getConfig(object, "A1000109");//车重 _config.ganghao = getConfig(object, "A1000110");//缸号 _config.xianghaoxianshiguize = getConfig(object, "A1000111");//箱号显示规则 _config.dabaojiruku = getConfig(object, "A1000112");//打包即入库 _config.dabaoriqishijianxianshifangshi = getConfig(object, "A100013");//打包日期时间显示方式 emit configUpdate(_config); } QStringList RemotePackConfig::getConfig(const QJsonArray & data,const QString & key) { // QJsonArray data_array = data; QStringList list; int nSize = data.size(); for (int i = 0; i < nSize; ++i) { QJsonValue data_content = data.at(i); if (data_content.isObject()) { QJsonObject data_object = data_content.toObject(); if(data_object["key"]==key){ QJsonValue value = data_object.value("value"); if (value.isArray()) { QJsonArray value_array = value.toArray(); int vSize = value_array.size(); for(int i = 0; i < vSize; ++i){ QJsonValue value_content = value_array.at(i); if(value_content.isObject()){ QJsonObject value_object = value_content.toObject(); QString option; if(value_object["value"].isString()) { option = value_object["value"].toString(); } if(value_object["value"].isDouble()) { double mid_key = value_object["value"].toDouble(); option = QString::number(mid_key); } list.append(option); } } } } } } return list; }