first commit

This commit is contained in:
2022-02-08 16:16:13 +05:30
commit 29100d8e86
102 changed files with 3360 additions and 0 deletions

View File

@ -0,0 +1,82 @@
import 'package:get/get_rx/src/rx_types/rx_types.dart';
import 'package:rogaining_jp/models/check_points.dart';
import 'dart:async';
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
class CheckpointService {
static Future<CheckPoint> syncIncident(CheckPoint incident) async {
print(jsonEncode(incident.toFeatureMap()));
String url = 'http://front.lk:8100/api/v1/incidents/';
final response = await http.post(Uri.parse(url),
headers: <String, String>{
'Content-Type': 'application/json; charset=UTF-8',
},
body: jsonEncode(incident.toFeatureMap()),
);
if (response.statusCode == 201) {
return CheckPoint.fromMap(jsonDecode(response.body));
} else {
throw Exception('Failed to create album.');
}
}
static List<CheckPoint> getDistricts() {
return <CheckPoint>[
CheckPoint(
id:1,
lat: 35.3411516,
long: 137.1275938,
title: "日本、〒507-0028 岐阜県多治見市弁天町1丁目47−1"
),
CheckPoint(
id:2,
lat: 35.3681674,
long: 137.2014657,
title: "岐阜県土岐市泉町河合849−1 はま寿司 土岐店",
),
CheckPoint(
id:3,
lat: 35.357564,
long: 137.2430125,
title: "岐阜県瑞浪市南小田町1丁目141 マクドナルド 19号瑞浪店",
),
CheckPoint(
id:4,
lat: 35.3238775,
long: 137.2028726,
title: "岐阜県土岐市下石町1937−3 蕎麦 秋新",
),
CheckPoint(
id:5,
lat: 35.2993208,
long: 137.1594189,
title: "岐阜県多治見市笠原町2082−5 多治見市モザイクタイルミュージアム",
),
CheckPoint(
id:6,
lat: 35.2999321,
long: 137.1268954,
title: "岐阜県多治見市市之倉町4丁目6−30−1 市之倉さかづき美術館",
),
CheckPoint(
id:7,
lat: 35.3180639,
long: 137.13031620000001,
title: "岐阜県多治見市大畑町2丁目150 感謝と挑戦のTYK体育館(多治見市総合体育館)",
),
CheckPoint(
id:7,
lat: 35.3411375,
long: 137.1276928,
title: "岐阜県多治見市大畑町2丁目150 感謝と挑戦のTYK体育館(多治見市総合体育館)",
),
];
}
}

View File

@ -0,0 +1,48 @@
import 'package:flutter/material.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:geojson/geojson.dart';
import 'package:rogaining_jp/models/check_points.dart';
import 'dart:async';
import 'dart:convert';
import 'package:http/http.dart' as http;
import 'package:rogaining_jp/models/rog_event_model.dart';
import 'package:rogaining_jp/widgets/marker_popup_widget.dart';
class RogEventService {
static Future<List<GeoJsonFeature?>> loadRogEvents() async {
List<GeoJsonFeature?> pts = <GeoJsonFeature>[];
final geo = GeoJson();
geo.processedFeatures.listen((GeoJsonFeature feature) {
//GeoJsonMultiPoint g = feature.geometry;
//print(g.geoSerie!.geoPoints.first.longitude);
//print(<GeoJsonMultiPoint>feature.geometry);
pts.add(feature);
});
geo.endSignal.listen((_) => geo.dispose());
String url = 'http://localhost:8100/api/v1/rog/';
final response = await http.get(Uri.parse(url),
headers: <String, String>{
'Content-Type': 'application/json; charset=UTF-8',
},
);
if (response.statusCode == 200) {
String objs = response.body;
print(objs);
await geo.parse(response.body, verbose: false);
return pts;
} else {
throw Exception('Failed to create album.');
}
}
}

View File

@ -0,0 +1,45 @@
import 'package:flutter/material.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:geojson/geojson.dart';
import 'package:rogaining_jp/models/check_points.dart';
import 'dart:async';
import 'dart:convert';
import 'package:http/http.dart' as http;
import 'package:rogaining_jp/models/rog_event_model.dart';
import 'package:rogaining_jp/widgets/marker_popup_widget.dart';
class RogRouteService {
static Future<List<GeoJsonFeature?>> loadRogRoutes() async {
List<GeoJsonFeature?> routes = <GeoJsonFeature>[];
final geo = GeoJson();
geo.processedFeatures.listen((GeoJsonFeature feature) {
routes.add(feature);
});
geo.endSignal.listen((_) => geo.dispose());
String url = 'http://localhost:8100/api/v1/eventroute/';
final response = await http.get(Uri.parse(url),
headers: <String, String>{
'Content-Type': 'application/json; charset=UTF-8',
},
);
if (response.statusCode == 200) {
String objs = response.body;
print(objs);
await geo.parse(response.body, verbose: false);
return routes;
} else {
throw Exception('Failed to create album.');
}
}
}