建议咨询页面跳转

REMOVE SH*T CODE AGAIN
hmxc
小赖 4 years ago
parent 7a742c0c56
commit 9e1515f245

@ -10,7 +10,6 @@ import 'package:akuCommunity/pages/message_center_page/message_center_page.dart'
import 'package:akuCommunity/pages/open_door_page/open_door_page.dart'; import 'package:akuCommunity/pages/open_door_page/open_door_page.dart';
import 'package:akuCommunity/pages/scan/scan_page.dart'; import 'package:akuCommunity/pages/scan/scan_page.dart';
import 'package:akuCommunity/pages/things_page/fixed_submit_page.dart'; import 'package:akuCommunity/pages/things_page/fixed_submit_page.dart';
import 'package:akuCommunity/pages/things_page/things_page.dart';
import 'package:akuCommunity/pages/total_application_page/total_applications_page.dart'; import 'package:akuCommunity/pages/total_application_page/total_applications_page.dart';
import 'package:akuCommunity/pages/visitor_access_page/visitor_access_page.dart'; import 'package:akuCommunity/pages/visitor_access_page/visitor_access_page.dart';
import 'package:akuCommunity/extensions/num_ext.dart'; import 'package:akuCommunity/extensions/num_ext.dart';
@ -20,7 +19,6 @@ import 'package:flutter/material.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter_icons/flutter_icons.dart'; import 'package:flutter_icons/flutter_icons.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:pull_to_refresh/pull_to_refresh.dart'; import 'package:pull_to_refresh/pull_to_refresh.dart';
import 'package:akuCommunity/utils/headers.dart'; import 'package:akuCommunity/utils/headers.dart';
import 'widget/home_search.dart'; import 'widget/home_search.dart';
@ -31,8 +29,6 @@ import 'package:akuCommunity/widget/container_comment.dart';
import 'package:akuCommunity/widget/single_ad_space.dart'; import 'package:akuCommunity/widget/single_ad_space.dart';
import 'package:akuCommunity/service/base_model.dart'; import 'package:akuCommunity/service/base_model.dart';
import 'package:akuCommunity/model/aku_shop_model.dart'; import 'package:akuCommunity/model/aku_shop_model.dart';
import 'package:akuCommunity/routers/page_routers.dart';
import 'package:velocity_x/velocity_x.dart'; import 'package:velocity_x/velocity_x.dart';
import 'package:akuCommunity/extensions/page_router.dart'; import 'package:akuCommunity/extensions/page_router.dart';

@ -11,9 +11,9 @@ import 'package:akuCommunity/pages/open_door_page/open_door_page.dart';
import 'package:akuCommunity/pages/opening_code_page/opening_code_page.dart'; import 'package:akuCommunity/pages/opening_code_page/opening_code_page.dart';
import 'package:akuCommunity/pages/questionnaire_page/questionnaire_page.dart'; import 'package:akuCommunity/pages/questionnaire_page/questionnaire_page.dart';
import 'package:akuCommunity/pages/things_page/fixed_submit_page.dart'; import 'package:akuCommunity/pages/things_page/fixed_submit_page.dart';
import 'package:akuCommunity/pages/things_page/things_page.dart';
import 'package:akuCommunity/pages/total_application_page/total_applications_page.dart'; import 'package:akuCommunity/pages/total_application_page/total_applications_page.dart';
import 'package:akuCommunity/pages/visitor_access_page/visitor_access_page.dart'; import 'package:akuCommunity/pages/visitor_access_page/visitor_access_page.dart';
import 'package:akuCommunity/ui/manager/advice/advice_page.dart';
import 'package:akuCommunity/widget/bee_scaffold.dart'; import 'package:akuCommunity/widget/bee_scaffold.dart';
import 'package:akuCommunity/widget/grid_buttons.dart'; import 'package:akuCommunity/widget/grid_buttons.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -57,18 +57,8 @@ class _PropertyIndexState extends State<PropertyIndex>
GridButton('业委会', R.ASSETS_ICONS_TOOL_YWH_PNG, () { GridButton('业委会', R.ASSETS_ICONS_TOOL_YWH_PNG, () {
IndustryCommitteePage().to(); IndustryCommitteePage().to();
}), }),
GridButton('建议咨询', R.ASSETS_ICONS_TOOL_JYTS_PNG, () { GridButton('建议咨询', R.ASSETS_ICONS_TOOL_JYTS_PNG,
Get.to(ThingsPage( AdvicePage(type: AdviceType.SUGGESTION).to),
bundle: Bundle()
..putMap('things', {
'title': '建议咨询',
'treeList': <Map<String, dynamic>>[
{'name': '您的建议'},
{'name': '您的咨询'},
]
}),
));
}),
GridButton('便民电话', R.ASSETS_ICONS_TOOL_BMDH_PNG, () { GridButton('便民电话', R.ASSETS_ICONS_TOOL_BMDH_PNG, () {
ConvenientPhonePage().to(); ConvenientPhonePage().to();
}), }),
@ -78,18 +68,8 @@ class _PropertyIndexState extends State<PropertyIndex>
GridButton('物品出户', R.ASSETS_ICONS_TOOL_WPCM_PNG, () { GridButton('物品出户', R.ASSETS_ICONS_TOOL_WPCM_PNG, () {
GoodsDetoPage().to(); GoodsDetoPage().to();
}), }),
GridButton('投诉表扬', R.ASSETS_ICONS_TOOL_TSBY_PNG, () { GridButton('投诉表扬', R.ASSETS_ICONS_TOOL_TSBY_PNG,
Get.to(ThingsPage( AdvicePage(type: AdviceType.SUGGESTION).to),
bundle: Bundle()
..putMap('things', {
'title': '投诉表扬',
'treeList': <Map<String, dynamic>>[
{'name': '您的表扬'},
{'name': '您的投诉'},
]
}),
));
}),
GridButton('问卷调查', R.ASSETS_ICONS_TOOL_WJDC_PNG, () { GridButton('问卷调查', R.ASSETS_ICONS_TOOL_WJDC_PNG, () {
QuestionnairePage().to(); QuestionnairePage().to();
}), }),

@ -1,202 +0,0 @@
import 'package:akuCommunity/pages/things_page/things_create_page/things_create_page.dart';
import 'package:flutter/material.dart';
import 'package:flutter/cupertino.dart';
import 'package:akuCommunity/routers/page_routers.dart';
import 'package:akuCommunity/utils/headers.dart';
import 'package:akuCommunity/widget/common_app_bar.dart';
import 'widget/things_app_bar.dart';
import 'widget/things_list.dart';
//TODO CLEAN BOTTOM CODES.
@Deprecated("sh*t page need to be cleaned.")
class ThingsPage extends StatefulWidget {
final Bundle bundle;
ThingsPage({Key key, this.bundle}) : super(key: key);
@override
_ThingsPageState createState() => _ThingsPageState();
}
class _ThingsPageState extends State<ThingsPage> with TickerProviderStateMixin {
List<Map<String, dynamic>> _listCard = [
{
'time': '2020年10月13日',
'tag': '已提交',
'content': '我觉得我们小区的绿化可以再多一点',
'imageList': <String>[
'https://dss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=111636878,534819054&fm=26&gp=0.jpg',
'https://dss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3834533673,769780989&fm=26&gp=0.jpg',
'https://dss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=1683501076,3787404077&fm=26&gp=0.jpg',
'https://dss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=1040644610,2290865162&fm=26&gp=0.jpg',
]
},
{
'time': '2020年09月23日',
'tag': '已审阅',
'content': '我觉得外面的小摊贩还是不要来了,毕竟为了环保,还有小区的孩子很多,大狗什么的希望主人能管好它',
'imageList': <String>[]
},
{
'time': '2020年08月12日',
'tag': '已反馈',
'content': '夏天蛇蚁虫属真多,希望小区能组队给整个小区保洁一下',
'imageList': <String>[
'https://dss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=1696975393,2205543181&fm=26&gp=0.jpg',
'https://dss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=3220834958,1457978756&fm=26&gp=0.jpg',
]
},
];
List<Map<String, dynamic>> _listRepair = [
{
'time': '公区报修',
'tag': '已处理',
'content': '小区花园的健身器材坏了请注意抓紧时间维修。还有一些健身器材年限到了麻烦注意更换,因为怕出现安全隐患。',
'imageList': <String>[
'https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=2390449629,3468003032&fm=26&gp=0.jpg',
'https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=123602716,1727529947&fm=26&gp=0.jpg',
'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3789981542,2569571902&fm=26&gp=0.jpg',
]
},
{
'time': '家庭维修',
'tag': '待分配',
'content': '家里的洗衣机坏了请师傅抓紧时间,赶快支援。',
'imageList': <String>[
'https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=1199114124,190063793&fm=26&gp=0.jpg',
'https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=1009468563,227812083&fm=26&gp=0.jpg',
]
},
{
'time': '家庭维修',
'tag': '维修中',
'content': '家里的空调坏了,热死人了,请师傅火速来修。',
'imageList': <String>[
'https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=1349979411,865756316&fm=26&gp=0.jpg',
'https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=2162579969,1968776994&fm=26&gp=0.jpg',
]
},
{
'time': '家庭维修',
'tag': '已完成',
'content': '家里的冰箱坏了,师傅赶紧来看看',
'imageList': <String>[
'https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=466219337,2269488732&fm=15&gp=0.jpg',
'https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=907707978,1526051881&fm=26&gp=0.jpg',
]
},
{
'time': '家庭维修',
'tag': '已取消',
'content': '家里的电饭煲坏了,师傅快上门修一下。',
'imageList': <String>[
'https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=61782379,2829421550&fm=26&gp=0.jpg',
'https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=921027380,3023940375&fm=15&gp=0.jpg',
]
},
];
TabController _controller;
@override
void initState() {
if (widget.bundle.getMap('things')['treeList'] != null) {
_controller = TabController(
length: widget.bundle.getMap('things')['treeList'].length,
vsync: this);
}
super.initState();
}
@override
void dispose() {
if (widget.bundle.getMap('things')['treeList'] != null) {
_controller.dispose();
}
super.dispose();
}
Widget _positionedButton() {
return Positioned(
bottom: 0,
child: InkWell(
onTap: () {
bool isIdea;
switch (widget.bundle.getMap('things')['title']) {
case '建议咨询':
isIdea = true;
break;
case '投诉表扬':
isIdea = false;
break;
case '报事报修':
break;
default:
}
ThingsCreatePage(
bundle: Bundle()
..putMap('create', {
'title': widget.bundle.getMap('things')['title'],
'isIdea': isIdea
}),
).to;
},
child: Container(
alignment: Alignment.center,
height: 98.w,
width: 750.w,
padding: EdgeInsets.symmetric(vertical: 26.5.w),
color: Color(0xffffc40c),
child: Text(
'新增',
style: TextStyle(
fontWeight: FontWeight.w600,
fontSize: 32.sp,
color: Color(0xff333333),
),
),
),
),
);
}
Widget build(BuildContext context) {
return Scaffold(
appBar: PreferredSize(
child: widget.bundle.getMap('things')['title'] == '报事报修'
? CommonAppBar(
title: '${widget.bundle.getMap('things')['title']}',
)
: ThingsAppBar(
title: '${widget.bundle.getMap('things')['title']}',
tabController: _controller,
treeList: widget.bundle.getMap('things')['treeList'],
),
preferredSize: Size.fromHeight(
widget.bundle.getMap('things')['title'] == '报事报修'
? kToolbarHeight
: kToolbarHeight * 1.8),
),
body: Stack(
children: [
widget.bundle.getMap('things')['title'] == '报事报修'
? ThingsList(
listCard: _listRepair,
isRepair: true,
)
: TabBarView(
controller: _controller,
children: List.generate(
widget.bundle.getMap('things')['treeList'].length,
(index) => ThingsList(
listCard: _listCard,
isRepair: false,
),
),
),
_positionedButton(),
],
),
);
}
}

@ -10,8 +10,9 @@ import 'package:akuCommunity/pages/one_alarm/widget/alarm_page.dart';
import 'package:akuCommunity/pages/open_door_page/open_door_page.dart'; import 'package:akuCommunity/pages/open_door_page/open_door_page.dart';
import 'package:akuCommunity/pages/opening_code_page/opening_code_page.dart'; import 'package:akuCommunity/pages/opening_code_page/opening_code_page.dart';
import 'package:akuCommunity/pages/questionnaire_page/questionnaire_page.dart'; import 'package:akuCommunity/pages/questionnaire_page/questionnaire_page.dart';
import 'package:akuCommunity/pages/things_page/things_page.dart'; import 'package:akuCommunity/pages/things_page/fixed_submit_page.dart';
import 'package:akuCommunity/pages/visitor_access_page/visitor_access_page.dart'; import 'package:akuCommunity/pages/visitor_access_page/visitor_access_page.dart';
import 'package:akuCommunity/ui/manager/advice/advice_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:akuCommunity/utils/headers.dart'; import 'package:akuCommunity/utils/headers.dart';
@ -135,12 +136,7 @@ class _TotalApplicationsPageState extends State<TotalApplicationsPage> {
VisitorAccessPage().to(); VisitorAccessPage().to();
break; break;
case '报事报修': case '报事报修':
ThingsPage( FixedSubmitPage().to();
bundle: Bundle()
..putMap('things', {
'title': '报事报修',
}),
).to;
break; break;
case '生活缴费': case '生活缴费':
case '我的缴费': case '我的缴费':
@ -150,40 +146,22 @@ class _TotalApplicationsPageState extends State<TotalApplicationsPage> {
IndustryCommitteePage().to(); IndustryCommitteePage().to();
break; break;
case '建议咨询': case '建议咨询':
ThingsPage( AdvicePage(type: AdviceType.SUGGESTION).to();
bundle: Bundle()
..putMap('things', {
'title': '建议咨询',
'treeList': <Map<String, dynamic>>[
{'name': '您的建议'},
{'name': '您的咨询'},
]
}),
).to();
break; break;
case '便民电话': case '便民电话':
ConvenientPhonePage().to(); ConvenientPhonePage().to();
break; break;
case '活动投票': case '活动投票':
ActivitiesPage().to; ActivitiesPage().to();
break; break;
case '社区活动': case '社区活动':
ActivitiesPage().to; ActivitiesPage().to();
break; break;
case '物品出户': case '物品出户':
GoodsDetoPage().to(); GoodsDetoPage().to();
break; break;
case '投诉表扬': case '投诉表扬':
ThingsPage( AdvicePage(type: AdviceType.COMPLAIN).to();
bundle: Bundle()
..putMap('things', {
'title': '投诉表扬',
'treeList': <Map<String, dynamic>>[
{'name': '您的表扬'},
{'name': '您的投诉'},
]
}),
).to;
break; break;
case '问卷调查': case '问卷调查':
QuestionnairePage().to(); QuestionnairePage().to();

@ -12,6 +12,13 @@ enum AdviceType {
COMPLAIN, COMPLAIN,
} }
enum _adviceInnerType {
SUGGESTION,
QUESTION,
COMPLAIN,
PRAISE,
}
class AdvicePage extends StatefulWidget { class AdvicePage extends StatefulWidget {
final AdviceType type; final AdviceType type;
AdvicePage({Key key, @required this.type}) : super(key: key); AdvicePage({Key key, @required this.type}) : super(key: key);
@ -23,6 +30,42 @@ class AdvicePage extends StatefulWidget {
class _AdvicePageState extends State<AdvicePage> with TickerProviderStateMixin { class _AdvicePageState extends State<AdvicePage> with TickerProviderStateMixin {
EasyRefreshController _refreshController = EasyRefreshController(); EasyRefreshController _refreshController = EasyRefreshController();
TabController _tabController; TabController _tabController;
String get title {
switch (widget.type) {
case AdviceType.SUGGESTION:
return '建议咨询';
break;
case AdviceType.COMPLAIN:
return '投诉表扬';
break;
}
return '';
}
List<String> get tabs {
switch (widget.type) {
case AdviceType.SUGGESTION:
return ['您的建议', '您的咨询'];
break;
case AdviceType.COMPLAIN:
return ['您的投诉', '您的表扬'];
break;
}
return [];
}
int adviceValue(int index) {
switch (widget.type) {
case AdviceType.SUGGESTION:
return index == 0 ? 2 : 1;
break;
case AdviceType.COMPLAIN:
return index == 0 ? 4 : 3;
break;
}
}
@override @override
void initState() { void initState() {
super.initState(); super.initState();
@ -38,17 +81,17 @@ class _AdvicePageState extends State<AdvicePage> with TickerProviderStateMixin {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return BeeScaffold( return BeeScaffold(
title: '建议咨询', title: title,
appBarBottom: BeeTabBar( appBarBottom: BeeTabBar(
controller: _tabController, controller: _tabController,
tabs: ['您的建议', '您的咨询'], tabs: tabs,
), ),
body: TabBarView( body: TabBarView(
controller: _tabController, controller: _tabController,
children: List.generate(2, (index) { children: List.generate(2, (index) {
return BeeListView( return BeeListView(
path: API.manager.advice, path: API.manager.advice,
extraParams: {'adviceType': index == 0 ? 2 : 1}, extraParams: {'adviceType': adviceValue(index)},
controller: _refreshController, controller: _refreshController,
convert: (model) => model.tableList convert: (model) => model.tableList
.map((e) => SuggestionOrComplainModel.fromJson(e)) .map((e) => SuggestionOrComplainModel.fromJson(e))

Loading…
Cancel
Save