From 61121e4f8d213cbef19e6fc61dcf5e3c91fcc525 Mon Sep 17 00:00:00 2001 From: xufei <727302827@qq.com> Date: Thu, 2 Apr 2026 10:35:41 +0800 Subject: [PATCH] =?UTF-8?q?2026.4.2=20=E8=BF=9B=E6=B8=AF=E9=A1=BB=E7=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../doorAndCar/car/doorArea_car_add_page.dart | 23 ++++++++++-- .../car/firstlevel_car_add_page.dart | 23 ++++++++++-- .../person/doorArea_person_add_page.dart | 23 ++++++++++-- .../person/firstlevel_person_add_page.dart | 23 ++++++++++-- .../doorAndCar/sign_instructions_webView.dart | 37 ++++++++++++++++++- 5 files changed, 112 insertions(+), 17 deletions(-) diff --git a/lib/pages/home/doorAndCar/car/doorArea_car_add_page.dart b/lib/pages/home/doorAndCar/car/doorArea_car_add_page.dart index 05a2071..73e497a 100644 --- a/lib/pages/home/doorAndCar/car/doorArea_car_add_page.dart +++ b/lib/pages/home/doorAndCar/car/doorArea_car_add_page.dart @@ -347,10 +347,25 @@ class _DoorareaCarAddPageState extends State { activeColor: Colors.blue, checkColor: Colors.white, side: const BorderSide(color: Colors.grey), - onChanged: (value) { - setState(() { - // _agreed = value ?? false; - }); + onChanged: (value) async { + final path = await Navigator.push( + context, + MaterialPageRoute(builder: (context) => SignInstructionsWebview( + name: "安全进港须知", + url: + 'http://47.92.102.56:7811/file/xieyi/zsyhxy.htm', + )), + ); + await NativeOrientation.setPortrait(); + if (path != null) { + setState(() { + setState(() { + _agreed = true; + signImages = []; + signImages.add(path); + }); + }); + } }, ), Flexible( diff --git a/lib/pages/home/doorAndCar/car/firstlevel_car_add_page.dart b/lib/pages/home/doorAndCar/car/firstlevel_car_add_page.dart index d2aff0c..87dd5cf 100644 --- a/lib/pages/home/doorAndCar/car/firstlevel_car_add_page.dart +++ b/lib/pages/home/doorAndCar/car/firstlevel_car_add_page.dart @@ -280,10 +280,25 @@ class _FirstlevelCarAddPageState extends State { activeColor: Colors.blue, checkColor: Colors.white, side: const BorderSide(color: Colors.grey), - onChanged: (value) { - setState(() { - // _agreed = value ?? false; - }); + onChanged: (value) async { + final path = await Navigator.push( + context, + MaterialPageRoute(builder: (context) => SignInstructionsWebview( + name: "安全进港须知", + url: + 'http://47.92.102.56:7811/file/xieyi/zsyhxy.htm', + )), + ); + await NativeOrientation.setPortrait(); + if (path != null) { + setState(() { + setState(() { + _agreed = true; + signImages = []; + signImages.add(path); + }); + }); + } }, ), Flexible( diff --git a/lib/pages/home/doorAndCar/person/doorArea_person_add_page.dart b/lib/pages/home/doorAndCar/person/doorArea_person_add_page.dart index 291c9c5..f87148f 100644 --- a/lib/pages/home/doorAndCar/person/doorArea_person_add_page.dart +++ b/lib/pages/home/doorAndCar/person/doorArea_person_add_page.dart @@ -274,10 +274,25 @@ class _DoorareaPersonApplyPageState extends State { activeColor: Colors.blue, checkColor: Colors.white, side: const BorderSide(color: Colors.grey), - onChanged: (value) { - setState(() { - // _agreed = value ?? false; - }); + onChanged: (value) async { + final path = await Navigator.push( + context, + MaterialPageRoute(builder: (context) => SignInstructionsWebview( + name: "安全进港须知", + url: + 'http://47.92.102.56:7811/file/xieyi/zsyhxy.htm', + )), + ); + await NativeOrientation.setPortrait(); + if (path != null) { + setState(() { + setState(() { + _agreed = true; + signImages = []; + signImages.add(path); + }); + }); + } }, ), Flexible( diff --git a/lib/pages/home/doorAndCar/person/firstlevel_person_add_page.dart b/lib/pages/home/doorAndCar/person/firstlevel_person_add_page.dart index 2569b5b..b528bd8 100644 --- a/lib/pages/home/doorAndCar/person/firstlevel_person_add_page.dart +++ b/lib/pages/home/doorAndCar/person/firstlevel_person_add_page.dart @@ -176,10 +176,25 @@ class _FirstlevelPersonAddPageState extends State { activeColor: Colors.blue, checkColor: Colors.white, side: const BorderSide(color: Colors.grey), - onChanged: (value) { - setState(() { - // _agreed = value ?? false; - }); + onChanged: (value) async { + final path = await Navigator.push( + context, + MaterialPageRoute(builder: (context) => SignInstructionsWebview( + name: "安全进港须知", + url: + 'http://47.92.102.56:7811/file/xieyi/zsyhxy.htm', + )), + ); + await NativeOrientation.setPortrait(); + if (path != null) { + setState(() { + setState(() { + _agreed = true; + signImages = []; + signImages.add(path); + }); + }); + } }, ), Flexible( diff --git a/lib/pages/home/doorAndCar/sign_instructions_webView.dart b/lib/pages/home/doorAndCar/sign_instructions_webView.dart index 25e6931..3195030 100644 --- a/lib/pages/home/doorAndCar/sign_instructions_webView.dart +++ b/lib/pages/home/doorAndCar/sign_instructions_webView.dart @@ -36,6 +36,24 @@ class _SignInstructionsWebviewState extends State { List signImages = []; + final String noticeContent = ''' +欢迎您到访秦皇岛港。为保障您的人身安全及港口生产作业秩序,请注意港口属于重点安全监管区域,存在大型机械作业、货物装卸、车辆往来等生产场景,可能面临机械伤害、物体打击、车辆碰撞等安全风险。请您认真阅读以下须知内容,确认遵守后签字: + +1.入港时请主动出示有效身份证件,配合安保人员进行身份核验与信息登记,凭港口核发的《临时访客证》入港,自觉接受出港查验;不转借、冒用访客凭证,不将无关人员带入港口。 + +2.入港后请严格在指定区域活动,未经陪同人员及港口负责人许可,绝不擅自进入标有"禁止入内""危险区域"等标识的场所,不靠近起重机械、输送设备、危险品存储点等高危险部位,不跨越安全护栏、警戒线,不在作业区域逗留围观。 + +3.遵守港口生产秩序,不干扰装卸、运输、检修等正常工作;不随意触摸、操作生产设备、仪器仪表及安全设施,不移动、遮挡安全警示标识;如需拍摄港口场景须提前征得港口方同意,不拍摄涉及安全、商业秘密的内容。 + +4.严格遵守消防安全规定,不在港口内吸烟,不携带火种、易燃易爆物品、管制器具等违禁物品入港;发现火灾、设备故障等隐患或突发情况,第一时间告知陪同人员或港口工作人员,配合应急处置,不擅自行动引发次生风险。 + +5.注意自身安全防护,行走时主动避让作业车辆与机械,不擅自横穿作业通道;雨天、雾天等恶劣天气下,听从陪同人员安排,加强安全防范。 + +6.已知晓港口所去区域应急逃生路线,遇紧急情况按港口指引有序疏散。 + +本人确认已完整阅读并理解以上须知,承诺严格遵守。如因违反本须知及港口安全规定导致自身人身伤害或港口、他人财产损失,自愿承担全部责任。 +'''; + @override void initState() { @@ -68,7 +86,24 @@ class _SignInstructionsWebviewState extends State { Navigator.of(context).pop(); } },), - Expanded( child: WebViewWidget(controller: _controller),), + + + Expanded( + child:SingleChildScrollView( + padding: const EdgeInsets.all(20), + child: Text( + noticeContent, + style: const TextStyle( + fontSize: 14, + height: 1.6, + color: Colors.black87, + ), + ), + ), + ), + + // Expanded( child: WebViewWidget(controller: _controller),), + // ValueListenableBuilder( // valueListenable: isLoading, // builder: (context, loading, _) {