Merge remote-tracking branch 'origin/main'
						commit
						73cb235820
					
				|  | @ -486,6 +486,8 @@ class _QuickReportPageState extends State<QuickReportPage> { | ||||||
| 
 | 
 | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     LoadingDialogHelper.show(context); | ||||||
|  | 
 | ||||||
|     String yinHuanTypeIds=""; |     String yinHuanTypeIds=""; | ||||||
|     String yinHuanTypeNames=""; |     String yinHuanTypeNames=""; | ||||||
|     for(int i=0;i<_yinHuanTypeIds.length;i++){ |     for(int i=0;i<_yinHuanTypeIds.length;i++){ | ||||||
|  | @ -546,11 +548,15 @@ class _QuickReportPageState extends State<QuickReportPage> { | ||||||
|             } |             } | ||||||
|           } |           } | ||||||
|         setState(() { |         setState(() { | ||||||
|  |           LoadingDialogHelper.hide(context); | ||||||
|           ToastUtil.showNormal(context, "提交成功"); |           ToastUtil.showNormal(context, "提交成功"); | ||||||
|           Navigator.pop(context); |           Navigator.pop(context); | ||||||
|         }); |         }); | ||||||
|  |       }else{ | ||||||
|  |         LoadingDialogHelper.hide(context); | ||||||
|       } |       } | ||||||
|     } catch (e) { |     } catch (e) { | ||||||
|  |       LoadingDialogHelper.hide(context); | ||||||
|       print('Error fetching data: $e'); |       print('Error fetching data: $e'); | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  | @ -675,6 +675,8 @@ class _CheckingInformationOnePageState extends State<CheckingInformationOnePage> | ||||||
|   Future<void> _customCheckRecordFinish( ) async { |   Future<void> _customCheckRecordFinish( ) async { | ||||||
|     try { |     try { | ||||||
| 
 | 
 | ||||||
|  |       LoadingDialogHelper.show(context); | ||||||
|  | 
 | ||||||
|       bool departmentsAllInput=true; |       bool departmentsAllInput=true; | ||||||
|       bool departmentsSameMan=false; |       bool departmentsSameMan=false; | ||||||
|       for(int i=0;i<departments.length;i++){ |       for(int i=0;i<departments.length;i++){ | ||||||
|  | @ -723,10 +725,12 @@ class _CheckingInformationOnePageState extends State<CheckingInformationOnePage> | ||||||
|       }); |       }); | ||||||
| 
 | 
 | ||||||
|       } else { |       } else { | ||||||
|  |         LoadingDialogHelper.hide(context); | ||||||
|         ToastUtil.showNormal(context, "加载数据失败"); |         ToastUtil.showNormal(context, "加载数据失败"); | ||||||
|         // _showMessage('加载数据失败'); |         // _showMessage('加载数据失败'); | ||||||
|       } |       } | ||||||
|     } catch (e) { |     } catch (e) { | ||||||
|  |       LoadingDialogHelper.hide(context); | ||||||
|       // 出错时可以 Toast 或者在页面上显示错误状态 |       // 出错时可以 Toast 或者在页面上显示错误状态 | ||||||
|       print('加载数据失败:$e'); |       print('加载数据失败:$e'); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  | @ -568,7 +568,7 @@ class _HiddenDangerAcceptancePageState extends State<HiddenDangerAcceptancePage> | ||||||
|       } |       } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 |       LoadingDialogHelper.show(context); | ||||||
| 
 | 
 | ||||||
|       final data = await ApiService.addHazardAcceptance( type, miaoshu, dataTime,widget.item['HIDDEN_ID']); |       final data = await ApiService.addHazardAcceptance( type, miaoshu, dataTime,widget.item['HIDDEN_ID']); | ||||||
|       if (data['result'] == 'success') { |       if (data['result'] == 'success') { | ||||||
|  | @ -590,9 +590,12 @@ class _HiddenDangerAcceptancePageState extends State<HiddenDangerAcceptancePage> | ||||||
|           widget.onClose('关闭详情'); // 触发回调 |           widget.onClose('关闭详情'); // 触发回调 | ||||||
|         }); |         }); | ||||||
| 
 | 
 | ||||||
|  |       }else{ | ||||||
|  |         LoadingDialogHelper.hide(context); | ||||||
|       } |       } | ||||||
| 
 | 
 | ||||||
|     } catch (e) { |     } catch (e) { | ||||||
|  |       LoadingDialogHelper.hide(context); | ||||||
|       print('Error fetching data: $e'); |       print('Error fetching data: $e'); | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  | @ -549,6 +549,8 @@ class _PendingRectificationDetailPageState extends State<PendingRectificationDet | ||||||
| 
 | 
 | ||||||
|      } |      } | ||||||
| 
 | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|      String acceptedPlanType="0"; |      String acceptedPlanType="0"; | ||||||
|      List<String> jiHuaImages =[]; |      List<String> jiHuaImages =[]; | ||||||
|      // 是否有整改计划 |      // 是否有整改计划 | ||||||
|  | @ -562,7 +564,9 @@ class _PendingRectificationDetailPageState extends State<PendingRectificationDet | ||||||
|        } |        } | ||||||
|      } |      } | ||||||
| 
 | 
 | ||||||
| 
 |       setState(() { | ||||||
|  |         LoadingDialogHelper.show(context); | ||||||
|  |       }); | ||||||
| 
 | 
 | ||||||
|      List<DepartmentEntry> departments = dannerRepairKey.currentState!.departments; |      List<DepartmentEntry> departments = dannerRepairKey.currentState!.departments; | ||||||
|      bool departmentsAllInput=true; |      bool departmentsAllInput=true; | ||||||
|  | @ -581,11 +585,17 @@ class _PendingRectificationDetailPageState extends State<PendingRectificationDet | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|      if(!departmentsAllInput){ |      if(!departmentsAllInput){ | ||||||
|  |        setState(() { | ||||||
|  |          LoadingDialogHelper.hide(context); | ||||||
|  |        }); | ||||||
|        ToastUtil.showNormal(context, "请添加验收部门负责人"); |        ToastUtil.showNormal(context, "请添加验收部门负责人"); | ||||||
|        return; |        return; | ||||||
|      } |      } | ||||||
| 
 | 
 | ||||||
|      if(departmentsSameMan){ |      if(departmentsSameMan){ | ||||||
|  |        setState(() { | ||||||
|  |          LoadingDialogHelper.hide(context); | ||||||
|  |        }); | ||||||
|        ToastUtil.showNormal(context, "不能选择重复的验收部门负责人"); |        ToastUtil.showNormal(context, "不能选择重复的验收部门负责人"); | ||||||
|        return; |        return; | ||||||
|      } |      } | ||||||
|  | @ -625,9 +635,11 @@ class _PendingRectificationDetailPageState extends State<PendingRectificationDet | ||||||
|         }); |         }); | ||||||
| 
 | 
 | ||||||
|       }else{ |       }else{ | ||||||
|  |         LoadingDialogHelper.hide(context); | ||||||
|         ToastUtil.showNormal(context, "加载数据失败"); |         ToastUtil.showNormal(context, "加载数据失败"); | ||||||
|       } |       } | ||||||
|     } catch (e) { |     } catch (e) { | ||||||
|  |       LoadingDialogHelper.hide(context); | ||||||
|       // 出错时可以 Toast 或者在页面上显示错误状态 |       // 出错时可以 Toast 或者在页面上显示错误状态 | ||||||
|       print('加载数据失败:$e'); |       print('加载数据失败:$e'); | ||||||
|     } |     } | ||||||
|  | @ -635,7 +647,7 @@ class _PendingRectificationDetailPageState extends State<PendingRectificationDet | ||||||
| 
 | 
 | ||||||
|   Future<void> _rectificationSubmission() async { |   Future<void> _rectificationSubmission() async { | ||||||
|     try { |     try { | ||||||
| 
 |         LoadingDialogHelper.show(context); | ||||||
|       final result = await ApiService.rectificationSubmission(pd["HIDDEN_ID"],buMenId,renYuanId); |       final result = await ApiService.rectificationSubmission(pd["HIDDEN_ID"],buMenId,renYuanId); | ||||||
|       if (result['result'] == 'success') { |       if (result['result'] == 'success') { | ||||||
|         setState(() { |         setState(() { | ||||||
|  | @ -646,9 +658,11 @@ class _PendingRectificationDetailPageState extends State<PendingRectificationDet | ||||||
|         }); |         }); | ||||||
| 
 | 
 | ||||||
|       }else{ |       }else{ | ||||||
|  |         LoadingDialogHelper.hide(context); | ||||||
|         ToastUtil.showNormal(context, "加载数据失败"); |         ToastUtil.showNormal(context, "加载数据失败"); | ||||||
|       } |       } | ||||||
|     } catch (e) { |     } catch (e) { | ||||||
|  |       LoadingDialogHelper.hide(context); | ||||||
|       // 出错时可以 Toast 或者在页面上显示错误状态 |       // 出错时可以 Toast 或者在页面上显示错误状态 | ||||||
|       print('加载数据失败:$e'); |       print('加载数据失败:$e'); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  | @ -0,0 +1,278 @@ | ||||||
|  | import 'package:flutter/material.dart'; | ||||||
|  | import 'package:http/http.dart' as http; | ||||||
|  | import 'package:qhd_prevention/customWidget/search_bar_widget.dart'; | ||||||
|  | import 'dart:convert'; | ||||||
|  | import 'dart:math' as math; | ||||||
|  | 
 | ||||||
|  | import 'package:qhd_prevention/http/ApiService.dart'; | ||||||
|  | import 'package:qhd_prevention/pages/my_appbar.dart'; | ||||||
|  | import 'package:qhd_prevention/pages/notif/notif_detail_page.dart'; | ||||||
|  | import 'package:qhd_prevention/tools/tools.dart'; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | class SafetyMeetingListPage extends StatefulWidget { | ||||||
|  |   const SafetyMeetingListPage({Key? key}) : super(key: key); | ||||||
|  | 
 | ||||||
|  |   @override | ||||||
|  |   State<SafetyMeetingListPage> createState() => _SafetyMeetingListPageState(); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | class _SafetyMeetingListPageState extends State<SafetyMeetingListPage> | ||||||
|  |     with SingleTickerProviderStateMixin{ | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   final TextEditingController searchController = TextEditingController(); | ||||||
|  |   late List<dynamic> _list = []; | ||||||
|  |   late TabController _tabController= TabController(length: 2, vsync: this); | ||||||
|  |   int _selectedTab = 0; | ||||||
|  |   int pageNum = 1; | ||||||
|  | 
 | ||||||
|  |   // 模拟数据 | ||||||
|  |   final List<Map<String, dynamic>> _notifications = List.generate(10, (i) { | ||||||
|  |     bool read = i % 3 == 0; | ||||||
|  |     return { | ||||||
|  |       'title': '测试数据标题标题 ${i + 1}', | ||||||
|  |       'time': '2025-06-${10 + i} 12:3${i}', | ||||||
|  |       'read': read, | ||||||
|  |     }; | ||||||
|  |   }); | ||||||
|  | 
 | ||||||
|  |   @override | ||||||
|  |   void initState() { | ||||||
|  |     super.initState(); | ||||||
|  |     // _tabController = TabController(length: 2, vsync: this); | ||||||
|  |     _tabController.addListener(() { | ||||||
|  |       // if (!_tabController.indexIsChanging) { | ||||||
|  |       //   setState(() => _selectedTab = _tabController.index); | ||||||
|  |       // } | ||||||
|  | 
 | ||||||
|  |       if (_tabController.indexIsChanging) { | ||||||
|  |         setState(() => _selectedTab = _tabController.index); | ||||||
|  |         print('切换到标签:${_tabController.index}'); | ||||||
|  |         reRefreshData(); | ||||||
|  |       } | ||||||
|  | 
 | ||||||
|  |     }); | ||||||
|  | 
 | ||||||
|  |     _getNotifList(""); | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   void reRefreshData(){ | ||||||
|  |     pageNum=1; | ||||||
|  |     _list.clear(); | ||||||
|  |     searchController.text=""; | ||||||
|  |     if(0==_selectedTab){ | ||||||
|  |       _getNotifList(""); | ||||||
|  |     }else{ | ||||||
|  |       _getNotifEnterprise(""); | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   Future<void> _getNotifList(String keyWord) async { | ||||||
|  |     // LoadingDialogHelper.show(context); | ||||||
|  |     try { | ||||||
|  |       final result = await ApiService.getNotifList("-1", pageNum.toString(),keyWord); | ||||||
|  |       if (result['result'] == 'success') { | ||||||
|  |         final List<dynamic> newList = result['varList'] ?? []; | ||||||
|  |         setState(() { | ||||||
|  |           _list.addAll(newList); | ||||||
|  |         }); | ||||||
|  |       } | ||||||
|  |     } catch (e) { | ||||||
|  |       print('加载出错: $e'); | ||||||
|  |     } finally { | ||||||
|  |       LoadingDialogHelper.hide(context); | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   Future<void> _getNotifEnterprise(String keyWord) async { | ||||||
|  |     // LoadingDialogHelper.show(context); | ||||||
|  |     try { | ||||||
|  |       final result = await ApiService.getNotifEnterprise("-1", pageNum.toString(),keyWord); | ||||||
|  |       if (result['result'] == 'success') { | ||||||
|  |         final List<dynamic> newList = result['varList'] ?? []; | ||||||
|  |         setState(() { | ||||||
|  |           _list.addAll(newList); | ||||||
|  |         }); | ||||||
|  |       } | ||||||
|  |     } catch (e) { | ||||||
|  |       print('加载出错: $e'); | ||||||
|  |     } finally { | ||||||
|  |       LoadingDialogHelper.hide(context); | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   Future<void> _deleteNotif(String id) async { | ||||||
|  |     // LoadingDialogHelper.show(context); | ||||||
|  |     try { | ||||||
|  |       final result = await ApiService.deleteNotif(id); | ||||||
|  |       if (result['result'] == 'success') { | ||||||
|  |         setState(() { | ||||||
|  |           reRefreshData(); | ||||||
|  | 
 | ||||||
|  |         }); | ||||||
|  |       } | ||||||
|  |     } catch (e) { | ||||||
|  |       print('加载出错: $e'); | ||||||
|  |     } finally { | ||||||
|  |       LoadingDialogHelper.hide(context); | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   @override | ||||||
|  |   void dispose() { | ||||||
|  |     _tabController.dispose(); | ||||||
|  |     super.dispose(); | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   @override | ||||||
|  |   Widget build(BuildContext context) { | ||||||
|  |     return Scaffold( | ||||||
|  |       appBar: MyAppbar(title: "安全例会"), | ||||||
|  |       body: | ||||||
|  |       GestureDetector( | ||||||
|  |         onTap: () { | ||||||
|  |           FocusScope.of(context).unfocus(); // 收起键盘 | ||||||
|  |         }, | ||||||
|  |         behavior: HitTestBehavior.opaque, | ||||||
|  |         child: Scaffold( | ||||||
|  |           body: SafeArea( | ||||||
|  |             child: Column( | ||||||
|  |               children: [ | ||||||
|  |                 // Tab bar | ||||||
|  |                 TabBar( | ||||||
|  |                   controller: _tabController, | ||||||
|  |                   labelStyle: TextStyle(fontSize: 16), | ||||||
|  |                   indicator: UnderlineTabIndicator( | ||||||
|  |                     borderSide: BorderSide(width: 3.0, color: Colors.blue), | ||||||
|  |                     insets: EdgeInsets.symmetric(horizontal: 100.0), | ||||||
|  |                   ), | ||||||
|  |                   labelColor: Colors.blue, | ||||||
|  |                   unselectedLabelColor: Colors.grey, | ||||||
|  |                   tabs: const [Tab(text: '待反馈'), Tab(text: '已反馈')], | ||||||
|  |                 ), | ||||||
|  | 
 | ||||||
|  |                 // Search bar | ||||||
|  |                 // List | ||||||
|  |                 Expanded( | ||||||
|  |                   child: | ||||||
|  |                   _list.isEmpty | ||||||
|  |                       ? NoDataWidget.show() | ||||||
|  |                       : ListView.builder( | ||||||
|  |                     itemCount: _list.length, | ||||||
|  |                     itemBuilder: (context, index) { | ||||||
|  |                       return _itemCell(_list[index]); | ||||||
|  |                     }, | ||||||
|  |                   ), | ||||||
|  |                 ), | ||||||
|  |               ], | ||||||
|  |             ), | ||||||
|  |           ), | ||||||
|  |         ), | ||||||
|  |       ), | ||||||
|  |     ); | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   Widget _itemCell(final item) { | ||||||
|  |     return Column( | ||||||
|  |       children: [ | ||||||
|  |         ListTile( | ||||||
|  |           onTap: () { | ||||||
|  |             Navigator.push( | ||||||
|  |               context, | ||||||
|  |               MaterialPageRoute( | ||||||
|  |                 builder: (context) => NotifDetailPage( | ||||||
|  |                   item,_selectedTab, | ||||||
|  |                   onClose: (result) { | ||||||
|  |                     print('详情页面已关闭,返回结果: $result'); | ||||||
|  |                     reRefreshData(); | ||||||
|  |                   }, | ||||||
|  |                 ), | ||||||
|  |               ), | ||||||
|  |             ); | ||||||
|  | 
 | ||||||
|  |             // pushPage(NotifDetailPage(item,_selectedTab), context); | ||||||
|  |           }, | ||||||
|  |           contentPadding: const EdgeInsets.symmetric( | ||||||
|  |             horizontal: 16, | ||||||
|  |             vertical: 10, | ||||||
|  |           ), | ||||||
|  |           title: Padding( | ||||||
|  |             padding: const EdgeInsets.only(bottom: 20), // 减小底部间距 | ||||||
|  |             child: Text(item['SYNOPSIS'], style: const TextStyle(fontSize: 14)), | ||||||
|  |           ), | ||||||
|  | 
 | ||||||
|  |           subtitle: Text(item['CREATTIME'], style: TextStyle(fontSize: 13)), | ||||||
|  | 
 | ||||||
|  |           trailing: Container( | ||||||
|  |             constraints: const BoxConstraints(minHeight: 100), // 确保最小高度 | ||||||
|  |             child: Column( | ||||||
|  |               mainAxisAlignment: MainAxisAlignment.center, | ||||||
|  |               mainAxisSize: MainAxisSize.min, // 关键修改:使用最小尺寸 | ||||||
|  |               crossAxisAlignment: CrossAxisAlignment.end, | ||||||
|  |               children: [ | ||||||
|  |                 if (0 != _selectedTab) | ||||||
|  |                   Text( | ||||||
|  |                     item['TYPE'] == 1 ? '已读' : '未读', | ||||||
|  |                     style: TextStyle( | ||||||
|  |                       fontSize: 12, // 稍微减小字体大小 | ||||||
|  |                       color: item['TYPE'] == 1 ? Colors.grey : Colors.red, | ||||||
|  |                     ), | ||||||
|  |                   ), | ||||||
|  |                 SizedBox(height: 15), | ||||||
|  | 
 | ||||||
|  |                 if (0 != _selectedTab && item['TYPE'] == 1) | ||||||
|  |                   SizedBox( | ||||||
|  |                     height: 24, // 固定按钮高度 | ||||||
|  |                     child: TextButton( | ||||||
|  |                       onPressed: () async{ | ||||||
|  |                         // 显示确认对话框 | ||||||
|  |                         bool? confirm = await showDialog( | ||||||
|  |                           context: context, | ||||||
|  |                           builder: (context) => AlertDialog( | ||||||
|  |                             title: Text("确认删除"), | ||||||
|  |                             content: Text("确定要删除这条通知吗?"), | ||||||
|  |                             actions: [ | ||||||
|  |                               TextButton( | ||||||
|  |                                 onPressed: () => Navigator.pop(context, false), | ||||||
|  |                                 // onPressed: () => Navigator.pop(context, false), | ||||||
|  |                                 child: Text("取消"), | ||||||
|  |                               ), | ||||||
|  |                               TextButton( | ||||||
|  |                                 onPressed: () => Navigator.pop(context, true), | ||||||
|  |                                 // onPressed: () => Navigator.pop(context, true), | ||||||
|  |                                 child: Text("确定", style: TextStyle(color: Colors.red)), | ||||||
|  |                               ), | ||||||
|  |                             ], | ||||||
|  |                           ), | ||||||
|  |                         ); | ||||||
|  |                         if (confirm == true) { | ||||||
|  |                           _deleteNotif(item['NOTICECORPUSERID_ID']); | ||||||
|  |                         } | ||||||
|  | 
 | ||||||
|  |                       }, | ||||||
|  |                       style: TextButton.styleFrom( | ||||||
|  |                         padding: const EdgeInsets.symmetric(horizontal: 12), | ||||||
|  |                         backgroundColor: Colors.red, | ||||||
|  |                         shape: RoundedRectangleBorder( | ||||||
|  |                           borderRadius: BorderRadius.circular(12), | ||||||
|  |                         ), | ||||||
|  |                       ), | ||||||
|  |                       child: Text( '删除', style: TextStyle(fontSize: 13, color: Colors.white),), | ||||||
|  | 
 | ||||||
|  |                     ), | ||||||
|  |                   ), | ||||||
|  |               ], | ||||||
|  |             ), | ||||||
|  |           ), | ||||||
|  |         ), | ||||||
|  |         Divider(height: 1, color: Colors.black12), | ||||||
|  |       ], | ||||||
|  |     ); | ||||||
|  |   } | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | @ -15,6 +15,7 @@ import 'package:qhd_prevention/pages/app/danger_wait_list_page.dart'; | ||||||
| import 'package:qhd_prevention/pages/home/work/laws_regulations_page.dart'; | import 'package:qhd_prevention/pages/home/work/laws_regulations_page.dart'; | ||||||
| import 'package:qhd_prevention/pages/home/workSet_page.dart'; | import 'package:qhd_prevention/pages/home/workSet_page.dart'; | ||||||
| 
 | 
 | ||||||
|  | import 'Safetymeeting/safety_meeting_list_page.dart'; | ||||||
| import 'hidden_roll_widget.dart'; | import 'hidden_roll_widget.dart'; | ||||||
| import '../../http/ApiService.dart'; | import '../../http/ApiService.dart'; | ||||||
| import '../../tools/tools.dart'; | import '../../tools/tools.dart'; | ||||||
|  | @ -337,6 +338,9 @@ class _HomePageState extends State<HomePage> { | ||||||
|                 case 7: |                 case 7: | ||||||
|                   pushPage(StudyGardenPage(), context); |                   pushPage(StudyGardenPage(), context); | ||||||
|                   break; |                   break; | ||||||
|  |                 case 10: | ||||||
|  |                   pushPage(SafetyMeetingListPage(), context); | ||||||
|  |                   break; | ||||||
|                 case 11: |                 case 11: | ||||||
|                   pushPage(HomeNfcListPage(), context); |                   pushPage(HomeNfcListPage(), context); | ||||||
|                   break; |                   break; | ||||||
|  |  | ||||||
|  | @ -90,17 +90,35 @@ class _DangerProjectPageState extends State<DangerProjectPage> { | ||||||
|         final List<dynamic> newList = result['varList'] ?? []; |         final List<dynamic> newList = result['varList'] ?? []; | ||||||
|         final List<dynamic> newListTwo = result['records'] ?? []; |         final List<dynamic> newListTwo = result['records'] ?? []; | ||||||
|         setState(() { |         setState(() { | ||||||
|  |           listDates.addAll(newList); | ||||||
| 
 | 
 | ||||||
|           if(newListTwo.isNotEmpty){ |           if(newListTwo.isNotEmpty&&newListTwo[0]["LISTCHECKITEM_ID"]!=null){ | ||||||
|             if( newListTwo[0]["LISTCHECKITEM_ID"]==listDates[0]["LISTCHECKITEM_ID"]){ |             if( newListTwo[0]["LISTCHECKITEM_ID"]==listDates[0]["LISTCHECKITEM_ID"]){ | ||||||
|               listDatesSelect.addAll(newListTwo); |               listDatesSelect.addAll(newListTwo); | ||||||
|             } |             } | ||||||
|           } |           } | ||||||
| 
 | 
 | ||||||
|           listDates.addAll(newList); | 
 | ||||||
|           // listDatesTwo.addAll(newListTwo); |           // listDatesTwo.addAll(newListTwo);option1 | ||||||
|           for(int i=0;i<listDates.length;i++){ |           for(int i=0;i<listDates.length;i++){ | ||||||
|  |             if(listDatesSelect.isNotEmpty){ | ||||||
|  |               switch(listDatesSelect[i]["ISNORMAL"] ){ | ||||||
|  |                 case 0: | ||||||
|  |                   (listDates[i] as Map<String, dynamic>)["REFERENCE_BASIS"] = "option1"; | ||||||
|  |                   break; | ||||||
|  |                 case 1: | ||||||
|  |                   (listDates[i] as Map<String, dynamic>)["REFERENCE_BASIS"] = "option2"; | ||||||
|  |                   break; | ||||||
|  |                 case 2: | ||||||
|  |                   (listDates[i] as Map<String, dynamic>)["REFERENCE_BASIS"] = "option3"; | ||||||
|  |                   break; | ||||||
|  |               } | ||||||
|  |               (listDates[i] as Map<String, dynamic>)["ids"] = listDatesSelect[i]["HIDDEN_ID"]; | ||||||
|  |               SessionService.instance.setUnqualifiedInspectionItemIDJson(listDatesSelect[i]["HIDDEN_ID"]); | ||||||
|  |             }else { | ||||||
|               (listDates[i] as Map<String, dynamic>)["ids"] = ""; |               (listDates[i] as Map<String, dynamic>)["ids"] = ""; | ||||||
|  |               (listDates[i] as Map<String, dynamic>)["REFERENCE_BASIS"] = ""; | ||||||
|  |             } | ||||||
|           } |           } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | @ -125,17 +143,36 @@ class _DangerProjectPageState extends State<DangerProjectPage> { | ||||||
|         final List<dynamic> newList = result['varList'] ?? []; |         final List<dynamic> newList = result['varList'] ?? []; | ||||||
|         final List<dynamic> newListTwo = result['records'] ?? []; |         final List<dynamic> newListTwo = result['records'] ?? []; | ||||||
|         setState(() { |         setState(() { | ||||||
|  |           listDates.addAll(newList); | ||||||
| 
 | 
 | ||||||
|           if(newListTwo.isNotEmpty){ |           if(newListTwo.isNotEmpty&&newListTwo[0]["CUSTOM_ID"]!=null){ | ||||||
|             if( newListTwo[0]["CUSTOM_ID"]==listDates[0]["CUSTOM_ID"]){ |             if( newListTwo[0]["CUSTOM_ID"]==listDates[0]["CUSTOM_ID"]){ | ||||||
|               listDatesSelect.addAll(newListTwo); |               listDatesSelect.addAll(newListTwo); | ||||||
|             } |             } | ||||||
|           } |           } | ||||||
| 
 | 
 | ||||||
|           listDates.addAll(newList); | 
 | ||||||
|           // listDatesTwo.addAll(newListTwo); |           // listDatesTwo.addAll(newListTwo); | ||||||
|           for(int i=0;i<listDates.length;i++){ |           for(int i=0;i<listDates.length;i++){ | ||||||
|  |             if(listDatesSelect.isNotEmpty){ | ||||||
|  |               switch(listDatesSelect[i]["ISNORMAL"] ){ | ||||||
|  |                 case 0: | ||||||
|  |                   (listDates[i] as Map<String, dynamic>)["REFERENCE_BASIS"] = "option1"; | ||||||
|  |                   break; | ||||||
|  |                 case 1: | ||||||
|  |                   (listDates[i] as Map<String, dynamic>)["REFERENCE_BASIS"] = "option2"; | ||||||
|  |                   break; | ||||||
|  |                 case 2: | ||||||
|  |                   (listDates[i] as Map<String, dynamic>)["REFERENCE_BASIS"] = "option3"; | ||||||
|  |                   break; | ||||||
|  | 
 | ||||||
|  |               } | ||||||
|  |               (listDates[i] as Map<String, dynamic>)["ids"] = listDatesSelect[i]["HIDDEN_ID"]; | ||||||
|  |               SessionService.instance.setUnqualifiedInspectionItemIDJson(listDatesSelect[i]["HIDDEN_ID"]); | ||||||
|  |             }else { | ||||||
|               (listDates[i] as Map<String, dynamic>)["ids"] = ""; |               (listDates[i] as Map<String, dynamic>)["ids"] = ""; | ||||||
|  |               (listDates[i] as Map<String, dynamic>)["REFERENCE_BASIS"] = ""; | ||||||
|  |             } | ||||||
|           } |           } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue