Skip to content

Commit

Permalink
Merge pull request #24 from yayacat/Release
Browse files Browse the repository at this point in the history
fix: report
  • Loading branch information
yayacat authored Jan 10, 2024
2 parents 1e04a3a + 40eae34 commit c3d7e33
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 23 deletions.
17 changes: 11 additions & 6 deletions lib/view/earthquake.dart
Original file line number Diff line number Diff line change
Expand Up @@ -349,8 +349,13 @@ class _EarthquakePage extends State<EarthquakePage> {
));
} else {
for (var i = 0; i < data.length; i++) {
int level = data[i]["data"][0]["areaIntensity"];
var keys = data[i]["list"].keys.toList();
int level = data[i]["list"][keys[0]]["int"];
String Lv_str = int_to_str_en(level);
var dateTime = DateTime.fromMillisecondsSinceEpoch(data[i]["time"]);
var dateStr = "${dateTime.year}-${dateTime.month.toString().padLeft(2, '0')}-${dateTime.day.toString().padLeft(2, '0')}";
var timeStr = "${dateTime.hour.toString().padLeft(2, '0')}:${dateTime.minute.toString().padLeft(2, '0')}:${dateTime.second.toString().padLeft(2, '0')}";
var formatted = "$dateStr $timeStr";
_List_children.add(
Card(
color: const Color(0xff333439),
Expand Down Expand Up @@ -399,17 +404,17 @@ class _EarthquakePage extends State<EarthquakePage> {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
data[i]["location"]
.substring(data[i]["location"].indexOf("(") + 1,
data[i]["location"].indexOf(")"))
data[i]["loc"]
.substring(data[i]["loc"].indexOf("(") + 1,
data[i]["loc"].indexOf(")"))
.replaceAll("位於", ""),
style: const TextStyle(
fontSize: 22,
fontWeight: FontWeight.w900,
color: Colors.white),
),
Text(
data[i]["originTime"].toString().substring(0, 16),
formatted,
style: const TextStyle(
fontSize: 16,
fontWeight: FontWeight.w300,
Expand All @@ -418,7 +423,7 @@ class _EarthquakePage extends State<EarthquakePage> {
],
),
trailing: Text(
"M ${data[i]["magnitudeValue"].toStringAsFixed(1)}",
"M ${data[i]["mag"].toStringAsFixed(1)}",
style: const TextStyle(
fontSize: 26,
fontWeight: FontWeight.w600,
Expand Down
40 changes: 23 additions & 17 deletions lib/view/report.dart
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ class _ReportPage extends State<ReportPage> {
@override
void initState() {
data = ReportPage.data;
earthquakeNo = data["earthquakeNo"].toStringAsFixed(0);
earthquakeNo = data["no"].toStringAsFixed(0);
var last3 = earthquakeNo.substring(earthquakeNo.length - 3);

if (last3 != '000') {
Expand All @@ -44,13 +44,19 @@ class _ReportPage extends State<ReportPage> {
earthquakeNo = "";
}

level = data["data"][0]["areaIntensity"];
var keys = data["list"].keys.toList();
level = data["list"][keys[0]]["int"];
Lv_str = int_to_str_en(level);
_expanded = List<bool>.generate(data["data"].length, (index) => false);
_expanded = List<bool>.generate(data["list"].length, (index) => false);

var dateTime = DateTime.fromMillisecondsSinceEpoch(data["time"]);
var dateStr = "${dateTime.year}-${dateTime.month.toString().padLeft(2, '0')}-${dateTime.day.toString().padLeft(2, '0')}";
var timeStr = "${dateTime.hour.toString().padLeft(2, '0')}:${dateTime.minute.toString().padLeft(2, '0')}:${dateTime.second.toString().padLeft(2, '0')}";
var formatted = "$dateStr $timeStr";

Marker ep_marker = Marker(
point: LatLng(
data["epicenterLat"].toDouble(), data["epicenterLon"].toDouble()),
data["lat"].toDouble(), data["lon"].toDouble()),
builder: (ctx) => Stack(
alignment: Alignment.center,
children: [
Expand Down Expand Up @@ -156,7 +162,7 @@ class _ReportPage extends State<ReportPage> {
),
),
Text(
data["originTime"].toString().substring(0, 16),
formatted,
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.w600,
Expand All @@ -177,9 +183,9 @@ class _ReportPage extends State<ReportPage> {
),
),
Text(
data["location"]
.substring(data["location"].indexOf("(") + 1,
data["location"].indexOf(")"))
data["loc"]
.substring(data["loc"].indexOf("(") + 1,
data["loc"].indexOf(")"))
.replaceAll("位於", ""),
style: TextStyle(
fontSize: 20,
Expand All @@ -203,7 +209,7 @@ class _ReportPage extends State<ReportPage> {
children: [
Expanded(
child: Text(
"規模: \u3000 M ${data["magnitudeValue"].toStringAsFixed(1)}",
"規模: \u3000 M ${data["mag"].toStringAsFixed(1)}",
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.w600,
Expand All @@ -227,7 +233,7 @@ class _ReportPage extends State<ReportPage> {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"規模: \u3000 M ${data["magnitudeValue"].toStringAsFixed(1)}",
"規模: \u3000 M ${data["mag"].toStringAsFixed(1)}",
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.w600,
Expand Down Expand Up @@ -271,20 +277,20 @@ class _ReportPage extends State<ReportPage> {
),
);

data["data"].forEach((area) {
data["list"].keys.forEach((area) {
_expanded.add(false);
List<Widget> areaChildren = [];
var maxStationLevel = 0;

area["eqStation"].forEach((station) {
var station_level = station["stationIntensity"];
data["list"][area]["town"].keys.forEach((station) {
var station_level = data["list"][area]["town"][station]["int"];
var st_Lv_str = int_to_str_en(station_level);
if (station_level > maxStationLevel) {
maxStationLevel = station_level;
}
Marker marker = Marker(
point: LatLng(station["stationLat"].toDouble(),
station["stationLon"].toDouble()),
point: LatLng(data["list"][area]["town"][station]["lat"].toDouble(),
data["list"][area]["town"][station]["lon"].toDouble()),
builder: (ctx) => Stack(
alignment: Alignment.center,
children: [
Expand Down Expand Up @@ -318,7 +324,7 @@ class _ReportPage extends State<ReportPage> {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"${station["stationName"]}",
"${station}",
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.w600,
Expand Down Expand Up @@ -358,7 +364,7 @@ class _ReportPage extends State<ReportPage> {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"${area["areaName"]}",
"${area}",
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.w600,
Expand Down

0 comments on commit c3d7e33

Please sign in to comment.