|
@@ -6,6 +6,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; |
|
@@ -6,6 +6,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; |
|
6
|
import 'package:one_key/widgets/system_app_bar.dart';
|
6
|
import 'package:one_key/widgets/system_app_bar.dart';
|
|
7
|
import 'package:provider/provider.dart';
|
7
|
import 'package:provider/provider.dart';
|
|
8
|
|
8
|
|
|
|
|
9
|
+import '../../../models/get_reserve_type_field_model.dart';
|
|
9
|
import '../../../models/upload_img_model.dart';
|
10
|
import '../../../models/upload_img_model.dart';
|
|
10
|
import '../../../provider/finance_provider.dart';
|
11
|
import '../../../provider/finance_provider.dart';
|
|
11
|
import '../../../provider/upload_img_provider.dart';
|
12
|
import '../../../provider/upload_img_provider.dart';
|
|
@@ -41,11 +42,50 @@ class _EnterpriseInformationUploadPageState |
|
@@ -41,11 +42,50 @@ class _EnterpriseInformationUploadPageState |
|
41
|
late FinanceProvider financeProvider;
|
42
|
late FinanceProvider financeProvider;
|
|
42
|
|
43
|
|
|
43
|
final GlobalKey<ScaffoldState> scaffoldKey = GlobalKey<ScaffoldState>();
|
44
|
final GlobalKey<ScaffoldState> scaffoldKey = GlobalKey<ScaffoldState>();
|
|
|
|
45
|
+ bool accountType = true; //企业 true,个体 false
|
|
|
|
46
|
+ TextEditingController registrNoC = TextEditingController();
|
|
|
|
47
|
+ FocusNode registrNoFoc = FocusNode();
|
|
|
|
48
|
+
|
|
|
|
49
|
+ TextEditingController registrNameC = TextEditingController();
|
|
|
|
50
|
+ FocusNode registrNameFoc = FocusNode();
|
|
|
|
51
|
+
|
|
|
|
52
|
+ TextEditingController legalNameC = TextEditingController();
|
|
|
|
53
|
+ FocusNode legalNameFoc = FocusNode();
|
|
|
|
54
|
+
|
|
|
|
55
|
+ TextEditingController registrAddressC = TextEditingController();
|
|
|
|
56
|
+ FocusNode registrAddressFoc = FocusNode();
|
|
|
|
57
|
+
|
|
|
|
58
|
+ TextEditingController idNumC = TextEditingController();
|
|
|
|
59
|
+ FocusNode idNumFoc = FocusNode();
|
|
|
|
60
|
+
|
|
|
|
61
|
+ TextEditingController idAddressC = TextEditingController();
|
|
|
|
62
|
+ FocusNode idAddressFoc = FocusNode();
|
|
|
|
63
|
+
|
|
|
|
64
|
+ TextEditingController legalPhoneC = TextEditingController();
|
|
|
|
65
|
+ FocusNode legalPhoneFoc = FocusNode();
|
|
|
|
66
|
+
|
|
|
|
67
|
+ TextEditingController emailC = TextEditingController();
|
|
|
|
68
|
+ FocusNode emailFoc = FocusNode();
|
|
|
|
69
|
+
|
|
|
|
70
|
+ TextEditingController bankAllNameC = TextEditingController();
|
|
|
|
71
|
+ FocusNode bankAllNameFoc = FocusNode();
|
|
|
|
72
|
+
|
|
|
|
73
|
+ TextEditingController bankNumC = TextEditingController();
|
|
|
|
74
|
+ FocusNode bankNumFoc = FocusNode();
|
|
|
|
75
|
+
|
|
|
|
76
|
+ TextEditingController merchantNameC = TextEditingController();
|
|
|
|
77
|
+ FocusNode merchantNameFoc = FocusNode();
|
|
|
|
78
|
+
|
|
|
|
79
|
+ TextEditingController servicePhoneC = TextEditingController();
|
|
|
|
80
|
+ FocusNode servicePhoneFoc = FocusNode();
|
|
|
|
81
|
+
|
|
|
|
82
|
+ List<GetReserveTypeFieldsSunModel> bankData = [];
|
|
|
|
83
|
+ String bankType='点击选择开户银行';
|
|
44
|
|
84
|
|
|
45
|
@override
|
85
|
@override
|
|
46
|
void initState() {
|
86
|
void initState() {
|
|
47
|
super.initState();
|
87
|
super.initState();
|
|
48
|
-
|
88
|
+ _initBankData();
|
|
49
|
WidgetsBinding.instance.addPostFrameCallback((_) {
|
89
|
WidgetsBinding.instance.addPostFrameCallback((_) {
|
|
50
|
_getQiniuInfo();
|
90
|
_getQiniuInfo();
|
|
51
|
});
|
91
|
});
|
|
@@ -65,6 +105,28 @@ class _EnterpriseInformationUploadPageState |
|
@@ -65,6 +105,28 @@ class _EnterpriseInformationUploadPageState |
|
65
|
await _uploadImageProvider.getQiniuInfo(context, {});
|
105
|
await _uploadImageProvider.getQiniuInfo(context, {});
|
|
66
|
}
|
106
|
}
|
|
67
|
|
107
|
|
|
|
|
108
|
+ _initBankData() {
|
|
|
|
109
|
+ List<String> names = [
|
|
|
|
110
|
+ '中国银行',
|
|
|
|
111
|
+ '农业银行',
|
|
|
|
112
|
+ '工商银行',
|
|
|
|
113
|
+ '建设银行',
|
|
|
|
114
|
+ '招商银行',
|
|
|
|
115
|
+ '邮政储蓄银行',
|
|
|
|
116
|
+ '民生银行',
|
|
|
|
117
|
+ '交通银行',
|
|
|
|
118
|
+ '兴业银行',
|
|
|
|
119
|
+ '平安银行',
|
|
|
|
120
|
+ '中信银行',
|
|
|
|
121
|
+ '光大银行',
|
|
|
|
122
|
+ '华夏银行',
|
|
|
|
123
|
+ '其他银行'
|
|
|
|
124
|
+ ];
|
|
|
|
125
|
+ bankData = names.map((e) {
|
|
|
|
126
|
+ return GetReserveTypeFieldsSunModel(name: e, select: false);
|
|
|
|
127
|
+ }).toList();
|
|
|
|
128
|
+ }
|
|
|
|
129
|
+
|
|
68
|
Widget _title(String title) {
|
130
|
Widget _title(String title) {
|
|
69
|
return Padding(
|
131
|
return Padding(
|
|
70
|
padding: EdgeInsets.only(left: w(16), top: w(10), bottom: w(10)),
|
132
|
padding: EdgeInsets.only(left: w(16), top: w(10), bottom: w(10)),
|
|
@@ -260,45 +322,64 @@ class _EnterpriseInformationUploadPageState |
|
@@ -260,45 +322,64 @@ class _EnterpriseInformationUploadPageState |
|
260
|
color: MyColours.color_515151, fontSize: font(14)),
|
322
|
color: MyColours.color_515151, fontSize: font(14)),
|
|
261
|
),
|
323
|
),
|
|
262
|
Spacer(),
|
324
|
Spacer(),
|
|
263
|
- Container(
|
|
|
|
264
|
- // width: w(100),
|
|
|
|
265
|
- // height: w(30),
|
|
|
|
266
|
- padding: EdgeInsets.symmetric(
|
|
|
|
267
|
- horizontal: w(10), vertical: w(5)),
|
|
|
|
268
|
- decoration: BoxDecoration(
|
|
|
|
269
|
- color: MyColours.color_438E93,
|
|
|
|
270
|
- borderRadius: BorderRadius.only(
|
|
|
|
271
|
- topLeft: Radius.circular(r(5)),
|
|
|
|
272
|
- bottomLeft: Radius.circular(r(5)))),
|
|
|
|
273
|
- child: Text(
|
|
|
|
274
|
- '企业',
|
|
|
|
275
|
- style: TextStyle(
|
|
|
|
276
|
- color: MyColours.color_ffffff,
|
|
|
|
277
|
- fontSize: font(14)),
|
|
|
|
278
|
- ),
|
|
|
|
279
|
- ),
|
|
|
|
280
|
- Container(
|
|
|
|
281
|
- padding: EdgeInsets.symmetric(
|
|
|
|
282
|
- horizontal: w(10), vertical: w(5)),
|
|
|
|
283
|
- decoration: BoxDecoration(
|
|
|
|
284
|
- color: MyColours.color_DBDBDB,
|
|
|
|
285
|
- borderRadius: BorderRadius.only(
|
|
|
|
286
|
- topRight: Radius.circular(r(5)),
|
|
|
|
287
|
- bottomRight: Radius.circular(r(5)))),
|
|
|
|
288
|
- child: Text(
|
|
|
|
289
|
- '个体',
|
|
|
|
290
|
- style: TextStyle(
|
|
|
|
291
|
- color: MyColours.color_438E93,
|
|
|
|
292
|
- fontSize: font(14)),
|
|
|
|
293
|
- ),
|
|
|
|
294
|
- )
|
325
|
+ InkWell(
|
|
|
|
326
|
+ onTap: () {
|
|
|
|
327
|
+ setState(() {
|
|
|
|
328
|
+ accountType = !accountType;
|
|
|
|
329
|
+ });
|
|
|
|
330
|
+ },
|
|
|
|
331
|
+ child: Container(
|
|
|
|
332
|
+ // width: w(100),
|
|
|
|
333
|
+ // height: w(30),
|
|
|
|
334
|
+ padding: EdgeInsets.symmetric(
|
|
|
|
335
|
+ horizontal: w(10), vertical: w(5)),
|
|
|
|
336
|
+ decoration: BoxDecoration(
|
|
|
|
337
|
+ color: accountType
|
|
|
|
338
|
+ ? MyColours.color_438E93
|
|
|
|
339
|
+ : MyColours.color_DBDBDB,
|
|
|
|
340
|
+ borderRadius: BorderRadius.only(
|
|
|
|
341
|
+ topLeft: Radius.circular(r(5)),
|
|
|
|
342
|
+ bottomLeft: Radius.circular(r(5)))),
|
|
|
|
343
|
+ child: Text(
|
|
|
|
344
|
+ '企业',
|
|
|
|
345
|
+ style: TextStyle(
|
|
|
|
346
|
+ color: accountType
|
|
|
|
347
|
+ ? MyColours.color_ffffff
|
|
|
|
348
|
+ : MyColours.color_438E93,
|
|
|
|
349
|
+ fontSize: font(14)),
|
|
|
|
350
|
+ ),
|
|
|
|
351
|
+ )),
|
|
|
|
352
|
+ InkWell(
|
|
|
|
353
|
+ onTap: () {
|
|
|
|
354
|
+ setState(() {
|
|
|
|
355
|
+ accountType = !accountType;
|
|
|
|
356
|
+ });
|
|
|
|
357
|
+ },
|
|
|
|
358
|
+ child: Container(
|
|
|
|
359
|
+ padding: EdgeInsets.symmetric(
|
|
|
|
360
|
+ horizontal: w(10), vertical: w(5)),
|
|
|
|
361
|
+ decoration: BoxDecoration(
|
|
|
|
362
|
+ color: !accountType
|
|
|
|
363
|
+ ? MyColours.color_438E93
|
|
|
|
364
|
+ : MyColours.color_DBDBDB,
|
|
|
|
365
|
+ borderRadius: BorderRadius.only(
|
|
|
|
366
|
+ topRight: Radius.circular(r(5)),
|
|
|
|
367
|
+ bottomRight: Radius.circular(r(5)))),
|
|
|
|
368
|
+ child: Text(
|
|
|
|
369
|
+ '个体',
|
|
|
|
370
|
+ style: TextStyle(
|
|
|
|
371
|
+ color: !accountType
|
|
|
|
372
|
+ ? MyColours.color_ffffff
|
|
|
|
373
|
+ : MyColours.color_438E93,
|
|
|
|
374
|
+ fontSize: font(14)),
|
|
|
|
375
|
+ ),
|
|
|
|
376
|
+ ))
|
|
295
|
],
|
377
|
],
|
|
296
|
),
|
378
|
),
|
|
297
|
),
|
379
|
),
|
|
|
|
380
|
+ _inputWidget('注册号', registrNoC, registrNoFoc, '点击输入营业执照注册号'),
|
|
298
|
_inputWidget(
|
381
|
_inputWidget(
|
|
299
|
- '注册号', TextEditingController(), FocusNode(), '点击输入营业执照注册号'),
|
|
|
|
300
|
- _inputWidget('注册名称', TextEditingController(), FocusNode(),
|
|
|
|
301
|
- '点击输入营业执照上的企业名称'),
|
382
|
+ '注册名称', registrNameC, registrNameFoc, '点击输入营业执照上的企业名称'),
|
|
302
|
_select('营业执照开始于', stime, () {
|
383
|
_select('营业执照开始于', stime, () {
|
|
303
|
FocusScope.of(context).requestFocus(FocusNode()); //点击空白处隐藏键盘
|
384
|
FocusScope.of(context).requestFocus(FocusNode()); //点击空白处隐藏键盘
|
|
304
|
//弹出时间选择器
|
385
|
//弹出时间选择器
|
|
@@ -320,6 +401,8 @@ class _EnterpriseInformationUploadPageState |
|
@@ -320,6 +401,8 @@ class _EnterpriseInformationUploadPageState |
|
320
|
dateTime: stime == '点击选择营业执照开始日期'
|
401
|
dateTime: stime == '点击选择营业执照开始日期'
|
|
321
|
? null
|
402
|
? null
|
|
322
|
: DateUtil.getDateTime(stime),
|
403
|
: DateUtil.getDateTime(stime),
|
|
|
|
404
|
+ minValue: DateTime(1987),
|
|
|
|
405
|
+ yearBegin: 1987,
|
|
323
|
pickerDateTimeType: PickerDateTimeType.kYMD,
|
406
|
pickerDateTimeType: PickerDateTimeType.kYMD,
|
|
324
|
onCancel: () {
|
407
|
onCancel: () {
|
|
325
|
// showDateSelWidget = false;
|
408
|
// showDateSelWidget = false;
|
|
@@ -351,16 +434,18 @@ class _EnterpriseInformationUploadPageState |
|
@@ -351,16 +434,18 @@ class _EnterpriseInformationUploadPageState |
|
351
|
dateTime: etime == '点击选择营业执照结束日期'
|
434
|
dateTime: etime == '点击选择营业执照结束日期'
|
|
352
|
? null
|
435
|
? null
|
|
353
|
: DateUtil.getDateTime(etime),
|
436
|
: DateUtil.getDateTime(etime),
|
|
|
|
437
|
+ minValue: DateTime(1987),
|
|
|
|
438
|
+ yearBegin: 1987,
|
|
354
|
pickerDateTimeType: PickerDateTimeType.kYMD,
|
439
|
pickerDateTimeType: PickerDateTimeType.kYMD,
|
|
355
|
onCancel: () {
|
440
|
onCancel: () {
|
|
356
|
// showDateSelWidget = false;
|
441
|
// showDateSelWidget = false;
|
|
357
|
});
|
442
|
});
|
|
358
|
},
|
443
|
},
|
|
359
|
),
|
444
|
),
|
|
360
|
- _inputWidget('经营者/法人姓名', TextEditingController(), FocusNode(),
|
|
|
|
361
|
- '点击输入经营者/法人姓名'),
|
|
|
|
362
|
_inputWidget(
|
445
|
_inputWidget(
|
|
363
|
- '注册地址', TextEditingController(), FocusNode(), '点击输入注册地址'),
|
446
|
+ '经营者/法人姓名', legalNameC, legalNameFoc, '点击输入经营者/法人姓名'),
|
|
|
|
447
|
+ _inputWidget(
|
|
|
|
448
|
+ '注册地址', registrAddressC, registrAddressFoc, '点击输入注册地址'),
|
|
364
|
Consumer<UploadImageProvider>(builder: (context, model, _) {
|
449
|
Consumer<UploadImageProvider>(builder: (context, model, _) {
|
|
365
|
return Padding(
|
450
|
return Padding(
|
|
366
|
padding: EdgeInsets.only(
|
451
|
padding: EdgeInsets.only(
|
|
@@ -404,14 +489,11 @@ class _EnterpriseInformationUploadPageState |
|
@@ -404,14 +489,11 @@ class _EnterpriseInformationUploadPageState |
|
404
|
VEmptyView(24),
|
489
|
VEmptyView(24),
|
|
405
|
_title('经营者/法人信息'),
|
490
|
_title('经营者/法人信息'),
|
|
406
|
VEmptyView(20),
|
491
|
VEmptyView(20),
|
|
407
|
- _inputWidget('法人身份证号码', TextEditingController(), FocusNode(),
|
|
|
|
408
|
- '点击输入法人身份证号码'),
|
|
|
|
409
|
- _inputWidget('法人身份证住址', TextEditingController(), FocusNode(),
|
|
|
|
410
|
- '点击输入法人身份证住址'),
|
492
|
+ _inputWidget('法人身份证号码', idNumC, idNumFoc, '点击输入法人身份证号码'),
|
|
411
|
_inputWidget(
|
493
|
_inputWidget(
|
|
412
|
- '电话', TextEditingController(), FocusNode(), '点击输入法人电话号码'),
|
|
|
|
413
|
- _inputWidget('邮箱', TextEditingController(), FocusNode(),
|
|
|
|
414
|
- '点击输入用来收取支付信息的邮箱'),
|
494
|
+ '法人身份证住址', idAddressC, idAddressFoc, '点击输入法人身份证住址'),
|
|
|
|
495
|
+ _inputWidget('电话', legalPhoneC, legalPhoneFoc, '点击输入法人电话号码'),
|
|
|
|
496
|
+ _inputWidget('邮箱', emailC, emailFoc, '点击输入用来收取支付信息的邮箱'),
|
|
415
|
Row(children: [
|
497
|
Row(children: [
|
|
416
|
Padding(
|
498
|
Padding(
|
|
417
|
padding: EdgeInsets.only(
|
499
|
padding: EdgeInsets.only(
|
|
@@ -440,18 +522,26 @@ class _EnterpriseInformationUploadPageState |
|
@@ -440,18 +522,26 @@ class _EnterpriseInformationUploadPageState |
|
440
|
]),
|
522
|
]),
|
|
441
|
_title('收款信息'),
|
523
|
_title('收款信息'),
|
|
442
|
VEmptyView(20),
|
524
|
VEmptyView(20),
|
|
443
|
- _select('开户银行', '点击选择开户银行', () {
|
|
|
|
444
|
- FocusScope.of(context).requestFocus(FocusNode()); //点击空白处隐藏键盘
|
525
|
+ _select('开户银行', bankType, () {
|
|
445
|
//弹出开户银行
|
526
|
//弹出开户银行
|
|
|
|
527
|
+ FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘
|
|
|
|
528
|
+ // 存储
|
|
|
|
529
|
+
|
|
|
|
530
|
+ DialogUtil.openBankTypeSelectModalBottomSheet(
|
|
|
|
531
|
+ context, bankData, bankType, rCallback: (value) async {
|
|
|
|
532
|
+ if (value != null) {
|
|
|
|
533
|
+ bankType = value;
|
|
|
|
534
|
+ setState(() {});
|
|
|
|
535
|
+ }
|
|
|
|
536
|
+ });
|
|
446
|
}),
|
537
|
}),
|
|
447
|
- _inputWidget('开户银行网点', TextEditingController(), FocusNode(),
|
|
|
|
448
|
- '点击输入开户银行网点全称'),
|
|
|
|
449
|
_inputWidget(
|
538
|
_inputWidget(
|
|
450
|
- '银行账户', TextEditingController(), FocusNode(), '点击录入银行账户号'),
|
|
|
|
451
|
- _inputWidget('收款商户简称', TextEditingController(), FocusNode(),
|
539
|
+ '开户银行网点', bankAllNameC, bankAllNameFoc, '点击输入开户银行网点全称'),
|
|
|
|
540
|
+ _inputWidget('银行账户', bankNumC, bankNumFoc, '点击录入银行账户号'),
|
|
|
|
541
|
+ _inputWidget('收款商户简称', merchantNameC, merchantNameFoc,
|
|
452
|
'点击输入商户简称,用户支付时可见'),
|
542
|
'点击输入商户简称,用户支付时可见'),
|
|
453
|
_inputWidget(
|
543
|
_inputWidget(
|
|
454
|
- '服务电话', TextEditingController(), FocusNode(), '点击输入服务电话'),
|
544
|
+ '服务电话', servicePhoneC, servicePhoneFoc, '点击输入服务电话'),
|
|
455
|
VEmptyView(44),
|
545
|
VEmptyView(44),
|
|
456
|
Padding(
|
546
|
Padding(
|
|
457
|
padding: EdgeInsets.only(left: w(16)),
|
547
|
padding: EdgeInsets.only(left: w(16)),
|