diff --git a/lib/customWidget/custom_alert_dialog.dart b/lib/customWidget/custom_alert_dialog.dart index 845aea0..ede9d6a 100644 --- a/lib/customWidget/custom_alert_dialog.dart +++ b/lib/customWidget/custom_alert_dialog.dart @@ -81,7 +81,7 @@ class CustomAlertDialog extends StatefulWidget { ); } - static Future showInput( + static Future showInput( BuildContext context, { required String title, String hintText = '', @@ -102,9 +102,11 @@ class CustomAlertDialog extends StatefulWidget { force: force, ), ); - return result ?? ''; + // 取消/点遮罩会得到 null;确认会得到 String(可能为空串) + return result; } + @override _CustomAlertDialogState createState() => _CustomAlertDialogState(); } diff --git a/lib/http/ApiService.dart b/lib/http/ApiService.dart index 9042314..9e4df8a 100644 --- a/lib/http/ApiService.dart +++ b/lib/http/ApiService.dart @@ -25,9 +25,9 @@ class ApiService { /// 登录及其他管理后台接口 // static const String basePath = "https://qaaqwh.qhdsafety.com/integrated_whb"; - // static const String basePath = "http://192.168.20.240:8500/integrated_whb";//测试服务器 + static const String basePath = "http://192.168.20.240:8500/integrated_whb";//测试服务器 // static const String basePath = "http://192.168.0.25:28199";//王轩服务器 - static const String basePath = "http://192.168.0.45:28199";//长久服务器 + // static const String basePath = "http://192.168.0.45:28199";//长久服务器 /// 图片文件服务 static const String baseImgPath = "https://file.zcloudchina.com/YTHFile"; diff --git a/lib/pages/home/tap/tabList/special_wrok/dangerous_options_page.dart b/lib/pages/home/tap/tabList/special_wrok/dangerous_options_page.dart index 7602476..93cc33c 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dangerous_options_page.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dangerous_options_page.dart @@ -1,6 +1,5 @@ -import 'dart:async'; import 'dart:io'; -import 'package:flutter/foundation.dart'; +import 'dart:ui'; import 'package:flutter/material.dart'; import 'package:intl/intl.dart'; import 'package:qhd_prevention/customWidget/toast_util.dart'; @@ -50,7 +49,6 @@ class SignImageData { @override String toString() => 'SignImageData(key:$key, filePath:$filePath, SIGNER_TIME:$SIGNER_TIME)'; } - class DangerousOptionsPage extends StatefulWidget { final int index; final int status; @@ -88,18 +86,17 @@ class _DangerousOptionsPageState extends State { status = widget.status; measures = widget.measures; imgList = List.from(widget.imgList); - signImgList = widget.signImgList.map((map) => SignImageData.fromJson(map)).toList(); + signImgList = + widget.signImgList.map((map) => SignImageData.fromJson(map)).toList(); } - /// 拍照或选图后的回调(上传) + /// 拍照或选图后的回调 Future _onImageAdded(String localPath) async { + // 上传到服务器 LoadingDialogHelper.show(); - + final res = await ApiService.uploadSaveFile(localPath); + LoadingDialogHelper.hide(); try { - // 给网络请求设置超时,避免长时间卡住 - final res = await ApiService.uploadSaveFile(localPath).timeout(const Duration(seconds: 30)); - LoadingDialogHelper.hide(); - if (res['result'] == 'success') { final url = res['FILE_PATH'] as String; setState(() { @@ -107,41 +104,25 @@ class _DangerousOptionsPageState extends State { }); } else { ToastUtil.showError(context, '上传失败,资源过大请重新选择'); - // 保持与原逻辑一致:清空并通知 setState(() { imgList = []; + MediaBus().emit(MediaEvent.clear(kAcceptVideoSectionKey)); }); - MediaBus().emit(MediaEvent.clear(kAcceptVideoSectionKey)); } - } on TimeoutException { - LoadingDialogHelper.hide(); - if (!mounted) return; - ToastUtil.showError(context, '上传超时,请检查网络后重试'); - } catch (e, st) { - LoadingDialogHelper.hide(); - debugPrint('_onImageAdded error: $e\n$st'); - if (!mounted) return; + } catch (_) { ToastUtil.showError(context, '上传失败,资源过大请重新选择'); setState(() { imgList = []; + MediaBus().emit(MediaEvent.clear(kAcceptVideoSectionKey)); }); - MediaBus().emit(MediaEvent.clear(kAcceptVideoSectionKey)); } } /// 删除图片处理:调用删除接口并更新列表 Future _onImageRemoved(ImageData item) async { - try { - if (item.serverPath != null && item.serverPath.isNotEmpty) { - // 不等待过久:加超时保护 - await ApiService.deleteSaveFile(item.serverPath!).timeout(const Duration(seconds: 15)); - } - } catch (e, st) { - debugPrint('_onImageRemoved: delete api error: $e\n$st'); - // 不阻塞删除流程:即使删除接口失败,也从本地 UI 中移除 + if (item.serverPath != null) { + await ApiService.deleteSaveFile(item.serverPath!); } - - if (!mounted) return; setState(() { imgList.remove(item); }); @@ -153,70 +134,53 @@ class _DangerousOptionsPageState extends State { return; } LoadingDialogHelper.show(); - try { - // 组织要上传的路径(以原逻辑为准) - List filePaths = signImgList.map((img) => img.filePath ?? '').toList(); - - // 保存文件 API,增加超时保护 - final result = await ApiService.saveDangerousOptionsFile(filePaths).timeout(const Duration(seconds: 30)); - - final List signList = result['FILE_PATH_LIST'] ?? []; - List> sineImageList = []; - for (SignImageData data in signImgList) { - for (Map img in signList) { - String imgName = 'file${data.key}'; - if (data.filePath != null && data.filePath!.contains('uploadFiles')) { - final idata = { - 'filePath': data.filePath, - 'SIGNER_TIME': data.SIGNER_TIME, - 'key': data.key, - }; - sineImageList.add(idata); - } - if (imgName == (img['key'] ?? '')) { - final idata = { - 'filePath': img['filePath'] ?? '', - 'SIGNER_TIME': data.SIGNER_TIME, - 'key': data.key, - }; - sineImageList.add(idata); - } + List filePaths = + signImgList.map((img) => img.filePath ?? '').toList(); + final result = await ApiService.saveDangerousOptionsFile(filePaths); + final List signList = result['FILE_PATH_LIST']; + List> sineImageList = []; + for (SignImageData data in signImgList) { + for (Map img in signList) { + String imgName = 'file${data.key}'; + if (data.filePath!.contains('uploadFiles')) { + final idata = { + 'filePath': data.filePath, + 'SIGNER_TIME': data.SIGNER_TIME, + 'key': data.key, + }; + sineImageList.add(idata); + } + if (imgName == img['key']) { + final idata = { + 'filePath': img['filePath'] ?? '', + 'SIGNER_TIME': data.SIGNER_TIME, + 'key': data.key, + }; + sineImageList.add(idata); } } - - if (!mounted) return; - setState(() => buttonLoading = true); // 保持原行为 - LoadingDialogHelper.hide(); - - if (!mounted) return; - Navigator.pop(context, { - 'imgList': imgList.map((e) => {'local': e.localPath, 'remote': e.serverPath}).toList(), - 'signImgList': sineImageList, - 'index': index, - 'status': status, - }); - } on TimeoutException { - LoadingDialogHelper.hide(); - if (!mounted) return; - ToastUtil.showError(context, '保存超时,请稍后重试'); - } catch (e, st) { - LoadingDialogHelper.hide(); - debugPrint('_submit error: $e\n$st'); - if (!mounted) return; - ToastUtil.showError(context, '提交失败,请重试'); } + setState(() => buttonLoading = true); + LoadingDialogHelper.hide(); + Navigator.pop(context, { + 'imgList': + imgList + .map((e) => {'local': e.localPath, 'remote': e.serverPath}) + .toList(), + 'signImgList': sineImageList, + 'index': index, + 'status': status, + }); } Future _sign() async { await NativeOrientation.setLandscape(); - final String? path = await Navigator.push( + final String path = await Navigator.push( context, MaterialPageRoute(builder: (c) => MineSignPage()), ); await NativeOrientation.setPortrait(); - - if (!mounted) return; - if (path != null && path.isNotEmpty) { + if (path != null) { final now = DateFormat('yyyy-MM-dd HH:mm').format(DateTime.now()); setState(() { final imageData = SignImageData( @@ -227,84 +191,15 @@ class _DangerousOptionsPageState extends State { signImgList.add(imageData); signTimes.add(now); }); + //FocusHelper.clearFocus(context); } } Widget _signListWidget() { - // 使用 ListView 或 Column 的时候,注意图片的解码在主线程可能造成阻塞。这里限制尺寸并使用 ResizeImage 去解码。 return Column( - children: signImgList.map((imgData) { + children: + signImgList.map((imgData) { final idx = signImgList.indexOf(imgData); - final rawPath = (imgData.filePath ?? '').toString(); - final isNetwork = rawPath.startsWith('http://') || rawPath.startsWith('https://'); - - // 目标尺寸(尽量与 UI 展示一致,避免解码过大) - const targetWidth = 460; // 约为显示宽度 * devicePixelRatio 的一个合理值 - const targetHeight = 300; - - Widget imageWidget; - if (rawPath.isEmpty) { - imageWidget = Container( - width: 230, - height: 150, - color: Colors.grey.shade200, - child: const Center(child: Icon(Icons.broken_image, size: 28, color: Colors.grey)), - ); - } else if (isNetwork) { - // 网络图片:加上 width/height 与 loadingBuilder,避免阻塞 - imageWidget = Image.network( - rawPath.startsWith('http') ? rawPath : ApiService.baseImgPath + rawPath, - width: 230, - height: 150, - fit: BoxFit.cover, - // 显示 loading 占位,避免白屏卡顿 - loadingBuilder: (context, child, loadingProgress) { - if (loadingProgress == null) return child; - return Container( - width: 230, - height: 150, - color: Colors.grey.shade200, - child: const Center(child: CircularProgressIndicator(strokeWidth: 2)), - ); - }, - errorBuilder: (_, __, ___) => Container( - width: 230, - height: 150, - color: Colors.grey.shade200, - child: const Center(child: Icon(Icons.broken_image)), - ), - ); - } else { - // 本地文件:使用 ResizeImage 包装 FileImage,按目标像素解码,避免解码超大图片堵主线程 - final file = File(rawPath); - if (file.existsSync()) { - imageWidget = Image( - image: ResizeImage( - FileImage(file), - // 这里给出一个合理的解码尺寸(可根据实际设备 pixel ratio 适当调整) - width: targetWidth, - height: targetHeight, - ), - width: 230, - height: 150, - fit: BoxFit.contain, - errorBuilder: (_, __, ___) => Container( - width: 230, - height: 150, - color: Colors.grey.shade200, - child: const Center(child: Icon(Icons.broken_image)), - ), - ); - } else { - imageWidget = Container( - width: 230, - height: 150, - color: Colors.grey.shade200, - child: const Center(child: Icon(Icons.broken_image)), - ); - } - } - return Column( children: [ const SizedBox(height: 10), @@ -318,9 +213,21 @@ class _DangerousOptionsPageState extends State { maxWidth: 230, maxHeight: 150, ), - child: imageWidget, + child: + (imgData.filePath ?? '').contains('uploadFiles') + ? Image.network( + '${ApiService.baseImgPath}${imgData.filePath}', + ) + : Image.file( + File(imgData.filePath ?? ''), + fit: BoxFit.contain, + ), + ), + onTap: + () => presentOpaque( + SingleImageViewer(imageUrl: imgData.filePath ?? ''), + context, ), - onTap: () => presentOpaque(SingleImageViewer(imageUrl: rawPath), context), ), Column( children: [ @@ -330,7 +237,6 @@ class _DangerousOptionsPageState extends State { padding: const EdgeInsets.symmetric(horizontal: 10), backgroundColor: Colors.red, onPressed: () { - if (!mounted) return; setState(() => signImgList.removeAt(idx)); }, ), @@ -352,19 +258,19 @@ class _DangerousOptionsPageState extends State { body: Padding( padding: const EdgeInsets.all(12.0), child: Container( - padding: const EdgeInsets.symmetric(horizontal: 10, vertical: 10), + padding: EdgeInsets.symmetric(horizontal: 10, vertical: 10), color: Colors.white, child: ListView( children: [ Table( border: TableBorder.all(color: Colors.grey.shade300), - columnWidths: const {0: FlexColumnWidth(3), 1: FlexColumnWidth(2)}, + columnWidths: {0: FlexColumnWidth(3), 1: FlexColumnWidth(2)}, children: [ TableRow( decoration: BoxDecoration(color: Colors.grey.shade200), children: [ Padding( - padding: const EdgeInsets.all(10), + padding: EdgeInsets.all(10), child: Center( child: Text( '主要安全措施', @@ -373,7 +279,7 @@ class _DangerousOptionsPageState extends State { ), ), Padding( - padding: const EdgeInsets.all(10), + padding: EdgeInsets.all(10), child: Center( child: Text( '操作', @@ -399,12 +305,12 @@ class _DangerousOptionsPageState extends State { RadioListTile( value: -1, groupValue: status, - title: const Text('不涉及'), + title: Text('不涉及'), contentPadding: const EdgeInsets.symmetric( vertical: 0, horizontal: 8.0, ), - visualDensity: const VisualDensity( + visualDensity: VisualDensity( vertical: -4, horizontal: 0, ), @@ -413,12 +319,12 @@ class _DangerousOptionsPageState extends State { RadioListTile( value: 1, groupValue: status, - title: const Text('涉及'), + title: Text('涉及'), contentPadding: const EdgeInsets.symmetric( vertical: 4.0, horizontal: 8.0, ), - visualDensity: const VisualDensity( + visualDensity: VisualDensity( vertical: -4, horizontal: 0, ), @@ -437,16 +343,15 @@ class _DangerousOptionsPageState extends State { maxCount: 2, mediaType: MediaType.image, initialMediaPaths: - imgList.map((e) => '${ApiService.baseImgPath}${e.serverPath}').toList(), + imgList + .map((e) => '${ApiService.baseImgPath}${e.serverPath}') + .toList(), onChanged: (paths) {}, onMediaAdded: _onImageAdded, onMediaRemoved: (path) { - try { - final item = imgList.firstWhere((e) => path.contains(e.localPath)); - _onImageRemoved(item); - } catch (e) { - debugPrint('onMediaRemoved: find item error: $e'); - } + print(path); + final item = imgList.firstWhere((e) => path.contains(e.localPath) ); + _onImageRemoved(item); }, onAiIdentify: () {}, ), @@ -454,7 +359,7 @@ class _DangerousOptionsPageState extends State { Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - const Text('签字:', style: TextStyle(fontSize: 16)), + Text('签字:', style: TextStyle(fontSize: 16)), CustomButton( text: '新增手写签字', height: 36, @@ -476,4 +381,4 @@ class _DangerousOptionsPageState extends State { ), ); } -} +} \ No newline at end of file diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/aqcs_work_detail/hotwork_safe_func_sure.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/aqcs_work_detail/hotwork_safe_func_sure.dart index f4887e0..7b5fad3 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/aqcs_work_detail/hotwork_safe_func_sure.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/aqcs_work_detail/hotwork_safe_func_sure.dart @@ -192,7 +192,7 @@ class _HotworkSafeFuncSureState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (!_validateAndProceed(context)) { @@ -210,10 +210,17 @@ class _HotworkSafeFuncSureState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; // 提交参数 diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/aqgl_work_detail/hotwork_aqgl_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/aqgl_work_detail/hotwork_aqgl_detail.dart index 482b574..887f939 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/aqgl_work_detail/hotwork_aqgl_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/aqgl_work_detail/hotwork_aqgl_detail.dart @@ -129,7 +129,7 @@ class _HotworkAqglDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); @@ -146,10 +146,17 @@ class _HotworkAqglDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/aqjd_work_detail/hotwork_aqjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/aqjd_work_detail/hotwork_aqjd_detail.dart index c4812f3..04b78c0 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/aqjd_work_detail/hotwork_aqjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/aqjd_work_detail/hotwork_aqjd_detail.dart @@ -176,7 +176,7 @@ class _HotworkAqjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -187,10 +187,17 @@ class _HotworkAqjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 抽取所有非空的 serverPath 并拼成逗号分隔的字符串 final serverPathString = imgList diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/dbbz_work_detail/hotwork_dbbz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/dbbz_work_detail/hotwork_dbbz_detail.dart index 9c02ed4..593d3ef 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/dbbz_work_detail/hotwork_dbbz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/dbbz_work_detail/hotwork_dbbz_detail.dart @@ -131,7 +131,7 @@ class _HotworkDbbzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); @@ -148,10 +148,17 @@ class _HotworkDbbzDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/dhsp_work_detail/hotwork_dhsp_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/dhsp_work_detail/hotwork_dhsp_detail.dart index 349ce69..930eb87 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/dhsp_work_detail/hotwork_dhsp_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/dhsp_work_detail/hotwork_dhsp_detail.dart @@ -129,10 +129,9 @@ class _HotworkDhspDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); - if (status == '1') { if (DESCR.isEmpty) { ToastUtil.showNormal(context, '请输入负责人意见'); @@ -144,8 +143,15 @@ class _HotworkDhspDetailState extends State { title: '作废原因', hintText: '请输入作废原因', cancelText: '取消', - confirmText: '确定' + confirmText: '确定', ); + // 用户取消(或点遮罩、返回键) + if (reasonText == null) { + // 取消时什么也不做,不提示 + return; + } + + // 用户点击确认但没填内容 if (reasonText.isEmpty) { ToastUtil.showNormal(context, '请填写作废原因'); return; @@ -182,7 +188,7 @@ class _HotworkDhspDetailState extends State { if (result['result'] == 'success') { ToastUtil.showSuccess(context, '保存成功'); Navigator.of(context).pop(true); - }else{ + } else { ToastUtil.showNormal(context, '操作失败:${result['msg'] ?? '未知错误'}'); } } catch (e) { diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/jhr_work_detail/hotwork_jhr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/jhr_work_detail/hotwork_jhr_detail.dart index 17dd2d5..43dfd4e 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/jhr_work_detail/hotwork_jhr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/jhr_work_detail/hotwork_jhr_detail.dart @@ -128,7 +128,7 @@ class _HotworkJhrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -139,10 +139,17 @@ class _HotworkJhrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/jsjd_work_detail/hotwork_jsjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/jsjd_work_detail/hotwork_jsjd_detail.dart index 71c2da1..faaa533 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/jsjd_work_detail/hotwork_jsjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/jsjd_work_detail/hotwork_jsjd_detail.dart @@ -129,7 +129,7 @@ class _HotworkJsjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -140,10 +140,17 @@ class _HotworkJsjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/jszy_work_detail/hotwork_jszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/jszy_work_detail/hotwork_jszy_detail.dart index ff76ba4..f77a22f 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/jszy_work_detail/hotwork_jszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/jszy_work_detail/hotwork_jszy_detail.dart @@ -89,7 +89,7 @@ class _HotworkJszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (endTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业结束时间'); @@ -106,10 +106,17 @@ class _HotworkJszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/kszy_work_detail/hotwork_kszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/kszy_work_detail/hotwork_kszy_detail.dart index 7e5fdf4..32491f2 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/kszy_work_detail/hotwork_kszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/kszy_work_detail/hotwork_kszy_detail.dart @@ -54,7 +54,7 @@ class _HotworkKszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (startTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业开始时间'); @@ -77,10 +77,17 @@ class _HotworkKszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/szaq_work_detail/hotwork_set_safe_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/szaq_work_detail/hotwork_set_safe_detail.dart index 1f62d28..06209c1 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/szaq_work_detail/hotwork_set_safe_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/szaq_work_detail/hotwork_set_safe_detail.dart @@ -164,7 +164,7 @@ class _HotworkSetSafeDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { List> signers = []; - String reasonText = ''; + String? reasonText = ''; if (status == '1') { int index = 0; @@ -203,10 +203,17 @@ class _HotworkSetSafeDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/szdw_work_detail/hotwork_szdw_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/szdw_work_detail/hotwork_szdw_detail.dart index b3fc4e3..dac5498 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/szdw_work_detail/hotwork_szdw_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/szdw_work_detail/hotwork_szdw_detail.dart @@ -129,7 +129,7 @@ class _HotworkSzdwDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _HotworkSzdwDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/ysgd_work_detail/hotwork_ysgd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/ysgd_work_detail/hotwork_ysgd_detail.dart index b7ed08b..b5a44aa 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/ysgd_work_detail/hotwork_ysgd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/ysgd_work_detail/hotwork_ysgd_detail.dart @@ -185,7 +185,7 @@ class _HotworkYsgdDetailState extends State { } String DESCR = _contentController.text.trim(); - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (DESCR.isEmpty) { ToastUtil.showNormal(context, '请输入负责人意见'); @@ -215,10 +215,17 @@ class _HotworkYsgdDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final serverPathString = imgList .map((e) => e.serverPath) diff --git a/lib/pages/home/tap/tabList/special_wrok/dh_work/zyfz_work_detail/hotwork_zyfz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dh_work/zyfz_work_detail/hotwork_zyfz_detail.dart index 3edcfd6..df733fc 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dh_work/zyfz_work_detail/hotwork_zyfz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dh_work/zyfz_work_detail/hotwork_zyfz_detail.dart @@ -129,7 +129,7 @@ class _HotworkZyfzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _HotworkZyfzDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/aqcs_work_detail/cutroad_safe_func_sure.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/aqcs_work_detail/cutroad_safe_func_sure.dart index 81c52b0..c06baf1 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/aqcs_work_detail/cutroad_safe_func_sure.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/aqcs_work_detail/cutroad_safe_func_sure.dart @@ -268,7 +268,7 @@ class _CutroadSafeFuncSureState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (!_validateAndProceed(context)) { @@ -286,10 +286,17 @@ class _CutroadSafeFuncSureState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; // 提交参数 diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/aqjd_work_detail/cutroad_aqjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/aqjd_work_detail/cutroad_aqjd_detail.dart index 4c49dc2..4aadeaf 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/aqjd_work_detail/cutroad_aqjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/aqjd_work_detail/cutroad_aqjd_detail.dart @@ -175,7 +175,7 @@ class _CutroadAqjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -186,10 +186,17 @@ class _CutroadAqjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 抽取所有非空的 serverPath 并拼成逗号分隔的字符串 final serverPathString = imgList diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/dl_work_detai/cutroad_apply_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/dl_work_detai/cutroad_apply_detail.dart index 199c735..0fa19ab 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/dl_work_detai/cutroad_apply_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/dl_work_detai/cutroad_apply_detail.dart @@ -359,9 +359,10 @@ class _CutroadApplyDetailState extends State { pd['ACTION_USER'] = SessionService.instance.username; pd['APPLY_STATUS'] = status; pd['SPECIAL_WORK'] = FormUtils.hasValue(pd, 'SPECIAL_WORK') ? pd['SPECIAL_WORK'] : '无'; + pd['TASK_ID'] = taskId; + if (msg == 'add') { pd['STEP_ID'] = status; - pd['TASK_ID'] = taskId; pd['CUTROAD_ID'] = widget.CUTROAD_ID; pd['APPLY_DEPARTMENT_ID'] = SessionService.instance.deptId; pd['APPLY_DEPARTMENT_NAME'] = diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/jhr_work_detail/cutroad_jhr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/jhr_work_detail/cutroad_jhr_detail.dart index 3f37bcd..2d5c1bd 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/jhr_work_detail/cutroad_jhr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/jhr_work_detail/cutroad_jhr_detail.dart @@ -130,7 +130,7 @@ class _CutroadJhrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -141,10 +141,17 @@ class _CutroadJhrDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/jsjd_work_detail/cutroad_jsjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/jsjd_work_detail/cutroad_jsjd_detail.dart index 3a5a25f..bdf2fe0 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/jsjd_work_detail/cutroad_jsjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/jsjd_work_detail/cutroad_jsjd_detail.dart @@ -129,7 +129,7 @@ setState(() { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -140,10 +140,17 @@ setState(() { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/jszy_work_detail/cutroad_jszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/jszy_work_detail/cutroad_jszy_detail.dart index 95ffc91..72f4ccc 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/jszy_work_detail/cutroad_jszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/jszy_work_detail/cutroad_jszy_detail.dart @@ -147,7 +147,7 @@ class _CutroadJszyDetailState extends State { // ToastUtil.showNormal(context, '请签字'); // return; // } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (endTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业结束时间'); @@ -164,10 +164,17 @@ class _CutroadJszyDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/kszy_work_detail/cutroad_kszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/kszy_work_detail/cutroad_kszy_detail.dart index 94cf683..2b71ab9 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/kszy_work_detail/cutroad_kszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/kszy_work_detail/cutroad_kszy_detail.dart @@ -55,7 +55,7 @@ class _CutroadKszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (startTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业开始时间'); @@ -69,10 +69,17 @@ class _CutroadKszyDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/shbm_work_detail/cutroad_shbm_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/shbm_work_detail/cutroad_shbm_detail.dart index 790b2ec..62c1cf8 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/shbm_work_detail/cutroad_shbm_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/shbm_work_detail/cutroad_shbm_detail.dart @@ -128,7 +128,7 @@ class _CutroadShbmDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (DESCR.isEmpty) { @@ -144,10 +144,17 @@ class _CutroadShbmDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/spbm_work_detail/cutroad_spbm_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/spbm_work_detail/cutroad_spbm_detail.dart index 91d59c7..b665430 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/spbm_work_detail/cutroad_spbm_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/spbm_work_detail/cutroad_spbm_detail.dart @@ -128,7 +128,7 @@ class _CutroadSpbmDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (DESCR.isEmpty) { @@ -144,10 +144,17 @@ class _CutroadSpbmDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/szaq_work_detail/cutroad_set_safe_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/szaq_work_detail/cutroad_set_safe_detail.dart index 6d14fec..8be95d9 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/szaq_work_detail/cutroad_set_safe_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/szaq_work_detail/cutroad_set_safe_detail.dart @@ -299,7 +299,7 @@ class _CutroadSetSafeDetailState extends State { Future _submit(String status) async { List> signers = []; - String reasonText = ''; + String? reasonText = ''; if (status == '1') { int index = 0; @@ -338,10 +338,17 @@ class _CutroadSetSafeDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/szdw_work_detail/cutroad_szdw_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/szdw_work_detail/cutroad_szdw_detail.dart index 1c4f479..ff75013 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/szdw_work_detail/cutroad_szdw_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/szdw_work_detail/cutroad_szdw_detail.dart @@ -129,7 +129,7 @@ class _CutroadSzdwDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (DESCR.isEmpty) { @@ -145,10 +145,17 @@ class _CutroadSzdwDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/ysgd_work_detail/cutroad_ysgd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/ysgd_work_detail/cutroad_ysgd_detail.dart index 8dbecb2..6c31b1b 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/ysgd_work_detail/cutroad_ysgd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/ysgd_work_detail/cutroad_ysgd_detail.dart @@ -188,7 +188,7 @@ class _CutroadYsgdDetailState extends State { ToastUtil.showNormal(context, '请输入负责人意见'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (startTime.isEmpty) { ToastUtil.showNormal(context, '请选择验收时间'); @@ -214,10 +214,17 @@ class _CutroadYsgdDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final serverPathString = imgList .map((e) => e.serverPath) diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/zyfz_work_detail/cutroad_zyfz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/zyfz_work_detail/cutroad_zyfz_detail.dart index 3457690..a623d85 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/zyfz_work_detail/cutroad_zyfz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/zyfz_work_detail/cutroad_zyfz_detail.dart @@ -129,7 +129,7 @@ class _CutroadZyfzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (DESCR.isEmpty) { @@ -145,10 +145,17 @@ class _CutroadZyfzDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dl_work/zyr_work_detail/cutroad_zyr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dl_work/zyr_work_detail/cutroad_zyr_detail.dart index 51b0d9c..75cdfd9 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dl_work/zyr_work_detail/cutroad_zyr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dl_work/zyr_work_detail/cutroad_zyr_detail.dart @@ -141,7 +141,7 @@ class _CutroadZyrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (_contentController.text.trim().isEmpty) { @@ -160,10 +160,17 @@ class _CutroadZyrDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final serverPathString = imgList .map((e) => e.serverPath) diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/aqcs_work_detail/breakground_safe_func_sure.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/aqcs_work_detail/breakground_safe_func_sure.dart index a3d2595..2d8290c 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/aqcs_work_detail/breakground_safe_func_sure.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/aqcs_work_detail/breakground_safe_func_sure.dart @@ -192,7 +192,7 @@ class _BreakgroundSafeFuncSureState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (!_validateAndProceed(context)) { @@ -210,10 +210,17 @@ class _BreakgroundSafeFuncSureState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; // 提交参数 diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/aqjd_work_detail/breakground_aqjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/aqjd_work_detail/breakground_aqjd_detail.dart index 639e112..e330a75 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/aqjd_work_detail/breakground_aqjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/aqjd_work_detail/breakground_aqjd_detail.dart @@ -175,7 +175,7 @@ class _BreakgroundAqjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -186,10 +186,17 @@ class _BreakgroundAqjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 抽取所有非空的 serverPath 并拼成逗号分隔的字符串 final serverPathString = imgList diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/dt_work_detai/breakground_apply_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/dt_work_detai/breakground_apply_detail.dart index 807f77a..af14bd1 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/dt_work_detai/breakground_apply_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/dt_work_detai/breakground_apply_detail.dart @@ -497,9 +497,10 @@ class _BreakgroundApplyDetailState extends State { pd['ACTION_USER'] = SessionService.instance.username; pd['APPLY_STATUS'] = status; pd['SPECIAL_WORK'] = FormUtils.hasValue(pd, 'SPECIAL_WORK') ? pd['SPECIAL_WORK'] : '无'; + pd['TASK_ID'] = taskId; + // 提交参数 if (msg == 'add') { - pd['TASK_ID'] = taskId; pd['BREAKGROUND_ID'] = widget.BREAKGROUND_ID; pd['APPLY_DEPARTMENT_ID'] = SessionService.instance.deptId; pd['APPLY_DEPARTMENT_NAME'] = diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/dzzh_work_detail/breakground_dzzh_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/dzzh_work_detail/breakground_dzzh_detail.dart index 63a4b4b..991703d 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/dzzh_work_detail/breakground_dzzh_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/dzzh_work_detail/breakground_dzzh_detail.dart @@ -129,7 +129,7 @@ class _BreakgroundDzzhDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { if (DESCR.isEmpty) { @@ -144,10 +144,17 @@ class _BreakgroundDzzhDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/jhr_work_detail/breakground_jhr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/jhr_work_detail/breakground_jhr_detail.dart index ca540e0..2d3d34f 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/jhr_work_detail/breakground_jhr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/jhr_work_detail/breakground_jhr_detail.dart @@ -130,7 +130,7 @@ class _BreakgroundJhrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -141,10 +141,17 @@ class _BreakgroundJhrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/jsjd_work_detail/breakground_jsjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/jsjd_work_detail/breakground_jsjd_detail.dart index 60dd3d6..78a770f 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/jsjd_work_detail/breakground_jsjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/jsjd_work_detail/breakground_jsjd_detail.dart @@ -129,7 +129,7 @@ class _BreakgroundJsjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -140,10 +140,17 @@ class _BreakgroundJsjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/jszy_work_detail/breakground_jszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/jszy_work_detail/breakground_jszy_detail.dart index 3e861ec..318245f 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/jszy_work_detail/breakground_jszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/jszy_work_detail/breakground_jszy_detail.dart @@ -69,7 +69,7 @@ class _BreakgroundJszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (endTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业结束时间'); @@ -86,10 +86,17 @@ class _BreakgroundJszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/kszy_work_detail/breakground_kszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/kszy_work_detail/breakground_kszy_detail.dart index 5eba923..b3c5697 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/kszy_work_detail/breakground_kszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/kszy_work_detail/breakground_kszy_detail.dart @@ -55,7 +55,7 @@ class _BreakgroundKszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (startTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业开始时间'); @@ -69,10 +69,17 @@ class _BreakgroundKszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/shbm_work_detail/breakground_shbm_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/shbm_work_detail/breakground_shbm_detail.dart index ac9b8a9..1b074db 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/shbm_work_detail/breakground_shbm_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/shbm_work_detail/breakground_shbm_detail.dart @@ -128,7 +128,7 @@ class _BreakgroundShbmDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { if (DESCR.isEmpty) { @@ -143,10 +143,17 @@ class _BreakgroundShbmDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/spbm_work_detail/breakground_spbm_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/spbm_work_detail/breakground_spbm_detail.dart index 1be1361..bf7e3ea 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/spbm_work_detail/breakground_spbm_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/spbm_work_detail/breakground_spbm_detail.dart @@ -128,7 +128,7 @@ class _BreakgroundSpbmDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { if (DESCR.isEmpty) { @@ -143,10 +143,17 @@ class _BreakgroundSpbmDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/ssr_work_detail/breakground_ssr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/ssr_work_detail/breakground_ssr_detail.dart index 4714219..6e1ded7 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/ssr_work_detail/breakground_ssr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/ssr_work_detail/breakground_ssr_detail.dart @@ -128,7 +128,7 @@ class _BreakgroundSsrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -139,10 +139,17 @@ class _BreakgroundSsrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/szaq_work_detail/breakground_set_safe_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/szaq_work_detail/breakground_set_safe_detail.dart index d0aa9c0..d5e62df 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/szaq_work_detail/breakground_set_safe_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/szaq_work_detail/breakground_set_safe_detail.dart @@ -241,7 +241,7 @@ class _BreakgroundSetSafeDetailState extends State { Future _submit(String status) async { List> signers = []; - String reasonText = ''; + String? reasonText = ''; if (status == '1') { int index = 0; @@ -280,10 +280,17 @@ class _BreakgroundSetSafeDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/szdw_work_detail/breakground_szdw_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/szdw_work_detail/breakground_szdw_detail.dart index c7e541b..f3a80c0 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/szdw_work_detail/breakground_szdw_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/szdw_work_detail/breakground_szdw_detail.dart @@ -129,7 +129,7 @@ class _BreakgroundSzdwDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _BreakgroundSzdwDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/ysgd_work_detail/breakground_ysgd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/ysgd_work_detail/breakground_ysgd_detail.dart index 4568a46..4969466 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/ysgd_work_detail/breakground_ysgd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/ysgd_work_detail/breakground_ysgd_detail.dart @@ -185,7 +185,7 @@ class _BreakgroundYsgdDetailState extends State { } String DESCR = _contentController.text.trim(); - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (DESCR.isEmpty) { ToastUtil.showNormal(context, '请输入负责人意见'); @@ -215,10 +215,17 @@ class _BreakgroundYsgdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final serverPathString = imgList .map((e) => e.serverPath) diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/zyfz_work_detail/breakground_zyfz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/zyfz_work_detail/breakground_zyfz_detail.dart index f86ac36..041fe45 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/zyfz_work_detail/breakground_zyfz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/zyfz_work_detail/breakground_zyfz_detail.dart @@ -129,7 +129,7 @@ class _BreakgroundZyfzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _BreakgroundZyfzDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dt_work/zyr_work_detail/breakground_zyr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dt_work/zyr_work_detail/breakground_zyr_detail.dart index 91ce054..b1b5c84 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dt_work/zyr_work_detail/breakground_zyr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dt_work/zyr_work_detail/breakground_zyr_detail.dart @@ -142,7 +142,7 @@ class _BreakgroundZyrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (workImages.isEmpty) { @@ -161,10 +161,17 @@ class _BreakgroundZyrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/aqcs_work_detail/hoistwork_safe_func_sure.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/aqcs_work_detail/hoistwork_safe_func_sure.dart index 3f0688a..c41b2c1 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/aqcs_work_detail/hoistwork_safe_func_sure.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/aqcs_work_detail/hoistwork_safe_func_sure.dart @@ -191,7 +191,7 @@ class _HoistworkSafeFuncSureState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (!_validateAndProceed(context)) { @@ -209,10 +209,17 @@ class _HoistworkSafeFuncSureState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; // 提交参数 diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/aqjd_work_detail/hoistwork_aqjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/aqjd_work_detail/hoistwork_aqjd_detail.dart index 890ffa5..7631123 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/aqjd_work_detail/hoistwork_aqjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/aqjd_work_detail/hoistwork_aqjd_detail.dart @@ -175,7 +175,7 @@ class _HoistworkAqjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -186,10 +186,17 @@ class _HoistworkAqjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 抽取所有非空的 serverPath 并拼成逗号分隔的字符串 final serverPathString = imgList diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/dz_work_detai/hoistwork_apply_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/dz_work_detai/hoistwork_apply_detail.dart index 4722303..be4a476 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/dz_work_detai/hoistwork_apply_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/dz_work_detai/hoistwork_apply_detail.dart @@ -508,10 +508,11 @@ class _HoistworkApplyDetailState extends State { pd['ACTION_USER'] = SessionService.instance.username; pd['APPLY_STATUS'] = status; pd['SPECIAL_WORK'] = FormUtils.hasValue(pd, 'SPECIAL_WORK') ? pd['SPECIAL_WORK'] : '无'; + pd['STEP_ID'] = status; + pd['TASK_ID'] = taskId; // 提交参数 if (msg == 'add') { - pd['STEP_ID'] = status; - pd['TASK_ID'] = taskId; + pd['HOISTING_ID'] = widget.HOISTING_ID; pd['APPLY_DEPARTMENT_ID'] = SessionService.instance.deptId; pd['APPLY_DEPARTMENT_NAME'] = diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/dzzh_work_detail/hoistwork_dzzh_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/dzzh_work_detail/hoistwork_dzzh_detail.dart index 0b4fb40..2f9c4fa 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/dzzh_work_detail/hoistwork_dzzh_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/dzzh_work_detail/hoistwork_dzzh_detail.dart @@ -129,7 +129,7 @@ class _HoistworkDzzhDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _HoistworkDzzhDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/jhr_work_detail/hoistwork_jhr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/jhr_work_detail/hoistwork_jhr_detail.dart index 89e6379..ad04e9b 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/jhr_work_detail/hoistwork_jhr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/jhr_work_detail/hoistwork_jhr_detail.dart @@ -130,7 +130,7 @@ class _HoistworkJhrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -141,10 +141,17 @@ class _HoistworkJhrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/jsjd_work_detail/hoistwork_jsjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/jsjd_work_detail/hoistwork_jsjd_detail.dart index 8a90a37..7d54d9f 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/jsjd_work_detail/hoistwork_jsjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/jsjd_work_detail/hoistwork_jsjd_detail.dart @@ -129,7 +129,7 @@ class _HoistworkJsjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -140,10 +140,17 @@ class _HoistworkJsjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/jszy_work_detail/hoistwork_jszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/jszy_work_detail/hoistwork_jszy_detail.dart index 0af99f9..b098e81 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/jszy_work_detail/hoistwork_jszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/jszy_work_detail/hoistwork_jszy_detail.dart @@ -69,7 +69,7 @@ class _HoistworkJszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (endTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业结束时间'); @@ -86,10 +86,17 @@ class _HoistworkJszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/kszy_work_detail/hoistwork_kszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/kszy_work_detail/hoistwork_kszy_detail.dart index 530bf56..b932eea 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/kszy_work_detail/hoistwork_kszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/kszy_work_detail/hoistwork_kszy_detail.dart @@ -54,7 +54,7 @@ class _HoistworkKszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (startTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业开始时间'); @@ -68,10 +68,17 @@ class _HoistworkKszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/shbm_work_detail/hoistwork_shbm_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/shbm_work_detail/hoistwork_shbm_detail.dart index 9a5d04e..436e2a8 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/shbm_work_detail/hoistwork_shbm_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/shbm_work_detail/hoistwork_shbm_detail.dart @@ -128,7 +128,7 @@ class _HoistworkShbmDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -144,10 +144,17 @@ class _HoistworkShbmDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/spbm_work_detail/hoistwork_spbm_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/spbm_work_detail/hoistwork_spbm_detail.dart index 4604d71..c255a2e 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/spbm_work_detail/hoistwork_spbm_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/spbm_work_detail/hoistwork_spbm_detail.dart @@ -128,7 +128,7 @@ class _HoistworkSpbmDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -144,10 +144,17 @@ class _HoistworkSpbmDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/ssr_work_detail/hoistwork_ssr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/ssr_work_detail/hoistwork_ssr_detail.dart index 9a4ae8f..c367701 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/ssr_work_detail/hoistwork_ssr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/ssr_work_detail/hoistwork_ssr_detail.dart @@ -128,7 +128,7 @@ class _HoistworkSsrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -139,10 +139,17 @@ class _HoistworkSsrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/szaq_work_detail/hoistwork_set_safe_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/szaq_work_detail/hoistwork_set_safe_detail.dart index 3e79896..5d95370 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/szaq_work_detail/hoistwork_set_safe_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/szaq_work_detail/hoistwork_set_safe_detail.dart @@ -240,7 +240,7 @@ class _HoistworkSetSafeDetailState extends State { Future _submit(String status) async { List> signers = []; - String reasonText = ''; + String? reasonText = ''; if (status == '1') { int index = 0; @@ -279,10 +279,17 @@ class _HoistworkSetSafeDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/szdw_work_detail/hoistwork_szdw_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/szdw_work_detail/hoistwork_szdw_detail.dart index ba9df98..f27c408 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/szdw_work_detail/hoistwork_szdw_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/szdw_work_detail/hoistwork_szdw_detail.dart @@ -129,7 +129,7 @@ class _HoistworkSzdwDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _HoistworkSzdwDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/ysgd_work_detail/hoistwork_ysgd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/ysgd_work_detail/hoistwork_ysgd_detail.dart index ef1c491..d2447aa 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/ysgd_work_detail/hoistwork_ysgd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/ysgd_work_detail/hoistwork_ysgd_detail.dart @@ -185,7 +185,7 @@ class _HoistworkYsgdDetailState extends State { } String DESCR = _contentController.text.trim(); - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (DESCR.isEmpty) { ToastUtil.showNormal(context, '请输入负责人意见'); @@ -215,10 +215,17 @@ class _HoistworkYsgdDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final serverPathString = imgList .map((e) => e.serverPath) diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/zyfz_work_detail/hoistwork_zyfz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/zyfz_work_detail/hoistwork_zyfz_detail.dart index 9b61299..db6903a 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/zyfz_work_detail/hoistwork_zyfz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/zyfz_work_detail/hoistwork_zyfz_detail.dart @@ -129,7 +129,7 @@ class _HoistworkZyfzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _HoistworkZyfzDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/dz_work/zyr_work_detail/hoistwork_zyr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/dz_work/zyr_work_detail/hoistwork_zyr_detail.dart index 4e063a3..556f74a 100644 --- a/lib/pages/home/tap/tabList/special_wrok/dz_work/zyr_work_detail/hoistwork_zyr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/dz_work/zyr_work_detail/hoistwork_zyr_detail.dart @@ -128,7 +128,7 @@ class _HoistworkZyrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -139,10 +139,17 @@ class _HoistworkZyrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/aqcs_work_detail/highwork_safe_func_sure.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/aqcs_work_detail/highwork_safe_func_sure.dart index 4040a32..5c60208 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/aqcs_work_detail/highwork_safe_func_sure.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/aqcs_work_detail/highwork_safe_func_sure.dart @@ -190,7 +190,7 @@ class _HighworkSafeFuncSureState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (!_validateAndProceed(context)) { @@ -208,10 +208,17 @@ class _HighworkSafeFuncSureState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; // 提交参数 diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/aqjd_work_detail/highwork_aqjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/aqjd_work_detail/highwork_aqjd_detail.dart index ed09711..d4aa2f4 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/aqjd_work_detail/highwork_aqjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/aqjd_work_detail/highwork_aqjd_detail.dart @@ -175,7 +175,7 @@ class _HighworkAqjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -186,10 +186,17 @@ class _HighworkAqjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 抽取所有非空的 serverPath 并拼成逗号分隔的字符串 final serverPathString = imgList diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/gc_work_detai/highwork_apply_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/gc_work_detai/highwork_apply_detail.dart index bc519fd..47e17ac 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/gc_work_detai/highwork_apply_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/gc_work_detai/highwork_apply_detail.dart @@ -528,10 +528,11 @@ class _HighworkApplyDetailState extends State { pd['ACTION_USER'] = SessionService.instance.username; pd['APPLY_STATUS'] = status; pd['SPECIAL_WORK'] = FormUtils.hasValue(pd, 'SPECIAL_WORK') ? pd['SPECIAL_WORK'] : '无'; + pd['TASK_ID'] = taskId; + // 提交参数 if (msg == 'add') { pd['STEP_ID'] = status; - pd['TASK_ID'] = taskId; pd['HIGHWORK_ID'] = widget.HIGHWORK_ID; pd['APPLY_DEPARTMENT_ID'] = SessionService.instance.deptId; pd['APPLY_DEPARTMENT_NAME'] = diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/jhr_work_detail/highwork_jhr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/jhr_work_detail/highwork_jhr_detail.dart index cddde84..88b4691 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/jhr_work_detail/highwork_jhr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/jhr_work_detail/highwork_jhr_detail.dart @@ -130,7 +130,7 @@ class _HighworkJhrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -141,10 +141,17 @@ class _HighworkJhrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/jsjd_work_detail/highwork_jsjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/jsjd_work_detail/highwork_jsjd_detail.dart index 253c277..bbc5350 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/jsjd_work_detail/highwork_jsjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/jsjd_work_detail/highwork_jsjd_detail.dart @@ -129,7 +129,7 @@ class _HighworkJsjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -140,10 +140,17 @@ class _HighworkJsjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/jszy_work_detail/highwork_jszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/jszy_work_detail/highwork_jszy_detail.dart index f7bbfb4..3664e87 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/jszy_work_detail/highwork_jszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/jszy_work_detail/highwork_jszy_detail.dart @@ -69,7 +69,7 @@ class _HighworkJszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (endTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业结束时间'); @@ -86,10 +86,17 @@ class _HighworkJszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/kszy_work_detail/highwork_kszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/kszy_work_detail/highwork_kszy_detail.dart index c65155d..e5f6995 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/kszy_work_detail/highwork_kszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/kszy_work_detail/highwork_kszy_detail.dart @@ -55,7 +55,7 @@ class _HighworkKszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (startTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业开始时间'); @@ -69,10 +69,17 @@ class _HighworkKszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/shbm_work_detail/highwork_shbm_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/shbm_work_detail/highwork_shbm_detail.dart index f695a85..32846a9 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/shbm_work_detail/highwork_shbm_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/shbm_work_detail/highwork_shbm_detail.dart @@ -128,7 +128,7 @@ class _HighworkShbmDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -144,10 +144,17 @@ class _HighworkShbmDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/spbm_work_detail/highwork_spbm_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/spbm_work_detail/highwork_spbm_detail.dart index f65921f..0a452e2 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/spbm_work_detail/highwork_spbm_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/spbm_work_detail/highwork_spbm_detail.dart @@ -185,7 +185,7 @@ class _HighworkSpbmDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -201,10 +201,17 @@ class _HighworkSpbmDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/szaq_work_detail/highwork_set_safe_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/szaq_work_detail/highwork_set_safe_detail.dart index 8400046..48e1fbd 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/szaq_work_detail/highwork_set_safe_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/szaq_work_detail/highwork_set_safe_detail.dart @@ -298,7 +298,7 @@ class _HighworkSetSafeDetailState extends State { Future _submit(String status) async { List> signers = []; - String reasonText = ''; + String? reasonText = ''; if (status == '1') { int index = 0; @@ -337,10 +337,17 @@ class _HighworkSetSafeDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/szdw_work_detail/highwork_szdw_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/szdw_work_detail/highwork_szdw_detail.dart index 04a9ea1..5218cbd 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/szdw_work_detail/highwork_szdw_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/szdw_work_detail/highwork_szdw_detail.dart @@ -129,7 +129,7 @@ class _HighworkSzdwDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _HighworkSzdwDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/ysgd_work_detail/highwork_ysgd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/ysgd_work_detail/highwork_ysgd_detail.dart index 7ecd32c..0c0802e 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/ysgd_work_detail/highwork_ysgd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/ysgd_work_detail/highwork_ysgd_detail.dart @@ -185,7 +185,7 @@ class _HighworkYsgdDetailState extends State { } String DESCR = _contentController.text.trim(); - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (DESCR.isEmpty) { ToastUtil.showNormal(context, '请输入负责人意见'); @@ -215,10 +215,17 @@ class _HighworkYsgdDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final serverPathString = imgList .map((e) => e.serverPath) diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/zyfz_work_detail/highwork_zyfz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/zyfz_work_detail/highwork_zyfz_detail.dart index 05e3caf..e6ce746 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/zyfz_work_detail/highwork_zyfz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/zyfz_work_detail/highwork_zyfz_detail.dart @@ -129,7 +129,7 @@ class _HighworkZyfzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -141,10 +141,17 @@ class _HighworkZyfzDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/gc_work/zyr_work_detail/highwork_zyr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/gc_work/zyr_work_detail/highwork_zyr_detail.dart index 91e4465..2a6b855 100644 --- a/lib/pages/home/tap/tabList/special_wrok/gc_work/zyr_work_detail/highwork_zyr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/gc_work/zyr_work_detail/highwork_zyr_detail.dart @@ -128,7 +128,7 @@ class _HighworkZyrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -139,10 +139,17 @@ class _HighworkZyrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/home_gas_test_page.dart b/lib/pages/home/tap/tabList/special_wrok/home_gas_test_page.dart index ff75cea..0b70c43 100644 --- a/lib/pages/home/tap/tabList/special_wrok/home_gas_test_page.dart +++ b/lib/pages/home/tap/tabList/special_wrok/home_gas_test_page.dart @@ -209,7 +209,7 @@ class _HomeGasTestPageState extends State { } } - String reasonText = ''; + String? reasonText = ''; if (status != 1) { reasonText = await CustomAlertDialog.showInput( context, @@ -218,10 +218,17 @@ class _HomeGasTestPageState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final confirmed = await CustomAlertDialog.showConfirm( context, diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/aqcs_work_detail/electricity_safe_func_sure.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/aqcs_work_detail/electricity_safe_func_sure.dart index 7da6078..a1b95db 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/aqcs_work_detail/electricity_safe_func_sure.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/aqcs_work_detail/electricity_safe_func_sure.dart @@ -193,7 +193,7 @@ class _ElectricitySafeFuncSureState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (!_validateAndProceed(context)) { @@ -211,10 +211,17 @@ class _ElectricitySafeFuncSureState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; // 提交参数 diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/aqjd_work_detail/electricity_aqjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/aqjd_work_detail/electricity_aqjd_detail.dart index 537dbe2..f9bb431 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/aqjd_work_detail/electricity_aqjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/aqjd_work_detail/electricity_aqjd_detail.dart @@ -176,7 +176,7 @@ class _ElectricityAqjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -187,10 +187,17 @@ class _ElectricityAqjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 抽取所有非空的 serverPath 并拼成逗号分隔的字符串 final serverPathString = imgList diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/dbbz_work_detail/electricity_dbbz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/dbbz_work_detail/electricity_dbbz_detail.dart index 656a494..dd80fe8 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/dbbz_work_detail/electricity_dbbz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/dbbz_work_detail/electricity_dbbz_detail.dart @@ -131,7 +131,7 @@ class _ElectricityDbbzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (DESCR.isEmpty) { @@ -147,10 +147,17 @@ class _ElectricityDbbzDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jhr_work_detail/electricity_jhr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jhr_work_detail/electricity_jhr_detail.dart index bd1a7a2..5e4bc48 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jhr_work_detail/electricity_jhr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jhr_work_detail/electricity_jhr_detail.dart @@ -128,7 +128,7 @@ class _ElectricityJhrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -139,10 +139,17 @@ class _ElectricityJhrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jsjd_work_detail/electricity_jsjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jsjd_work_detail/electricity_jsjd_detail.dart index a2bbfce..1ee2d81 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jsjd_work_detail/electricity_jsjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jsjd_work_detail/electricity_jsjd_detail.dart @@ -129,7 +129,7 @@ class _ElectricityJsjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -140,10 +140,17 @@ class _ElectricityJsjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jszy_work_detail/electricity_jszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jszy_work_detail/electricity_jszy_detail.dart index 57ff8ec..69ce21d 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jszy_work_detail/electricity_jszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/jszy_work_detail/electricity_jszy_detail.dart @@ -69,7 +69,7 @@ class _ElectricityJszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (endTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业结束时间'); @@ -86,10 +86,17 @@ class _ElectricityJszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/kszy_work_detail/electricity_kszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/kszy_work_detail/electricity_kszy_detail.dart index c6b8c85..3baae97 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/kszy_work_detail/electricity_kszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/kszy_work_detail/electricity_kszy_detail.dart @@ -54,7 +54,7 @@ class _ElectricityKszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (startTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业开始时间'); @@ -80,10 +80,17 @@ class _ElectricityKszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/psdw_work_detail/electricity_psdw_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/psdw_work_detail/electricity_psdw_detail.dart index 1164c89..0919e15 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/psdw_work_detail/electricity_psdw_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/psdw_work_detail/electricity_psdw_detail.dart @@ -129,7 +129,7 @@ class _ElectricityPsdwDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _ElectricityPsdwDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/qtfx_work_detail/electricity_gas_test_page.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/qtfx_work_detail/electricity_gas_test_page.dart index 0d02b18..9b57cdc 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/qtfx_work_detail/electricity_gas_test_page.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/qtfx_work_detail/electricity_gas_test_page.dart @@ -171,7 +171,7 @@ class _ElectricityGasTestPageState extends State { } } - String reasonText = ''; + String? reasonText = ''; if (status != 1) { reasonText = await CustomAlertDialog.showInput( context, @@ -180,10 +180,17 @@ class _ElectricityGasTestPageState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final confirmed = await CustomAlertDialog.showConfirm( context, diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/szaq_work_detail/electricity_set_safe_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/szaq_work_detail/electricity_set_safe_detail.dart index ed0c370..a782c35 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/szaq_work_detail/electricity_set_safe_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/szaq_work_detail/electricity_set_safe_detail.dart @@ -241,7 +241,7 @@ class _ElectricitySetSafeDetailState extends State { Future _submit(String status) async { List> signers = []; - String reasonText = ''; + String? reasonText = ''; if (status == '1') { int index = 0; @@ -280,10 +280,17 @@ class _ElectricitySetSafeDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/yddw_work_detail/electricity_yddw_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/yddw_work_detail/electricity_yddw_detail.dart index 254223d..776a112 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/yddw_work_detail/electricity_yddw_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/yddw_work_detail/electricity_yddw_detail.dart @@ -129,7 +129,7 @@ class _ElectricityYddwDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _ElectricityYddwDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/ydr_work_detail/electricity_ydr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/ydr_work_detail/electricity_ydr_detail.dart index e631061..100650c 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/ydr_work_detail/electricity_ydr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/ydr_work_detail/electricity_ydr_detail.dart @@ -127,7 +127,7 @@ class _ElectricityYdrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -138,10 +138,17 @@ class _ElectricityYdrDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/ysgd_work_detail/electricity_ysgd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/ysgd_work_detail/electricity_ysgd_detail.dart index e490c4a..b26d0fa 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/ysgd_work_detail/electricity_ysgd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/ysgd_work_detail/electricity_ysgd_detail.dart @@ -185,7 +185,7 @@ class _ElectricityYsgdDetailState extends State { } String DESCR = _contentController.text.trim(); - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (DESCR.isEmpty) { ToastUtil.showNormal(context, '请输入负责人意见'); @@ -215,10 +215,17 @@ class _ElectricityYsgdDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final serverPathString = imgList .map((e) => e.serverPath) diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/zyfz_work_detail/electricity_zyfz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/zyfz_work_detail/electricity_zyfz_detail.dart index e62c0d8..8d10d9e 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/zyfz_work_detail/electricity_zyfz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/zyfz_work_detail/electricity_zyfz_detail.dart @@ -129,7 +129,7 @@ class _ElectricityZyfzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _ElectricityZyfzDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/zyr_work_detail/electricity_zyr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/zyr_work_detail/electricity_zyr_detail.dart index d80b8d6..e267a3e 100644 --- a/lib/pages/home/tap/tabList/special_wrok/lsyd_work/zyr_work_detail/electricity_zyr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/lsyd_work/zyr_work_detail/electricity_zyr_detail.dart @@ -126,7 +126,7 @@ setState(() { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -137,10 +137,17 @@ setState(() { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/BlindboardDetailFormWidget.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/BlindboardDetailFormWidget.dart index cd3a345..82424a7 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/BlindboardDetailFormWidget.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/BlindboardDetailFormWidget.dart @@ -444,7 +444,7 @@ class _BlindboardDetailFormWidgetState label: '材质:', isRequired: widget.isEditable, isEditable: widget.isEditable, - text: board['BOARD_MATERIAL'], + text: board['BOARD_MATERIAL'] ?? '', hintText: '请输入材质', onChanged: (val) { setState(() { @@ -458,7 +458,7 @@ class _BlindboardDetailFormWidgetState label: '规格:', isRequired: widget.isEditable, isEditable: widget.isEditable, - text: board['BOARD_SPECIFICATION'], + text: board['BOARD_SPECIFICATION'] ?? '', onChanged: (val) { setState(() { board['BOARD_SPECIFICATION'] = val; @@ -472,7 +472,7 @@ class _BlindboardDetailFormWidgetState label: '编号:', isEditable: widget.isEditable, isRequired: widget.isEditable, - text: board['BOARD_NO'], + text: board['BOARD_NO'] ?? '', onChanged: (val) { setState(() { board['BOARD_NO'] = val; diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/aqcs_work_detail/blindboard_safe_func_sure.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/aqcs_work_detail/blindboard_safe_func_sure.dart index 595a122..a1a7053 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/aqcs_work_detail/blindboard_safe_func_sure.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/aqcs_work_detail/blindboard_safe_func_sure.dart @@ -202,7 +202,7 @@ class _BlindboardSafeFuncSureState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (!_validateAndProceed(context)) { @@ -220,10 +220,17 @@ class _BlindboardSafeFuncSureState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; // 提交参数 diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/aqjd_work_detail/blindboard_aqjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/aqjd_work_detail/blindboard_aqjd_detail.dart index 9c76340..3e77f2d 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/aqjd_work_detail/blindboard_aqjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/aqjd_work_detail/blindboard_aqjd_detail.dart @@ -176,7 +176,7 @@ class _BlindboardAqjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -187,10 +187,17 @@ class _BlindboardAqjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 抽取所有非空的 serverPath 并拼成逗号分隔的字符串 final serverPathString = imgList diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/cjry_work_detail/blindboard_cjry_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/cjry_work_detail/blindboard_cjry_detail.dart index 31dffca..5a3e24d 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/cjry_work_detail/blindboard_cjry_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/cjry_work_detail/blindboard_cjry_detail.dart @@ -144,7 +144,7 @@ class _BlindboardCjryDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (imgList.isEmpty) { @@ -164,10 +164,17 @@ class _BlindboardCjryDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final serverPathString = imgList .map((e) => e.serverPath) diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jhr_work_detail/blindboard_jhr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jhr_work_detail/blindboard_jhr_detail.dart index fb710c9..087f536 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jhr_work_detail/blindboard_jhr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jhr_work_detail/blindboard_jhr_detail.dart @@ -131,7 +131,7 @@ class _BlindboardJhrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -142,10 +142,17 @@ class _BlindboardJhrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jsjd_work_detail/blindboard_jsjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jsjd_work_detail/blindboard_jsjd_detail.dart index ea86f9c..025e28a 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jsjd_work_detail/blindboard_jsjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jsjd_work_detail/blindboard_jsjd_detail.dart @@ -130,7 +130,7 @@ class _BlindboardJsjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -141,10 +141,17 @@ class _BlindboardJsjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jszy_work_detail/blindboard_jszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jszy_work_detail/blindboard_jszy_detail.dart index 6eda906..6d1866c 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jszy_work_detail/blindboard_jszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/jszy_work_detail/blindboard_jszy_detail.dart @@ -69,7 +69,7 @@ class _BlindboardJszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (endTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业结束时间'); @@ -86,10 +86,17 @@ class _BlindboardJszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/kszy_work_detail/blindboard_kszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/kszy_work_detail/blindboard_kszy_detail.dart index a9b773b..b3c8fc0 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/kszy_work_detail/blindboard_kszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/kszy_work_detail/blindboard_kszy_detail.dart @@ -56,7 +56,7 @@ class _BlindboardKszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (startTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业开始时间'); @@ -70,10 +70,17 @@ class _BlindboardKszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/mbcd_work_detai/blindboard_apply_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/mbcd_work_detai/blindboard_apply_detail.dart index 25721be..4ec05b2 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/mbcd_work_detai/blindboard_apply_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/mbcd_work_detai/blindboard_apply_detail.dart @@ -532,10 +532,11 @@ class _BlindboardApplyDetailState extends State { pd['boardList'] = jsonEncode(boardList).toString(); pd['SPECIAL_WORK'] = FormUtils.hasValue(pd, 'SPECIAL_WORK') ? pd['SPECIAL_WORK'] : '无'; + pd['STEP_ID'] = status; + pd['TASK_ID'] = taskId; // 提交参数 if (msg == 'add') { - pd['STEP_ID'] = status; - pd['TASK_ID'] = taskId; + pd['BLINDBOARD_ID'] = pd['BLINDBOARD_ID'] ?? widget.BLINDBOARD_ID; pd['APPLY_DEPARTMENT_ID'] = SessionService.instance.deptId; pd['APPLY_DEPARTMENT_NAME'] = @@ -592,6 +593,7 @@ class _BlindboardApplyDetailState extends State { _temperatureController.text = pd['TEMPERATURE'] ?? ''; _pressureController.text = pd['PRESSURE'] ?? ''; _riskController.text = pd['RISK_IDENTIFICATION'] ?? ''; + _relatedController.text = pd['SPECIAL_WORK'] ?? ''; }); // final data = await ApiService.getHomeworkFindById('blindboard', widget.BLINDBOARD_ID); // setState(() { diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/shbm_work_detail/blindboard_shbm_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/shbm_work_detail/blindboard_shbm_detail.dart index 061c639..3133be5 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/shbm_work_detail/blindboard_shbm_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/shbm_work_detail/blindboard_shbm_detail.dart @@ -129,7 +129,7 @@ class _BlindboardShbmDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _BlindboardShbmDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/spbm_work_detail/blindboard_spbm_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/spbm_work_detail/blindboard_spbm_detail.dart index 060b728..28ca277 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/spbm_work_detail/blindboard_spbm_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/spbm_work_detail/blindboard_spbm_detail.dart @@ -129,7 +129,7 @@ class _BlindboardSpbmDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _BlindboardSpbmDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/szaq_work_detail/blindboard_set_safe_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/szaq_work_detail/blindboard_set_safe_detail.dart index 54e2544..0639517 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/szaq_work_detail/blindboard_set_safe_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/szaq_work_detail/blindboard_set_safe_detail.dart @@ -252,7 +252,7 @@ class _BlindboardSetSafeDetailState extends State { Future _submit(String status) async { List> signers = []; - String reasonText = ''; + String? reasonText = ''; if (status == '1') { int index = 0; @@ -291,10 +291,17 @@ class _BlindboardSetSafeDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/szdw_work_detail/blindboard_szdw_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/szdw_work_detail/blindboard_szdw_detail.dart index 8b62ab0..1f0e14b 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/szdw_work_detail/blindboard_szdw_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/szdw_work_detail/blindboard_szdw_detail.dart @@ -130,7 +130,7 @@ class _BlindboardSzdwDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -146,10 +146,17 @@ class _BlindboardSzdwDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/ysgd_work_detail/blindboard_ysgd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/ysgd_work_detail/blindboard_ysgd_detail.dart index c556f9d..e46d3a5 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/ysgd_work_detail/blindboard_ysgd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/ysgd_work_detail/blindboard_ysgd_detail.dart @@ -186,7 +186,7 @@ class _BlindboardYsgdDetailState extends State { } String DESCR = _contentController.text.trim(); - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (DESCR.isEmpty) { ToastUtil.showNormal(context, '请输入负责人意见'); @@ -206,10 +206,17 @@ class _BlindboardYsgdDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final serverPathString = imgList .map((e) => e.serverPath) diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/zyfz_work_detail/blindboard_zyfz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/zyfz_work_detail/blindboard_zyfz_detail.dart index 72a735b..35cca94 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/zyfz_work_detail/blindboard_zyfz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/zyfz_work_detail/blindboard_zyfz_detail.dart @@ -130,7 +130,7 @@ class _BlindboardZyfzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -146,10 +146,17 @@ class _BlindboardZyfzDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/zyr_work_detail/blindboard_zyr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/zyr_work_detail/blindboard_zyr_detail.dart index abbf472..785fe50 100644 --- a/lib/pages/home/tap/tabList/special_wrok/mbcd_work/zyr_work_detail/blindboard_zyr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/mbcd_work/zyr_work_detail/blindboard_zyr_detail.dart @@ -129,7 +129,7 @@ class _BlindboardZyrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -140,10 +140,17 @@ class _BlindboardZyrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqcs_work_detail/spacework_safe_func_sure.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqcs_work_detail/spacework_safe_func_sure.dart index 9789bb4..00d2659 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqcs_work_detail/spacework_safe_func_sure.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqcs_work_detail/spacework_safe_func_sure.dart @@ -191,7 +191,7 @@ class _SpaceworkSafeFuncSureState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (!_validateAndProceed(context)) { @@ -209,10 +209,17 @@ class _SpaceworkSafeFuncSureState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; // 提交参数 diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqgl_work_detail/spacework_aqgl_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqgl_work_detail/spacework_aqgl_detail.dart index 0870127..a8466a0 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqgl_work_detail/spacework_aqgl_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqgl_work_detail/spacework_aqgl_detail.dart @@ -131,7 +131,7 @@ class _SpaceworkAqglDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (DESCR.isEmpty) { @@ -147,10 +147,17 @@ class _SpaceworkAqglDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqjd_work_detail/spacework_aqjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqjd_work_detail/spacework_aqjd_detail.dart index 71b2fc5..30c31a9 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqjd_work_detail/spacework_aqjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/aqjd_work_detail/spacework_aqjd_detail.dart @@ -177,7 +177,7 @@ class _SpaceworkAqjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -188,10 +188,17 @@ class _SpaceworkAqjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 抽取所有非空的 serverPath 并拼成逗号分隔的字符串 final serverPathString = imgList diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/dbbz_work_detail/spacework_dbbz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/dbbz_work_detail/spacework_dbbz_detail.dart index 3486e26..c922e3e 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/dbbz_work_detail/spacework_dbbz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/dbbz_work_detail/spacework_dbbz_detail.dart @@ -132,7 +132,7 @@ class _SpaceworkDbbzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -148,10 +148,17 @@ class _SpaceworkDbbzDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/dhsp_work_detail/spacework_dhsp_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/dhsp_work_detail/spacework_dhsp_detail.dart index f0b1b95..e7fe7ca 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/dhsp_work_detail/spacework_dhsp_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/dhsp_work_detail/spacework_dhsp_detail.dart @@ -130,7 +130,7 @@ class _SpaceworkDhspDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -146,10 +146,17 @@ class _SpaceworkDhspDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jhr_work_detail/spacework_jhr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jhr_work_detail/spacework_jhr_detail.dart index 63a001c..3cad3a1 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jhr_work_detail/spacework_jhr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jhr_work_detail/spacework_jhr_detail.dart @@ -129,7 +129,7 @@ class _SpaceworkJhrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -140,10 +140,17 @@ class _SpaceworkJhrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jsjd_work_detail/spacework_jsjd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jsjd_work_detail/spacework_jsjd_detail.dart index a27c235..a08d017 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jsjd_work_detail/spacework_jsjd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jsjd_work_detail/spacework_jsjd_detail.dart @@ -130,7 +130,7 @@ class _SpaceworkJsjdDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -141,10 +141,17 @@ class _SpaceworkJsjdDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jszy_work_detail/spacework_jszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jszy_work_detail/spacework_jszy_detail.dart index 67b0c69..1db94a4 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jszy_work_detail/spacework_jszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/jszy_work_detail/spacework_jszy_detail.dart @@ -68,7 +68,7 @@ class _SpaceworkJszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (endTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业结束时间'); @@ -85,10 +85,17 @@ class _SpaceworkJszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/kszy_work_detail/spacework_kszy_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/kszy_work_detail/spacework_kszy_detail.dart index 721ab10..faf19e0 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/kszy_work_detail/spacework_kszy_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/kszy_work_detail/spacework_kszy_detail.dart @@ -57,7 +57,7 @@ class _SpaceworkKszyDetailState extends State { /// 作废 -1 通过 1 Future _submit(String status) async { - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (startTime.isEmpty) { ToastUtil.showNormal(context, '请选择作业开始时间'); @@ -80,10 +80,17 @@ class _SpaceworkKszyDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/qtfx_work_detail/spacework_gas_test_page.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/qtfx_work_detail/spacework_gas_test_page.dart index 9eebf2e..1a86840 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/qtfx_work_detail/spacework_gas_test_page.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/qtfx_work_detail/spacework_gas_test_page.dart @@ -208,7 +208,7 @@ class _SpaceworkGasTestPageState extends State { } - String reasonText = ''; + String? reasonText = ''; if (status != 1) { reasonText = await CustomAlertDialog.showInput( context, @@ -217,10 +217,17 @@ class _SpaceworkGasTestPageState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } setState(() => _loading = true); diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/szaq_work_detail/spacework_set_safe_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/szaq_work_detail/spacework_set_safe_detail.dart index a1a4c39..ebccb22 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/szaq_work_detail/spacework_set_safe_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/szaq_work_detail/spacework_set_safe_detail.dart @@ -241,7 +241,7 @@ class _SpaceworkSetSafeDetailState extends State { Future _submit(String status) async { List> signers = []; - String reasonText = ''; + String? reasonText = ''; if (status == '1') { int index = 0; @@ -281,10 +281,17 @@ class _SpaceworkSetSafeDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final Map formData = {}; diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/szdw_work_detail/spacework_szdw_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/szdw_work_detail/spacework_szdw_detail.dart index 37c3a71..b340479 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/szdw_work_detail/spacework_szdw_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/szdw_work_detail/spacework_szdw_detail.dart @@ -130,7 +130,7 @@ class _SpaceworkSzdwDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -146,10 +146,17 @@ class _SpaceworkSzdwDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/ysgd_work_detail/spacework_ysgd_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/ysgd_work_detail/spacework_ysgd_detail.dart index d209fed..3ecaf46 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/ysgd_work_detail/spacework_ysgd_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/ysgd_work_detail/spacework_ysgd_detail.dart @@ -186,7 +186,7 @@ class _SpaceworkYsgdDetailState extends State { } String DESCR = _contentController.text.trim(); - String reasonText = ''; + String? reasonText = ''; if (status == '1') { if (DESCR.isEmpty) { ToastUtil.showNormal(context, '请输入负责人意见'); @@ -216,10 +216,17 @@ class _SpaceworkYsgdDetailState extends State { cancelText: '取消', confirmText: '确定', ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } final serverPathString = imgList .map((e) => e.serverPath) diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/zyfz_work_detail/spacework_zyfz_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/zyfz_work_detail/spacework_zyfz_detail.dart index 82456a8..50549ab 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/zyfz_work_detail/spacework_zyfz_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/zyfz_work_detail/spacework_zyfz_detail.dart @@ -129,7 +129,7 @@ class _SpaceworkZyfzDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; String DESCR = _contentController.text.trim(); if (status == '1') { @@ -145,10 +145,17 @@ class _SpaceworkZyfzDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/zyr_work_detail/spacework_zyr_detail.dart b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/zyr_work_detail/spacework_zyr_detail.dart index 8ccbd7b..d3e62d9 100644 --- a/lib/pages/home/tap/tabList/special_wrok/sxkj_work/zyr_work_detail/spacework_zyr_detail.dart +++ b/lib/pages/home/tap/tabList/special_wrok/sxkj_work/zyr_work_detail/spacework_zyr_detail.dart @@ -129,7 +129,7 @@ class _SpaceworkZyrDetailState extends State { ToastUtil.showNormal(context, '请签字'); return; } - String reasonText = ''; + String? reasonText = ''; if (status == '1') { } else { @@ -140,10 +140,17 @@ class _SpaceworkZyrDetailState extends State { cancelText: '取消', confirmText: '确定' ); - if (reasonText.isEmpty) { - ToastUtil.showNormal(context, '请填写作废原因'); - return; - } + // 用户取消(或点遮罩、返回键) +if (reasonText == null) { + // 取消时什么也不做,不提示 + return; +} + +// 用户点击确认但没填内容 +if (reasonText.isEmpty) { + ToastUtil.showNormal(context, '请填写作废原因'); + return; +} } // 存回 measures diff --git a/pubspec.lock b/pubspec.lock index 5a518ac..258dfdb 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -77,10 +77,10 @@ packages: dependency: transitive description: name: camera_platform_interface - sha256: "2f757024a48696ff4814a789b0bd90f5660c0fb25f393ab4564fb483327930e2" + sha256: ea1ef6ba79cdbed93df2d3eeef11542a90dec24dbcd9cde574926b86d7a09a10 url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" source: hosted - version: "2.10.0" + version: "2.11.0" camera_web: dependency: transitive description: @@ -309,10 +309,10 @@ packages: dependency: "direct main" description: name: file_picker - sha256: e7e16c9d15c36330b94ca0e2ad8cb61f93cd5282d0158c09805aed13b5452f22 + sha256: f2d9f173c2c14635cc0e9b14c143c49ef30b4934e8d1d274d6206fcb0086a06f url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" source: hosted - version: "10.3.2" + version: "10.3.3" file_selector_linux: dependency: transitive description: @@ -1366,10 +1366,10 @@ packages: dependency: transitive description: name: wakelock_plus_platform_interface - sha256: e10444072e50dbc4999d7316fd303f7ea53d31c824aa5eb05d7ccbdd98985207 + sha256: "036deb14cd62f558ca3b73006d52ce049fabcdcb2eddfe0bf0fe4e8a943b5cf2" url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" source: hosted - version: "1.2.3" + version: "1.3.0" web: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index ab97769..60f0f26 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -16,7 +16,8 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # In Windows, build-name is used as the major, minor, and patch parts # of the product and file versions while build-number is used as the build suffix. -version: 2.1.2+10 +#version: 2.1.2+10 +version: 2.2.0 environment: sdk: ^3.7.0