UI debugging + git ignore
This commit is contained in:
@@ -2,6 +2,7 @@ import 'package:datetime_picker_formfield/datetime_picker_formfield.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:intl/intl.dart' as intl;
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:oc_front/core/services/specialized_services/logs_service.dart';
|
||||
import 'package:oc_front/core/services/specialized_services/workflow_execution_service.dart';
|
||||
import 'package:oc_front/models/workflow.dart';
|
||||
import 'package:oc_front/pages/abstract_page.dart';
|
||||
@@ -35,6 +36,7 @@ class SchedulerPageWidgetState extends State<SchedulerPageWidget> {
|
||||
"${widget.end.year}-${widget.end.month > 9 ? widget.end.month : "0${widget.end.month}"}-${widget.end.day > 9 ? widget.end.day : "0${widget.end.day}"}"], {}),
|
||||
builder: (ctx, as) {
|
||||
Map<String, List<WorkflowExecution>> data = {};
|
||||
|
||||
if (as.hasData && as.data!.data != null) {
|
||||
for (var element in as.data!.data!.executions) {
|
||||
if (element.executionData == null) { continue; }
|
||||
@@ -47,6 +49,49 @@ class SchedulerPageWidgetState extends State<SchedulerPageWidget> {
|
||||
}
|
||||
}
|
||||
GlobalKey<ScheduleWidgetState> k = GlobalKey<ScheduleWidgetState>();
|
||||
for (var da in data.keys) {
|
||||
for (var exec in data[da]!) {
|
||||
String start = "";
|
||||
String end = "";
|
||||
try {
|
||||
if (exec.endDate != null && exec.endDate != "") {
|
||||
var startD = DateTime.parse(exec.executionData!);
|
||||
var endD = DateTime.parse(exec.endDate!);
|
||||
var diff = endD.difference(startD);
|
||||
if (diff.inDays < 30) {
|
||||
var rest = ((30 - diff.inDays) ~/ 2) - 1;
|
||||
start = (startD.subtract(Duration(days: rest)).microsecondsSinceEpoch).toString();
|
||||
end = (endD.add(Duration(days: rest)).microsecondsSinceEpoch).toString();
|
||||
} else {
|
||||
start = (startD.microsecondsSinceEpoch).toString();
|
||||
end = (startD.add( const Duration(days: 29)).microsecondsSinceEpoch).toString();
|
||||
}
|
||||
} else {
|
||||
start = (DateTime.parse(exec.executionData!).subtract( const Duration(days: 14)).microsecondsSinceEpoch).toString();
|
||||
end = (DateTime.parse(exec.executionData!).add( const Duration(days: 14)).microsecondsSinceEpoch).toString();
|
||||
}
|
||||
} catch(e) { /* */ }
|
||||
k.currentState?.setState(() { k.currentState?.widget.loading = true; });
|
||||
LogsService().search(context, [], {
|
||||
"workflow_execution_id": exec.id,
|
||||
"start": start,
|
||||
"end": end
|
||||
}).then((value) {
|
||||
if (value.data != null) {
|
||||
var d = value.data!;
|
||||
for( var r in d.result) {
|
||||
for (var element in r.logs) {
|
||||
element.level = r.level;
|
||||
exec.logs ??= [];
|
||||
exec.logs!.add(element);
|
||||
}
|
||||
exec.logs?.sort((a, b) => a.timestamp!.compareTo(b.timestamp!));
|
||||
}
|
||||
}
|
||||
k.currentState?.setState(() { k.currentState?.widget.loading = false; });
|
||||
});
|
||||
}
|
||||
}
|
||||
return Column( children: [
|
||||
Container( color: const Color.fromRGBO(38, 166, 154, 1),
|
||||
height: 50, width: MediaQuery.of(context).size.width,
|
||||
@@ -69,7 +114,7 @@ class SchedulerPageWidgetState extends State<SchedulerPageWidget> {
|
||||
validator: (value) {
|
||||
return null;
|
||||
},
|
||||
resetIcon: const Icon(Icons.close, size: 15),
|
||||
resetIcon: null,
|
||||
onShowPicker: (context, currentValue) async {
|
||||
var date = await showDatePicker(
|
||||
builder: (BuildContext context, Widget? child) {
|
||||
@@ -94,6 +139,7 @@ class SchedulerPageWidgetState extends State<SchedulerPageWidget> {
|
||||
);
|
||||
return date;
|
||||
},
|
||||
|
||||
format: intl.DateFormat('y-M-dd hh:mm:ss'),
|
||||
initialValue: widget.start,
|
||||
onChanged: (value) {
|
||||
@@ -126,7 +172,7 @@ class SchedulerPageWidgetState extends State<SchedulerPageWidget> {
|
||||
validator: (value) {
|
||||
return null;
|
||||
},
|
||||
resetIcon: const Icon(Icons.close, size: 15),
|
||||
resetIcon: null,
|
||||
onShowPicker: (context, currentValue) async {
|
||||
var date = await showDatePicker(
|
||||
builder: (BuildContext context, Widget? child) {
|
||||
@@ -176,7 +222,7 @@ class SchedulerPageWidgetState extends State<SchedulerPageWidget> {
|
||||
)
|
||||
]))
|
||||
),
|
||||
ScheduleWidget( key: k, data: data, start: widget.start, end : widget.end, isList: widget.isList )
|
||||
ScheduleWidget( key: k, data: data, start: widget.start, end : widget.end, isList: widget.isList, )
|
||||
]);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ class WorkflowFactory implements AbstractFactory {
|
||||
@override Widget factory(GoRouterState state, List<String> args) { return WorkflowPageWidget(); }
|
||||
@override void search(BuildContext context) { }
|
||||
}
|
||||
bool getAll = true;
|
||||
|
||||
class WorkflowPageWidget extends StatefulWidget {
|
||||
WorkflowPageWidget () : super(key: WorkflowFactory.key);
|
||||
@@ -107,7 +108,6 @@ final WorflowService _service = WorflowService();
|
||||
item.position?.x = (item.position?.x ?? 0) + 52.5;
|
||||
item.position?.y = (item.position?.y ?? 0) + 52.5;
|
||||
}
|
||||
print(dash.getZoomFactor());
|
||||
updateW.graph?.zoom = dash.getZoomFactor();
|
||||
await _service.put(context, id, updateW.serialize(), {});
|
||||
}
|
||||
@@ -128,7 +128,9 @@ final WorflowService _service = WorflowService();
|
||||
Widget menuExtension() {
|
||||
var quart = MediaQuery.of(context).size.width / 6;
|
||||
return MenuWorkspaceWidget(simpliest: true, width: quart > 80 ? quart : 80,
|
||||
onWorkspaceChange: () { dash.selectedLeftMenuKey.currentState?.setState(() { }); });
|
||||
onWorkspaceChange: () {
|
||||
dash.selectedLeftMenuKey.currentState?.setState(() { });
|
||||
});
|
||||
}
|
||||
|
||||
Widget onDashboardAlertOpened(BuildContext context, Dashboard dash) {
|
||||
@@ -148,7 +150,7 @@ final WorflowService _service = WorflowService();
|
||||
dashboard: dash,
|
||||
itemWidget: itemBuild,
|
||||
categories: const ["processing", "data", "datacenter", "storage", "workflows"],
|
||||
draggableItemBuilder: (cat) => WorkspaceLocal.byTopic(cat, true).toList(),
|
||||
draggableItemBuilder: (cat) => WorkspaceLocal.byTopic(cat, false),
|
||||
itemWidgetTooltip: itemTooltipBuild,
|
||||
innerMenuWidth: quart > 80 ? quart : 80,
|
||||
menuExtension: menuExtension,
|
||||
|
||||
Reference in New Issue
Block a user