crtRecommendation function
Future
crtRecommendation(
- dynamic type
)
Implementation
Future crtRecommendation(var type) async {
var node = {};
type == Types.devices
? node = CoreValues.deviceRecommendation
: node = CoreValues.userRecommendation;
var threatRecoList = [];
var recUUID = '';
var recoObjVList = [];
// var recoObjList = [];
for (String threatUUID in CoreValues.uuidThreats) {
var recoLists = '';
try {
var reco = node[threatUUID]!.iterator;
while (reco.moveNext()) {
var impactNode = await reco.current.getValue('impact');
var impact = impactNode.getValue('en');
try {
var recuuidNode = await reco.current.getValue('recuuid');
recUUID = recuuidNode.getValue('en');
} catch (e) {
continue;
}
var impactV = CoreValues.impactValues[impact.toLowerCase()]!;
recoLists += '$recUUID,$impactV;';
//type =="Devices" ? coreValues.deviceThreatScore[threatUUID] = Gspt : coreValues.userThreatScore[threatUUID] = Gspt;
var recoVal = {};
recoVal['weight'] = impactV;
recoVal['id'] = recUUID;
recoVal['type'] = type.toString().toLowerCase();
var shortNode = await reco.current.getValue('short');
recoVal['short'] = shortNode.getValue('en');
recoObjVList.add(recoVal);
}
if(recoLists.isNotEmpty) threatRecoList.add(NodeValueImpl(threatUUID, recoLists));
var threatVal = {};
threatVal['threatId'] = threatUUID;
threatVal['name'] = CoreValues.uuidName[threatUUID].toString().trim();
var recoObj = {};
recoObj['threat'] = threatVal;
recoObj['recommendations'] = recoObjVList;
var recoObjKey = {};
recoObjKey['recommendations'] = recoObj;
type.toString().toLowerCase() == Types.devices.toLowerCase()
? JsonObject.deviceRecoObjList.add(recoObjKey)
: JsonObject.userRecoObjList.add(recoObjKey);
} catch (e) {
continue;
}
}
return threatRecoList;
}