forked from cemaden-educacao/WPD-MobileApp
GabrielTrettel
3 years ago
9 changed files with 169 additions and 91 deletions
-
5src/app/api/RequestFieldsAnswers/getFieldsAnswers.js
-
199src/app/components/AssembleModalObject.js
-
1src/app/components/DatePicker.js
-
26src/app/components/MapModal.js
-
18src/app/components/PluviometerGraphics.js
-
2src/app/components/forms/AssembleIngestionObject.js
-
6src/app/hooks/useFiltering.js
-
2src/app/hooks/useSocketMarkers.js
-
1src/app/screens/RiverFloodSharingDataScreen.js
@ -1,7 +1,8 @@ |
|||
import apiClient from "../client"; |
|||
|
|||
const endpoint = "/hot/fieldsanswers?&faid="; |
|||
const endpoint = "/hot/fieldsanswers?"; |
|||
|
|||
const fieldsAnswers = (id) => apiClient.get(endpoint+id); |
|||
const fieldsAnswers = (time, id) => |
|||
apiClient.get(endpoint + `time=${time}&faid=${id}`); |
|||
|
|||
export default { fieldsAnswers }; |
@ -1,86 +1,135 @@ |
|||
import moment from 'moment'; |
|||
import React from 'react' |
|||
import { View, Text } from 'react-native' |
|||
import moment from "moment"; |
|||
import React from "react"; |
|||
import { View, Text } from "react-native"; |
|||
import assets from "../config/assets"; |
|||
|
|||
const custom_assets = { |
|||
pluviometer: assets.pluviometer, |
|||
officialPluviometer: assets.officialPluviometer, |
|||
floodZones: assets.floodZones, |
|||
riverLevel: ["low", "normal", "high", "flooding"].map((key) => { |
|||
return assets.riverLevel[key]; |
|||
}), |
|||
rainLevel: ["rain_0_5", "rain_1_5", "rain_2_5", "rain_3_5"].map((key) => { |
|||
return assets.rainLevel[key]; |
|||
}), |
|||
}; |
|||
|
|||
function getLogo(name, situation) { |
|||
if (name == "automaticPluviometer") { |
|||
return custom_assets.officialPluviometer; |
|||
} |
|||
|
|||
if (name == "pluviometer") { |
|||
return custom_assets.pluviometer; |
|||
} |
|||
|
|||
if (name == "rain") { |
|||
if (situation == "sem chuva") { |
|||
return custom_assets.rainLevel[0]; |
|||
} else if (situation == "chuva fraca") { |
|||
return custom_assets.rainLevel[1]; |
|||
} else if (situation == "chuva moderada") { |
|||
return custom_assets.rainLevel[2]; |
|||
} else if (situation == "chuva forte") { |
|||
return custom_assets.rainLevel[3]; |
|||
} else { |
|||
return custom_assets.rainLevel[3]; |
|||
} |
|||
if (name == "automaticPluviometer") { |
|||
return custom_assets.officialPluviometer; |
|||
} |
|||
|
|||
if (name == "pluviometer") { |
|||
return custom_assets.pluviometer; |
|||
} |
|||
|
|||
if (name == "rain") { |
|||
if (situation == "sem chuva") { |
|||
return custom_assets.rainLevel[0]; |
|||
} else if (situation == "chuva fraca") { |
|||
return custom_assets.rainLevel[1]; |
|||
} else if (situation == "chuva moderada") { |
|||
return custom_assets.rainLevel[2]; |
|||
} else if (situation == "chuva forte") { |
|||
return custom_assets.rainLevel[3]; |
|||
} else { |
|||
return custom_assets.rainLevel[3]; |
|||
} |
|||
|
|||
if (name == "riverFlood") { |
|||
if (situation == "baixo") { |
|||
return custom_assets.riverLevel[0]; |
|||
} else if (situation == "normal") { |
|||
return custom_assets.riverLevel[1]; |
|||
} else if (situation == "alto") { |
|||
return custom_assets.riverLevel[2]; |
|||
} else if (situation == "inundar") { |
|||
return custom_assets.riverLevel[3]; |
|||
} |
|||
} |
|||
|
|||
if (name == "riverFlood") { |
|||
if (situation == "baixo") { |
|||
return custom_assets.riverLevel[0]; |
|||
} else if (situation == "normal") { |
|||
return custom_assets.riverLevel[1]; |
|||
} else if (situation == "alto") { |
|||
return custom_assets.riverLevel[2]; |
|||
} else if (situation == "inundar") { |
|||
return custom_assets.riverLevel[3]; |
|||
} |
|||
if (name == "floodZones") { |
|||
return custom_assets.floodZones; |
|||
} |
|||
return custom_assets.riverLevel[0]; |
|||
} |
|||
if (name == "floodZones") { |
|||
return custom_assets.floodZones; |
|||
} |
|||
} |
|||
|
|||
function verifyMeasureDates(labels, measureDate) { |
|||
if (labels == null || !labels.find((f) => f == measureDate)) { |
|||
labels.push(measureDate); |
|||
} |
|||
} |
|||
|
|||
const AssembleModalObject = (response, name) => { |
|||
var situation = null; |
|||
var user = null; |
|||
var address = null; |
|||
var date = null; |
|||
var time = null; |
|||
var comments = null; |
|||
var pictures = null; |
|||
var data = { |
|||
values: [], |
|||
labels: [], |
|||
}; |
|||
|
|||
if (JSON.parse(response)) { |
|||
const r = JSON.parse(response); |
|||
|
|||
var situation = null; |
|||
var address = null; |
|||
var date = null; |
|||
var time = null; |
|||
var comments = null; |
|||
var pictures = null; |
|||
|
|||
if (r[0].array_to_json) { |
|||
r[0].array_to_json.forEach(function (f) { |
|||
if (f.fieldname == "situation") { |
|||
situation = f.fieldsanswersvalue; |
|||
} |
|||
if (f.fieldname == "eventaddress") { |
|||
address = f.fieldsanswersvalue; |
|||
} |
|||
if (f.fieldname == "eventdate") { |
|||
date = f.fieldsanswersvalue; |
|||
} |
|||
if (f.fieldname == "eventtime") { |
|||
time = f.fieldsanswersvalue; |
|||
} |
|||
if (f.fieldname == "comments") { |
|||
comments = f.fieldsanswersvalue; |
|||
} |
|||
}); |
|||
|
|||
if (name == "automaticPluviometer") { |
|||
(situation = "PLUVIÔMETRO"), |
|||
r[0].array_to_json.forEach(function (f) { |
|||
if (f.fieldname == "medicao") { |
|||
verifyMeasureDates( |
|||
data.labels, |
|||
moment(f.fieldsanswersdtfilling).format("DD/MM") |
|||
); //data.labels.push(moment(f.fieldsanswersdtfilling).format("DD/MM/YYYY"));
|
|||
data.values.push( |
|||
f.fieldsanswersvalue ? parseFloat(f.fieldsanswersvalue) : null |
|||
); |
|||
} |
|||
if (f.fieldname == "siglarede") { |
|||
user = f.fieldsanswersvalue; |
|||
} |
|||
if (f.fieldname == "nome") { |
|||
address = f.fieldsanswersvalue; |
|||
} |
|||
}); |
|||
|
|||
} else { |
|||
if (r[0].array_to_json) { |
|||
r[0].array_to_json.forEach(function (f) { |
|||
if (f.fieldname == "situation") { |
|||
situation = f.fieldsanswersvalue; |
|||
} |
|||
if (f.fieldname == "eventaddress") { |
|||
address = f.fieldsanswersvalue; |
|||
} |
|||
if (f.fieldname == "eventdate") { |
|||
date = f.fieldsanswersvalue; |
|||
} |
|||
if (f.fieldname == "eventtime") { |
|||
time = f.fieldsanswersvalue; |
|||
} |
|||
if (f.fieldname == "comments") { |
|||
comments = f.fieldsanswersvalue; |
|||
} |
|||
}); |
|||
} |
|||
} |
|||
|
|||
return { |
|||
"name": name, |
|||
"title": situation, |
|||
"address": address, |
|||
"date": date + " | " + time, |
|||
"description": comments, |
|||
"logo": getLogo(), |
|||
"pictures": pictures, |
|||
}; |
|||
} |
|||
} |
|||
return { |
|||
name: name, |
|||
title: situation, |
|||
user: user, |
|||
address: address, |
|||
date: date + " | " + time, |
|||
description: comments, |
|||
logo: getLogo(name, situation), |
|||
pictures: pictures, |
|||
data: data, |
|||
}; |
|||
}; |
|||
|
|||
export default AssembleModalObject |
|||
export default AssembleModalObject; |
Write
Preview
Loading…
Cancel
Save
Reference in new issue