Commit 0ff7872a72d88ccbbc518aafe946ec7c3c6aadca

Authored by wdn127929
1 parent 218403e1

电话11位时浮框消问题失和顾客姓名后缀问题OK

@@ -63,11 +63,22 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> { @@ -63,11 +63,22 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> {
63 String sid = ""; //商户id 63 String sid = ""; //商户id
64 64
65 ScrollController _controller = ScrollController(); 65 ScrollController _controller = ScrollController();
  66 + String nameStr;
66 67
67 @override 68 @override
68 void initState() { 69 void initState() {
69 super.initState(); 70 super.initState();
70 dateTime = DateTime.now(); 71 dateTime = DateTime.now();
  72 + _nameNode.addListener(() {
  73 + if (_nameNode.hasFocus) {
  74 + print('得到焦点');
  75 + } else {
  76 + print('失去焦点');
  77 + // _homeEnterModel.nameController.text = nameStr + _nameSuffix();
  78 + _addNameSuffix(nameStr, _nameSuffix());
  79 + }
  80 + setState(() {});
  81 + });
71 WidgetsBinding.instance.addPostFrameCallback((timeStamp) { 82 WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
72 // _notebookDetailChangeModel = 83 // _notebookDetailChangeModel =
73 // Provider.of<NotebookDetailChangeModel>(context, listen: false); 84 // Provider.of<NotebookDetailChangeModel>(context, listen: false);
@@ -464,6 +475,23 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> { @@ -464,6 +475,23 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> {
464 ); 475 );
465 } 476 }
466 477
  478 + //姓名后缀
  479 + _nameSuffix() {
  480 + for (var item in _notebookDetailChangeModel.sexList) {
  481 + if (item['select'] == true) {
  482 + return item['title'];
  483 + }
  484 + }
  485 + }
  486 +
  487 + _addNameSuffix(String name, String suffix) {
  488 + if (name == _notebookDetailChangeModel.nameController.text &&
  489 + _notebookDetailChangeModel.nameController.text.endsWith(suffix)) {
  490 + return;
  491 + }
  492 + _notebookDetailChangeModel.nameController.text = name + suffix;
  493 + }
  494 +
467 _bottomWidget() { 495 _bottomWidget() {
468 return Container( 496 return Container(
469 padding: EdgeInsets.symmetric( 497 padding: EdgeInsets.symmetric(
@@ -536,10 +564,12 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> { @@ -536,10 +564,12 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> {
536 ), 564 ),
537 onChanged: (value) { 565 onChanged: (value) {
538 print('ggg'); 566 print('ggg');
  567 + nameStr = value;
539 }, 568 },
540 onEditingComplete: () { 569 onEditingComplete: () {
541 print('fff'); 570 print('fff');
542 _nameNode.unfocus(); 571 _nameNode.unfocus();
  572 + _addNameSuffix(nameStr, _nameSuffix());
543 }, 573 },
544 keyboardType: TextInputType.text, 574 keyboardType: TextInputType.text,
545 ), 575 ),
@@ -553,6 +583,7 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> { @@ -553,6 +583,7 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> {
553 item['select'] = false; 583 item['select'] = false;
554 if (item['title'] == value['title']) { 584 if (item['title'] == value['title']) {
555 item['select'] = true; 585 item['select'] = true;
  586 + _addNameSuffix(nameStr, item['title']);
556 } 587 }
557 } 588 }
558 _notebookDetailChangeModel.notifyListeners(); 589 _notebookDetailChangeModel.notifyListeners();
@@ -593,7 +624,7 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> { @@ -593,7 +624,7 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> {
593 ), 624 ),
594 onChanged: (value) { 625 onChanged: (value) {
595 LogUtil.v("value:$value"); 626 LogUtil.v("value:$value");
596 - if (value.isEmpty || value.length >= 11) { 627 + if (value.isEmpty || value.length > 11) {
597 //内容为空,或 超过11位 628 //内容为空,或 超过11位
598 setState(() { 629 setState(() {
599 _notebookDetailChangeModel.userHistorys.clear(); 630 _notebookDetailChangeModel.userHistorys.clear();
@@ -763,10 +794,16 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> { @@ -763,10 +794,16 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> {
763 .phoneController.text = 794 .phoneController.text =
764 _notebookDetailChangeModel 795 _notebookDetailChangeModel
765 .userHistorys[index].phone; 796 .userHistorys[index].phone;
766 - _notebookDetailChangeModel  
767 - .nameController.text = 797 + // _notebookDetailChangeModel
  798 + // .nameController.text =
  799 + // _notebookDetailChangeModel
  800 + // .userHistorys[index].rname;
  801 + _addNameSuffix(
768 _notebookDetailChangeModel 802 _notebookDetailChangeModel
769 - .userHistorys[index].rname; 803 + .userHistorys[index].rname,
  804 + _nameSuffix());
  805 + nameStr = _notebookDetailChangeModel
  806 + .userHistorys[index].rname;
770 _phoneNode.unfocus(); 807 _phoneNode.unfocus();
771 _notebookDetailChangeModel.userHistorys 808 _notebookDetailChangeModel.userHistorys
772 .clear(); 809 .clear();
@@ -1086,7 +1123,9 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> { @@ -1086,7 +1123,9 @@ class _NoteBookChangePageState extends State<NoteBookChangePage> {
1086 fullName = contact.fullName; 1123 fullName = contact.fullName;
1087 } 1124 }
1088 _notebookDetailChangeModel.phoneController.text = contact.phoneNumber; 1125 _notebookDetailChangeModel.phoneController.text = contact.phoneNumber;
1089 - _notebookDetailChangeModel.nameController.text = fullName; 1126 + // _notebookDetailChangeModel.nameController.text = fullName;
  1127 + nameStr = fullName;
  1128 + _addNameSuffix(fullName, _nameSuffix());
1090 }); 1129 });
1091 } 1130 }
1092 1131
@@ -58,6 +58,7 @@ class _HomeEnterPageState extends State<HomeEnterPage> @@ -58,6 +58,7 @@ class _HomeEnterPageState extends State<HomeEnterPage>
58 EasyContactPicker _contactPicker = EasyContactPicker(); 58 EasyContactPicker _contactPicker = EasyContactPicker();
59 RemarkManagerModel remarkManagerModel; 59 RemarkManagerModel remarkManagerModel;
60 String currentRemark = ''; 60 String currentRemark = '';
  61 + String nameStr;
61 62
62 bool showPhoneHistory = false; //显示客户历史记录 63 bool showPhoneHistory = false; //显示客户历史记录
63 64
@@ -78,6 +79,16 @@ class _HomeEnterPageState extends State<HomeEnterPage> @@ -78,6 +79,16 @@ class _HomeEnterPageState extends State<HomeEnterPage>
78 void initState() { 79 void initState() {
79 super.initState(); 80 super.initState();
80 dateTimeNow = DateTime.now(); 81 dateTimeNow = DateTime.now();
  82 + _nameNode.addListener(() {
  83 + if (_nameNode.hasFocus) {
  84 + print('得到焦点');
  85 + } else {
  86 + print('失去焦点');
  87 + // _homeEnterModel.nameController.text = nameStr + _nameSuffix();
  88 + _addNameSuffix(nameStr, _nameSuffix());
  89 + }
  90 + setState(() {});
  91 + });
81 92
82 WidgetsBinding.instance.addPostFrameCallback((timeStamp) async { 93 WidgetsBinding.instance.addPostFrameCallback((timeStamp) async {
83 _initTime(); 94 _initTime();
@@ -211,6 +222,23 @@ class _HomeEnterPageState extends State<HomeEnterPage> @@ -211,6 +222,23 @@ class _HomeEnterPageState extends State<HomeEnterPage>
211 ))); 222 )));
212 } 223 }
213 224
  225 + //姓名后缀
  226 + _nameSuffix() {
  227 + for (var item in _homeEnterModel.sexList) {
  228 + if (item['select'] == true) {
  229 + return item['title'];
  230 + }
  231 + }
  232 + }
  233 +
  234 + _addNameSuffix(String name, String suffix) {
  235 + if (name == _homeEnterModel.nameController.text &&
  236 + _homeEnterModel.nameController.text.endsWith(suffix)) {
  237 + return;
  238 + }
  239 + _homeEnterModel.nameController.text = name + suffix;
  240 + }
  241 +
214 _topWidget() { 242 _topWidget() {
215 return Container( 243 return Container(
216 padding: EdgeInsets.symmetric( 244 padding: EdgeInsets.symmetric(
@@ -246,10 +274,14 @@ class _HomeEnterPageState extends State<HomeEnterPage> @@ -246,10 +274,14 @@ class _HomeEnterPageState extends State<HomeEnterPage>
246 ), 274 ),
247 onChanged: (value) { 275 onChanged: (value) {
248 print('ggg'); 276 print('ggg');
  277 + nameStr = value;
249 }, 278 },
250 onEditingComplete: () { 279 onEditingComplete: () {
251 print('fff'); 280 print('fff');
252 _nameNode.unfocus(); 281 _nameNode.unfocus();
  282 + // _homeEnterModel.nameController.text =
  283 + // nameStr + _nameSuffix();
  284 + _addNameSuffix(nameStr, _nameSuffix());
253 }, 285 },
254 keyboardType: TextInputType.text, 286 keyboardType: TextInputType.text,
255 ), 287 ),
@@ -263,6 +295,9 @@ class _HomeEnterPageState extends State<HomeEnterPage> @@ -263,6 +295,9 @@ class _HomeEnterPageState extends State<HomeEnterPage>
263 item['select'] = false; 295 item['select'] = false;
264 if (item['title'] == value['title']) { 296 if (item['title'] == value['title']) {
265 item['select'] = true; 297 item['select'] = true;
  298 + // _homeEnterModel.nameController.text =
  299 + // nameStr + item['title'];
  300 + _addNameSuffix(nameStr, item['title']);
266 } 301 }
267 } 302 }
268 _homeEnterModel.notifyListeners(); 303 _homeEnterModel.notifyListeners();
@@ -304,7 +339,7 @@ class _HomeEnterPageState extends State<HomeEnterPage> @@ -304,7 +339,7 @@ class _HomeEnterPageState extends State<HomeEnterPage>
304 ), 339 ),
305 onChanged: (value) { 340 onChanged: (value) {
306 LogUtil.v("value:$value"); 341 LogUtil.v("value:$value");
307 - if (value.isEmpty || value.length >= 11) { 342 + if (value.isEmpty || value.length > 11) {
308 //内容为空,或 超过11位 343 //内容为空,或 超过11位
309 setState(() { 344 setState(() {
310 _homeEnterModel.userHistorys.clear(); 345 _homeEnterModel.userHistorys.clear();
@@ -533,9 +568,16 @@ class _HomeEnterPageState extends State<HomeEnterPage> @@ -533,9 +568,16 @@ class _HomeEnterPageState extends State<HomeEnterPage>
533 _homeEnterModel.phoneController.text = 568 _homeEnterModel.phoneController.text =
534 _homeEnterModel 569 _homeEnterModel
535 .userHistorys[index].phone; 570 .userHistorys[index].phone;
536 - _homeEnterModel.nameController.text = 571 + // _homeEnterModel.nameController.text =
  572 + // _homeEnterModel
  573 + // .userHistorys[index].rname +
  574 + // _nameSuffix();
  575 + _addNameSuffix(
537 _homeEnterModel 576 _homeEnterModel
538 - .userHistorys[index].rname; 577 + .userHistorys[index].rname,
  578 + _nameSuffix());
  579 + nameStr = _homeEnterModel
  580 + .userHistorys[index].rname;
539 _phoneNode.unfocus(); 581 _phoneNode.unfocus();
540 _homeEnterModel.userHistorys.clear(); 582 _homeEnterModel.userHistorys.clear();
541 }); 583 });
@@ -1199,6 +1241,7 @@ class _HomeEnterPageState extends State<HomeEnterPage> @@ -1199,6 +1241,7 @@ class _HomeEnterPageState extends State<HomeEnterPage>
1199 currentRemark = ''; 1241 currentRemark = '';
1200 _homeEnterModel.initSexList(); 1242 _homeEnterModel.initSexList();
1201 _homeEnterModel.nameController.text = ''; 1243 _homeEnterModel.nameController.text = '';
  1244 + nameStr = '';
1202 _homeEnterModel.phoneController.text = ''; 1245 _homeEnterModel.phoneController.text = '';
1203 _homeEnterModel.customController.text = ''; 1246 _homeEnterModel.customController.text = '';
1204 1247
@@ -1271,7 +1314,9 @@ class _HomeEnterPageState extends State<HomeEnterPage> @@ -1271,7 +1314,9 @@ class _HomeEnterPageState extends State<HomeEnterPage>
1271 fullName = contact.fullName; 1314 fullName = contact.fullName;
1272 } 1315 }
1273 _homeEnterModel.phoneController.text = contact.phoneNumber; 1316 _homeEnterModel.phoneController.text = contact.phoneNumber;
1274 - _homeEnterModel.nameController.text = fullName; 1317 + nameStr = fullName;
  1318 + // _homeEnterModel.nameController.text = fullName + _nameSuffix();
  1319 + _addNameSuffix(fullName, _nameSuffix());
1275 }); 1320 });
1276 } 1321 }
1277 1322