Files
FlutterUnit/lib/tools/initial.dart
toly 0dfe274d18 .
2020-04-13 16:06:43 +08:00

47 lines
1.3 KiB
Dart

import 'dart:convert';
import 'package:flutter/services.dart';
import 'package:flutter_unit/app/app_storage.dart';
import 'package:flutter_unit/tools/node_data.dart';
import 'package:flutter_unit/database/flutter_db.dart';
import 'package:flutter_unit/database/node_dao.dart';
import 'package:flutter_unit/database/po/node_po.dart';
import 'package:flutter_unit/database/po/widget_po.dart';
import 'package:flutter_unit/database/widget_dao.dart';
/// create by 张风捷特烈 on 2020-03-04
/// contact me by email 1981462002@qq.com
/// 说明:
class Initial {
static var appStorage = AppStorage();
static init() async {
var widgetDao = WidgetDao(appStorage);
var nodeDao = NodeDao(appStorage);
await FlutterDb.db.initDB();
var jsonStr = await rootBundle.loadString('assets/data/widget.json');
var widgets = (json.decode(jsonStr)["items"] as List)
.map((item) => WidgetPo.fromJson(item))
.toList();
widgets.forEach((widget) async {
print("insert:${widget.name}");
await widgetDao.insert(widget);
});
nodeData.values.forEach((nodes) {
nodes.forEach((nodeMap) async {
var node = NodePo.fromJson(nodeMap);
nodeDao.insert(node);
print("insert:${node.name}");
});
});
print("============Complete==================");
}
}