Files
flutter_wisetronic/lib/pages/contact_us.dart
peima fce670664b phase3: nullfix.py batch script — bang/late/param-nullable
Automated null-safety fixes driven by dart analyze (no corruption):
- unchecked_use_of_nullable_value: insert '!' on receiver (property/method/[]/op)
- not_initialized field/var: mark 'late'
- missing_default_value_for_parameter: nullable param
Errors: 2374(peak) -> 907
2026-07-25 18:13:01 +08:00

70 lines
1.6 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart';
import 'package:responsive_builder/responsive_builder.dart';
import '../models/business.dart';
import '../store/actions.dart';
import '../store/store.dart';
import '../utils/http_util.dart';
import '../utils/utils.dart';
import '../widgets/desktop/desktop_contact_us.dart';
import '../widgets/mobile/mobile_contact_us.dart';
class ContactUs extends StatefulWidget {
final int businessId;
const ContactUs({this.businessId, Key? key}) :
super(key: key);
@override
State<StatefulWidget> createState() => ContactUsState();
}
class ContactUsState extends State<ContactUs> {
late Business business;
@override
Widget build(BuildContext context) {
store.dispatch(UpdateContext(context));
if (business == null) {
return new Scaffold(
body: Center(
child: SpinKitWave(
color: Colors.lightBlueAccent,
size: 40.0,
),
),
);
}
return ResponsiveBuilder(
builder: (context, sizingInformation) =>
ScreenTypeLayout(
mobile: MobileContactUs(business),
tablet: DesktopContactUs(business),
desktop: DesktopContactUs(business),
),
);
}
@override
void initState() {
super.initState();
loadData();
}
void loadData() {
HttpUtil.httpGet(
'v1/get-business',
businessId: widget.businessId,
).then((value) {
business = Business.fromJson(value);
setState(() {});
}).onError((error, stackTrace) {
Utils.showMessageDialog(context, error);
});
}
}