Commit 8fa65fb60b54a00839fa2ea0561c927f62abc699

Authored by wdn127929
1 parent cc76ea7b

单日期选择更改

1 -  
2 -  
3 import 'dart:convert'; 1 import 'dart:convert';
4 import 'dart:io'; 2 import 'dart:io';
5 import 'dart:ui'; 3 import 'dart:ui';
6 4
  5 +import 'package:calendar_date_picker2/calendar_date_picker2.dart';
7 import 'package:call_log/call_log.dart'; 6 import 'package:call_log/call_log.dart';
8 import 'package:common_utils/common_utils.dart'; 7 import 'package:common_utils/common_utils.dart';
9 8
@@ -49,7 +48,6 @@ import '../../utils/screen_util.dart'; @@ -49,7 +48,6 @@ import '../../utils/screen_util.dart';
49 import '../../widgets/special_text/my_extended_text_selection_controls.dart'; 48 import '../../widgets/special_text/my_extended_text_selection_controls.dart';
50 import 'package:flutter_picker/flutter_picker.dart' as Picker; 49 import 'package:flutter_picker/flutter_picker.dart' as Picker;
51 50
52 -  
53 typedef clickCallback = void Function(String value); 51 typedef clickCallback = void Function(String value);
54 52
55 class NoteBookChangeFPage extends StatefulWidget { 53 class NoteBookChangeFPage extends StatefulWidget {
@@ -542,8 +540,6 @@ class _NoteBookChangeFPageState extends State<NoteBookChangeFPage> { @@ -542,8 +540,6 @@ class _NoteBookChangeFPageState extends State<NoteBookChangeFPage> {
542 } 540 }
543 } 541 }
544 542
545 -  
546 -  
547 _addNameSuffix(String name, String suffix) { 543 _addNameSuffix(String name, String suffix) {
548 if (name == _notebookDetailChangeModel.nameController.text && 544 if (name == _notebookDetailChangeModel.nameController.text &&
549 _notebookDetailChangeModel.nameController.text.endsWith(suffix)) { 545 _notebookDetailChangeModel.nameController.text.endsWith(suffix)) {
@@ -1376,14 +1372,32 @@ class _NoteBookChangeFPageState extends State<NoteBookChangeFPage> { @@ -1376,14 +1372,32 @@ class _NoteBookChangeFPageState extends State<NoteBookChangeFPage> {
1376 Expanded( 1372 Expanded(
1377 child: GestureDetector( 1373 child: GestureDetector(
1378 onTap: () { 1374 onTap: () {
1379 - DialogUtil.showCalendarDialog(context,  
1380 - _notebookDetailChangeModel.dateTime)  
1381 - .then((day) {  
1382 - if (day != null) { 1375 + // DialogUtil.showCalendarDialog(context,
  1376 + // _notebookDetailChangeModel.dateTime)
  1377 + // .then((day) {
  1378 + // if (day != null) {
  1379 + // _notebookDetailChangeModel.createDateText(
  1380 + // context, day);
  1381 + // int dateTimeMill = day.millisecondsSinceEpoch;
  1382 + // dateTime = day;
  1383 + // _notebookDetailChangeModel.getNewTableList(
  1384 + // context,
  1385 + // '${dateTimeMill}',
  1386 + // _notebookDetailChangeModel.currTimeIndex
  1387 + // .toString(),
  1388 + // widget.detailEntity.pnum,
  1389 + // _notebookDetailChangeModel.tableList);
  1390 + // }
  1391 + // });
  1392 +
  1393 + DialogUtil.showCalendarDialogMultiple(
  1394 + context, [_notebookDetailChangeModel.dateTime],
  1395 + (day) async {
  1396 + if (day != null && day.length == 1) {
1383 _notebookDetailChangeModel.createDateText( 1397 _notebookDetailChangeModel.createDateText(
1384 - context, day);  
1385 - int dateTimeMill = day.millisecondsSinceEpoch;  
1386 - dateTime = day; 1398 + context, day[0]);
  1399 + int dateTimeMill = day[0].millisecondsSinceEpoch;
  1400 + dateTime = day[0];
1387 _notebookDetailChangeModel.getNewTableList( 1401 _notebookDetailChangeModel.getNewTableList(
1388 context, 1402 context,
1389 '${dateTimeMill}', 1403 '${dateTimeMill}',
@@ -1392,7 +1406,7 @@ class _NoteBookChangeFPageState extends State<NoteBookChangeFPage> { @@ -1392,7 +1406,7 @@ class _NoteBookChangeFPageState extends State<NoteBookChangeFPage> {
1392 widget.detailEntity.pnum, 1406 widget.detailEntity.pnum,
1393 _notebookDetailChangeModel.tableList); 1407 _notebookDetailChangeModel.tableList);
1394 } 1408 }
1395 - }); 1409 + }, calendarType: CalendarDatePicker2Type.single);
1396 }, 1410 },
1397 child: Container( 1411 child: Container(
1398 // height: ScreenUtil().setWidth(80), 1412 // height: ScreenUtil().setWidth(80),
@@ -2911,4 +2925,3 @@ Widget remarkButton({GestureTapCallback onPress, content, isSelect = false}) { @@ -2911,4 +2925,3 @@ Widget remarkButton({GestureTapCallback onPress, content, isSelect = false}) {
2911 ), 2925 ),
2912 ); 2926 );
2913 } 2927 }
2914 -  
@@ -2,6 +2,7 @@ import 'dart:convert'; @@ -2,6 +2,7 @@ import 'dart:convert';
2 import 'dart:io'; 2 import 'dart:io';
3 import 'dart:ui'; 3 import 'dart:ui';
4 4
  5 +import 'package:calendar_date_picker2/calendar_date_picker2.dart';
5 import 'package:call_log/call_log.dart'; 6 import 'package:call_log/call_log.dart';
6 import 'package:common_utils/common_utils.dart'; 7 import 'package:common_utils/common_utils.dart';
7 8
@@ -151,13 +152,13 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> { @@ -151,13 +152,13 @@ class _NoteBookChangeFPageOnlyState extends State<NoteBookChangeFPageOnly> {
151 }, 152 },
152 showCircle: showCicle, 153 showCircle: showCicle,
153 isShowLoading: isShowLoading); 154 isShowLoading: isShowLoading);
154 - if (detailEntity.type == "0") { 155 + if (detailEntity.type == "0") {
155 //内部预订 156 //内部预订
156 detailEntity.is_set_ddate = "1"; 157 detailEntity.is_set_ddate = "1";
157 } 158 }
158 -_notebookDetailChangeModel.detailEntity = detailEntity; 159 + _notebookDetailChangeModel.detailEntity = detailEntity;
159 160
160 - print(detailEntity); 161 + print(detailEntity);
161 if (detailEntity.phone != '0') { 162 if (detailEntity.phone != '0') {
162 _notebookDetailChangeModel.phoneController.text = detailEntity.phone; 163 _notebookDetailChangeModel.phoneController.text = detailEntity.phone;
163 } 164 }
@@ -171,7 +172,6 @@ _notebookDetailChangeModel.detailEntity = detailEntity; @@ -171,7 +172,6 @@ _notebookDetailChangeModel.detailEntity = detailEntity;
171 172
172 _notebookDetailChangeModel.initSexList(); 173 _notebookDetailChangeModel.initSexList();
173 174
174 -  
175 _initDateList(detailEntity); 175 _initDateList(detailEntity);
176 176
177 currTimeIndex = int.parse(detailEntity.ddate_solt); 177 currTimeIndex = int.parse(detailEntity.ddate_solt);
@@ -640,8 +640,7 @@ _notebookDetailChangeModel.detailEntity = detailEntity; @@ -640,8 +640,7 @@ _notebookDetailChangeModel.detailEntity = detailEntity;
640 }, 640 },
641 child: Scaffold( 641 child: Scaffold(
642 backgroundColor: Colors.white, 642 backgroundColor: Colors.white,
643 - appBar: SystemAppBar( "变更预订",  
644 - onTap: () { 643 + appBar: SystemAppBar("变更预订", onTap: () {
645 Navigator.pop(context); 644 Navigator.pop(context);
646 }), 645 }),
647 body: Consumer<NotebookDetailModel>(builder: (context1, model, _) { 646 body: Consumer<NotebookDetailModel>(builder: (context1, model, _) {
@@ -667,14 +666,32 @@ _notebookDetailChangeModel.detailEntity = detailEntity; @@ -667,14 +666,32 @@ _notebookDetailChangeModel.detailEntity = detailEntity;
667 Expanded( 666 Expanded(
668 child: GestureDetector( 667 child: GestureDetector(
669 onTap: () { 668 onTap: () {
670 - DialogUtil.showCalendarDialog(  
671 - context, dateTime)  
672 - .then((day) {  
673 - if (day != null) {  
674 - createDateText(context, day); 669 + // DialogUtil.showCalendarDialog(
  670 + // context, dateTime)
  671 + // .then((day) {
  672 + // if (day != null) {
  673 + // createDateText(context, day);
  674 + // int dateTimeMill =
  675 + // day.millisecondsSinceEpoch;
  676 + // dateTime = day;
  677 + // _notebookDetailChangeModel
  678 + // .getNewTableList(
  679 + // context,
  680 + // '${dateTimeMill}',
  681 + // currTimeIndex.toString(),
  682 + // detailEntity.pnum,
  683 + // _notebookDetailChangeModel
  684 + // .tableListOrReserve);
  685 + // }
  686 + // });
  687 +
  688 + DialogUtil.showCalendarDialogMultiple(
  689 + context, [dateTime], (day) async {
  690 + if (day != null && day.length == 1) {
  691 + createDateText(context, day[0]);
675 int dateTimeMill = 692 int dateTimeMill =
676 - day.millisecondsSinceEpoch;  
677 - dateTime = day; 693 + day[0].millisecondsSinceEpoch;
  694 + dateTime = day[0];
678 _notebookDetailChangeModel 695 _notebookDetailChangeModel
679 .getNewTableList( 696 .getNewTableList(
680 context, 697 context,
@@ -684,7 +701,9 @@ _notebookDetailChangeModel.detailEntity = detailEntity; @@ -684,7 +701,9 @@ _notebookDetailChangeModel.detailEntity = detailEntity;
684 _notebookDetailChangeModel 701 _notebookDetailChangeModel
685 .tableListOrReserve); 702 .tableListOrReserve);
686 } 703 }
687 - }); 704 + },
  705 + calendarType:
  706 + CalendarDatePicker2Type.single);
688 }, 707 },
689 child: Container( 708 child: Container(
690 // height: ScreenUtil().setWidth(80), 709 // height: ScreenUtil().setWidth(80),
1 import 'dart:convert'; 1 import 'dart:convert';
2 2
3 import 'package:cached_network_image/cached_network_image.dart'; 3 import 'package:cached_network_image/cached_network_image.dart';
  4 +import 'package:calendar_date_picker2/calendar_date_picker2.dart';
4 import 'package:common_utils/common_utils.dart'; 5 import 'package:common_utils/common_utils.dart';
5 import 'package:dotted_border/dotted_border.dart'; 6 import 'package:dotted_border/dotted_border.dart';
6 import 'package:flutter/gestures.dart'; 7 import 'package:flutter/gestures.dart';
@@ -116,8 +117,8 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -116,8 +117,8 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
116 117
117 List<String> imgAllYx = []; 118 List<String> imgAllYx = [];
118 List<String> imgAllDj = []; 119 List<String> imgAllDj = [];
119 - List<String> imgAllHt = [];  
120 - List<String> imgAllFp = []; 120 + List<String> imgAllHt = [];
  121 + List<String> imgAllFp = [];
121 @override 122 @override
122 void initState() { 123 void initState() {
123 // TODO: implement initState 124 // TODO: implement initState
@@ -465,7 +466,7 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -465,7 +466,7 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
465 _uploadImageProvider.feastRemarkContractImageList.add(uploadImgModel); 466 _uploadImageProvider.feastRemarkContractImageList.add(uploadImgModel);
466 imgAllHt.add(element.url); 467 imgAllHt.add(element.url);
467 }); 468 });
468 - 469 +
469 _uploadImageProvider.feastRemarkInvoiceImageList = []; 470 _uploadImageProvider.feastRemarkInvoiceImageList = [];
470 feastModel.banquetDetail.invoice?.images?.forEach((element) { 471 feastModel.banquetDetail.invoice?.images?.forEach((element) {
471 UploadImgModel uploadImgModel = UploadImgModel(); 472 UploadImgModel uploadImgModel = UploadImgModel();
@@ -1077,10 +1078,25 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -1077,10 +1078,25 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
1077 VEmptyView(26), 1078 VEmptyView(26),
1078 _selectWidget('宴会日期', dateTimeShow, onTap: () { 1079 _selectWidget('宴会日期', dateTimeShow, onTap: () {
1079 FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘 1080 FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘
1080 - DialogUtil.showCalendarDialog(context, dateTime).then((day) async {  
1081 - if (day != null) {  
1082 - dateTime = day;  
1083 - dateTimeShow = createDateText(context, day); 1081 + // DialogUtil.showCalendarDialog(context, dateTime).then((day) async {
  1082 + // if (day != null) {
  1083 + // dateTime = day;
  1084 + // dateTimeShow = createDateText(context, day);
  1085 + // if (xuantaiData.length > 0 &&
  1086 + // xuantaiData[0].dateTimext == null) {
  1087 + // xuantaiData[0].dateTimext = dateTime;
  1088 + // xuantaiData[0].dateTimeShowxt = dateTimeShow;
  1089 + // }
  1090 +
  1091 + // setState(() {});
  1092 + // }
  1093 + // });
  1094 +
  1095 + DialogUtil.showCalendarDialogMultiple(context, [dateTime],
  1096 + (day) async {
  1097 + if (day != null && day.length == 1) {
  1098 + dateTime = day[0];
  1099 + dateTimeShow = createDateText(context, day[0]);
1084 if (xuantaiData.length > 0 && 1100 if (xuantaiData.length > 0 &&
1085 xuantaiData[0].dateTimext == null) { 1101 xuantaiData[0].dateTimext == null) {
1086 xuantaiData[0].dateTimext = dateTime; 1102 xuantaiData[0].dateTimext = dateTime;
@@ -1089,7 +1105,7 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -1089,7 +1105,7 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
1089 1105
1090 setState(() {}); 1106 setState(() {});
1091 } 1107 }
1092 - }); 1108 + }, calendarType: CalendarDatePicker2Type.single);
1093 }), 1109 }),
1094 _selectWidget('接单人', jdShow, onTap: () { 1110 _selectWidget('接单人', jdShow, onTap: () {
1095 FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘 1111 FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘
@@ -2102,17 +2118,37 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -2102,17 +2118,37 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
2102 '宴会日期', xuantaiData[xuantaiSelIndex].dateTimeShowxt, 2118 '宴会日期', xuantaiData[xuantaiSelIndex].dateTimeShowxt,
2103 onTap: () { 2119 onTap: () {
2104 FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘 2120 FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘
2105 - DialogUtil.showCalendarDialog(context,  
2106 - xuantaiData[xuantaiSelIndex].dateTimext)  
2107 - .then((day) async {  
2108 - if (day != null) { 2121 + // DialogUtil.showCalendarDialog(context,
  2122 + // xuantaiData[xuantaiSelIndex].dateTimext)
  2123 + // .then((day) async {
  2124 + // if (day != null) {
  2125 + // setState(() {
  2126 + // // xuantaiData[xuantaiSelIndex].tids = [];
  2127 + // // xuantaiData[xuantaiSelIndex].tableList = [];
  2128 + // // xuantaiData[xuantaiSelIndex].tableSum = 0;
  2129 + // xuantaiData[xuantaiSelIndex].dateTimext = day;
  2130 + // xuantaiData[xuantaiSelIndex].dateTimeShowxt =
  2131 + // createDateText(context, day);
  2132 + // });
  2133 + // if (xuantaiData[xuantaiSelIndex].startDate != '' &&
  2134 + // xuantaiData[xuantaiSelIndex].endDate != '' &&
  2135 + // xuantaiData[xuantaiSelIndex].tableList !=
  2136 + // null) {
  2137 + // _getTableList();
  2138 + // }
  2139 + // }
  2140 + // });
  2141 + DialogUtil.showCalendarDialogMultiple(
  2142 + context, [xuantaiData[xuantaiSelIndex].dateTimext],
  2143 + (day) async {
  2144 + if (day != null && day.length == 1) {
2109 setState(() { 2145 setState(() {
2110 // xuantaiData[xuantaiSelIndex].tids = []; 2146 // xuantaiData[xuantaiSelIndex].tids = [];
2111 // xuantaiData[xuantaiSelIndex].tableList = []; 2147 // xuantaiData[xuantaiSelIndex].tableList = [];
2112 // xuantaiData[xuantaiSelIndex].tableSum = 0; 2148 // xuantaiData[xuantaiSelIndex].tableSum = 0;
2113 - xuantaiData[xuantaiSelIndex].dateTimext = day; 2149 + xuantaiData[xuantaiSelIndex].dateTimext = day[0];
2114 xuantaiData[xuantaiSelIndex].dateTimeShowxt = 2150 xuantaiData[xuantaiSelIndex].dateTimeShowxt =
2115 - createDateText(context, day); 2151 + createDateText(context, day[0]);
2116 }); 2152 });
2117 if (xuantaiData[xuantaiSelIndex].startDate != '' && 2153 if (xuantaiData[xuantaiSelIndex].startDate != '' &&
2118 xuantaiData[xuantaiSelIndex].endDate != '' && 2154 xuantaiData[xuantaiSelIndex].endDate != '' &&
@@ -2121,7 +2157,7 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -2121,7 +2157,7 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
2121 _getTableList(); 2157 _getTableList();
2122 } 2158 }
2123 } 2159 }
2124 - }); 2160 + }, calendarType: CalendarDatePicker2Type.single);
2125 }), 2161 }),
2126 _selectWidget('餐段选择', xuantaiData[xuantaiSelIndex].cdShow, 2162 _selectWidget('餐段选择', xuantaiData[xuantaiSelIndex].cdShow,
2127 onTap: () { 2163 onTap: () {
@@ -4497,9 +4533,9 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -4497,9 +4533,9 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
4497 maxImageNumber: 8, 4533 maxImageNumber: 8,
4498 mainAxisSpacing: 72, 4534 mainAxisSpacing: 72,
4499 crossAxisSpacing: 56, 4535 crossAxisSpacing: 56,
4500 - callback: (){  
4501 - imgAllHt.add( _uploadImageProvider.feastRemarkContractImageList.last.qiniuUrl);  
4502 - 4536 + callback: () {
  4537 + imgAllHt.add(_uploadImageProvider
  4538 + .feastRemarkContractImageList.last.qiniuUrl);
4503 }, 4539 },
4504 ); 4540 );
4505 }), 4541 }),
@@ -4765,10 +4801,9 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -4765,10 +4801,9 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
4765 maxImageNumber: 8, 4801 maxImageNumber: 8,
4766 mainAxisSpacing: 72, 4802 mainAxisSpacing: 72,
4767 crossAxisSpacing: 56, 4803 crossAxisSpacing: 56,
4768 - callback: (){  
4769 -  
4770 - imgAllFp.add( _uploadImageProvider.feastRemarkInvoiceImageList.last.qiniuUrl);  
4771 - 4804 + callback: () {
  4805 + imgAllFp.add(_uploadImageProvider
  4806 + .feastRemarkInvoiceImageList.last.qiniuUrl);
4772 }, 4807 },
4773 ); 4808 );
4774 }), 4809 }),
@@ -5050,14 +5085,13 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -5050,14 +5085,13 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
5050 ///设置合同信息 5085 ///设置合同信息
5051 Future<bool> _setBanquetContract() async { 5086 Future<bool> _setBanquetContract() async {
5052 List imageQiniuUrlList = []; //接口图片数据list 5087 List imageQiniuUrlList = []; //接口图片数据list
5053 - List<String> delImgs = []; //接口图片数据list 5088 + List<String> delImgs = []; //接口图片数据list
5054 for (int i = 0; 5089 for (int i = 0;
5055 i < _uploadImageProvider.feastRemarkContractImageList.length; 5090 i < _uploadImageProvider.feastRemarkContractImageList.length;
5056 i++) { 5091 i++) {
5057 - String url = _uploadImageProvider.feastRemarkContractImageList[i].qiniuUrl;  
5058 - imageQiniuUrlList.add({  
5059 - "url": url  
5060 - }); 5092 + String url =
  5093 + _uploadImageProvider.feastRemarkContractImageList[i].qiniuUrl;
  5094 + imageQiniuUrlList.add({"url": url});
5061 delImgs.add(url); 5095 delImgs.add(url);
5062 } 5096 }
5063 Map<String, String> params = { 5097 Map<String, String> params = {
@@ -5074,7 +5108,7 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -5074,7 +5108,7 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
5074 bool success = await feastModel.setBanquetContract(context, params); 5108 bool success = await feastModel.setBanquetContract(context, params);
5075 5109
5076 if (success) { 5110 if (success) {
5077 - Set<String> difference = Set.from(imgAllHt)..removeAll(delImgs); 5111 + Set<String> difference = Set.from(imgAllHt)..removeAll(delImgs);
5078 List<String> differenceList = difference.toList(); //需要删除的图片 5112 List<String> differenceList = difference.toList(); //需要删除的图片
5079 if (differenceList.length > 0) { 5113 if (differenceList.length > 0) {
5080 String delImgs = Utils.listToStringEnglish(differenceList); 5114 String delImgs = Utils.listToStringEnglish(differenceList);
@@ -5093,14 +5127,12 @@ class _FeastCreatePageState extends State<FeastCreatePage> { @@ -5093,14 +5127,12 @@ class _FeastCreatePageState extends State<FeastCreatePage> {
5093 } 5127 }
5094 5128
5095 List imageQiniuUrlListInvoice = []; //接口图片数据list 5129 List imageQiniuUrlListInvoice = []; //接口图片数据list
5096 - List<String> delImgs = []; //接口图片数据list 5130 + List<String> delImgs = []; //接口图片数据list
5097 for (int i = 0; 5131 for (int i = 0;
5098 i < _uploadImageProvider.feastRemarkInvoiceImageList.length; 5132 i < _uploadImageProvider.feastRemarkInvoiceImageList.length;
5099 i++) { 5133 i++) {
5100 - String url = _uploadImageProvider.feastRemarkInvoiceImageList[i].qiniuUrl;  
5101 - imageQiniuUrlListInvoice.add({  
5102 - "url":url  
5103 - }); 5134 + String url = _uploadImageProvider.feastRemarkInvoiceImageList[i].qiniuUrl;
  5135 + imageQiniuUrlListInvoice.add({"url": url});
5104 delImgs.add(url); 5136 delImgs.add(url);
5105 } 5137 }
5106 if (imageQiniuUrlListInvoice.length > 0) { 5138 if (imageQiniuUrlListInvoice.length > 0) {
  1 +import 'package:calendar_date_picker2/calendar_date_picker2.dart';
1 import 'package:common_utils/common_utils.dart'; 2 import 'package:common_utils/common_utils.dart';
2 import 'package:flutter/material.dart'; 3 import 'package:flutter/material.dart';
3 import 'package:flutter_screenutil/flutter_screenutil.dart'; 4 import 'package:flutter_screenutil/flutter_screenutil.dart';
@@ -248,14 +249,23 @@ class _FeastFollowUpPageState extends State<FeastFollowUpPage> { @@ -248,14 +249,23 @@ class _FeastFollowUpPageState extends State<FeastFollowUpPage> {
248 InkWell( 249 InkWell(
249 onTap: () { 250 onTap: () {
250 // FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘 251 // FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘
251 - DialogUtil.showCalendarDialog(context, dateTimeStart)  
252 - .then((day) async {  
253 - if (day != null) {  
254 - dateTimeStart = day;  
255 - start = createDateText(context, day); 252 + // DialogUtil.showCalendarDialog(context, dateTimeStart)
  253 + // .then((day) async {
  254 + // if (day != null) {
  255 + // dateTimeStart = day;
  256 + // start = createDateText(context, day);
  257 + // setState(() {});
  258 + // }
  259 + // });
  260 +
  261 + DialogUtil.showCalendarDialogMultiple(
  262 + context, [dateTimeStart], (day) async {
  263 + if (day != null && day.length == 1) {
  264 + dateTimeStart = day[0];
  265 + start = createDateText(context, day[0]);
256 setState(() {}); 266 setState(() {});
257 } 267 }
258 - }); 268 + }, calendarType: CalendarDatePicker2Type.single);
259 }, 269 },
260 child: Row( 270 child: Row(
261 children: [ 271 children: [
@@ -282,14 +292,23 @@ class _FeastFollowUpPageState extends State<FeastFollowUpPage> { @@ -282,14 +292,23 @@ class _FeastFollowUpPageState extends State<FeastFollowUpPage> {
282 InkWell( 292 InkWell(
283 onTap: () { 293 onTap: () {
284 // FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘 294 // FocusScope.of(context).requestFocus(FocusNode()); //隐藏键盘
285 - DialogUtil.showCalendarDialog(context, dateTimeEnd)  
286 - .then((day) async {  
287 - if (day != null) {  
288 - dateTimeEnd = day;  
289 - end = createDateText(context, day); 295 + // DialogUtil.showCalendarDialog(context, dateTimeEnd)
  296 + // .then((day) async {
  297 + // if (day != null) {
  298 + // dateTimeEnd = day;
  299 + // end = createDateText(context, day);
  300 + // setState(() {});
  301 + // }
  302 + // });
  303 +
  304 + DialogUtil.showCalendarDialogMultiple(
  305 + context, [dateTimeEnd], (day) async {
  306 + if (day != null && day.length == 1) {
  307 + dateTimeEnd = day[0];
  308 + end = createDateText(context, day[0]);
290 setState(() {}); 309 setState(() {});
291 } 310 }
292 - }); 311 + }, calendarType: CalendarDatePicker2Type.single);
293 }, 312 },
294 child: Row( 313 child: Row(
295 children: [ 314 children: [
  1 +import 'package:calendar_date_picker2/calendar_date_picker2.dart';
1 import 'package:common_utils/common_utils.dart'; 2 import 'package:common_utils/common_utils.dart';
2 import 'package:dio/dio.dart'; 3 import 'package:dio/dio.dart';
3 import 'package:flutter/material.dart'; 4 import 'package:flutter/material.dart';
@@ -392,7 +393,8 @@ class NoteBookPageState extends State<NoteBookPage> { @@ -392,7 +393,8 @@ class NoteBookPageState extends State<NoteBookPage> {
392 clearSel = false; 393 clearSel = false;
393 } else { 394 } else {
394 clearSel = true; 395 clearSel = true;
395 - dateText = '${day.month}月\n${day.day}日'; 396 + // dateText = '${day.year}年\n${day.month}月\n${day.day}日';
  397 + dateText = '${day.month}月\n${day.day}日';
396 } 398 }
397 }); 399 });
398 } 400 }
@@ -561,7 +563,8 @@ class NoteBookPageState extends State<NoteBookPage> { @@ -561,7 +563,8 @@ class NoteBookPageState extends State<NoteBookPage> {
561 userModel = Provider.of<UserModel>(context, listen: false); 563 userModel = Provider.of<UserModel>(context, listen: false);
562 noteBookModel = Provider.of<NoteBookModel>(context, listen: true); 564 noteBookModel = Provider.of<NoteBookModel>(context, listen: true);
563 565
564 - collectStoreProvider = Provider.of<CollectStoreProvider>(context, listen: true); 566 + collectStoreProvider =
  567 + Provider.of<CollectStoreProvider>(context, listen: true);
565 int sum = 3; 568 int sum = 3;
566 int hide = 0; 569 int hide = 0;
567 int btnNum = 0; 570 int btnNum = 0;
@@ -870,12 +873,19 @@ class NoteBookPageState extends State<NoteBookPage> { @@ -870,12 +873,19 @@ class NoteBookPageState extends State<NoteBookPage> {
870 ))), 873 ))),
871 InkWell( 874 InkWell(
872 onTap: () { 875 onTap: () {
873 - DialogUtil.showCalendarDialog(context, dateTimeNow)  
874 - .then((day) {  
875 - if (day != null) {  
876 - _createDateText(day); 876 + // DialogUtil.showCalendarDialog(context, dateTimeNow)
  877 + // .then((day) {
  878 + // if (day != null) {
  879 + // _createDateText(day);
  880 + // }
  881 + // });
  882 +
  883 + DialogUtil.showCalendarDialogMultiple(
  884 + context, [dateTimeNow], (day) async {
  885 + if (day != null && day.length == 1) {
  886 + _createDateText(day[0]);
877 } 887 }
878 - }); 888 + }, calendarType: CalendarDatePicker2Type.single);
879 }, 889 },
880 child: Container( 890 child: Container(
881 alignment: Alignment.center, 891 alignment: Alignment.center,
@@ -1122,7 +1132,8 @@ class NoteBookPageState extends State<NoteBookPage> { @@ -1122,7 +1132,8 @@ class NoteBookPageState extends State<NoteBookPage> {
1122 model.notebooksSort[index]); 1132 model.notebooksSort[index]);
1123 }) 1133 })
1124 : NoteBookItemF( 1134 : NoteBookItemF(
1125 - model.notebooksSort[index], index, 1135 + model.notebooksSort[index],
  1136 + index,
1126 collectStoreProvider.sellerPreserve, 1137 collectStoreProvider.sellerPreserve,
1127 () { 1138 () {
1128 _itemChangeSimple( 1139 _itemChangeSimple(
@@ -2,6 +2,7 @@ import 'dart:async'; @@ -2,6 +2,7 @@ import 'dart:async';
2 import 'dart:convert'; 2 import 'dart:convert';
3 import 'dart:io'; 3 import 'dart:io';
4 4
  5 +import 'package:calendar_date_picker2/calendar_date_picker2.dart';
5 import 'package:call_log/call_log.dart'; 6 import 'package:call_log/call_log.dart';
6 import 'package:common_utils/common_utils.dart'; 7 import 'package:common_utils/common_utils.dart';
7 import 'package:dotted_border/dotted_border.dart'; 8 import 'package:dotted_border/dotted_border.dart';
@@ -3688,10 +3689,25 @@ class TableManagerPageState extends State<TableManagerPage> { @@ -3688,10 +3689,25 @@ class TableManagerPageState extends State<TableManagerPage> {
3688 Expanded( 3689 Expanded(
3689 child: GestureDetector( 3690 child: GestureDetector(
3690 onTap: () { 3691 onTap: () {
3691 - DialogUtil.showCalendarDialog(context, dateTime)  
3692 - .then((day) async {  
3693 - if (day != null) {  
3694 - createDateText1(context, day); 3692 + // DialogUtil.showCalendarDialog(context, dateTime)
  3693 + // .then((day) async {
  3694 + // if (day != null) {
  3695 + // createDateText1(context, day);
  3696 + // bool success =
  3697 + // await tableManagerModel.getTableListOrReserve(
  3698 + // context,
  3699 + // currTimeIndex,
  3700 + // dateTime,
  3701 + // selectNumber,
  3702 + // showLoading: true,
  3703 + // );
  3704 + // }
  3705 + // });
  3706 +
  3707 + DialogUtil.showCalendarDialogMultiple(
  3708 + context, [dateTime], (day) async {
  3709 + if (day != null && day.length == 1) {
  3710 + createDateText1(context, day[0]);
3695 bool success = 3711 bool success =
3696 await tableManagerModel.getTableListOrReserve( 3712 await tableManagerModel.getTableListOrReserve(
3697 context, 3713 context,
@@ -3701,7 +3717,7 @@ class TableManagerPageState extends State<TableManagerPage> { @@ -3701,7 +3717,7 @@ class TableManagerPageState extends State<TableManagerPage> {
3701 showLoading: true, 3717 showLoading: true,
3702 ); 3718 );
3703 } 3719 }
3704 - }); 3720 + }, calendarType: CalendarDatePicker2Type.single);
3705 }, 3721 },
3706 child: Container( 3722 child: Container(
3707 // height: ScreenUtil().setWidth(80), 3723 // height: ScreenUtil().setWidth(80),
@@ -7286,10 +7286,11 @@ class DialogUtil { @@ -7286,10 +7286,11 @@ class DialogUtil {
7286 7286
7287 static Widget _buildMultiDatePickerWithValue( 7287 static Widget _buildMultiDatePickerWithValue(
7288 List<DateTime> _multiDatePickerValueWithDefaultValue, 7288 List<DateTime> _multiDatePickerValueWithDefaultValue,
  7289 + CalendarDatePicker2Type calendarType,
7289 ValueChanged valueChanged) { 7290 ValueChanged valueChanged) {
7290 final config = CalendarDatePicker2Config( 7291 final config = CalendarDatePicker2Config(
7291 disableMonthPicker: true, 7292 disableMonthPicker: true,
7292 - calendarType: CalendarDatePicker2Type.multi, 7293 + calendarType: calendarType,
7293 currentDate: DateTime.now(), 7294 currentDate: DateTime.now(),
7294 dynamicCalendarRows: true, 7295 dynamicCalendarRows: true,
7295 centerAlignModePicker: true, 7296 centerAlignModePicker: true,
@@ -7383,6 +7384,9 @@ class DialogUtil { @@ -7383,6 +7384,9 @@ class DialogUtil {
7383 BuildContext context, 7384 BuildContext context,
7384 List<DateTime> selectDates, 7385 List<DateTime> selectDates,
7385 ValueChanged valueChanged, 7386 ValueChanged valueChanged,
  7387 + {
  7388 + CalendarDatePicker2Type calendarType = CalendarDatePicker2Type.multi,
  7389 + }
7386 ) { 7390 ) {
7387 List<DateTime> _multiDatePickerValueWithDefaultValue = selectDates; //日历使用 7391 List<DateTime> _multiDatePickerValueWithDefaultValue = selectDates; //日历使用
7388 return showModalBottomSheet<DateTime>( 7392 return showModalBottomSheet<DateTime>(
@@ -7397,7 +7401,7 @@ class DialogUtil { @@ -7397,7 +7401,7 @@ class DialogUtil {
7397 mainAxisSize: MainAxisSize.min, 7401 mainAxisSize: MainAxisSize.min,
7398 children: <Widget>[ 7402 children: <Widget>[
7399 _buildMultiDatePickerWithValue( 7403 _buildMultiDatePickerWithValue(
7400 - _multiDatePickerValueWithDefaultValue, (value) { 7404 + _multiDatePickerValueWithDefaultValue, calendarType,(value) {
7401 _multiDatePickerValueWithDefaultValue = value; 7405 _multiDatePickerValueWithDefaultValue = value;
7402 }), 7406 }),
7403 VEmptyView(120), 7407 VEmptyView(120),