Merge branch 'master' into newHost

# Conflicts:
#	lib/constants/application_objects.dart
#	lib/pages/home/home_page.dart
#	pubspec.yaml
pull/1/head
张萌 3 years ago
commit 04dd9c7e48

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 478 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

@ -153,8 +153,32 @@ class _Search {
String get homeSearch => "/user/search/search";
}
class _Task {
///
String get hallList => '/user/taskRelease/list';
///
String get myTask => '/user/taskRelease/myList';
///
String get myTakeTask => '/user/taskRelease/myOrder';
///
String get publish => '/user/taskRelease/insert';
///
String get cancel => '/user/taskRelease/cancel';
///
String get take => '/user/taskRelease/access';
///
String get finish => '/user/taskRelease/finish';
}
class _Manager {
_Facility facility = _Facility();
_Task task = _Task();
///
String get commiteeStaff => '/ownersCommittee/findAll';

@ -31,6 +31,7 @@ import 'package:aku_new_community/ui/manager/questionnaire/questionnaire_page.da
import 'package:aku_new_community/ui/profile/car/car_manage_page.dart';
import 'package:aku_new_community/ui/profile/car_parking/car_parking_page.dart';
import 'package:aku_new_community/ui/profile/house/house_owners_page.dart';
import 'package:aku_new_community/ui/service/task_page.dart';
import 'package:flutter/material.dart';
///
@ -99,7 +100,7 @@ List<AO> appObjects = [
AO('住房说明', R.ASSETS_ICONS_FUNC_ZFSM_PNG, () => HouseIntroducePage()),
AO('智慧养老', Assets.icons.provideAged.path, () => OldAgeSupportPageSimple()),
AO('周边服务', Assets.icons.nearbyService.path, null),
AO('小蜜蜂任务', Assets.icons.beeTask.path, null),
AO('小蜜蜂任务', Assets.icons.beeTask.path, () => TaskPage()),
AO('自营商城', Assets.icons.shoppingMall.path, null),
AO('邻家宠物', Assets.icons.nearbyPet.path, null),
AO('共享停车', Assets.icons.sharePark.path, null),

@ -0,0 +1,11 @@
import 'package:flutter/material.dart';
extension ColorExt on Color {
///
Color get complementary {
var r = ~this.red;
var g = ~this.green;
var b = ~this.blue;
return Color.fromARGB(this.alpha, r, g, b);
}
}

@ -190,6 +190,10 @@ class $AssetsIconsGen {
/// File path: assets/icons/change.png
AssetGenImage get change => const AssetGenImage('assets/icons/change.png');
/// File path: assets/icons/clock_circle.png
AssetGenImage get clockCircle =>
const AssetGenImage('assets/icons/clock_circle.png');
/// File path: assets/icons/clock_success.png
AssetGenImage get clockSuccess =>
const AssetGenImage('assets/icons/clock_success.png');
@ -246,6 +250,13 @@ class $AssetsIconsGen {
AssetGenImage get deviceAlarm =>
const AssetGenImage('assets/icons/device_alarm.png');
/// File path: assets/icons/edit.png
AssetGenImage get edit => const AssetGenImage('assets/icons/edit.png');
/// File path: assets/icons/environment.png
AssetGenImage get environment =>
const AssetGenImage('assets/icons/environment.png');
/// File path: assets/icons/examine.png
AssetGenImage get examine => const AssetGenImage('assets/icons/examine.png');
@ -670,6 +681,10 @@ class $AssetsIconsGen {
/// File path: assets/icons/phone.png
AssetGenImage get phone => const AssetGenImage('assets/icons/phone.png');
/// File path: assets/icons/phone_circle.png
AssetGenImage get phoneCircle =>
const AssetGenImage('assets/icons/phone_circle.png');
/// File path: assets/icons/projection_screen.png
AssetGenImage get projectionScreen =>
const AssetGenImage('assets/icons/projection_screen.png');
@ -695,6 +710,9 @@ class $AssetsIconsGen {
/// File path: assets/icons/report.png
AssetGenImage get report => const AssetGenImage('assets/icons/report.png');
/// File path: assets/icons/reward.png
AssetGenImage get reward => const AssetGenImage('assets/icons/reward.png');
/// File path: assets/icons/second_hand.png
AssetGenImage get secondHand =>
const AssetGenImage('assets/icons/second_hand.png');
@ -804,6 +822,9 @@ class $AssetsIconsGen {
AssetGenImage get tabbarUserNo =>
const AssetGenImage('assets/icons/tabbar_user_no.png');
/// File path: assets/icons/tag.png
AssetGenImage get tag => const AssetGenImage('assets/icons/tag.png');
/// File path: assets/icons/test_kingcion.png
AssetGenImage get testKingcion =>
const AssetGenImage('assets/icons/test_kingcion.png');

@ -8,7 +8,6 @@
import 'package:device_info_plus_web/device_info_plus_web.dart';
import 'package:image_picker_for_web/image_picker_for_web.dart';
import 'package:package_info_plus_web/package_info_plus_web.dart';
import 'package:shared_preferences_web/shared_preferences_web.dart';
import 'package:url_launcher_web/url_launcher_web.dart';
import 'package:flutter_web_plugins/flutter_web_plugins.dart';
@ -18,7 +17,6 @@ void registerPlugins(Registrar registrar) {
DeviceInfoPlusPlugin.registerWith(registrar);
ImagePickerPlugin.registerWith(registrar);
PackageInfoPlugin.registerWith(registrar);
SharedPreferencesPlugin.registerWith(registrar);
UrlLauncherPlugin.registerWith(registrar);
registrar.registerMessageHandler();
}

@ -51,31 +51,37 @@ class _MyAppState extends State<MyApp> {
FocusManager.instance.primaryFocus!.unfocus();
}
},
child: ScreenUtilInit(
designSize: Size(750, 1334),
builder: () => GetMaterialApp(
onGenerateTitle: (context) => S.of(context)!.appName,
debugShowCheckedModeBanner: false,
theme: AppTheme.theme,
home: SplashPage(),
//
localizationsDelegates: [
S.delegate,
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
supportedLocales: [const Locale('zh')],
locale: Locale('zh'),
//builder: BotToastInit(),
builder: (context, child) {
return MediaQuery(
//
data: MediaQuery.of(context).copyWith(textScaleFactor: 1.0),
child: BotToastInit().call(context, child),
);
},
navigatorObservers: [BotToastNavigatorObserver()],
child: MediaQuery(
data: MediaQueryData.fromWindow(WidgetsBinding.instance!.window),
child: ScreenUtilInit(
designSize: Size(750, 1334),
// minTextAdapt: true,
// splitScreenMode: true,
builder: () => GetMaterialApp(
onGenerateTitle: (context) => S.of(context)!.appName,
debugShowCheckedModeBanner: false,
theme: AppTheme.theme,
home: SplashPage(),
//
localizationsDelegates: [
S.delegate,
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
supportedLocales: [const Locale('zh')],
locale: Locale('zh'),
//builder: BotToastInit(),
builder: (context, child) {
ScreenUtil.setContext(context);
return MediaQuery(
//
data: MediaQuery.of(context).copyWith(textScaleFactor: 1.0),
child: BotToastInit().call(context, child),
);
},
navigatorObservers: [BotToastNavigatorObserver()],
),
),
),
),

@ -1,5 +1,5 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class ActivityDetailModel {
int? id;

@ -1,6 +1,6 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
class ActivityItemModel {

@ -1,5 +1,5 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class BoardItemModel {
int? id;

@ -1,5 +1,5 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class EventItemModel {
int? id;
@ -30,10 +30,12 @@ class EventItemModel {
this.gambitTitle,
this.createDate,
this.likeNames,
this.likeNamesNum,
this.likeNamesNum,
this.imgUrls,
this.headSculptureImgUrl,
this.gambitThemeCommentVoList,this.gambitThemeCommentNum,this.views});
this.gambitThemeCommentVoList,
this.gambitThemeCommentNum,
this.views});
EventItemModel.fromJson(Map<String, dynamic> json) {
id = json['id'];

@ -1,5 +1,5 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class MyEventItemModel {
int? id;

@ -1,5 +1,5 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class AdviceDetailModel {
AppAdviceDetailVo? appAdviceDetailVo;

@ -1,5 +1,5 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class SuggestionOrComplainModel {
int? id;

@ -1,4 +1,4 @@
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class VisitorListItemModel {
int? id;

@ -1,4 +1,4 @@
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';

@ -1,4 +1,4 @@
// import 'package:flustars/flustars.dart';
// import 'package:common_utils/common_utils.dart';
// import 'package:flutter/material.dart';
//
// class HouseModel {

@ -1,5 +1,5 @@
import 'package:common_utils/common_utils.dart';
import 'package:equatable/equatable.dart';
import 'package:flustars/flustars.dart';
import 'package:json_annotation/json_annotation.dart';
part 'express_package_list_model.g.dart';

@ -1,5 +1,5 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:json_annotation/json_annotation.dart';

@ -1,5 +1,5 @@
import 'package:common_utils/common_utils.dart';
import 'package:equatable/equatable.dart';
import 'package:flustars/flustars.dart';
import 'package:json_annotation/json_annotation.dart';
part 'facility_order_date_list_model.g.dart';

@ -1,5 +1,5 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class GeographicInformationModel {
int? id;

@ -1,5 +1,5 @@
import 'package:common_utils/common_utils.dart';
import 'package:equatable/equatable.dart';
import 'package:flustars/flustars.dart';
import 'package:json_annotation/json_annotation.dart';
part 'lease_fee_list_model.g.dart';

@ -1,5 +1,5 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class HouseIntroduceModel {
int? id;

@ -6,14 +6,14 @@ part 'good_detail_model.g.dart';
@JsonSerializable()
class GoodDetailModel {
final int id;
final List<JcookImageVoList> jcookImageVoList;
final List<JcookImageVoList>? jcookImageVoList;
final num sellPrice;
final num discountPrice;
final String skuName;
final String? skuName;
final int status;
final int shopStatus;
final int sellNum;
final int kind;
final int? sellNum;
final int? kind;
final String defaultLocation;
final String defaultAddressDetail;
final int stockStatus;
@ -25,8 +25,7 @@ class GoodDetailModel {
factory GoodDetailModel.fromJson(Map<String, dynamic> json) =>
_$GoodDetailModelFromJson(json);
GoodStatus get goodStatus =>
ShopCarFunc.getGoodsStatus(status ?? 1, shopStatus ?? 1);
GoodStatus get goodStatus => ShopCarFunc.getGoodsStatus(status, shopStatus);
static GoodDetailModel fail() => GoodDetailModel(
id: 0,
@ -102,8 +101,8 @@ class JcookSpecificationVoList {
@JsonSerializable()
class Attribute {
final String name;
final String value;
final String? name;
final String? value;
factory Attribute.fromJson(Map<String, dynamic> json) =>
_$AttributeFromJson(json);

@ -5,7 +5,7 @@ part 'market_all_category_model.g.dart';
@JsonSerializable()
class MarketAllCategoryModel {
final int id;
final String name;
final String? name;
final List<String> imgUrls;
final List<MarketAllCategoryModel> categoryList;
factory MarketAllCategoryModel.fromJson(Map<String, dynamic> json) =>

@ -6,7 +6,7 @@ part 'market_category_model.g.dart';
@JsonSerializable()
class MarketCategoryModel extends Equatable {
final int id;
final String name;
final String? name;
final List<String> imgUrls;
@override

@ -1,6 +1,6 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:common_utils/common_utils.dart';
import 'package:equatable/equatable.dart';
import 'package:flustars/flustars.dart';
import 'package:flutter/material.dart';
import 'package:json_annotation/json_annotation.dart';

@ -1,4 +1,4 @@
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:json_annotation/json_annotation.dart';
part 'announce_list_model.g.dart';

@ -1,6 +1,6 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:common_utils/common_utils.dart';
import 'package:equatable/equatable.dart';
import 'package:flustars/flustars.dart';
import 'package:flutter/material.dart';
import 'package:json_annotation/json_annotation.dart';

@ -1,5 +1,5 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:json_annotation/json_annotation.dart';
part 'news_item_model.g.dart';

@ -1,5 +1,5 @@
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class SurroundingEnterprisesModel {
int? id;

@ -0,0 +1,40 @@
import 'package:json_annotation/json_annotation.dart';
part 'hall_list_model.g.dart';
@JsonSerializable()
class HallListModel {
final int id;
final String title;
final int status;
final int type;
final int sex;
final int serviceObject;
final String content;
final String appointmentDate;
final String appointmentAddress;
final int rewardType;
final int reward;
final int createType;
final String? createName;
final String createDate;
factory HallListModel.fromJson(Map<String, dynamic> json) =>
_$HallListModelFromJson(json);
const HallListModel({
required this.id,
required this.title,
required this.status,
required this.type,
required this.sex,
required this.serviceObject,
required this.content,
required this.appointmentDate,
required this.appointmentAddress,
required this.rewardType,
required this.reward,
required this.createType,
this.createName,
required this.createDate,
});
}

@ -0,0 +1,25 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'hall_list_model.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
HallListModel _$HallListModelFromJson(Map<String, dynamic> json) =>
HallListModel(
id: json['id'] as int,
title: json['title'] as String,
status: json['status'] as int,
type: json['type'] as int,
sex: json['sex'] as int,
serviceObject: json['serviceObject'] as int,
content: json['content'] as String,
appointmentDate: json['appointmentDate'] as String,
appointmentAddress: json['appointmentAddress'] as String,
rewardType: json['rewardType'] as int,
reward: json['reward'] as int,
createType: json['createType'] as int,
createName: json['createName'] as String?,
createDate: json['createDate'] as String,
);

@ -0,0 +1,41 @@
import 'package:json_annotation/json_annotation.dart';
part 'my_take_task_list_model.g.dart';
@JsonSerializable()
class MyTakeTaskListModel {
final int id;
final String title;
final int status;
final int type;
final int sex;
final int serviceObject;
final String content;
final String appointmentDate;
final String appointmentAddress;
final int rewardType;
final int reward;
final int createType;
final String? createName;
final String createDate;
factory MyTakeTaskListModel.fromJson(Map<String, dynamic> json) =>
_$MyTakeTaskListModelFromJson(json);
const MyTakeTaskListModel({
required this.id,
required this.title,
required this.status,
required this.type,
required this.sex,
required this.serviceObject,
required this.content,
required this.appointmentDate,
required this.appointmentAddress,
required this.rewardType,
required this.reward,
required this.createType,
this.createName,
required this.createDate,
});
}

@ -0,0 +1,25 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'my_take_task_list_model.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
MyTakeTaskListModel _$MyTakeTaskListModelFromJson(Map<String, dynamic> json) =>
MyTakeTaskListModel(
id: json['id'] as int,
title: json['title'] as String,
status: json['status'] as int,
type: json['type'] as int,
sex: json['sex'] as int,
serviceObject: json['serviceObject'] as int,
content: json['content'] as String,
appointmentDate: json['appointmentDate'] as String,
appointmentAddress: json['appointmentAddress'] as String,
rewardType: json['rewardType'] as int,
reward: json['reward'] as int,
createType: json['createType'] as int,
createName: json['createName'] as String?,
createDate: json['createDate'] as String,
);

@ -0,0 +1,40 @@
import 'package:json_annotation/json_annotation.dart';
part 'my_task_list_model.g.dart';
@JsonSerializable()
class MyTaskListModel {
final int id;
final String title;
final int status;
final int type;
final int sex;
final int serviceObject;
final String content;
final String appointmentDate;
final String appointmentAddress;
final int rewardType;
final int reward;
final int createType;
final String? createName;
final String createDate;
factory MyTaskListModel.fromJson(Map<String, dynamic> json) =>
_$MyTaskListModelFromJson(json);
const MyTaskListModel({
required this.id,
required this.title,
required this.status,
required this.type,
required this.sex,
required this.serviceObject,
required this.content,
required this.appointmentDate,
required this.appointmentAddress,
required this.rewardType,
required this.reward,
required this.createType,
this.createName,
required this.createDate,
});
}

@ -0,0 +1,25 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'my_task_list_model.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
MyTaskListModel _$MyTaskListModelFromJson(Map<String, dynamic> json) =>
MyTaskListModel(
id: json['id'] as int,
title: json['title'] as String,
status: json['status'] as int,
type: json['type'] as int,
sex: json['sex'] as int,
serviceObject: json['serviceObject'] as int,
content: json['content'] as String,
appointmentDate: json['appointmentDate'] as String,
appointmentAddress: json['appointmentAddress'] as String,
rewardType: json['rewardType'] as int,
reward: json['reward'] as int,
createType: json['createType'] as int,
createName: json['createName'] as String?,
createDate: json['createDate'] as String,
);

@ -1,5 +1,5 @@
import 'package:common_utils/common_utils.dart';
import 'package:equatable/equatable.dart';
import 'package:flustars/flustars.dart';
import 'package:flutter/material.dart';
import 'package:json_annotation/json_annotation.dart';

@ -4,7 +4,7 @@ import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:aku_new_community/models/electronic_commerc/electronic_commerc_list_model.dart';
import 'package:aku_new_community/pages/electronic_commerc/electronic_commerc_detail_page.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';

@ -5,7 +5,7 @@ import 'package:aku_new_community/utils/network/base_model.dart';
import 'package:aku_new_community/utils/network/net_util.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';

@ -3,7 +3,6 @@ import 'package:aku_new_community/provider/app_provider.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:aku_new_community/widget/dotted_line.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_icons/flutter_icons.dart';
import 'package:get/get.dart';

@ -3,7 +3,6 @@
import 'dart:io';
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/constants/app_theme.dart';
import 'package:aku_new_community/pages/goods_deto_page/select_move_company_page.dart';
@ -22,7 +21,7 @@ import 'package:aku_new_community/widget/buttons/bottom_button.dart';
import 'package:aku_new_community/widget/picker/bee_date_picker.dart';
import 'package:aku_new_community/widget/picker/grid_image_picker.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';

@ -10,12 +10,10 @@ import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:aku_new_community/widget/buttons/bottom_button.dart';
import 'package:aku_new_community/widget/buttons/radio_button.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:get/get.dart';
import 'package:provider/provider.dart';
import 'package:velocity_x/velocity_x.dart';
import 'widget/goods_info_card.dart';

@ -3,7 +3,6 @@ import 'package:aku_new_community/model/manager/goods_out_model.dart';
import 'package:aku_new_community/utils/bee_map.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/views/horizontal_image_view.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'goods_info_card_button.dart';

@ -1,4 +1,3 @@
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:aku_new_community/model/manager/article_borrow_model.dart';
@ -9,11 +8,9 @@ import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:aku_new_community/widget/buttons/bottom_button.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:get/get.dart';
import 'package:velocity_x/velocity_x.dart';
class GoodsManagePage extends StatefulWidget {
final bool isBorrow;

@ -8,7 +8,6 @@ import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/utils/network/base_model.dart';
import 'package:aku_new_community/utils/network/net_util.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:get/get.dart';

@ -1,13 +1,12 @@
// Dart imports:
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/constants/application_objects.dart';
import 'package:aku_new_community/extensions/color_ext.dart';
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:aku_new_community/model/community/activity_item_model.dart';
import 'package:aku_new_community/model/community/board_model.dart';
import 'package:aku_new_community/model/community/swiper_model.dart';
import 'package:aku_new_community/pages/home/widget/animate_app_bar.dart';
import 'package:aku_new_community/pages/message_center_page/message_center_page.dart';
import 'package:aku_new_community/pages/one_alarm/widget/alarm_page.dart';
import 'package:aku_new_community/pages/visitor_access_page/visitor_access_page.dart';
@ -27,18 +26,16 @@ import 'package:aku_new_community/widget/others/rectIndicator.dart';
import 'package:aku_new_community/widget/others/user_tool.dart';
import 'package:badges/badges.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flutter/cupertino.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:card_swiper/card_swiper.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:flutter_swiper_null_safety/flutter_swiper_null_safety.dart';
import 'package:get/get.dart';
import 'package:jpush_flutter/jpush_flutter.dart';
import 'package:palette_generator/palette_generator.dart';
import 'package:power_logger/power_logger.dart';
import 'package:provider/provider.dart';
import 'package:velocity_x/velocity_x.dart';
import 'widget/home_search.dart';
class HomePage extends StatefulWidget {
HomePage({Key? key}) : super(key: key);
@ -62,11 +59,16 @@ class _HomePageState extends State<HomePage>
int sysCount = 0;
int sum = 0;
int _currentSwiperIndex = 0;
// ActivityItemModel? _activityItemModel;
List<ActivityItemModel> _activityItemModels = [];
List<BoardItemModel> _boardItemModels = [];
List<SwiperModel> _swiperModels = [];
SwiperController _swiperController = SwiperController();
ValueNotifier<Color> _barColor = ValueNotifier(Colors.transparent);
@override
void initState() {
super.initState();
@ -81,12 +83,19 @@ class _HomePageState extends State<HomePage>
}
_scrollController = ScrollController();
_refreshController = EasyRefreshController();
_swiperController.addListener(() {
//onChangeIndex_currentSwiperIndexindex1+1index;
_swiperBarColor((_currentSwiperIndex + 1) % 3);
});
SystemChrome.setSystemUIOverlayStyle(
SystemUiOverlayStyle(statusBarColor: Colors.transparent));
}
@override
void dispose() {
_refreshController.dispose();
_scrollController?.dispose();
_swiperController.dispose();
super.dispose();
}
@ -97,11 +106,51 @@ class _HomePageState extends State<HomePage>
commentCount = appProvider.messageCenterModel.commentCount ?? 0;
sysCount = appProvider.messageCenterModel.sysCount ?? 0;
sum = commentCount + sysCount;
return Scaffold(
extendBodyBehindAppBar: true,
appBar: AnimateAppBar(
scrollController: _scrollController,
actions: [
var head = ValueListenableBuilder(
valueListenable: _barColor,
builder: (context, Color color, child) {
return Container(
padding: EdgeInsets.only(top: MediaQuery.of(context).padding.top),
decoration: BoxDecoration(
border: Border.all(width: 0, color: color),
color: color,
),
width: double.infinity,
child: child,
);
},
child: Padding(
padding: EdgeInsets.symmetric(vertical: 16.w, horizontal: 16.w),
child: Row(crossAxisAlignment: CrossAxisAlignment.center, children: [
if (appProvider.location != null)
Padding(
padding: const EdgeInsets.only(right: 5),
child: Image.asset(
R.ASSETS_ICONS_ICON_MAIN_LOCATION_PNG,
width: 32.w,
height: 32.w,
),
),
Text(
appProvider.location?['city'] == null
? ''
: appProvider.location?['city'] as String? ?? '',
style: TextStyle(
fontWeight: FontWeight.w600,
fontSize: 24.sp,
color: Color(0xff333333),
),
textAlign: TextAlign.center,
),
Text(
'(${appProvider.weatherType} ${appProvider.weatherTemp}℃)',
style: TextStyle(
fontSize: 24.sp,
color: Color(0xff999999),
),
textAlign: TextAlign.center,
),
Spacer(),
GestureDetector(
onTap: () {
Get.to(() => BeeSearch());
@ -134,292 +183,307 @@ class _HomePageState extends State<HomePage>
height: 40.w, width: 40.w),
)),
),
],
]),
),
body: Stack(
children: [
EasyRefresh(
controller: _refreshController,
header: MaterialHeader(),
firstRefresh: true,
onRefresh: () async {
//_activityItemModel = await CommunityFunc.activity();
_activityItemModels = await CommunityFunc.activityList();
_boardItemModels = await CommunityFunc.board();
_swiperModels = await CommunityFunc.swiper();
appProvider.getMessageCenter();
setState(() {});
},
child: CustomScrollView(
controller: _scrollController,
slivers: [
SliverToBoxAdapter(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
HomeSearch(),
HomeSwiper(), //
// SizedBox(height: 100.w),
Container(
padding: EdgeInsets.only(top: 24.w, bottom: 32.w),
child: getFunction(), //ApplicationView(),
decoration: BoxDecoration(
);
return AnnotatedRegion<SystemUiOverlayStyle>(
value: SystemUiOverlayStyle.dark,
child: Scaffold(
extendBody: true,
extendBodyBehindAppBar: true,
body: Stack(
children: [
EasyRefresh(
controller: _refreshController,
header: BeeBallPauseHeader(bgColor: _barColor),
firstRefresh: true,
onRefresh: () async {
//_activityItemModel = await CommunityFunc.activity();
_activityItemModels = await CommunityFunc.activityList();
_boardItemModels = await CommunityFunc.board();
_swiperModels = await CommunityFunc.swiper();
appProvider.getMessageCenter();
setState(() {});
},
child: CustomScrollView(
controller: _scrollController,
slivers: [
SliverToBoxAdapter(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
HomeSwiper(), //
// SizedBox(height: 100.w),
Container(
padding: EdgeInsets.only(top: 24.w, bottom: 32.w),
child: getFunction(), //ApplicationView(),
decoration: BoxDecoration(
color: Colors.white,
boxShadow: const <BoxShadow>[
BoxShadow(
color: Color(0x14000000),
blurRadius: 0,
offset: Offset(0.0, 2.0),
spreadRadius: 0.1)
],
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(28),
bottomRight: Radius.circular(28))),
)
//ApplicationBox(child: ApplicationView()),
],
),
),
SliverToBoxAdapter(
child: Container(
height: 40,
margin: EdgeInsets.only(
left: 32.w, right: 32.w, top: 24.w),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.all(Radius.circular(8)),
boxShadow: const <BoxShadow>[
BoxShadow(
color: Color(0x14000000),
blurRadius: 0,
offset: Offset(0.0, 2.0),
spreadRadius: 0.1)
blurRadius: 4,
spreadRadius: 0.5)
],
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(28),
bottomRight: Radius.circular(28))),
)
//ApplicationBox(child: ApplicationView()),
],
),
),
SliverToBoxAdapter(
child: Container(
height: 40,
margin:
EdgeInsets.only(left: 32.w, right: 32.w, top: 24.w),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.all(Radius.circular(8)),
boxShadow: const <BoxShadow>[
BoxShadow(
color: Color(0x14000000),
blurRadius: 4,
spreadRadius: 0.5)
],
),
child: HomeNotification(items: _boardItemModels)),
),
SliverToBoxAdapter(
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
GestureDetector(
child: Container(
margin: EdgeInsets.only(top: 24.w),
padding: EdgeInsets.only(left: 32.w, top: 24.w),
width: 140,
height: 150,
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.fill,
image: AssetImage(R.ASSETS_IMAGES_CARD_YELLOW_PNG),
)),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'访客邀请',
style: TextStyle(
color: Color(0xD9000000),
fontSize: 26.sp,
fontWeight: FontWeight.bold),
),
10.hb,
Text(
'一键分享',
style: TextStyle(
color: Color(0x73000000),
fontSize: 20.sp,
),
),
Text(
'让拜访不再是难事',
style: TextStyle(
color: Color(0x73000000),
fontSize: 20.sp,
),
),
Spacer(),
Image.asset(
R.ASSETS_ICONS_ICON_MAIN_INVITE_PNG,
width: 100.w,
height: 100.w,
),
child: HomeNotification(items: _boardItemModels)),
),
SliverToBoxAdapter(
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
GestureDetector(
child: Container(
margin: EdgeInsets.only(top: 24.w),
padding: EdgeInsets.only(left: 32.w, top: 24.w),
width: 140,
height: 150,
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.fill,
image:
AssetImage(R.ASSETS_IMAGES_CARD_YELLOW_PNG),
)),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'访客邀请',
style: TextStyle(
color: Color(0xD9000000),
fontSize: 26.sp,
fontWeight: FontWeight.bold),
),
10.hb,
Text(
'一键分享',
style: TextStyle(
color: Color(0x73000000),
fontSize: 20.sp,
),
),
Text(
'让拜访不再是难事',
style: TextStyle(
color: Color(0x73000000),
fontSize: 20.sp,
),
),
Spacer(),
Image.asset(
R.ASSETS_ICONS_ICON_MAIN_INVITE_PNG,
width: 100.w,
height: 100.w,
),
30.hb,
],
),
30.hb,
],
),
onTap: () {
Get.to(VisitorAccessPage());
},
),
),
onTap: () {
Get.to(VisitorAccessPage());
},
),
25.wb,
Container(
margin: EdgeInsets.only(top: 24.w),
child: Column(
children: [
GestureDetector(
child: Container(
width: 190,
height: 69,
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.fill,
image:
AssetImage(R.ASSETS_IMAGES_CARD_PINK_PNG),
)),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: [
20.wb,
Column(
crossAxisAlignment:
CrossAxisAlignment.start,
25.wb,
Container(
margin: EdgeInsets.only(top: 24.w),
child: Column(
children: [
GestureDetector(
child: Container(
width: 190,
height: 69,
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.fill,
image: AssetImage(
R.ASSETS_IMAGES_CARD_PINK_PNG),
)),
child: Row(
mainAxisAlignment:
MainAxisAlignment.start,
children: [
20.hb,
Text(
'一键报警',
style: TextStyle(
color: Color(0xD9000000),
fontSize: 26.sp,
fontWeight: FontWeight.bold),
20.wb,
Column(
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
20.hb,
Text(
'一键报警',
style: TextStyle(
color: Color(0xD9000000),
fontSize: 26.sp,
fontWeight: FontWeight.bold),
),
10.hb,
Text(
'提交报警位置给物业',
style: TextStyle(
color: Color(0x73000000),
fontSize: 20.sp,
),
),
],
),
10.hb,
Text(
'提交报警位置给物业',
style: TextStyle(
color: Color(0x73000000),
fontSize: 20.sp,
),
Spacer(),
Image.asset(
R.ASSETS_ICONS_ICON_MAIN_POLICE_PNG,
width: 98.w,
height: 98.w,
),
20.wb,
],
),
Spacer(),
Image.asset(
R.ASSETS_ICONS_ICON_MAIN_POLICE_PNG,
width: 98.w,
height: 98.w,
),
20.wb,
],
),
onTap: () {
Get.to(AlarmPage());
},
),
),
onTap: () {
Get.to(AlarmPage());
},
),
GestureDetector(
child: Container(
margin: EdgeInsets.only(top: 20.w),
width: 190,
height: 69,
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.fill,
image:
AssetImage(R.ASSETS_IMAGES_CARD_BLUE_PNG),
)),
child: Row(
mainAxisAlignment: MainAxisAlignment.start,
children: [
20.wb,
Column(
crossAxisAlignment:
CrossAxisAlignment.start,
GestureDetector(
child: Container(
margin: EdgeInsets.only(top: 20.w),
width: 190,
height: 69,
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.fill,
image: AssetImage(
R.ASSETS_IMAGES_CARD_BLUE_PNG),
)),
child: Row(
mainAxisAlignment:
MainAxisAlignment.start,
children: [
20.hb,
Text(
'建议咨询',
style: TextStyle(
color: Color(0xD9000000),
fontSize: 26.sp,
fontWeight: FontWeight.bold),
20.wb,
Column(
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
20.hb,
Text(
'建议咨询',
style: TextStyle(
color: Color(0xD9000000),
fontSize: 26.sp,
fontWeight: FontWeight.bold),
),
10.hb,
Text(
'欢迎给我们提供服务意见',
style: TextStyle(
color: Color(0x73000000),
fontSize: 20.sp,
),
),
],
),
10.hb,
Text(
'欢迎给我们提供服务意见',
style: TextStyle(
color: Color(0x73000000),
fontSize: 20.sp,
),
Spacer(),
Image.asset(
R.ASSETS_ICONS_ICON_MAIN_CONSULT_PNG,
width: 98.w,
height: 98.w,
),
20.wb,
],
),
Spacer(),
Image.asset(
R.ASSETS_ICONS_ICON_MAIN_CONSULT_PNG,
width: 98.w,
height: 98.w,
),
20.wb,
],
),
),
onTap: () {
Get.to(AdvicePage(type: AdviceType.SUGGESTION));
},
)
],
),
)
],
),
),
SliverToBoxAdapter(
child: Column(
children: [
HomeTitle(
title: '社区活动',
suffixTitle: '查看全部',
onTap: () => Get.to(() => ActivityListPage()),
),
_activityItemModels == []
? SizedBox()
: Container(
height: 400.w,
padding: EdgeInsets.only(left: 32.w),
child: ListView.separated(
padding: EdgeInsets.zero,
separatorBuilder: (context, index) {
return SizedBox(
width: 16.w,
);
},
scrollDirection: Axis.horizontal,
itemBuilder: (context, index) {
return Container(
width: 500.w,
child: Builder(
builder: (context) {
return ActivityCard(
model: _activityItemModels[index]);
},
),
);
},
itemCount: _activityItemModels.length,
onTap: () {
Get.to(AdvicePage(
type: AdviceType.SUGGESTION));
},
)
],
),
),
// : ActivityCard(model: _activityItemModel)
// .pSymmetric(h: 24.w, v: 24.w),
)
],
),
),
SliverToBoxAdapter(
child: Column(
children: [
HomeTitle(
title: '社区活动',
suffixTitle: '查看全部',
onTap: () => Get.to(() => ActivityListPage()),
),
_activityItemModels == []
? SizedBox()
: Container(
height: 400.w,
padding: EdgeInsets.only(left: 32.w),
child: ListView.separated(
padding: EdgeInsets.zero,
separatorBuilder: (context, index) {
return SizedBox(
width: 16.w,
);
},
scrollDirection: Axis.horizontal,
itemBuilder: (context, index) {
return Container(
width: 500.w,
child: Builder(
builder: (context) {
return ActivityCard(
model:
_activityItemModels[index]);
},
),
);
},
itemCount: _activityItemModels.length,
),
),
// : ActivityCard(model: _activityItemModel)
// .pSymmetric(h: 24.w, v: 24.w),
],
)),
],
)),
],
),
),
),
OverlayLivingBtnWidget()
],
),
OverlayLivingBtnWidget()
],
),
);
));
}
Widget HomeSwiper() {
return Container(
width: double.infinity,
height: 320.w,
decoration:
BoxDecoration(border: Border.all(width: 0, color: _barColor.value)),
child: AspectRatio(
aspectRatio: 375 / 160,
child: Swiper(
key: UniqueKey(),
controller: _swiperController,
onIndexChanged: (index) async {
_currentSwiperIndex = index;
},
itemBuilder: (BuildContext context, int index) {
return getSwiperImage(_swiperModels[index]);
},
@ -456,6 +520,18 @@ class _HomePageState extends State<HomePage>
);
}
Future _swiperBarColor(int index) async {
if (_swiperModels.isNotEmpty) {
var color =
await PaletteGenerator.fromImageProvider(CachedNetworkImageProvider(
API.image(ImgModel.first(_swiperModels[index].voResourcesImgList)),
));
_barColor.value = color.dominantColor?.color ?? Colors.transparent;
} else {
_barColor.value = Colors.transparent;
}
}
Widget getSwiperImage(SwiperModel swiperModel) {
return Container(
child: FadeInImage.assetNetwork(
@ -531,3 +607,62 @@ class _HomePageState extends State<HomePage>
@override
bool get wantKeepAlive => true;
}
class BeeBallPauseHeader extends Header {
/// Key
final Key? key;
final ValueNotifier<Color> bgColor;
final LinkHeaderNotifier linkNotifier = LinkHeaderNotifier();
BeeBallPauseHeader({
this.key,
required this.bgColor,
bool enableHapticFeedback = true,
bool enableInfiniteRefresh = false,
}) : super(
extent: 70.0,
triggerDistance: 70.0,
float: false,
enableHapticFeedback: enableHapticFeedback,
enableInfiniteRefresh: enableInfiniteRefresh,
);
@override
Widget contentBuilder(
BuildContext context,
RefreshMode refreshState,
double pulledExtent,
double refreshTriggerPullDistance,
double refreshIndicatorExtent,
AxisDirection axisDirection,
bool float,
Duration? completeDuration,
bool enableInfiniteRefresh,
bool success,
bool noMore) {
linkNotifier.contentBuilder(
context,
refreshState,
pulledExtent,
refreshTriggerPullDistance,
refreshIndicatorExtent,
axisDirection,
float,
completeDuration,
enableInfiniteRefresh,
success,
noMore);
return ValueListenableBuilder(
valueListenable: bgColor,
builder: (context, Color color, child) {
return BallPulseHeaderWidget(
key: key,
color: bgColor.value.complementary,
backgroundColor: bgColor.value,
linkNotifier: linkNotifier,
);
});
}
}

@ -1,14 +1,16 @@
import 'package:aku_new_community/provider/app_provider.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:flutter/services.dart';
import 'package:provider/provider.dart';
class AnimateAppBar extends StatefulWidget with PreferredSizeWidget {
final ScrollController? scrollController;
final List<Widget>? actions;
final ValueNotifier<Color> bgColor;
AnimateAppBar({Key? key, this.scrollController, this.actions})
AnimateAppBar(
{Key? key, this.scrollController, this.actions, required this.bgColor})
: super(key: key);
@override
@ -19,63 +21,57 @@ class AnimateAppBar extends StatefulWidget with PreferredSizeWidget {
}
class _AnimateAppBarState extends State<AnimateAppBar> {
Color _bgColor = Colors.white;
@override
void initState() {
super.initState();
widget.scrollController!.addListener(() {
setState(() {
_bgColor = widget.scrollController!.offset > 30
? Colors.white
: widget.scrollController!.offset < 0
? Colors.transparent
: Colors.white
.withOpacity((widget.scrollController!.offset / 30));
});
});
}
@override
Widget build(BuildContext context) {
final appProvider = Provider.of<AppProvider>(context);
return Padding(
padding: const EdgeInsets.only(top: 5),
child: AppBar(
titleSpacing: 10.0,
title: Row(crossAxisAlignment: CrossAxisAlignment.center, children: [
if (appProvider.location != null)
Padding(
padding: const EdgeInsets.only(right: 5),
child: Image.asset(
R.ASSETS_ICONS_ICON_MAIN_LOCATION_PNG,
width: 32.w,
height: 32.w,
),
),
Text(
appProvider.location?['city'] == null
? ''
: appProvider.location?['city'] as String? ?? '',
style: TextStyle(
fontWeight: FontWeight.w600,
fontSize: 24.sp,
color: Color(0xff333333),
return ValueListenableBuilder(
valueListenable: widget.bgColor,
builder: (context, color, child) {
return AppBar(
systemOverlayStyle: SystemUiOverlayStyle(
statusBarColor: widget.bgColor.value,
statusBarIconBrightness: Brightness.light),
titleSpacing: 10.0,
title: child,
backgroundColor: widget.bgColor.value,
actions: widget.actions,
);
},
child: Row(crossAxisAlignment: CrossAxisAlignment.center, children: [
if (appProvider.location != null)
Padding(
padding: const EdgeInsets.only(right: 5),
child: Image.asset(
R.ASSETS_ICONS_ICON_MAIN_LOCATION_PNG,
width: 32.w,
height: 32.w,
),
textAlign: TextAlign.center,
),
Text(
'(${appProvider.weatherType} ${appProvider.weatherTemp}℃)',
style: TextStyle(
fontSize: 24.sp,
color: Color(0xff999999),
),
textAlign: TextAlign.center,
Text(
appProvider.location?['city'] == null
? ''
: appProvider.location?['city'] as String? ?? '',
style: TextStyle(
fontWeight: FontWeight.w600,
fontSize: 24.sp,
color: Color(0xff333333),
),
textAlign: TextAlign.center,
),
Text(
'(${appProvider.weatherType} ${appProvider.weatherTemp}℃)',
style: TextStyle(
fontSize: 24.sp,
color: Color(0xff999999),
),
]),
backgroundColor: _bgColor,
actions: widget.actions,
),
textAlign: TextAlign.center,
),
]),
);
}
}

@ -1,592 +0,0 @@
/*
* ====================================================
* package : widgets
* author : Created by nansi.
* time : 2019/5/13 1:44 PM
* remark :
* ====================================================
*/
import 'package:aku_new_community/utils/text_utils.dart';
import 'package:flutter/material.dart';
///
typedef SelectedListener = Function(int selectedIndex, FilterItemModel item);
///
typedef PopOptionHandle = Function(OptionListStatus status);
/// filterBar
typedef FilterToolBarListener = Function(bool update);
class FilterToolBarController {
late FilterResultContainerHelper helper;
late int selectedIndex;
late FilterItemModel item;
late GlobalKey _containerKey;
late GlobalKey _toolBarKey;
/// [update] sublist index
FilterToolBarListener updateToolBarState = (bool update) {};
close() {
helper.changeOptionListStatus(OptionListStatus.close);
}
get toolBarDx {
RenderBox box = _toolBarKey.currentContext?.findRenderObject()
as RenderBox; //_toolBarKey.currentContext.findRenderObject();
Offset offset = box.localToGlobal(Offset.zero);
return offset.dx;
}
double get toolBarDy {
/// toolbar top - containertop
RenderBox containerBox =
_containerKey.currentContext?.findRenderObject() as RenderBox;
RenderBox box = _toolBarKey.currentContext?.findRenderObject() as RenderBox;
Offset containerTopOffset = containerBox.localToGlobal(Offset.zero);
Offset toolBarTopOffset = box.localToGlobal(Offset.zero);
return toolBarTopOffset.dy - containerTopOffset.dy;
}
////position
// RenderBox box = _key.currentContext.findRenderObject();
// Offset offset = box.localToGlobal(Offset.zero);
//
////size
// Size size = box.size;
// print(" ---- $offset ------- $size");
}
enum OptionListStatus { open, close }
///
class FilterResultContainerHelper {
final PopOptionHandle handle;
///
late OptionListStatus status;
FilterResultContainerHelper({required this.handle});
changeOptionListStatus(OptionListStatus status) {
this.status = status;
this.handle(status);
}
}
/// FilterToolBar 使
class FilterToolBarResultContainer extends StatefulWidget {
final FilterToolBarController? controller;
final Widget? body;
const FilterToolBarResultContainer(
{GlobalKey? key, this.controller, this.body})
: assert(controller != null, "controller 不为空");
@override
State<StatefulWidget> createState() {
return _FilterToolBarResultContainerState();
}
}
class _FilterToolBarResultContainerState
extends State<FilterToolBarResultContainer> with TickerProviderStateMixin {
///
late int _lines;
int maxLines = 3;
///
double _lineHeight = 35.0;
///
double _bottomSpacing = 8.0;
///
double _topSpacing = 8.0;
///
Color _unselectedColor = Colors.grey[700]!;
/// toolbar
// double _toolBarTitleFont = 14.0;
///
double _subTitleFont = 13.0;
/// row
EdgeInsetsGeometry _subtitleRowPadding = EdgeInsets.only(left: 15, right: 15);
late AnimationController _animationController;
late Animation<double> _animation;
@override
void initState() {
_animationController =
AnimationController(vsync: this, duration: Duration(milliseconds: 150));
_lines = maxLines;
widget.controller?.helper = FilterResultContainerHelper(handle: (status) {
if (status == OptionListStatus.open) {
_buildAnimation(widget.controller!.item);
_animationController.forward();
} else {
_animationController.reset();
}
});
if (widget.key == null) {
widget.controller!._containerKey = GlobalKey();
} else {
widget.controller!._containerKey = widget.key as GlobalKey;
}
super.initState();
}
@override
void dispose() {
_animationController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return Container(
key: widget.controller!._containerKey,
child: _buildBody(context),
);
}
Stack _buildBody(BuildContext context) {
return Stack(
children: <Widget>[
/// body
Container(
height: double.infinity,
child: widget.body,
),
///
_maskView(),
widget.controller?._toolBarKey == null
? Container()
: Positioned(
top: widget.controller!.toolBarDy + 40,
left: 0,
right: 0,
bottom: 0,
child: Stack(children: [
widget.controller!.item.type == FilterItemType.list
? _buildList(context)
: Container(),
]))
],
);
}
Widget _maskView() {
double? num = widget.controller?.toolBarDy;
return widget.controller?._toolBarKey == null
? Container()
: Positioned(
top: (num as double) + 40,
left: 0,
right: 0,
bottom: 0,
child: Offstage(
child: GestureDetector(
behavior: HitTestBehavior.translucent,
onTap: () {
widget.controller!.helper.changeOptionListStatus(
OptionListStatus.close,
);
widget.controller!.updateToolBarState(false);
_animationController.reset();
},
child: Opacity(
opacity: 0.3,
child: Container(
color: Colors.black,
),
),
),
offstage: _animation == null ||
(_animation.status == AnimationStatus.dismissed),
),
);
}
/// [widget.maxLines]
/// ,
_buildAnimation(FilterItemModel item) {
_lines =
item.subtitles!.length > maxLines ? maxLines : item.subtitles!.length;
_animation = new Tween(
begin: 0.0 - _lines * _lineHeight - _bottomSpacing - _topSpacing,
end: 0.0)
.animate(_animationController)
..addListener(() {
setState(() {
// the state that has changed here is the animation objects value
});
});
}
///
Positioned _buildList(context) {
FilterItemModel item = widget.controller!.item;
return Positioned(
top: _animation.value,
left: 0,
right: 0,
child: LimitedBox(
maxHeight: _lineHeight * _lines + _topSpacing + _bottomSpacing,
child: Container(
padding: EdgeInsets.only(bottom: _bottomSpacing, top: 5),
height: _lineHeight * item.subtitles!.length +
_bottomSpacing +
_topSpacing,
decoration: BoxDecoration(
color: Color.fromARGB(240, 255, 255, 255),
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(10),
bottomRight: Radius.circular(10))),
child: MediaQuery.removePadding(
context: context,
removeTop: true,
child: ListView.builder(
physics: NeverScrollableScrollPhysics(),
controller: PrimaryScrollController.of(context),
itemCount: item.subtitles!.length,
itemBuilder: (context, index) {
bool subTitleSelected = item.selectedSubIndex == index;
return Container(
height: _lineHeight,
child: RawMaterialButton(
onPressed: () {
widget.controller!.helper
.changeOptionListStatus(OptionListStatus.close);
widget.controller!.updateToolBarState(false);
if (item.selectedSubIndex == index) return;
item.selectedSubIndex = index;
String title = item.subtitleShort == null ||
TextUtils.isEmpty(item.subtitleShort![index])
? item.subtitles![index]
: item.subtitleShort![index];
item.title = title;
widget.controller!.updateToolBarState(true);
},
child: _sublistItem(index, item, subTitleSelected),
),
);
}),
),
),
),
);
}
/// item
Container _sublistItem(
int index, FilterItemModel item, bool subTitleSelected) {
return Container(
padding: _subtitleRowPadding,
child: Row(
children: <Widget>[
Offstage(
child: Padding(
padding: EdgeInsets.symmetric(horizontal: 8),
child: Icon(
Icons.check,
size: 17,
color: Colors.red,
),
),
offstage: index != item.selectedSubIndex,
),
Expanded(
child: Text(
item.subtitles![index],
style: TextStyle(
fontSize: _subTitleFont,
color: _unselectedColor,
fontWeight:
(subTitleSelected ? FontWeight.w600 : FontWeight.w400)),
)),
],
),
);
}
}
class FilterToolBar extends StatefulWidget {
FilterToolBar({
required this.titles,
required this.listener,
required this.controller,
this.selectedColor,
this.maxLines = 4,
this.trialing,
this.startWidget,
this.fontSize = 15.0,
this.height = 40,
}) : assert(listener != null, "请设置监听事件"),
assert(controller != null, "请设置controller");
final List<FilterItemModel> titles;
final Color? selectedColor;
final int maxLines;
final SelectedListener listener;
final Widget? trialing;
final Widget? startWidget;
final FilterToolBarController? controller;
final double fontSize;
final double height;
@override
State<StatefulWidget> createState() {
return _FilterToolBarState();
}
}
class _FilterToolBarState extends State<FilterToolBar>
with TickerProviderStateMixin {
Color _unselectedColor = Colors.grey[700]!;
GlobalKey _key = GlobalKey();
@override
void initState() {
super.initState();
widget.controller?.selectedIndex = widget.controller?.selectedIndex ?? 0;
widget.controller?._toolBarKey = _key;
widget.controller?.updateToolBarState = (bool update) {
// print("----- ${widget.controller.selectedIndex}");
if (update) {
widget.listener(
widget.controller!.selectedIndex, widget.controller!.item);
}
setState(() {});
};
}
@override
Widget build(BuildContext context) {
return Container(
width: double.infinity,
height: widget.height,
child: _buildToolBar(),
);
}
Container _buildToolBar() {
List<Widget> items = <Widget>[];
if (widget.startWidget != null) {
items.add(SizedBox(
width: 60,
));
items.add(widget.startWidget!);
items.add(SizedBox(
width: 20,
));
}
items.addAll(_buildToolBarItem());
if (widget.trialing != null) {
items.add(widget.trialing!);
}
return Container(
key: _key,
height: 40,
decoration: BoxDecoration(
color: Colors.white,
border: Border(
top: BorderSide(color: Colors.grey[200]!, width: 0.5),
bottom: BorderSide(color: Colors.grey[200]!, width: 0.5))),
child: Row(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: items,
),
);
}
List<Expanded> _buildToolBarItem() {
return widget.titles.map((item) {
int index = widget.titles.indexOf(item);
bool selected = index == widget.controller?.selectedIndex;
Color color = (selected ? widget.selectedColor : _unselectedColor)!;
return Expanded(
child: GestureDetector(
onTap: () {
widget.controller?.item = item;
/// toolbar
if (widget.controller?.helper != null &&
widget.controller?.helper.status == OptionListStatus.open) {
widget.controller?.helper.changeOptionListStatus(
OptionListStatus.close,
);
} else {
if (item.type == FilterItemType.list) {
///
if (widget.controller?.selectedIndex == index) {
if (widget.controller?.helper != null) {
widget.controller?.helper.changeOptionListStatus(
OptionListStatus.open,
);
} else {
FlutterError("列表类型需要与 FilterToolBarResultContainer 一起使用");
}
} else {
///
widget.listener(index, item);
}
}
}
///
if (item.type == FilterItemType.double) {
if (widget.controller?.selectedIndex != index) {
item.selectedList![index] = true;
item.topSelected = item.selectedList![index];
} else {
//print(item.topSelected);
//item.topSelected = !item.topSelected;
// print(widget.titles[index].topSelected);
item.selectedList![index] = !item.selectedList![index];
item.topSelected = item.selectedList![index];
}
widget.listener(index, item);
}
///
else if (item.type == FilterItemType.normal) {
if (widget.controller?.selectedIndex == index) return;
widget.listener(index, item);
}
widget.controller?.selectedIndex = index;
setState(() {});
},
child: Container(
color: Colors.white,
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text(item.title,
style: TextStyle(
fontSize: widget.fontSize,
color: color,
fontWeight: FontWeight.w400)
// AppTextStyle.generate(widget.fontSize,
// color: color, fontWeight: FontWeight.w400),
),
_buildArrow(item, color, selected, index)
],
),
),
),
);
}).toList();
}
_buildArrow(FilterItemModel item, color, bool selected, int index) {
if (item.type == FilterItemType.list) {
return Icon(
selected
? (widget.controller?.helper != null &&
widget.controller?.helper.status == OptionListStatus.open
? Icons.arrow_drop_up
: Icons.arrow_drop_down)
: Icons.arrow_drop_down,
color: color,
size: 19,
);
} else if (item.type == FilterItemType.double) {
if (selected) {
return Padding(
padding: const EdgeInsets.only(left: 2.0),
child: Icon(
item.selectedList![index]
? IconData(0xe620, fontFamily: "AppIcons")
: IconData(0xe621, fontFamily: "AppIcons"),
size: 7,
color: color,
),
);
} else {
return Padding(
padding: const EdgeInsets.only(left: 2.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Icon(
IconData(0xe620, fontFamily: "AppIcons"),
size: 7,
color: _unselectedColor,
),
Icon(
IconData(0xe621, fontFamily: "AppIcons"),
size: 7,
color: _unselectedColor,
),
],
),
);
}
} else {
return Container();
}
}
}
enum FilterItemType {
///
list,
///
double,
///
normal
}
class FilterItemModel {
final FilterItemType type;
String title;
final List<String>? subtitles;
///
final List<String>? subtitleShort;
List<bool>? selectedList;
bool topSelected;
int selectedSubIndex = 0;
FilterItemModel({
required this.type,
required this.title,
this.selectedList,
this.subtitles,
this.subtitleShort,
this.topSelected = true,
}) : assert(
type == FilterItemType.list
? (subtitles != null && subtitles.length > 0)
: true,
"type为list列表项不能为空");
}

@ -1,54 +0,0 @@
import 'package:aku_new_community/utils/headers.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class HomeSearch extends StatefulWidget {
HomeSearch({Key? key}) : super(key: key);
@override
_HomeSearchState createState() => _HomeSearchState();
}
class _HomeSearchState extends State<HomeSearch> {
@override
Widget build(BuildContext context) {
return Container(
// decoration: BoxDecoration(
// gradient: LinearGradient(
// begin: Alignment.centerLeft,
// end: Alignment.centerRight,
// colors: [Color(0xffffd000), Color(0xffffbd00)],
// ),
// ),
color: Colors.white,
padding: EdgeInsets.only(
top: MediaQuery.of(context).padding.top,
left: 32.w,
right: 32.w,
bottom: 16.w,
),
// child: MaterialButton(
// materialTapTargetSize: MaterialTapTargetSize.shrinkWrap,
// height: 72.w,
// shape: StadiumBorder(),
// elevation: 0,
// minWidth: double.infinity,
// color: Color(0xFFF3F3F3),
// onPressed: () {
// Get.to(() => BeeSearch());
// },
// child: Row(
// children: [
// Icon(
// Icons.search,
// size: 32.w,
// color: Color(0xFF666666),
// ),
// 10.wb,
// '搜索应用'.text.size(28.sp).color(ktextSubColor).make().expand(),
// ],
// ),
// ),
);
}
}

@ -6,11 +6,9 @@ import 'package:aku_new_community/models/house_introduce/house_introduce_model.d
import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:get/get.dart';
import 'package:velocity_x/velocity_x.dart';
import 'house_detail_page.dart';

@ -1,6 +1,5 @@
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class CommitteeMailboxPage extends StatefulWidget {

@ -13,7 +13,6 @@ import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:get/get.dart';
import 'package:url_launcher/url_launcher.dart';
import 'package:velocity_x/velocity_x.dart';
class IndustryCommitteePage extends StatefulWidget {
IndustryCommitteePage({Key? key}) : super(key: key);

@ -1,6 +1,5 @@
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'widget/bill_card.dart';

@ -1,6 +1,5 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class BillCard extends StatelessWidget {

@ -25,7 +25,6 @@ import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:get/get.dart' hide Response;
import 'package:provider/provider.dart';
import 'package:velocity_x/velocity_x.dart';
class LifePayPage extends StatefulWidget {
LifePayPage({Key? key}) : super(key: key);

@ -1,16 +1,13 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/extensions/widget_list_ext.dart';
import 'package:aku_new_community/models/life_pay/life_pay_record_model.dart';
import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:aku_new_community/widget/others/user_tool.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:velocity_x/velocity_x.dart';
class LifePayRecordPage extends StatefulWidget {
LifePayRecordPage({Key? key}) : super(key: key);

@ -1,6 +1,5 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class SubmitBar extends StatefulWidget {

@ -9,7 +9,7 @@ import 'package:aku_new_community/utils/network/base_model.dart';
import 'package:aku_new_community/utils/network/net_util.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:dio/dio.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
class ManagerFunc {
@Deprecated('')

@ -2,7 +2,7 @@ import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/extensions/widget_list_ext.dart';
import 'package:aku_new_community/models/message/announce_list_model.dart';
import 'package:aku_new_community/pages/message_center_page/announce/announce_view.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';

@ -1,4 +1,3 @@
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/model/common/img_model.dart';
import 'package:aku_new_community/model/message/comment_message_model.dart';
@ -7,12 +6,9 @@ import 'package:aku_new_community/utils/bee_date_util.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_divider.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:velocity_x/velocity_x.dart';
class CommentMessagePage extends StatefulWidget {
CommentMessagePage({Key? key}) : super(key: key);

@ -1,6 +1,5 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class RefundDetails extends StatelessWidget {

@ -8,12 +8,10 @@ import 'package:amap_flutter_base/amap_flutter_base.dart';
import 'package:amap_flutter_map/amap_flutter_map.dart';
import 'package:flutter/material.dart';
import 'package:flutter_icons/flutter_icons.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:permission_handler/permission_handler.dart';
import 'package:provider/provider.dart';
import 'package:url_launcher/url_launcher.dart';
import 'package:velocity_x/velocity_x.dart';
class PermissionUtil {
static Future<bool> getLocationPermission() async {

@ -6,8 +6,7 @@ import 'package:aku_new_community/utils/network/base_model.dart';
import 'package:aku_new_community/utils/network/net_util.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flustars/flustars.dart';
import 'package:flutter/cupertino.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:flutter_icons/flutter_icons.dart';

@ -1,5 +1,3 @@
import 'dart:ui';
import 'package:aku_new_community/model/user/adress_model.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';

@ -11,7 +11,6 @@ import 'package:aku_new_community/model/user/province_model.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/utils/text_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
typedef AddressSelectorCallback = Function(
String province, String city, String disctrict, int? locationId);

@ -1,5 +1,3 @@
import 'dart:ui';
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/model/user/adress_model.dart';
import 'package:aku_new_community/model/user/province_model.dart';

@ -2,7 +2,6 @@ import 'package:aku_new_community/gen/assets.gen.dart';
import 'package:aku_new_community/pages/personal/intergral/progress_paint.dart';
import 'package:aku_new_community/pages/personal/intergral/rule_explain_page.dart';
import 'package:aku_new_community/widget/bee_back_button.dart';
import 'package:aku_new_community/widget/others/user_tool.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
@ -207,8 +206,7 @@ class _integralCenterPageState extends State<integralCenterPage> {
right: 0,
top: 168.w,
child: GestureDetector(
onTap: (){
},
onTap: () {},
child: Container(
width: 176.w,
height: 58.w,

@ -1,4 +1,3 @@
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/constants/sars_api.dart';
import 'package:aku_new_community/gen/assets.gen.dart';
import 'package:aku_new_community/pages/personal/clock_in/clock_in_page.dart';

@ -5,7 +5,7 @@ import 'package:aku_new_community/pages/sign/sign_func.dart';
import 'package:aku_new_community/provider/user_provider.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';

@ -13,12 +13,11 @@ import 'package:aku_new_community/widget/picker/bee_custom_picker.dart';
import 'package:aku_new_community/widget/picker/bee_date_picker.dart';
import 'package:aku_new_community/widget/picker/bee_image_picker.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:provider/provider.dart';
import 'package:velocity_x/velocity_x.dart';
class UserProfilePage extends StatefulWidget {
UserProfilePage({Key? key}) : super(key: key);

@ -1,6 +1,5 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class RefundShopCard extends StatelessWidget {

@ -1,6 +1,5 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_icons/flutter_icons.dart';

@ -1,5 +1,4 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/constants/application_objects.dart';
import 'package:aku_new_community/pages/life_pay/life_pay_choose_page.dart';
import 'package:aku_new_community/pages/property/property_func.dart';
@ -13,7 +12,6 @@ import 'package:bot_toast/bot_toast.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:provider/provider.dart';

@ -1,6 +1,5 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/extensions/widget_list_ext.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/utils/network/base_model.dart';
import 'package:aku_new_community/utils/network/net_util.dart';
@ -11,7 +10,7 @@ import 'package:aku_new_community/widget/others/bee_input_row.dart';
import 'package:aku_new_community/widget/others/user_tool.dart';
import 'package:aku_new_community/widget/picker/bee_date_picker.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';

@ -2,7 +2,7 @@ import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/pages/renovation_manage/renovation_manage_detail_page.dart';
import 'package:aku_new_community/pages/renovation_manage/renovation_map.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';

@ -4,7 +4,7 @@ import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/pages/renovation_manage/renovation_map.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:velocity_x/velocity_x.dart';

@ -2,7 +2,7 @@ import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/models/service_browse/service_browse_list_mode.dart';
import 'package:aku_new_community/utils/link_text_parase.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';

@ -4,7 +4,7 @@ import 'package:aku_new_community/models/service_browse/service_browse_list_mode
import 'package:aku_new_community/pages/service_browse/service_browse_detail_page.dart';
import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';

@ -8,7 +8,7 @@ import 'package:aku_new_community/widget/bee_divider.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:dio/dio.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';

@ -6,7 +6,6 @@ import 'package:aku_new_community/utils/network/net_util.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:aku_new_community/widget/picker/grid_image_picker.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';

@ -1,6 +1,5 @@
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:qr_flutter/qr_flutter.dart';

@ -9,10 +9,8 @@ import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:aku_new_community/widget/buttons/bee_check_radio.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:provider/provider.dart';
import 'package:velocity_x/velocity_x.dart';
class SharePayDetailPage extends StatefulWidget {
final SharePayListModel model;

@ -20,7 +20,6 @@ import 'package:bot_toast/bot_toast.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:flutter_easyrefresh/material_header.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:velocity_x/velocity_x.dart';

@ -1,16 +1,13 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/extensions/widget_list_ext.dart';
import 'package:aku_new_community/models/life_pay/share_pay_record_model.dart';
import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:aku_new_community/widget/others/user_tool.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:velocity_x/velocity_x.dart';
class ShareRecordPage extends StatefulWidget {
const ShareRecordPage({Key? key}) : super(key: key);

@ -4,7 +4,7 @@ import 'package:aku_new_community/pages/sign/widget/tel_text_field.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:aku_new_community/widget/others/user_tool.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';

@ -9,7 +9,7 @@ import 'package:aku_new_community/provider/app_provider.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:aku_new_community/widget/others/user_tool.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';

@ -1,4 +1,4 @@
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
enum PSDVERIFY { shorLength, Insufficient, different, correct, empty }

@ -7,7 +7,7 @@ import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_back_button.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:get/get.dart' hide Response;

@ -1,6 +1,5 @@
import 'dart:io';
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/main_initialize.dart';
import 'package:aku_new_community/pages/setting_page/agreement_page/agreement_page.dart';
import 'package:aku_new_community/pages/setting_page/agreement_page/privacy_page.dart';
@ -12,12 +11,10 @@ import 'package:aku_new_community/utils/hive_store.dart';
import 'package:aku_new_community/widget/others/user_tool.dart';
import 'package:amap_flutter_location/amap_flutter_location.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:get/get.dart';
import 'package:hive/hive.dart';
import 'package:hive_flutter/hive_flutter.dart';
import 'package:permission_handler/permission_handler.dart';
import 'package:power_logger/power_logger.dart';

@ -7,11 +7,9 @@ import 'package:aku_new_community/pages/surrounding_enterprises/surrounding_ente
import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart';
import 'package:aku_new_community/utils/headers.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:get/get.dart';
import 'package:velocity_x/velocity_x.dart';
class SurroundingEnterprisesPage extends StatefulWidget {
SurroundingEnterprisesPage({Key? key}) : super(key: key);

@ -3,7 +3,6 @@ import 'dart:io';
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/constants/app_theme.dart';
import 'package:aku_new_community/extensions/widget_list_ext.dart';
import 'package:aku_new_community/pages/manager_func.dart';
import 'package:aku_new_community/pages/things_page/widget/finish_fixed_submit_page.dart';
import 'package:aku_new_community/provider/app_provider.dart';
@ -16,12 +15,9 @@ import 'package:aku_new_community/widget/buttons/bottom_button.dart';
import 'package:aku_new_community/widget/others/house_head_card.dart';
import 'package:aku_new_community/widget/picker/grid_image_picker.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:provider/provider.dart';
import 'package:velocity_x/velocity_x.dart';
class AddFixedSubmitPage extends StatefulWidget {
AddFixedSubmitPage({Key? key}) : super(key: key);

@ -1,5 +1,4 @@
import 'package:aku_new_community/base/base_style.dart';
import 'package:aku_new_community/const/resource.dart';
import 'package:aku_new_community/constants/api.dart';
import 'package:aku_new_community/models/manage/fix_report/fix_detail_model.dart';
import 'package:aku_new_community/pages/life_pay/pay_finish_page.dart';
@ -16,10 +15,8 @@ import 'package:bot_toast/bot_toast.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:url_launcher/url_launcher.dart';
import 'package:velocity_x/velocity_x.dart';
class FixedDetailPage extends StatefulWidget {
final int id;

@ -9,7 +9,7 @@ import 'package:aku_new_community/widget/bee_divider.dart';
import 'package:aku_new_community/widget/bee_scaffold.dart';
import 'package:aku_new_community/widget/common_input.dart';
import 'package:aku_new_community/widget/picker/bee_date_picker.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_icons/flutter_icons.dart';

@ -12,7 +12,7 @@ import 'package:aku_new_community/utils/network/base_model.dart';
import 'package:aku_new_community/utils/network/net_util.dart';
import 'package:aku_new_community/utils/websocket/web_socket_util.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flustars/flustars.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter/foundation.dart';
import 'package:get/get.dart';
import 'package:jpush_flutter/jpush_flutter.dart';

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save