Commit be91dd898e92ccd8d116df519c77ef9bd4ddae46

Authored by wdn127929
1 parent 9e428c25

客户通知短信及客情筛选更新 231127 UI OK

... ... @@ -18,19 +18,19 @@ if (flutterRoot == null) {
def flutterVersionCode = "514"
def flutterVersionCode = "515"
if (flutterVersionCode == null) {
flutterVersionCode = '514'
flutterVersionCode = '515'
}
def flutterVersionName = "5.1.4"
def flutterVersionName = "5.1.5"
if (flutterVersionName == null) {
flutterVersionName = '5.1.4'
flutterVersionName = '5.1.5'
}
... ...
... ... @@ -136,6 +136,6 @@ class Table {
@override
String toString() {
return 'Table{id: $id,isPhoto:$isPhoto rid: $rid, tid: $tid, name: $name, table_pnum: $table_pnum, most_pnum: $most_pnum, order_o: $order_o, status: $status, tablestatus: $tablestatus, enable: $enable, spell: $spell, rname: $rname, isExitsClass:$isExitsClass,max: $max, low: $low, is_lock: $isLock, is_merge: $isMerge,tids:$tids,lock_tname:$lockTname,reserveCount:$reserveCount,phone:$phone,lock_tid:$lockTid}';
return 'Table{id: $id,isPhoto:$isPhoto rid: $rid, tid: $tid, name: $name, table_pnum: $table_pnum, most_pnum: $most_pnum, order_o: $order_o, status: $status, tablestatus: $tablestatus, enable: $enable, spell: $spell, rname: $rname, isExitsClass:$isExitsClass,max: $max, low: $low, is_lock: $isLock, is_merge: $isMerge,tids:$tids,lock_tname:$lockTname,reserveCount:$reserveCount,phone:$phone,lock_tid:$lockTid,rname:$rname,}';
}
}
... ...
... ... @@ -51,6 +51,7 @@ import 'package:one_key/models/table.dart' as t;
import '../../app.dart';
import '../../models/customer_by_seller_model.dart';
import '../../models/reserve_deposit_model.dart';
import '../../provider/collect_store_provider.dart';
import '../../utils/screen_util.dart';
... ... @@ -3055,7 +3056,76 @@ class NotebookDetailPageState extends State<NotebookDetailPage> {
: Utils.starPhone(detailEntity
.phone),
textColor: MyColours
.color_515151))
.color_515151)),
(detailEntity.status ==
"4" &&
detailEntity
.cancel !=
null &&
(detailEntity
.rnameStr ==
null ||
detailEntity
.rnameStr ==
''))
? SizedBox()
: Padding(
padding:
EdgeInsets.only(
top: w(10)),
child: Align(
alignment: Alignment
.centerRight,
child:
RoundButton(
text: '客户详情',
width: w(72),
height: w(22),
borderColor:
MyColours
.color_438E93,
textColor: MyColours
.color_438E93,
gradientStart:
MyColours
.color_ffffff,
gradientEnd:
MyColours
.color_ffffff,
isBold: true,
fontSize: 24,
onPressed: () {
//gid 跳转客户详情页面
CustomerBySellerSunModel
userHistoryEntity =
CustomerBySellerSunModel(
null,
null,
detailEntity
.phone,
null,
null,
null,
null,
null,
null,
null,
null,
detailEntity
.gid,
null,
null,
null,
null);
NavigatorUtil.goCustomerDetailPage(
context,
userHistoryEntity,
FromPage
.FromPageMessagePage);
},
),
))
],
),
... ...
... ... @@ -28,6 +28,7 @@ import 'package:provider/provider.dart';
import '../../../../provider/collect_store_provider.dart';
import '../../../../utils/dialog_util.dart';
import '../../../../utils/screen_util.dart';
typedef ClickCallback = void Function(dynamic value);
typedef ClickCall = void Function(FilterBtnModel value);
... ... @@ -330,7 +331,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
color: MyColours.color_ffffff,
boxShadow: [
BoxShadow(
color: MyColours.color_333333,
color: MyColours.color_515151,
blurRadius: ScreenUtil().setWidth(14))
],
borderRadius: BorderRadius.only(
... ... @@ -359,7 +360,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
'全选',
style: TextStyle(
fontSize: ScreenUtil().setSp(26),
color: MyColours.color_333333),
color: MyColours.color_515151),
),
HEmptyView(20),
],
... ... @@ -471,7 +472,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
// autofocus: true,
style: TextStyle(
color: MyColours.color_333333,
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(26)),
// textAlignVertical: TextAlignVertical.center,
decoration: InputDecoration(
... ... @@ -837,7 +838,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
// Row(
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
// children: [
// _textWidget('客户经理', MyColours.color_333333, FontWeight.bold, 28),
// _textWidget('客户经理', MyColours.color_515151, FontWeight.bold, 28),
// GestureDetector(
// onTap: () {},
// child: _textWidget(
... ... @@ -873,7 +874,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('活跃度', MyColours.color_333333, FontWeight.bold, 28),
_textWidget('活跃度', MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -901,29 +902,32 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
)
],
),
VEmptyView(30),
Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children: _buildFilterItem(customerProvider.filterHydList, false,
(FilterBtnModel item) {
state(() {
item.select = !item.select;
VEmptyView(20),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children:
_buildFilterItem(customerProvider.filterHydList, false,
(FilterBtnModel item) {
state(() {
item.select = !item.select;
// }
});
customerProvider.getCheckhydSelAll();
// for (FilterBtnModel value in customerProvider.filterHydList) {
// value.select = false;
// }
// for (FilterBtnModel value in customerProvider.filterHydList) {
// if (item.id == value.id) {
// state(() {
// value.select = true;
// });
// }
// }
})),
// }
});
customerProvider.getCheckhydSelAll();
// for (FilterBtnModel value in customerProvider.filterHydList) {
// value.select = false;
// }
// for (FilterBtnModel value in customerProvider.filterHydList) {
// if (item.id == value.id) {
// state(() {
// value.select = true;
// });
// }
// }
}))),
],
);
}
... ... @@ -936,7 +940,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('自定义标签', MyColours.color_333333, FontWeight.bold, 28),
_textWidget('自定义标签', MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -967,17 +971,20 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
24))),
],
),
VEmptyView(30),
Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children: _buildFilterItem(customerProvider.filterLabelList, true,
(FilterBtnModel item) {
state(() {
item.select = !item.select;
});
customerProvider.getChecklabelSelAll();
})),
VEmptyView(20),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children:
_buildFilterItem(customerProvider.filterLabelList, false,
(FilterBtnModel item) {
state(() {
item.select = !item.select;
});
customerProvider.getChecklabelSelAll();
}))),
],
);
}
... ... @@ -1035,6 +1042,85 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
}));
}
//消费UI
Widget _consume(state) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('人均消费金额', MyColours.color_515151, FontWeight.bold, 28),
// GestureDetector(
// onTap: () {
// customerProvider.controllersmoney.text = '';
// customerProvider.controlleremoney.text = '';
// },
// child: Container(
// color: Colors.white,
// height: ScreenUtil().setWidth(40),
// alignment: Alignment.center,
// padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
// child: _textWidget(
// '清空', MyColours.color_199095, FontWeight.normal, 24),
// ))
],
),
VEmptyView(20),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Row(
children: [
Expanded(
child: _textFeildWidget(customerProvider.controllersmoney,
customerProvider.smoneyFocus, state, (value) {
//输入框
}, unit: '元')),
HEmptyView(10),
_textWidget('至', MyColours.color_199095, FontWeight.normal, 24),
HEmptyView(10),
Expanded(
child: _textFeildWidget(customerProvider.controlleremoney,
customerProvider.emoneyFocus, state, (value) {},
unit: '元')),
],
)),
VEmptyView(40),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('人均消费能力', MyColours.color_515151, FontWeight.bold, 28),
// GestureDetector(
// onTap: () {
// customerProvider.controllersmoney.text = '';
// customerProvider.controlleremoney.text = '';
// },
// child: Container(
// color: Colors.white,
// height: ScreenUtil().setWidth(40),
// alignment: Alignment.center,
// padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
// child: _textWidget(
// '清空', MyColours.color_199095, FontWeight.normal, 24),
// ))
],
),
VEmptyView(20),
Row(
children: [
HEmptyView(20),
_textWidget('最高的', MyColours.color_199095, FontWeight.normal, 24),
HEmptyView(10),
Expanded(
child: _textFeildWidget(customerProvider.controllermaxmoney,
customerProvider.maxmoneyFocus, state, (value) {},
unit: '%')),
],
),
],
);
}
///高级筛选
Widget _advancedFilterWidget(StateSetter state) {
return Column(
... ... @@ -1043,7 +1129,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('高级筛选', MyColours.color_333333, FontWeight.bold, 28),
_textWidget('自定义时间', MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
customerProvider.controllerstime.text = '';
... ... @@ -1063,54 +1149,85 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
))
],
),
VEmptyView(30),
Row(
children: [
Expanded(
child: _textFeildWidget(customerProvider.controllerstime,
customerProvider.stimeFocus, state)),
HEmptyView(10),
_textWidget('至', MyColours.color_199095, FontWeight.normal, 24),
HEmptyView(10),
Expanded(
child: _textFeildWidget(customerProvider.controlleretime,
customerProvider.etimeFocus, state)),
],
),
VEmptyView(30),
Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children: _buildFilterItem(
customerProvider.filterDayList,
true,
(FilterBtnModel item) {
// if (customerProvider.stimeFocus.hasFocus) {
// customerProvider.controllerstime.text = item.id;
// }
// if (customerProvider.etimeFocus.hasFocus) {
// customerProvider.controlleretime.text = item.id;
// }
customerProvider.controllerstime.text = '';
customerProvider.controlleretime.text = '';
for (FilterBtnModel value in customerProvider.filterDayList) {
value.select = false;
}
for (FilterBtnModel value in customerProvider.filterDayList) {
if (item.id == value.id) {
state(() {
value.select = true;
});
VEmptyView(20),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Row(
children: [
Expanded(
child: _textFeildWidget(customerProvider.controllerstime,
customerProvider.stimeFocus, state, (value) {
for (FilterBtnModel value in customerProvider.filterDayList) {
value.select = false;
}
}
// state(() {
// item.select = !item.select;
// });
},
customerProvider.controllernum.text = '';
state(() {});
// setState(() {});
// _searchSellerLocation();
// customerProvider.searchData(value);
})),
HEmptyView(10),
_textWidget('至', MyColours.color_199095, FontWeight.normal, 24),
HEmptyView(10),
Expanded(
child: _textFeildWidget(customerProvider.controlleretime,
customerProvider.etimeFocus, state, (value) {
for (FilterBtnModel value in customerProvider.filterDayList) {
value.select = false;
}
customerProvider.controllernum.text = '';
state(() {});
// setState(() {});
// _searchSellerLocation();
// customerProvider.searchData(value);
})),
],
)),
VEmptyView(30),
_textWidget('时间内预订次数', MyColours.color_333333, FontWeight.normal, 24),
VEmptyView(30),
VEmptyView(20),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Row(children: [
_textWidget('或', MyColours.color_000000, FontWeight.normal, 24),
HEmptyView(20),
Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children: _buildFilterItem(
customerProvider.filterDayList,
false,
(FilterBtnModel item) {
// if (customerProvider.stimeFocus.hasFocus) {
// customerProvider.controllerstime.text = item.id;
// }
// if (customerProvider.etimeFocus.hasFocus) {
// customerProvider.controlleretime.text = item.id;
// }
customerProvider.controllerstime.text = '';
customerProvider.controlleretime.text = '';
for (FilterBtnModel value
in customerProvider.filterDayList) {
value.select = false;
}
for (FilterBtnModel value
in customerProvider.filterDayList) {
if (item.id == value.id) {
state(() {
value.select = true;
});
}
}
// state(() {
// item.select = !item.select;
// });
},
))
])),
VEmptyView(40),
// _textWidget('时间内预订次数', MyColours.color_515151, FontWeight.normal, 24),
_textWidget('预订次数', MyColours.color_515151, FontWeight.bold, 28),
VEmptyView(20),
/**
Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
Material(
... ... @@ -1148,6 +1265,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
*/
Row(children: [
Material(
color: Colors.white,
child: Container(
height: ScreenUtil().setWidth(50),
// width: ScreenUtil().setWidth(100),
... ... @@ -1155,14 +1273,14 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
horizontal: ScreenUtil().setWidth(20)),
decoration: BoxDecoration(
borderRadius:
BorderRadius.circular(ScreenUtil().setWidth(30)),
color: Color.fromRGBO(239, 239, 239, 1)),
BorderRadius.circular(ScreenUtil().setWidth(10)),
color: MyColours.color_DBDBDB),
child: DropdownButton(
underline: SizedBox(),
value: dropValue,
isDense: true,
style: TextStyle(
color: MyColours.color_333333,
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(28)),
focusColor: MyColours.color_199095,
items: _dropdownMenuItem(),
... ... @@ -1170,7 +1288,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
children: [
HEmptyView(10),
Image.asset(
Utils.getImgPath('c_arrow_down'),
Utils.getImgPath('c_arrow_d'),
width: ScreenUtil().setWidth(24),
// height: ScreenUtil().setWidth(10),
)
... ... @@ -1205,7 +1323,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
// autofocus: true,
style: TextStyle(
color: MyColours.color_333333,
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(26)),
// textAlignVertical: TextAlignVertical.center,
decoration: InputDecoration(
... ... @@ -1241,7 +1359,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
),
)),
HEmptyView(20),
_textWidget('次预订', MyColours.color_333333, FontWeight.normal, 24),
_textWidget('次预订', MyColours.color_515151, FontWeight.normal, 24),
]),
VEmptyView(50),
],
... ... @@ -1285,7 +1403,8 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
/// 高级筛选输入框
Widget _textFeildWidget(TextEditingController controller, FocusNode focusNode,
StateSetter state) {
StateSetter state, ValueChanged<String> onChanged,
{String unit = '天'}) {
return Container(
padding: EdgeInsets.symmetric(
horizontal: ScreenUtil().setWidth(20),
... ... @@ -1294,7 +1413,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
// alignment: Alignment.center,
decoration: BoxDecoration(
color: Color.fromRGBO(239, 239, 239, 1),
borderRadius: BorderRadius.circular(ScreenUtil().setWidth(30))),
borderRadius: BorderRadius.circular(ScreenUtil().setWidth(10))),
child: Material(
color: Color.fromRGBO(239, 239, 239, 1),
child: Row(children: [
... ... @@ -1306,7 +1425,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
// autofocus: true,
style: TextStyle(
color: MyColours.color_333333,
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(26)),
// textAlignVertical: TextAlignVertical.center,
decoration: InputDecoration(
... ... @@ -1323,18 +1442,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
keyboardType: TextInputType.numberWithOptions(decimal: true),
textInputAction: TextInputAction.done,
onChanged: (value) {
for (FilterBtnModel value
in customerProvider.filterDayList) {
value.select = false;
}
customerProvider.controllernum.text = '';
state(() {});
// setState(() {});
// _searchSellerLocation();
// customerProvider.searchData(value);
},
onChanged: onChanged,
onEditingComplete: () {
FocusScope.of(context)
.requestFocus(FocusNode()); //点击空白处隐藏键盘
... ... @@ -1345,7 +1453,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
},
),
),
_textWidget('天', MyColours.color_333333, FontWeight.normal, 24),
_textWidget(unit, MyColours.color_515151, FontWeight.normal, 24),
])));
}
... ... @@ -1383,34 +1491,39 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
child: Column(
children: [
Expanded(
// child: Scrollbar(
// isAlwaysShown: true, //设置滚动条常亮
// controller: _scrollCrl, //必须设置一个controller
// ///添加进度条
child: SingleChildScrollView(
controller: _scrollCrl,
// primary: true,
// reverse: true,
// physics: BouncingScrollPhysics(),
// padding: EdgeInsets.only(
// bottom:
// MediaQuery.of(context).viewInsets.bottom),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
VEmptyView(20),
// _managerWidget(),
// VEmptyView(30),
_activityWidget(state),
VEmptyView(30),
_labelWidget(state),
VEmptyView(30),
_advancedFilterWidget(state)
],
),
)),
// ),
child: Scrollbar(
isAlwaysShown: true, //设置滚动条常亮
controller: _scrollCrl, //必须设置一个controller
// ///添加进度条
child: SingleChildScrollView(
controller: _scrollCrl,
// primary: true,
// reverse: true,
// physics: BouncingScrollPhysics(),
// padding: EdgeInsets.only(
// bottom:
// MediaQuery.of(context).viewInsets.bottom),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
VEmptyView(20),
// _managerWidget(),
// VEmptyView(30),
_activityWidget(state),
VEmptyView(40),
_labelWidget(state),
VEmptyView(40),
// 消费
_consume(state),
VEmptyView(40),
_advancedFilterWidget(state)
],
),
)),
),
Row(
children: [
Container(
... ... @@ -1453,7 +1566,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
alignment: Alignment.center,
child: _textWidget(
'重置',
MyColours.color_333333,
MyColours.color_515151,
FontWeight.normal,
30),
),
... ... @@ -1529,11 +1642,11 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
child: _textWidget(
item.title,
grayBack
? MyColours.color_333333
? MyColours.color_515151
: item.select
? MyColours.color_ffffff
: round
? MyColours.color_333333
? MyColours.color_515151
: MyColours.color_199095,
FontWeight.normal,
24))));
... ... @@ -1561,7 +1674,7 @@ class _MyCustomerListPageState extends State<MyCustomerListPage>
);
} else {
return MyContactListPage(
uid:widget.uid,
uid: widget.uid,
contacts: model.userHistorys,
provider: customerProvider,
fromPage: widget.fromPage,
... ...
... ... @@ -30,6 +30,7 @@ import 'package:provider/provider.dart';
import '../../../../provider/collect_store_provider.dart';
import '../../../../utils/dialog_util.dart';
import '../../../../utils/screen_util.dart';
typedef ClickCallback = void Function(dynamic value);
typedef ClickCall = void Function(FilterBtnModel value);
... ... @@ -435,7 +436,7 @@ class _CustomerListPageState extends State<CustomerListPage>
color: MyColours.color_ffffff,
boxShadow: [
BoxShadow(
color: MyColours.color_333333,
color: MyColours.color_515151,
blurRadius: ScreenUtil().setWidth(14))
],
borderRadius: BorderRadius.only(
... ... @@ -464,7 +465,7 @@ class _CustomerListPageState extends State<CustomerListPage>
'全选',
style: TextStyle(
fontSize: ScreenUtil().setSp(26),
color: MyColours.color_333333),
color: MyColours.color_515151),
),
HEmptyView(20),
],
... ... @@ -578,7 +579,7 @@ class _CustomerListPageState extends State<CustomerListPage>
// autofocus: true,
style: TextStyle(
color: MyColours.color_333333,
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(26)),
// textAlignVertical: TextAlignVertical.center,
decoration: InputDecoration(
... ... @@ -967,7 +968,7 @@ class _CustomerListPageState extends State<CustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('客户经理', MyColours.color_333333, FontWeight.bold, 28),
_textWidget('客户经理', MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -1001,18 +1002,21 @@ class _CustomerListPageState extends State<CustomerListPage>
)
],
),
VEmptyView(30),
Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children: _buildFilterItem(customerProvider.filterManageList, false,
(FilterBtnModel item) {
state(() {
item.select = !item.select;
});
_getUid();
customerProvider.getCheckmanageSelAll();
})),
VEmptyView(20),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children:
_buildFilterItem(customerProvider.filterManageList, false,
(FilterBtnModel item) {
state(() {
item.select = !item.select;
});
_getUid();
customerProvider.getCheckmanageSelAll();
}))),
],
);
}
... ... @@ -1025,7 +1029,7 @@ class _CustomerListPageState extends State<CustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('活跃度', MyColours.color_333333, FontWeight.bold, 28),
_textWidget('活跃度', MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -1053,32 +1057,35 @@ class _CustomerListPageState extends State<CustomerListPage>
)
],
),
VEmptyView(30),
Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children: _buildFilterItem(customerProvider.filterHydList, false,
(FilterBtnModel item) {
state(() {
item.select = !item.select;
VEmptyView(20),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children:
_buildFilterItem(customerProvider.filterHydList, false,
(FilterBtnModel item) {
state(() {
item.select = !item.select;
// }
});
customerProvider.getCheckhydSelAll();
// state(() {
// item.select = !item.select;
// });
// for (FilterBtnModel value in customerProvider.filterHydList) {
// value.select = false;
// }
// for (FilterBtnModel value in customerProvider.filterHydList) {
// if (item.id == value.id) {
// state(() {
// value.select = true;
// });
// }
// }
})),
// }
});
customerProvider.getCheckhydSelAll();
// state(() {
// item.select = !item.select;
// });
// for (FilterBtnModel value in customerProvider.filterHydList) {
// value.select = false;
// }
// for (FilterBtnModel value in customerProvider.filterHydList) {
// if (item.id == value.id) {
// state(() {
// value.select = true;
// });
// }
// }
}))),
],
);
}
... ... @@ -1091,7 +1098,7 @@ class _CustomerListPageState extends State<CustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('自定义标签', MyColours.color_333333, FontWeight.bold, 28),
_textWidget('自定义标签', MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -1122,17 +1129,99 @@ class _CustomerListPageState extends State<CustomerListPage>
24))),
],
),
VEmptyView(30),
Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children: _buildFilterItem(customerProvider.filterLabelList, true,
(FilterBtnModel item) {
state(() {
item.select = !item.select;
});
customerProvider.getChecklabelSelAll();
})),
VEmptyView(20),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children:
_buildFilterItem(customerProvider.filterLabelList, false,
(FilterBtnModel item) {
state(() {
item.select = !item.select;
});
customerProvider.getChecklabelSelAll();
}))),
],
);
}
//消费UI
Widget _consume(state) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('人均消费金额', MyColours.color_515151, FontWeight.bold, 28),
// GestureDetector(
// onTap: () {
// customerProvider.controllersmoney.text = '';
// customerProvider.controlleremoney.text = '';
// },
// child: Container(
// color: Colors.white,
// height: ScreenUtil().setWidth(40),
// alignment: Alignment.center,
// padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
// child: _textWidget(
// '清空', MyColours.color_199095, FontWeight.normal, 24),
// ))
],
),
VEmptyView(20),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Row(
children: [
Expanded(
child: _textFeildWidget(customerProvider.controllersmoney,
customerProvider.smoneyFocus, state, (value) {
//输入框
}, unit: '元')),
HEmptyView(10),
_textWidget('至', MyColours.color_199095, FontWeight.normal, 24),
HEmptyView(10),
Expanded(
child: _textFeildWidget(customerProvider.controlleremoney,
customerProvider.emoneyFocus, state, (value) {},
unit: '元')),
],
)),
VEmptyView(40),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('人均消费能力', MyColours.color_515151, FontWeight.bold, 28),
// GestureDetector(
// onTap: () {
// customerProvider.controllersmoney.text = '';
// customerProvider.controlleremoney.text = '';
// },
// child: Container(
// color: Colors.white,
// height: ScreenUtil().setWidth(40),
// alignment: Alignment.center,
// padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
// child: _textWidget(
// '清空', MyColours.color_199095, FontWeight.normal, 24),
// ))
],
),
VEmptyView(20),
Row(
children: [
HEmptyView(20),
_textWidget('最高的', MyColours.color_199095, FontWeight.normal, 24),
HEmptyView(10),
Expanded(
child: _textFeildWidget(customerProvider.controllermaxmoney,
customerProvider.maxmoneyFocus, state, (value) {},
unit: '%')),
],
),
],
);
}
... ... @@ -1198,7 +1287,7 @@ class _CustomerListPageState extends State<CustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('高级筛选', MyColours.color_333333, FontWeight.bold, 28),
_textWidget('自定义时间', MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
customerProvider.controllerstime.text = '';
... ... @@ -1218,51 +1307,80 @@ class _CustomerListPageState extends State<CustomerListPage>
))
],
),
VEmptyView(20),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Row(
children: [
Expanded(
child: _textFeildWidget(customerProvider.controllerstime,
customerProvider.stimeFocus, state, (value) {
for (FilterBtnModel value in customerProvider.filterDayList) {
value.select = false;
}
customerProvider.controllernum.text = '';
state(() {});
// setState(() {});
// _searchSellerLocation();
// customerProvider.searchData(value);
})),
HEmptyView(10),
_textWidget('至', MyColours.color_199095, FontWeight.normal, 24),
HEmptyView(10),
Expanded(
child: _textFeildWidget(customerProvider.controlleretime,
customerProvider.etimeFocus, state, (value) {
for (FilterBtnModel value in customerProvider.filterDayList) {
value.select = false;
}
customerProvider.controllernum.text = '';
state(() {});
// setState(() {});
// _searchSellerLocation();
// customerProvider.searchData(value);
})),
],
)),
VEmptyView(30),
Row(
children: [
Expanded(
child: _textFeildWidget(customerProvider.controllerstime,
customerProvider.stimeFocus, state)),
HEmptyView(10),
_textWidget('至', MyColours.color_199095, FontWeight.normal, 24),
HEmptyView(10),
Expanded(
child: _textFeildWidget(customerProvider.controlleretime,
customerProvider.etimeFocus, state)),
],
),
VEmptyView(30),
Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children: _buildFilterItem(customerProvider.filterDayList, true,
(FilterBtnModel item) {
customerProvider.controllerstime.text = '';
customerProvider.controlleretime.text = '';
for (FilterBtnModel value in customerProvider.filterDayList) {
value.select = false;
}
for (FilterBtnModel value in customerProvider.filterDayList) {
if (item.id == value.id) {
state(() {
value.select = true;
});
}
}
// if (customerProvider.stimeFocus.hasFocus) {
// customerProvider.controllerstime.text = item.id;
// }
// if (customerProvider.etimeFocus.hasFocus) {
// customerProvider.controlleretime.text = item.id;
// }
// state(() {
// item.select = !item.select;
// });
})),
VEmptyView(30),
_textWidget('时间内预订次数', MyColours.color_333333, FontWeight.normal, 24),
VEmptyView(30),
Padding(
padding: EdgeInsets.only(left: w(10)),
child: Row(children: [
_textWidget('或', MyColours.color_000000, FontWeight.normal, 24),
HEmptyView(20),
Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(20),
children:
_buildFilterItem(customerProvider.filterDayList, false,
(FilterBtnModel item) {
customerProvider.controllerstime.text = '';
customerProvider.controlleretime.text = '';
for (FilterBtnModel value
in customerProvider.filterDayList) {
value.select = false;
}
for (FilterBtnModel value
in customerProvider.filterDayList) {
if (item.id == value.id) {
state(() {
value.select = true;
});
}
}
// if (customerProvider.stimeFocus.hasFocus) {
// customerProvider.controllerstime.text = item.id;
// }
// if (customerProvider.etimeFocus.hasFocus) {
// customerProvider.controlleretime.text = item.id;
// }
// state(() {
// item.select = !item.select;
// });
}))
])),
VEmptyView(40),
_textWidget('预订次数', MyColours.color_515151, FontWeight.bold, 28),
VEmptyView(20),
/**
Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
Material(
... ... @@ -1300,6 +1418,7 @@ class _CustomerListPageState extends State<CustomerListPage>
*/
Row(children: [
Material(
color: MyColours.color_ffffff,
child: Container(
height: ScreenUtil().setWidth(50),
// width: ScreenUtil().setWidth(100),
... ... @@ -1307,14 +1426,14 @@ class _CustomerListPageState extends State<CustomerListPage>
horizontal: ScreenUtil().setWidth(20)),
decoration: BoxDecoration(
borderRadius:
BorderRadius.circular(ScreenUtil().setWidth(30)),
color: Color.fromRGBO(239, 239, 239, 1)),
BorderRadius.circular(ScreenUtil().setWidth(10)),
color: MyColours.color_DBDBDB),
child: DropdownButton(
underline: SizedBox(),
value: dropValue,
isDense: true,
style: TextStyle(
color: MyColours.color_333333,
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(28)),
focusColor: MyColours.color_199095,
items: _dropdownMenuItem(),
... ... @@ -1322,7 +1441,7 @@ class _CustomerListPageState extends State<CustomerListPage>
children: [
HEmptyView(10),
Image.asset(
Utils.getImgPath('c_arrow_down'),
Utils.getImgPath('c_arrow_d'),
width: ScreenUtil().setWidth(24),
// height: ScreenUtil().setWidth(10),
)
... ... @@ -1357,7 +1476,7 @@ class _CustomerListPageState extends State<CustomerListPage>
// autofocus: true,
style: TextStyle(
color: MyColours.color_333333,
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(26)),
// textAlignVertical: TextAlignVertical.center,
decoration: InputDecoration(
... ... @@ -1393,7 +1512,7 @@ class _CustomerListPageState extends State<CustomerListPage>
),
)),
HEmptyView(20),
_textWidget('次预订', MyColours.color_333333, FontWeight.normal, 24),
_textWidget('次预订', MyColours.color_515151, FontWeight.normal, 24),
]),
VEmptyView(50),
],
... ... @@ -1437,7 +1556,8 @@ class _CustomerListPageState extends State<CustomerListPage>
/// 高级筛选输入框
Widget _textFeildWidget(TextEditingController controller, FocusNode focusNode,
StateSetter state) {
StateSetter state, ValueChanged<String> onChanged,
{String unit = '天'}) {
return Container(
padding: EdgeInsets.symmetric(
horizontal: ScreenUtil().setWidth(20),
... ... @@ -1446,7 +1566,7 @@ class _CustomerListPageState extends State<CustomerListPage>
// alignment: Alignment.center,
decoration: BoxDecoration(
color: Color.fromRGBO(239, 239, 239, 1),
borderRadius: BorderRadius.circular(ScreenUtil().setWidth(30))),
borderRadius: BorderRadius.circular(ScreenUtil().setWidth(10))),
child: Material(
color: Color.fromRGBO(239, 239, 239, 1),
child: Row(children: [
... ... @@ -1458,7 +1578,7 @@ class _CustomerListPageState extends State<CustomerListPage>
// autofocus: true,
style: TextStyle(
color: MyColours.color_333333,
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(26)),
// textAlignVertical: TextAlignVertical.center,
decoration: InputDecoration(
... ... @@ -1475,17 +1595,7 @@ class _CustomerListPageState extends State<CustomerListPage>
keyboardType: TextInputType.numberWithOptions(decimal: true),
textInputAction: TextInputAction.done,
onChanged: (value) {
for (FilterBtnModel value
in customerProvider.filterDayList) {
value.select = false;
}
customerProvider.controllernum.text = '';
state(() {});
// setState(() {});
// _searchSellerLocation();
// customerProvider.searchData(value);
},
onChanged: onChanged,
onEditingComplete: () {
FocusScope.of(context)
.requestFocus(FocusNode()); //点击空白处隐藏键盘
... ... @@ -1496,7 +1606,7 @@ class _CustomerListPageState extends State<CustomerListPage>
},
),
),
_textWidget('天', MyColours.color_333333, FontWeight.normal, 24),
_textWidget(unit, MyColours.color_515151, FontWeight.normal, 24),
])));
}
... ... @@ -1534,34 +1644,36 @@ class _CustomerListPageState extends State<CustomerListPage>
child: Column(
children: [
Expanded(
// child: Scrollbar(
// isAlwaysShown: true, //设置滚动条常亮
// controller: _scrollCrl, //必须设置一个controller
// ///添加进度条
child: SingleChildScrollView(
controller: _scrollCrl,
// primary: true,
// reverse: true,
// physics: BouncingScrollPhysics(),
// padding: EdgeInsets.only(
// bottom:
// MediaQuery.of(context).viewInsets.bottom),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
VEmptyView(20),
_managerWidget(state),
VEmptyView(30),
_activityWidget(state),
VEmptyView(30),
_labelWidget(state),
VEmptyView(30),
_advancedFilterWidget(state)
],
),
)),
// ),
child: Scrollbar(
isAlwaysShown: true, //设置滚动条常亮
controller: _scrollCrl, //必须设置一个controller
// ///添加进度条
child: SingleChildScrollView(
controller: _scrollCrl,
// primary: true,
// reverse: true,
// physics: BouncingScrollPhysics(),
// padding: EdgeInsets.only(
// bottom:
// MediaQuery.of(context).viewInsets.bottom),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
VEmptyView(20),
_managerWidget(state),
VEmptyView(40),
_activityWidget(state),
VEmptyView(40),
_labelWidget(state),
VEmptyView(40),
_consume(state),
VEmptyView(40),
_advancedFilterWidget(state)
],
),
)),
),
Row(
children: [
Container(
... ... @@ -1604,7 +1716,7 @@ class _CustomerListPageState extends State<CustomerListPage>
alignment: Alignment.center,
child: _textWidget(
'重置',
MyColours.color_333333,
MyColours.color_515151,
FontWeight.normal,
30),
),
... ... @@ -1680,11 +1792,11 @@ class _CustomerListPageState extends State<CustomerListPage>
child: _textWidget(
item.title,
grayBack
? MyColours.color_333333
? MyColours.color_515151
: item.select
? MyColours.color_ffffff
: round
? MyColours.color_333333
? MyColours.color_515151
: MyColours.color_199095,
FontWeight.normal,
24))));
... ...
... ... @@ -23,7 +23,6 @@ class CustomerSettingPage extends StatefulWidget {
}
class _CustomerSettingPageState extends State<CustomerSettingPage> {
bool swichState = false;
CustomerProvider customerProvider;
bool swichSync = false; //会员系统同步
... ... @@ -43,9 +42,10 @@ class _CustomerSettingPageState extends State<CustomerSettingPage> {
_sellerGuestSet() async {
Map<String, String> params = {
"sellerid": Provider.of<UserModel>(context, listen: false).user.sellerid,
'is_additional': swichState ? "1" : "0"
'is_additional': customerProvider.isrepair ? "1" : "0"
};
bool success = await customerProvider.setSellerGuest(context, params,showLoading: true);
bool success = await customerProvider.setSellerGuest(context, params,
showLoading: true);
if (success) {}
}
... ... @@ -56,11 +56,11 @@ class _CustomerSettingPageState extends State<CustomerSettingPage> {
};
bool success = await customerProvider.getSellerGuest(context, params);
if (success) {
swichState = true;
} else {
swichState = false;
}
// if (success) {
// customerProvider.isrepair = true;
// } else {
// customerProvider.isrepair = false;
// }
setState(() {});
}
... ... @@ -183,7 +183,7 @@ class _CustomerSettingPageState extends State<CustomerSettingPage> {
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(r(5)),
border:
Border.all(color: MyColours.color_DBDBDB, width: w(1)),
Border.all(color: MyColours.color_E7E7E7, width: w(1)),
),
child: TextField(
controller: controller,
... ... @@ -225,59 +225,124 @@ class _CustomerSettingPageState extends State<CustomerSettingPage> {
},
),
body: Padding(
padding: EdgeInsets.symmetric(
horizontal: ScreenUtil().setWidth(40),
vertical: ScreenUtil().setWidth(40)),
padding: EdgeInsets.only(
left: ScreenUtil().setWidth(32), top: ScreenUtil().setWidth(40)),
child: SingleChildScrollView(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Container(
padding: EdgeInsets.symmetric(vertical: w(8)),
child: Text('客人信息录入',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(32)))),
MyDivider(
double.infinity,
w(1),
color: MyColours.color_E7E7E7,
),
VEmptyView(24),
InkWell(
onTap: () {
setState(() {
swichState = !swichState;
customerProvider.isselfphone =
!customerProvider.isselfphone;
});
_sellerGuestSet();
},
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Text('预订要求补录客人信息',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(32))),
Image.asset(
swichState
? Utils.getImgPath('f_swich_on')
: Utils.getImgPath('f_swich_off'),
width: ScreenUtil().setWidth(70),
// height: ScreenUtil().setWidth(82),
),
],
),
),
VEmptyView(20),
MyDivider(
double.infinity,
w(1),
color: MyColours.color_DBDBDB,
child: Container(
padding:
EdgeInsets.symmetric(vertical: w(8), horizontal: w(14)),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Text('录入客户电话时不能用自己手机号',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(28))),
Image.asset(
customerProvider.isselfphone
? Utils.getImgPath('swich_on')
: Utils.getImgPath('swich_off'),
width: ScreenUtil().setWidth(88),
// height: ScreenUtil().setWidth(82),
),
],
)),
),
Padding(
padding: EdgeInsets.only(left: w(14), right: w(10)),
child: MyDivider(
double.infinity,
w(1),
color: MyColours.color_E7E7E7,
)),
VEmptyView(24),
InkWell(
onTap: () {
setState(() {
customerProvider.isrepair = !customerProvider.isrepair;
});
_sellerGuestSet();
},
child: Container(
padding:
EdgeInsets.symmetric(vertical: w(8), horizontal: w(14)),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Text('预订要求补录客人信息',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(28))),
Image.asset(
customerProvider.isrepair
? Utils.getImgPath('swich_on')
: Utils.getImgPath('swich_off'),
width: ScreenUtil().setWidth(88),
// height: ScreenUtil().setWidth(82),
),
],
),
)),
Padding(
padding: EdgeInsets.only(left: w(14), right: w(10)),
child: MyDivider(
double.infinity,
w(1),
color: MyColours.color_E7E7E7,
)),
VEmptyView(48),
Text('店内自定义标签',
style: TextStyle(
color: MyColours.color_515151,
fontSize: ScreenUtil().setSp(32))),
VEmptyView(30),
Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(10),
children: _buildLabelItem(customerProvider.labelList)),
VEmptyView(48),
Container(
padding:
EdgeInsets.symmetric(vertical: w(18), horizontal: w(14)),
child: Wrap(
spacing: ScreenUtil().setWidth(20),
runSpacing: ScreenUtil().setWidth(10),
children: _buildLabelItem(customerProvider.labelList))),
Padding(
padding: EdgeInsets.only(left: w(14), right: w(10)),
child: MyDivider(
double.infinity,
w(1),
color: MyColours.color_E7E7E7,
)),
// VEmptyView(34),
// MyDivider(
// double.infinity,
// w(1),
// color: MyColours.color_DBDBDB,
// color: MyColours.color_E7E7E7,
// ),
// VEmptyView(52),
// InkWell(
... ...
import 'package:flutter/material.dart';
import 'package:one_key/models/seller_template_color_list_model.dart';
import 'package:one_key/widgets/system_app_bar.dart';
import 'package:one_key/widgets/v_empty_view.dart';
import 'package:provider/provider.dart';
import '../../../provider/marketing_center_provider.dart';
... ... @@ -27,7 +28,9 @@ class CustomerNoticeSettingPage extends StatefulWidget {
}
class _CustomerNoticeSettingPageState extends State<CustomerNoticeSettingPage> {
bool selectSms = false; //取消预订发送短信默认关闭
bool cancelSms = false; //取消预订发送短信默认关闭
bool noticeSms = false; //使用店铺手机发送通知短信
bool marketingSms = false; //使用店铺手机发送营销短信
bool select = false; //启用预订安排通知图文模式
MarketingCenterProvider marketingCenterProvider;
String themeName = '';
... ... @@ -62,7 +65,7 @@ class _CustomerNoticeSettingPageState extends State<CustomerNoticeSettingPage> {
select = marketingCenterProvider.dzSellerConfModel.isNewTemplate == '1'
? true
: false;
selectSms = marketingCenterProvider.dzSellerConfModel.isOpenCancel == '1'
cancelSms = marketingCenterProvider.dzSellerConfModel.isOpenCancel == '1'
? true
: false;
setState(() {});
... ... @@ -151,7 +154,7 @@ class _CustomerNoticeSettingPageState extends State<CustomerNoticeSettingPage> {
Map<String, String> params = {
'sid': Provider.of<UserModel>(context, listen: false).user.sellerid,
'key': 'is_open_cancel_temp',
'value': selectSms ? '1' : '0'
'value': cancelSms ? '1' : '0'
};
bool success = await marketingCenterProvider.setConfing(context, params,
... ... @@ -252,14 +255,14 @@ class _CustomerNoticeSettingPageState extends State<CustomerNoticeSettingPage> {
bottom: BorderSide(
color: MyColours.color_E7E7E7, width: w(0.5)))),
margin: EdgeInsets.only(
right: w(24), left: w(36), bottom: w(12), top: w(12)),
padding: EdgeInsets.only(top: w(12), bottom: w(12)),
right: w(12), left: w(16), bottom: w(0), top: w(14)),
padding: EdgeInsets.only(top: w(12), bottom: w(3)),
child: Row(
children: [
Text(
title,
style: TextStyle(
color: MyColours.color_515151, fontSize: font(16)),
color: MyColours.color_515151, fontSize: font(14)),
),
Spacer(),
Container(
... ... @@ -275,6 +278,75 @@ class _CustomerNoticeSettingPageState extends State<CustomerNoticeSettingPage> {
)));
}
Widget _itemSmsWidget(bool isSelect, String title) {
return Column(
children: [
InkWell(
onTap: () {
setState(() {
isSelect = !isSelect;
});
},
child: Padding(
padding: EdgeInsets.only(
left: w(16), top: w(14), bottom: w(3), right: w(12)),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
title,
style: TextStyle(
color: MyColours.color_515151, fontSize: font(14)),
),
Spacer(),
Container(
padding: EdgeInsets.symmetric(
horizontal: w(7), vertical: w(4)),
child: Image.asset(
Utils.getImgPath(isSelect ? 'swich_on' : 'swich_off'),
width: w(44),
),
)
// RoundButton(
// text: '预览',
// gradientStart: MyColours.color_ffffff,
// gradientEnd: MyColours.color_ffffff,
// borderColor: MyColours.color_438E93,
// textColor: MyColours.color_438E93,
// radius: ScreenUtil().setWidth(22),
// fontSize: 24,
// width: w(72),
// height: ScreenUtil().setWidth(44),
// isBold: true,
// onPressed: () {
// NavigatorUtil.goMarkingPreviewPage(context);
// },
// ),
]))),
Padding(
padding: EdgeInsets.only(left: w(16)),
child: MyDivider(double.infinity, w(0.5),
color: MyColours.color_E7E7E7)),
],
);
}
Widget _title(String title) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: EdgeInsets.symmetric(vertical: w(8)),
child: Text(
title,
style: TextStyle(color: MyColours.color_515151, fontSize: font(16)),
),
),
MyDivider(double.infinity, w(0.5), color: MyColours.color_E7E7E7),
],
);
}
@override
Widget build(BuildContext context) {
marketingCenterProvider =
... ... @@ -286,137 +358,99 @@ class _CustomerNoticeSettingPageState extends State<CustomerNoticeSettingPage> {
children: [
Expanded(
child: SingleChildScrollView(
child: Column(
children: [
InkWell(
onTap: () {
setState(() {
selectSms = !selectSms;
});
},
child: Padding(
padding: EdgeInsets.only(
left: w(16),
top: w(12),
bottom: w(12),
right: w(12)),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
'客户取消预订时自动发送通知短信',
style: TextStyle(
color: MyColours.color_515151,
fontSize: font(16)),
),
Spacer(),
Container(
padding: EdgeInsets.symmetric(
horizontal: w(7), vertical: w(4)),
child: Image.asset(
Utils.getImgPath(
selectSms ? 'swich_on' : 'swich_off'),
width: w(44),
),
)
// RoundButton(
// text: '预览',
// gradientStart: MyColours.color_ffffff,
// gradientEnd: MyColours.color_ffffff,
// borderColor: MyColours.color_438E93,
// textColor: MyColours.color_438E93,
// radius: ScreenUtil().setWidth(22),
// fontSize: 24,
// width: w(72),
// height: ScreenUtil().setWidth(44),
// isBold: true,
// onPressed: () {
// NavigatorUtil.goMarkingPreviewPage(context);
// },
// ),
]))),
Padding(
padding: EdgeInsets.only(left: w(16)),
child: MyDivider(double.infinity, w(0.5),
color: MyColours.color_E7E7E7)),
InkWell(
onTap: () {
NavigatorUtil.goInvitationThemeHomePage(context);
},
child: Padding(
padding: EdgeInsets.only(
left: w(16),
top: w(12),
bottom: w(12),
right: w(24)),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
'客户通知主题选择',
style: TextStyle(
color: MyColours.color_515151,
fontSize: font(16)),
),
HEmptyView(20),
child: Padding(
padding: EdgeInsets.only(left: w(16)),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_title('短信通知'),
_itemSmsWidget(cancelSms, '客户取消预订时自动发送通知短信'),
_itemSmsWidget(noticeSms, '使用店铺手机发送通知短信'),
_itemSmsWidget(marketingSms, '使用店铺手机发送营销短信'),
VEmptyView(24),
Expanded(
child: Text(
themeName,
textAlign: TextAlign.right,
style: TextStyle(
color: MyColours.color_515151,
fontSize: font(16)),
)),
Container(
padding: EdgeInsets.symmetric(
horizontal: w(11), vertical: w(4)),
child: Image.asset(
"assets/arrow_right_new.png",
width: w(9),
height: w(16),
),
)
// RoundButton(
// text: '预览',
// gradientStart: MyColours.color_ffffff,
// gradientEnd: MyColours.color_ffffff,
// borderColor: MyColours.color_438E93,
// textColor: MyColours.color_438E93,
// radius: ScreenUtil().setWidth(22),
// fontSize: 24,
// width: w(72),
// height: ScreenUtil().setWidth(44),
// isBold: true,
// onPressed: () {
// NavigatorUtil.goMarkingPreviewPage(context);
// },
// ),
]))),
Padding(
padding: EdgeInsets.only(left: w(16)),
child: MyDivider(double.infinity, w(0.5),
color: MyColours.color_E7E7E7)),
// _item('首图形象展示', onTap: () {
// NavigatorUtil.goFirstImagePage(context);
// }),
_item('预订信息模块设置', onTap: () {
NavigatorUtil.goBookInfoPage(context);
}),
_item('店铺介绍模块设置', onTap: () {
NavigatorUtil.goStoreIntroducePage(context);
}),
_item('主厨介绍设置', onTap: () {
NavigatorUtil.goChefIntroducePage(context);
}),
_item('招牌菜展示设置', onTap: () {
NavigatorUtil.goDishShowPage(context);
}),
_item('客户互动设置', onTap: () {
NavigatorUtil.goMarkingInteractionPage(context);
}),
],
),
_title('微信通知'),
VEmptyView(24),
InkWell(
onTap: () {
NavigatorUtil.goInvitationThemeHomePage(context);
},
child: Padding(
padding: EdgeInsets.only(
left: w(16),
top: w(14),
bottom: w(3),
right: w(12)),
child: Row(
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
children: [
Text(
'客户通知主题选择',
style: TextStyle(
color: MyColours.color_515151,
fontSize: font(14)),
),
HEmptyView(20),
Expanded(
child: Text(
themeName,
textAlign: TextAlign.right,
style: TextStyle(
color: MyColours.color_515151,
fontSize: font(14)),
)),
Container(
padding: EdgeInsets.symmetric(
horizontal: w(11), vertical: w(4)),
child: Image.asset(
"assets/arrow_right_new.png",
width: w(9),
height: w(16),
),
)
// RoundButton(
// text: '预览',
// gradientStart: MyColours.color_ffffff,
// gradientEnd: MyColours.color_ffffff,
// borderColor: MyColours.color_438E93,
// textColor: MyColours.color_438E93,
// radius: ScreenUtil().setWidth(22),
// fontSize: 24,
// width: w(72),
// height: ScreenUtil().setWidth(44),
// isBold: true,
// onPressed: () {
// NavigatorUtil.goMarkingPreviewPage(context);
// },
// ),
]))),
Padding(
padding: EdgeInsets.only(left: w(16),right: w(12)),
child: MyDivider(double.infinity, w(0.5),
color: MyColours.color_E7E7E7)),
// _item('首图形象展示', onTap: () {
// NavigatorUtil.goFirstImagePage(context);
// }),
_item('预订信息模块设置', onTap: () {
NavigatorUtil.goBookInfoPage(context);
}),
_item('店铺介绍模块设置', onTap: () {
NavigatorUtil.goStoreIntroducePage(context);
}),
_item('主厨介绍设置', onTap: () {
NavigatorUtil.goChefIntroducePage(context);
}),
_item('招牌菜展示设置', onTap: () {
NavigatorUtil.goDishShowPage(context);
}),
_item('客户互动设置', onTap: () {
NavigatorUtil.goMarkingInteractionPage(context);
}),
],
)),
)),
Container(
color: MyColours.color_ffffff,
... ...
... ... @@ -44,9 +44,17 @@ class CustomerProvider extends ChangeNotifier {
TextEditingController controlleretime = TextEditingController(); //高级筛选结束时间
TextEditingController controllernum = TextEditingController(); //预订次数
TextEditingController controllersmoney = TextEditingController(); //人均消费金额低
TextEditingController controlleremoney = TextEditingController(); //人均消费金额高
TextEditingController controllermaxmoney = TextEditingController(); //人均消费能力
FocusNode stimeFocus = FocusNode(); //高级筛选开始时间
FocusNode etimeFocus = FocusNode(); //高级筛选结束时间
FocusNode smoneyFocus = FocusNode(); //人均消费金额开始
FocusNode emoneyFocus = FocusNode(); //人均消费金额结束
FocusNode maxmoneyFocus = FocusNode(); //人均消费能力
PageState pageStateMyHome = PageState.Loading;
PageState pageStateStoreHome = PageState.Loading;
... ... @@ -111,6 +119,9 @@ class CustomerProvider extends ChangeNotifier {
PageState pageStateMonth = PageState.Loading;
PageState pageStateDay = PageState.Loading;
bool isrepair = false;
bool isselfphone = false;
/// 获取全店日订单统计数据
Future<DayStaticsSunModel> getSellerCountsListByDay(
BuildContext context, Map<String, String> params,
... ... @@ -267,7 +278,7 @@ class CustomerProvider extends ChangeNotifier {
} else {
manageSelAll = true;
}
notifyListeners();
}
... ... @@ -1896,9 +1907,16 @@ class CustomerProvider extends ChangeNotifier {
if (baseResp != null && baseResp.code == Constant.status_success) {
// guestReserveSunModel =
// GuestReserveModel.fromJson(baseResp.responseData).data;
if (baseResp.responseData['data']['is_additional'] == '1') {
if (baseResp.responseData['data'] is Map) {
isrepair = baseResp.responseData['data']['is_additional'] == '1'
? true
: false;
isselfphone =
baseResp.responseData['data']['isselfphone'] == '1' ? true : false;
return true;
}
return false;
} else {
if (baseResp != null) {
... ...
... ... @@ -3826,6 +3826,81 @@ class DialogUtil {
),
),
VEmptyView(32),
InkWell(
onTap: () async {
// if (isMerge != '1') {
// return;
// }
// //跳转到被合并桌位展示页面
// Map object;
// if (selectTables.length > 0) {
// object = await NavigatorUtil
// .goMergeTableSelectPage(context,
// tableidNow: tableid,
// tids: table.tids,
// object: {'object': selectTables});
// } else {
// object = await NavigatorUtil
// .goMergeTableSelectPage(
// context,
// tableidNow: tableid,
// tids: table.tids,
// );
// }
// if (object != null) {
// selectTables = object['object'];
// tids = object['tid'];
// }
// // else {
// // selectTables = []; //没有选择桌子
// // tids = '';
// // }
// tableNames = '';
// selectTables.forEach((element) {
// tableNames += '${element.name}、';
// });
// if (tableNames.endsWith('、')) {
// tableNames = tableNames.substring(
// 0, tableNames.length - 1);
// }
// print(object);
// state(() {});
},
child: Container(
padding: EdgeInsets.only(
left: ScreenUtil().setWidth(44),
right: ScreenUtil().setWidth(44)),
height: ScreenUtil().setWidth(48 * 2),
child: Row(
mainAxisAlignment:
MainAxisAlignment.center,
children: [
HEmptyView(32),
Text(
'所属区域',
style: TextStyle(
fontSize: ScreenUtil().setSp(32),
color: MyColours.color_000000),
),
HEmptyView(40),
Expanded(
child: Text(
table.rname??'ff',
maxLines: 1,
textAlign: TextAlign.right,
overflow: TextOverflow.ellipsis,
style: TextStyle(
fontSize: ScreenUtil().setSp(32),
color: MyColours.color_66000000),
)),
Image.asset(
Utils.getImgPath('merge_arrow'),
width: w(24)),
HEmptyView(22),
],
))),
VEmptyView(32),
isLock == '1'
?
// 已被合并到
... ...