|
1
|
-
|
|
|
|
2
|
import 'dart:async';
|
1
|
import 'dart:async';
|
|
3
|
import 'dart:convert';
|
2
|
import 'dart:convert';
|
|
4
|
|
3
|
|
|
@@ -7,9 +6,11 @@ import 'package:common_utils/common_utils.dart'; |
|
@@ -7,9 +6,11 @@ import 'package:common_utils/common_utils.dart'; |
|
7
|
import 'package:dio/dio.dart';
|
6
|
import 'package:dio/dio.dart';
|
|
8
|
import 'package:flutter/material.dart';
|
7
|
import 'package:flutter/material.dart';
|
|
9
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
8
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
|
|
|
9
|
+import 'package:one_key/app.dart';
|
|
10
|
import 'package:one_key/constant/state.dart';
|
10
|
import 'package:one_key/constant/state.dart';
|
|
11
|
import 'package:one_key/models/get_seller_info_model.dart';
|
11
|
import 'package:one_key/models/get_seller_info_model.dart';
|
|
12
|
import 'package:one_key/models/personnel_manage_model.dart';
|
12
|
import 'package:one_key/models/personnel_manage_model.dart';
|
|
|
|
13
|
+import 'package:one_key/models/user.dart';
|
|
13
|
import 'package:one_key/net/dio_util.dart';
|
14
|
import 'package:one_key/net/dio_util.dart';
|
|
14
|
import 'package:one_key/provider/personnel_provider.dart';
|
15
|
import 'package:one_key/provider/personnel_provider.dart';
|
|
15
|
import 'package:one_key/provider/store_wine_provider.dart';
|
16
|
import 'package:one_key/provider/store_wine_provider.dart';
|
|
@@ -57,13 +58,19 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -57,13 +58,19 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
57
|
bool isall = false;
|
58
|
bool isall = false;
|
|
58
|
bool isbook = false;
|
59
|
bool isbook = false;
|
|
59
|
bool isserver = false;
|
60
|
bool isserver = false;
|
|
|
|
61
|
+
|
|
|
|
62
|
+ String? position = '';
|
|
60
|
@override
|
63
|
@override
|
|
61
|
void initState() {
|
64
|
void initState() {
|
|
62
|
super.initState();
|
65
|
super.initState();
|
|
63
|
|
66
|
|
|
|
|
67
|
+ position = widget.position;
|
|
|
|
68
|
+
|
|
64
|
WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
|
69
|
WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
|
|
65
|
_getSellerUserBySellerid();
|
70
|
_getSellerUserBySellerid();
|
|
66
|
_getAuthUserLists();
|
71
|
_getAuthUserLists();
|
|
|
|
72
|
+
|
|
|
|
73
|
+ _getSellerRoleList();
|
|
67
|
EventBus().on('personnel_manage_detail_page', (arg) {
|
74
|
EventBus().on('personnel_manage_detail_page', (arg) {
|
|
68
|
_getAuthUserLists(showLoading: false);
|
75
|
_getAuthUserLists(showLoading: false);
|
|
69
|
});
|
76
|
});
|
|
@@ -74,9 +81,9 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -74,9 +81,9 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
74
|
// if (roleNameLogin == '管理员') {
|
81
|
// if (roleNameLogin == '管理员') {
|
|
75
|
// canEdit = true;
|
82
|
// canEdit = true;
|
|
76
|
// } else if (roleNameLogin == '店长') {
|
83
|
// } else if (roleNameLogin == '店长') {
|
|
77
|
- // if (widget.position == '管理员') {
|
84
|
+ // if (position == '管理员') {
|
|
78
|
// canEdit = false;
|
85
|
// canEdit = false;
|
|
79
|
- // } else if (widget.position == '店长') {
|
86
|
+ // } else if (position == '店长') {
|
|
80
|
// if (accountLogin == data.account) {
|
87
|
// if (accountLogin == data.account) {
|
|
81
|
// print('11111');
|
88
|
// print('11111');
|
|
82
|
// //店长自己
|
89
|
// //店长自己
|
|
@@ -144,6 +151,16 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -144,6 +151,16 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
144
|
// }
|
151
|
// }
|
|
145
|
}
|
152
|
}
|
|
146
|
|
153
|
|
|
|
|
154
|
+ _getSellerRoleList({bool showLoading = true}) async {
|
|
|
|
155
|
+ Map<String, String?> params = {
|
|
|
|
156
|
+ "sellerid": Provider.of<UserModel>(context, listen: false).user!.sellerid,
|
|
|
|
157
|
+ "sid": Provider.of<UserModel>(context, listen: false).user!.sellerid,
|
|
|
|
158
|
+ };
|
|
|
|
159
|
+
|
|
|
|
160
|
+ await personnelProvider.getSellerRoleList(context, params,
|
|
|
|
161
|
+ showLoading: showLoading);
|
|
|
|
162
|
+ }
|
|
|
|
163
|
+
|
|
147
|
//获取员工信息列表
|
164
|
//获取员工信息列表
|
|
148
|
_getAuthUserLists({bool showLoading = true}) async {
|
165
|
_getAuthUserLists({bool showLoading = true}) async {
|
|
149
|
Map<String, String?> params = {
|
166
|
Map<String, String?> params = {
|
|
@@ -153,19 +170,19 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -153,19 +170,19 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
153
|
await personnelProvider.getAuthUserLists(context, params,
|
170
|
await personnelProvider.getAuthUserLists(context, params,
|
|
154
|
showLoading: showLoading);
|
171
|
showLoading: showLoading);
|
|
155
|
if (personnelProvider.dataMap != null) {
|
172
|
if (personnelProvider.dataMap != null) {
|
|
156
|
- if (widget.position == '管理员') {
|
173
|
+ if (position == '管理员') {
|
|
157
|
data = personnelProvider.dataMap!.admin!.listdata![widget.index!];
|
174
|
data = personnelProvider.dataMap!.admin!.listdata![widget.index!];
|
|
158
|
- } else if (widget.position == '店长') {
|
175
|
+ } else if (position == '店长') {
|
|
159
|
data = personnelProvider.dataMap!.shopowner!.listdata![widget.index!];
|
176
|
data = personnelProvider.dataMap!.shopowner!.listdata![widget.index!];
|
|
160
|
- } else if (widget.position == '客户经理') {
|
177
|
+ } else if (position == '客户经理') {
|
|
161
|
data = personnelProvider.dataMap!.manager!.listdata![widget.index!];
|
178
|
data = personnelProvider.dataMap!.manager!.listdata![widget.index!];
|
|
162
|
- } else if (widget.position == '收银员') {
|
179
|
+ } else if (position == '收银员') {
|
|
163
|
data = personnelProvider.dataMap!.cashier!.listdata![widget.index!];
|
180
|
data = personnelProvider.dataMap!.cashier!.listdata![widget.index!];
|
|
164
|
- } else if (widget.position == '服务员') {
|
181
|
+ } else if (position == '服务员') {
|
|
165
|
data = personnelProvider.dataMap!.waiter!.listdata![widget.index!];
|
182
|
data = personnelProvider.dataMap!.waiter!.listdata![widget.index!];
|
|
166
|
- } else if (widget.position == '前台') {
|
183
|
+ } else if (position == '前台') {
|
|
167
|
data = personnelProvider.dataMap!.reception!.listdata![widget.index!];
|
184
|
data = personnelProvider.dataMap!.reception!.listdata![widget.index!];
|
|
168
|
- } else if (widget.position == '迎宾') {
|
185
|
+ } else if (position == '迎宾') {
|
|
169
|
data = personnelProvider.dataMap!.welcome!.listdata![widget.index!];
|
186
|
data = personnelProvider.dataMap!.welcome!.listdata![widget.index!];
|
|
170
|
}
|
187
|
}
|
|
171
|
if (data!.accountType == null || data!.accountType == '1') {
|
188
|
if (data!.accountType == null || data!.accountType == '1') {
|
|
@@ -178,8 +195,9 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -178,8 +195,9 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
178
|
nickName = data!.nickName != null && data!.nickName != 'null'
|
195
|
nickName = data!.nickName != null && data!.nickName != 'null'
|
|
179
|
? data!.nickName
|
196
|
? data!.nickName
|
|
180
|
: '暂未设置名称';
|
197
|
: '暂未设置名称';
|
|
181
|
- phone =
|
|
|
|
182
|
- data!.phone != null && data!.userName != 'null' ? data!.phone : '添加手机号';
|
198
|
+ phone = data!.phone != null && data!.userName != 'null'
|
|
|
|
199
|
+ ? data!.phone
|
|
|
|
200
|
+ : '添加手机号';
|
|
183
|
if (data!.openid == null || data!.openid == 'null') {
|
201
|
if (data!.openid == null || data!.openid == 'null') {
|
|
184
|
// _getStoreBaseinfo();
|
202
|
// _getStoreBaseinfo();
|
|
185
|
_getWechatQrcode();
|
203
|
_getWechatQrcode();
|
|
@@ -222,23 +240,40 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -222,23 +240,40 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
222
|
if (success) {
|
240
|
if (success) {
|
|
223
|
//删除员工成功
|
241
|
//删除员工成功
|
|
224
|
EventBus().emit('personnel_manage_page');
|
242
|
EventBus().emit('personnel_manage_page');
|
|
225
|
- if (Navigator.canPop(context)) {
|
|
|
|
226
|
- Navigator.pop(context);
|
|
|
|
227
|
- }
|
243
|
+ if (Navigator.canPop(context)) {
|
|
|
|
244
|
+ Navigator.pop(context);
|
|
|
|
245
|
+ }
|
|
228
|
}
|
246
|
}
|
|
229
|
}
|
247
|
}
|
|
230
|
|
248
|
|
|
231
|
///编辑店员
|
249
|
///编辑店员
|
|
232
|
- _editAuthUser(String name, {bool showLoading = true}) async {
|
|
|
|
233
|
- Map<String, String?> params = {'id': data!.id, 'user_name': name};
|
250
|
+ _editAuthUser(String roleId, {bool showLoading = true}) async {
|
|
|
|
251
|
+ Map<String, String?> params = {'id': data!.id, 'role_id': roleId};
|
|
234
|
|
252
|
|
|
235
|
bool success = await personnelProvider.editAuthUser(context, params,
|
253
|
bool success = await personnelProvider.editAuthUser(context, params,
|
|
236
|
showLoading: showLoading);
|
254
|
showLoading: showLoading);
|
|
237
|
if (success) {
|
255
|
if (success) {
|
|
238
|
EventBus().emit('personnel_manage_page');
|
256
|
EventBus().emit('personnel_manage_page');
|
|
|
|
257
|
+
|
|
239
|
setState(() {
|
258
|
setState(() {
|
|
240
|
- nickName = name;
|
259
|
+ int index = personnelProvider.roleList!
|
|
|
|
260
|
+ .indexWhere((element) => element.id == roleId);
|
|
|
|
261
|
+ position = personnelProvider.roleList![index].roleName;
|
|
|
|
262
|
+ //当前页面的角色展示刷新,我的页面取值从缓存,刷新缓存
|
|
241
|
});
|
263
|
});
|
|
|
|
264
|
+
|
|
|
|
265
|
+ UserModel userModel = Provider.of<UserModel>(context, listen: false);
|
|
|
|
266
|
+ if (data?.id == userModel.user!.openid) {
|
|
|
|
267
|
+ //如果修改的是本人的话,需要刷新缓存,我的页面会显示缓存的数据
|
|
|
|
268
|
+ if (App.sp!.containsKey('user')) {
|
|
|
|
269
|
+ String s = App.sp!.getString('user')!;
|
|
|
|
270
|
+ User _user = User.fromJson(json.decode(s));
|
|
|
|
271
|
+
|
|
|
|
272
|
+ _user.role_name_addition = position;
|
|
|
|
273
|
+
|
|
|
|
274
|
+ await UserModel().saveUserInfo(_user);
|
|
|
|
275
|
+ }
|
|
|
|
276
|
+ }
|
|
242
|
}
|
277
|
}
|
|
243
|
}
|
278
|
}
|
|
244
|
|
279
|
|
|
@@ -399,12 +434,15 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -399,12 +434,15 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
399
|
'uid': data!.id,
|
434
|
'uid': data!.id,
|
|
400
|
'account_type': accountType
|
435
|
'account_type': accountType
|
|
401
|
};
|
436
|
};
|
|
402
|
- bool success = await personnelProvider.setSellerUserAccountType(context, params);
|
|
|
|
403
|
- if(success && accountType == '3' && data!.id == Provider.of<UserModel>(context,listen: false).user!.openid){
|
|
|
|
404
|
- //把自己设置成只服不订人员,需要跳转到已预订页面
|
|
|
|
405
|
- NavigatorUtil.goHomePage(context,initialIndex: 1);
|
|
|
|
406
|
-
|
|
|
|
407
|
- }
|
437
|
+ bool success =
|
|
|
|
438
|
+ await personnelProvider.setSellerUserAccountType(context, params);
|
|
|
|
439
|
+ if (success &&
|
|
|
|
440
|
+ accountType == '3' &&
|
|
|
|
441
|
+ data!.id ==
|
|
|
|
442
|
+ Provider.of<UserModel>(context, listen: false).user!.openid) {
|
|
|
|
443
|
+ //把自己设置成只服不订人员,需要跳转到已预订页面
|
|
|
|
444
|
+ NavigatorUtil.goHomePage(context, initialIndex: 1);
|
|
|
|
445
|
+ }
|
|
408
|
}
|
446
|
}
|
|
409
|
|
447
|
|
|
410
|
@override
|
448
|
@override
|
|
@@ -421,8 +459,8 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -421,8 +459,8 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
421
|
appBar: SystemAppBar(
|
459
|
appBar: SystemAppBar(
|
|
422
|
'员工详情',
|
460
|
'员工详情',
|
|
423
|
onTap: () {
|
461
|
onTap: () {
|
|
424
|
- if (Navigator.canPop(context)) {
|
|
|
|
425
|
- Navigator.pop(context);
|
462
|
+ if (Navigator.canPop(context)) {
|
|
|
|
463
|
+ Navigator.pop(context);
|
|
426
|
}
|
464
|
}
|
|
427
|
},
|
465
|
},
|
|
428
|
),
|
466
|
),
|
|
@@ -474,7 +512,7 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -474,7 +512,7 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
474
|
radius: ScreenUtil().setWidth(26 * 2),
|
512
|
radius: ScreenUtil().setWidth(26 * 2),
|
|
475
|
onPressed: () {
|
513
|
onPressed: () {
|
|
476
|
NavigatorUtil.goPersonnalBaseInfoPage(
|
514
|
NavigatorUtil.goPersonnalBaseInfoPage(
|
|
477
|
- context, data, widget.position!);
|
515
|
+ context, data, position!);
|
|
478
|
}),
|
516
|
}),
|
|
479
|
),
|
517
|
),
|
|
480
|
Column(
|
518
|
Column(
|
|
@@ -517,7 +555,7 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -517,7 +555,7 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
517
|
textColor: MyColours.color_ffffff,
|
555
|
textColor: MyColours.color_ffffff,
|
|
518
|
radius: ScreenUtil().setWidth(10),
|
556
|
radius: ScreenUtil().setWidth(10),
|
|
519
|
onPressed: () {}),
|
557
|
onPressed: () {}),
|
|
520
|
- Text('${widget.position} 工号: ${data?.account}',
|
558
|
+ Text('${position} 工号: ${data?.account}',
|
|
521
|
style: TextStyle(
|
559
|
style: TextStyle(
|
|
522
|
color: MyColours.color_515151,
|
560
|
color: MyColours.color_515151,
|
|
523
|
fontSize: ScreenUtil().setSp(28),
|
561
|
fontSize: ScreenUtil().setSp(28),
|
|
@@ -563,82 +601,84 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -563,82 +601,84 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
563
|
],
|
601
|
],
|
|
564
|
),
|
602
|
),
|
|
565
|
VEmptyView(56),
|
603
|
VEmptyView(56),
|
|
566
|
- if(widget.position != '管理员') Container(
|
|
|
|
567
|
- height: w(84),
|
|
|
|
568
|
- padding:
|
|
|
|
569
|
- EdgeInsets.symmetric(horizontal: w(20), vertical: w(12)),
|
|
|
|
570
|
- child: Column(
|
|
|
|
571
|
- crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
572
|
- children: [
|
|
|
|
573
|
- Text(
|
|
|
|
574
|
- '预订与服务权限',
|
|
|
|
575
|
- style: TextStyle(
|
|
|
|
576
|
- fontSize: font(16), color: MyColours.color_515151),
|
|
|
|
577
|
- ),
|
|
|
|
578
|
- VEmptyView(24),
|
|
|
|
579
|
- Container(
|
|
|
|
580
|
- height: w(24),
|
|
|
|
581
|
- child: Row(
|
|
|
|
582
|
- children: [
|
|
|
|
583
|
- HEmptyView(32),
|
|
|
|
584
|
- _itemRadioWidget(isall, '预订及服务', onTap: () {
|
|
|
|
585
|
- if (Utils.getAuthority(context, '设置服务人员')) {
|
|
|
|
586
|
- if (!isall) {
|
|
|
|
587
|
- setState(() {
|
|
|
|
588
|
- isall = true;
|
|
|
|
589
|
-
|
|
|
|
590
|
- isbook = false;
|
|
|
|
591
|
- isserver = false;
|
|
|
|
592
|
- });
|
|
|
|
593
|
- _setSellerUserAccountType('1');
|
604
|
+ if (position != '管理员')
|
|
|
|
605
|
+ Container(
|
|
|
|
606
|
+ height: w(84),
|
|
|
|
607
|
+ padding:
|
|
|
|
608
|
+ EdgeInsets.symmetric(horizontal: w(20), vertical: w(12)),
|
|
|
|
609
|
+ child: Column(
|
|
|
|
610
|
+ crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
611
|
+ children: [
|
|
|
|
612
|
+ Text(
|
|
|
|
613
|
+ '预订与服务权限',
|
|
|
|
614
|
+ style: TextStyle(
|
|
|
|
615
|
+ fontSize: font(16), color: MyColours.color_515151),
|
|
|
|
616
|
+ ),
|
|
|
|
617
|
+ VEmptyView(24),
|
|
|
|
618
|
+ Container(
|
|
|
|
619
|
+ height: w(24),
|
|
|
|
620
|
+ child: Row(
|
|
|
|
621
|
+ children: [
|
|
|
|
622
|
+ HEmptyView(32),
|
|
|
|
623
|
+ _itemRadioWidget(isall, '预订及服务', onTap: () {
|
|
|
|
624
|
+ if (Utils.getAuthority(context, '设置服务人员')) {
|
|
|
|
625
|
+ if (!isall) {
|
|
|
|
626
|
+ setState(() {
|
|
|
|
627
|
+ isall = true;
|
|
|
|
628
|
+
|
|
|
|
629
|
+ isbook = false;
|
|
|
|
630
|
+ isserver = false;
|
|
|
|
631
|
+ });
|
|
|
|
632
|
+ _setSellerUserAccountType('1');
|
|
|
|
633
|
+ }
|
|
|
|
634
|
+ } else {
|
|
|
|
635
|
+ Utils.showToast('您没有相关权限权限');
|
|
594
|
}
|
636
|
}
|
|
595
|
- } else {
|
|
|
|
596
|
- Utils.showToast('您没有相关权限权限');
|
|
|
|
597
|
- }
|
|
|
|
598
|
- }),
|
|
|
|
599
|
- Spacer(),
|
|
|
|
600
|
- _itemRadioWidget(isbook, '只订不服', onTap: () {
|
|
|
|
601
|
- if (Utils.getAuthority(context, '设置服务人员')) {
|
|
|
|
602
|
- if (!isbook) {
|
|
|
|
603
|
- setState(() {
|
|
|
|
604
|
- isbook = true;
|
|
|
|
605
|
-
|
|
|
|
606
|
- isall = false;
|
|
|
|
607
|
- isserver = false;
|
|
|
|
608
|
- });
|
|
|
|
609
|
- _setSellerUserAccountType('2');
|
637
|
+ }),
|
|
|
|
638
|
+ Spacer(),
|
|
|
|
639
|
+ _itemRadioWidget(isbook, '只订不服', onTap: () {
|
|
|
|
640
|
+ if (Utils.getAuthority(context, '设置服务人员')) {
|
|
|
|
641
|
+ if (!isbook) {
|
|
|
|
642
|
+ setState(() {
|
|
|
|
643
|
+ isbook = true;
|
|
|
|
644
|
+
|
|
|
|
645
|
+ isall = false;
|
|
|
|
646
|
+ isserver = false;
|
|
|
|
647
|
+ });
|
|
|
|
648
|
+ _setSellerUserAccountType('2');
|
|
|
|
649
|
+ }
|
|
|
|
650
|
+ } else {
|
|
|
|
651
|
+ Utils.showToast('您没有相关权限权限');
|
|
610
|
}
|
652
|
}
|
|
611
|
- } else {
|
|
|
|
612
|
- Utils.showToast('您没有相关权限权限');
|
|
|
|
613
|
- }
|
|
|
|
614
|
- }),
|
|
|
|
615
|
- Spacer(),
|
|
|
|
616
|
- _itemRadioWidget(isserver, '只服不订', onTap: () {
|
|
|
|
617
|
- if (Utils.getAuthority(context, '设置服务人员')) {
|
|
|
|
618
|
- if (!isserver) {
|
|
|
|
619
|
- setState(() {
|
|
|
|
620
|
- isserver = true;
|
|
|
|
621
|
- isall = false;
|
|
|
|
622
|
- isbook = false;
|
|
|
|
623
|
- });
|
|
|
|
624
|
- _setSellerUserAccountType('3');
|
653
|
+ }),
|
|
|
|
654
|
+ Spacer(),
|
|
|
|
655
|
+ _itemRadioWidget(isserver, '只服不订', onTap: () {
|
|
|
|
656
|
+ if (Utils.getAuthority(context, '设置服务人员')) {
|
|
|
|
657
|
+ if (!isserver) {
|
|
|
|
658
|
+ setState(() {
|
|
|
|
659
|
+ isserver = true;
|
|
|
|
660
|
+ isall = false;
|
|
|
|
661
|
+ isbook = false;
|
|
|
|
662
|
+ });
|
|
|
|
663
|
+ _setSellerUserAccountType('3');
|
|
|
|
664
|
+ }
|
|
|
|
665
|
+ } else {
|
|
|
|
666
|
+ Utils.showToast('您没有相关权限权限');
|
|
625
|
}
|
667
|
}
|
|
626
|
- } else {
|
|
|
|
627
|
- Utils.showToast('您没有相关权限权限');
|
|
|
|
628
|
- }
|
|
|
|
629
|
- }),
|
|
|
|
630
|
- HEmptyView(30),
|
|
|
|
631
|
- ],
|
|
|
|
632
|
- ),
|
|
|
|
633
|
- )
|
|
|
|
634
|
- ],
|
668
|
+ }),
|
|
|
|
669
|
+ HEmptyView(30),
|
|
|
|
670
|
+ ],
|
|
|
|
671
|
+ ),
|
|
|
|
672
|
+ )
|
|
|
|
673
|
+ ],
|
|
|
|
674
|
+ ),
|
|
635
|
),
|
675
|
),
|
|
636
|
- ),
|
|
|
|
637
|
|
676
|
|
|
638
|
- if(widget.position != '管理员') Padding(
|
|
|
|
639
|
- padding: EdgeInsets.only(left: w(20), right: w(16)),
|
|
|
|
640
|
- child: MyDivider(double.infinity, w(1),
|
|
|
|
641
|
- color: MyColours.color_DBDBDB)),
|
677
|
+ if (position != '管理员')
|
|
|
|
678
|
+ Padding(
|
|
|
|
679
|
+ padding: EdgeInsets.only(left: w(20), right: w(16)),
|
|
|
|
680
|
+ child: MyDivider(double.infinity, w(1),
|
|
|
|
681
|
+ color: MyColours.color_DBDBDB)),
|
|
642
|
VEmptyView(32),
|
682
|
VEmptyView(32),
|
|
643
|
|
683
|
|
|
644
|
(data?.openid == null || data?.openid == 'null')
|
684
|
(data?.openid == null || data?.openid == 'null')
|
|
@@ -694,6 +734,32 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -694,6 +734,32 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
694
|
color: MyColours.color_438E93,
|
734
|
color: MyColours.color_438E93,
|
|
695
|
fontSize: ScreenUtil().setSp(28)),
|
735
|
fontSize: ScreenUtil().setSp(28)),
|
|
696
|
)),
|
736
|
)),
|
|
|
|
737
|
+ if (Utils.getAuthority(context, '修改职级')) VEmptyView(48),
|
|
|
|
738
|
+ if (Utils.getAuthority(context, '修改职级'))
|
|
|
|
739
|
+ InkWell(
|
|
|
|
740
|
+ onTap: () async {
|
|
|
|
741
|
+ if (personnelProvider.roleList == null ||
|
|
|
|
742
|
+ personnelProvider.roleList?.length == 0) {
|
|
|
|
743
|
+ //没有角色数据
|
|
|
|
744
|
+ await _getSellerRoleList();
|
|
|
|
745
|
+ }
|
|
|
|
746
|
+ await DialogUtil.changeRoleDialog(
|
|
|
|
747
|
+ context, personnelProvider.roleList, position ?? '',
|
|
|
|
748
|
+ onTap: (map) {
|
|
|
|
749
|
+ print(map);
|
|
|
|
750
|
+ String? roleId = map['role'];
|
|
|
|
751
|
+ if (roleId != null) {
|
|
|
|
752
|
+ _editAuthUser(roleId);
|
|
|
|
753
|
+ }
|
|
|
|
754
|
+ });
|
|
|
|
755
|
+ },
|
|
|
|
756
|
+ child: Text(
|
|
|
|
757
|
+ '修改职级',
|
|
|
|
758
|
+ style: TextStyle(
|
|
|
|
759
|
+ decoration: TextDecoration.underline,
|
|
|
|
760
|
+ color: MyColours.color_438E93,
|
|
|
|
761
|
+ fontSize: ScreenUtil().setSp(28)),
|
|
|
|
762
|
+ )),
|
|
697
|
VEmptyView(40),
|
763
|
VEmptyView(40),
|
|
698
|
|
764
|
|
|
699
|
// (userModel.user.role_name == '管理员' ||
|
765
|
// (userModel.user.role_name == '管理员' ||
|
|
@@ -844,7 +910,7 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -844,7 +910,7 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
844
|
// ),
|
910
|
// ),
|
|
845
|
// HEmptyView(20),
|
911
|
// HEmptyView(20),
|
|
846
|
// Text(
|
912
|
// Text(
|
|
847
|
- // widget.position,
|
913
|
+ // position,
|
|
848
|
// style: TextStyle(
|
914
|
// style: TextStyle(
|
|
849
|
// fontSize: ScreenUtil().setWidth(28),
|
915
|
// fontSize: ScreenUtil().setWidth(28),
|
|
850
|
// color: MyColours.color_199095),
|
916
|
// color: MyColours.color_199095),
|
|
@@ -868,7 +934,7 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
@@ -868,7 +934,7 @@ class _PersonnelDetailPageState extends State<PersonnelDetailPage> { |
|
868
|
],
|
934
|
],
|
|
869
|
),
|
935
|
),
|
|
870
|
)),
|
936
|
)),
|
|
871
|
- if (widget.position != '管理员')
|
937
|
+ if (position != '管理员')
|
|
872
|
InkWell(
|
938
|
InkWell(
|
|
873
|
onTap: () async {
|
939
|
onTap: () async {
|
|
874
|
await DialogUtil.removePersonnalDialog(
|
940
|
await DialogUtil.removePersonnalDialog(
|