Compare commits
No commits in common. "main" and "v2.2.1-60" have entirely different histories.
15
.metadata
15
.metadata
|
|
@ -4,7 +4,7 @@
|
||||||
# This file should be version controlled and should not be manually edited.
|
# This file should be version controlled and should not be manually edited.
|
||||||
|
|
||||||
version:
|
version:
|
||||||
revision: "d7b523b356d15fb81e7d340bbe52b47f93937323"
|
revision: "35c388afb57ef061d06a39b537336c87e0e3d1b1"
|
||||||
channel: "stable"
|
channel: "stable"
|
||||||
|
|
||||||
project_type: app
|
project_type: app
|
||||||
|
|
@ -13,11 +13,14 @@ project_type: app
|
||||||
migration:
|
migration:
|
||||||
platforms:
|
platforms:
|
||||||
- platform: root
|
- platform: root
|
||||||
create_revision: d7b523b356d15fb81e7d340bbe52b47f93937323
|
create_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1
|
||||||
base_revision: d7b523b356d15fb81e7d340bbe52b47f93937323
|
base_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1
|
||||||
- platform: web
|
- platform: android
|
||||||
create_revision: d7b523b356d15fb81e7d340bbe52b47f93937323
|
create_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1
|
||||||
base_revision: d7b523b356d15fb81e7d340bbe52b47f93937323
|
base_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1
|
||||||
|
- platform: ios
|
||||||
|
create_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1
|
||||||
|
base_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1
|
||||||
|
|
||||||
# User provided section
|
# User provided section
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -493,7 +493,7 @@
|
||||||
CODE_SIGN_IDENTITY = "Apple Development";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||||
CODE_SIGN_STYLE = Manual;
|
CODE_SIGN_STYLE = Manual;
|
||||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
CURRENT_PROJECT_VERSION = 59;
|
||||||
DEVELOPMENT_TEAM = "";
|
DEVELOPMENT_TEAM = "";
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8AKCJ9LW7D;
|
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8AKCJ9LW7D;
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
|
|
@ -503,6 +503,7 @@
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
|
MARKETING_VERSION = 2.2.0;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = uni.UNI85F7A17;
|
PRODUCT_BUNDLE_IDENTIFIER = uni.UNI85F7A17;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
|
|
@ -687,7 +688,7 @@
|
||||||
CODE_SIGN_IDENTITY = "Apple Development";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||||
CODE_SIGN_STYLE = Manual;
|
CODE_SIGN_STYLE = Manual;
|
||||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
CURRENT_PROJECT_VERSION = 59;
|
||||||
DEVELOPMENT_TEAM = "";
|
DEVELOPMENT_TEAM = "";
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8AKCJ9LW7D;
|
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8AKCJ9LW7D;
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
|
|
@ -697,6 +698,7 @@
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
|
MARKETING_VERSION = 2.2.0;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = uni.UNI85F7A17;
|
PRODUCT_BUNDLE_IDENTIFIER = uni.UNI85F7A17;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
|
|
@ -718,7 +720,7 @@
|
||||||
CODE_SIGN_IDENTITY = "Apple Development";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||||
CODE_SIGN_STYLE = Manual;
|
CODE_SIGN_STYLE = Manual;
|
||||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
CURRENT_PROJECT_VERSION = 59;
|
||||||
DEVELOPMENT_TEAM = "";
|
DEVELOPMENT_TEAM = "";
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8AKCJ9LW7D;
|
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8AKCJ9LW7D;
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
|
|
@ -728,6 +730,7 @@
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
|
MARKETING_VERSION = 2.2.0;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = uni.UNI85F7A17;
|
PRODUCT_BUNDLE_IDENTIFIER = uni.UNI85F7A17;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<string>智守安全</string>
|
<string>智守安全</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>$(EXECUTABLE_NAME)</string>
|
<string>$(EXECUTABLE_NAME)</string>
|
||||||
<key>CFBundleIdentifier</key>ƒ
|
<key>CFBundleIdentifier</key>
|
||||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||||
<key>CFBundleInfoDictionaryVersion</key>
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
<string>6.0</string>
|
<string>6.0</string>
|
||||||
|
|
@ -85,7 +85,6 @@
|
||||||
<key>com.apple.developer.nfc.readersession.formats</key>
|
<key>com.apple.developer.nfc.readersession.formats</key>
|
||||||
<array>
|
<array>
|
||||||
<string>TAG</string>
|
<string>TAG</string>
|
||||||
<string>NDEF</string>
|
|
||||||
</array>
|
</array>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
|
||||||
|
|
@ -118,55 +118,11 @@ class _DepartmentPickerHiddenTypeState
|
||||||
|
|
||||||
void _onSearchChanged() {
|
void _onSearchChanged() {
|
||||||
final q = _searchController.text.toLowerCase().trim();
|
final q = _searchController.text.toLowerCase().trim();
|
||||||
// setState(() {
|
|
||||||
// filtered = q.isEmpty ? original : _filterCategories(original, q);
|
|
||||||
// });
|
|
||||||
|
|
||||||
//新加搜索展开子项
|
|
||||||
setState(() {
|
setState(() {
|
||||||
if (q.isEmpty) {
|
filtered = q.isEmpty ? original : _filterCategories(original, q);
|
||||||
filtered = original;
|
|
||||||
expandedSet.clear(); // 清空展开状态
|
|
||||||
} else {
|
|
||||||
filtered = _filterCategories(original, q);
|
|
||||||
// 搜索时自动展开所有过滤后的节点
|
|
||||||
_expandAllMatchingNodes(filtered);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// 递归展开所有匹配的节点及其父节点
|
|
||||||
void _expandAllMatchingNodes(List<Category> categories) {
|
|
||||||
for (var category in categories) {
|
|
||||||
// 展开当前节点
|
|
||||||
expandedSet.add(category.id);
|
|
||||||
|
|
||||||
// 递归展开子节点
|
|
||||||
if (category.children.isNotEmpty) {
|
|
||||||
_expandAllMatchingNodes(category.children);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 展开所有父节点直到根节点
|
|
||||||
_expandParentNodes(category.id);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 展开指定节点的所有父节点
|
|
||||||
void _expandParentNodes(String id) {
|
|
||||||
var currentId = id;
|
|
||||||
var parent = parentMap[currentId];
|
|
||||||
|
|
||||||
while (parent != null) {
|
|
||||||
expandedSet.add(parent.id);
|
|
||||||
currentId = parent.id;
|
|
||||||
parent = parentMap[currentId];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
List<Category> _filterCategories(List<Category> list, String q) {
|
List<Category> _filterCategories(List<Category> list, String q) {
|
||||||
final res = <Category>[];
|
final res = <Category>[];
|
||||||
for (var cat in list) {
|
for (var cat in list) {
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
import 'dart:ffi';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:dotted_border/dotted_border.dart';
|
import 'package:dotted_border/dotted_border.dart';
|
||||||
|
|
|
||||||
|
|
@ -24,8 +24,8 @@ class ApiService {
|
||||||
// static const String baseFacePath = "http://192.168.0.25:38199"; //王轩服务器
|
// static const String baseFacePath = "http://192.168.0.25:38199"; //王轩服务器
|
||||||
|
|
||||||
/// 登录及其他管理后台接口
|
/// 登录及其他管理后台接口
|
||||||
// static const String basePath = "https://qaaqwh.qhdsafety.com/integrated_whb";
|
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.25:28199";//王轩服务器
|
||||||
// static const String basePath = "http://192.168.0.45:28199";//长久服务器
|
// static const String basePath = "http://192.168.0.45:28199";//长久服务器
|
||||||
|
|
||||||
|
|
@ -2052,7 +2052,6 @@ U6Hzm1ninpWeE+awIDAQAB
|
||||||
String correctiveDepartment,
|
String correctiveDepartment,
|
||||||
String isIndex,
|
String isIndex,
|
||||||
String keyWord,
|
String keyWord,
|
||||||
String laiYuanId,
|
|
||||||
) {
|
) {
|
||||||
return HttpManager().request(
|
return HttpManager().request(
|
||||||
basePath,
|
basePath,
|
||||||
|
|
@ -2064,7 +2063,7 @@ U6Hzm1ninpWeE+awIDAQAB
|
||||||
"ENDTIME": endDate.isEmpty?"":"$endDate 23:59:59",
|
"ENDTIME": endDate.isEmpty?"":"$endDate 23:59:59",
|
||||||
"HIDDENLEVEL": level,
|
"HIDDENLEVEL": level,
|
||||||
"HIDDEN_RISKSTANDARD": riskStandard,
|
"HIDDEN_RISKSTANDARD": riskStandard,
|
||||||
// "SOURCE": laiYuanId,
|
// "SOURCE": riskStandard,
|
||||||
"STATE": state,
|
"STATE": state,
|
||||||
"DEPARTMENT_ID": departmentId,
|
"DEPARTMENT_ID": departmentId,
|
||||||
"RECTIFICATIONDEPT": correctiveDepartment,
|
"RECTIFICATIONDEPT": correctiveDepartment,
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ import 'package:qhd_prevention/http/ApiService.dart';
|
||||||
import 'package:qhd_prevention/pages/app/Danger_paicha/check_record_page.dart';
|
import 'package:qhd_prevention/pages/app/Danger_paicha/check_record_page.dart';
|
||||||
import 'package:qhd_prevention/pages/app/Danger_paicha/quick_report_page.dart';
|
import 'package:qhd_prevention/pages/app/Danger_paicha/quick_report_page.dart';
|
||||||
import 'package:qhd_prevention/pages/app/danger_wait_list_page.dart';
|
import 'package:qhd_prevention/pages/app/danger_wait_list_page.dart';
|
||||||
import 'package:qhd_prevention/pages/app/gy_alarm/gy_alarm_page.dart';
|
|
||||||
import 'package:qhd_prevention/pages/badge_manager.dart';
|
import 'package:qhd_prevention/pages/badge_manager.dart';
|
||||||
import 'package:qhd_prevention/pages/home/work/risk_list_page.dart';
|
import 'package:qhd_prevention/pages/home/work/risk_list_page.dart';
|
||||||
|
|
||||||
|
|
@ -26,8 +25,7 @@ enum AppItem {
|
||||||
specialRecord, // 专项检查中的隐患记录
|
specialRecord, // 专项检查中的隐患记录
|
||||||
supervisionRectification, // 监管帮扶中的隐患整改
|
supervisionRectification, // 监管帮扶中的隐患整改
|
||||||
supervisionRecord, // 监管帮扶中的隐患记录
|
supervisionRecord, // 监管帮扶中的隐患记录
|
||||||
aiAlarm, // 检测预警-AI预警
|
aiAlarm, // 监管帮扶中的隐患记录
|
||||||
gyAlarm // 检测预警-工艺报警优化
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class ApplicationPage extends StatefulWidget {
|
class ApplicationPage extends StatefulWidget {
|
||||||
|
|
@ -126,10 +124,6 @@ class _ApplicationPageState extends State<ApplicationPage> {
|
||||||
case AppItem.aiAlarm:
|
case AppItem.aiAlarm:
|
||||||
// ai
|
// ai
|
||||||
pushPage(AiAlarmPage(), context);
|
pushPage(AiAlarmPage(), context);
|
||||||
break;
|
|
||||||
case AppItem.gyAlarm:
|
|
||||||
pushPage(GyAlarmPage(), context);
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -170,12 +164,11 @@ class _ApplicationPageState extends State<ApplicationPage> {
|
||||||
{'item': AppItem.acceptedRisk, 'icon': 'assets/icon-apps/icon-zl-1.png', 'title': '已验收隐患', 'num': 0},
|
{'item': AppItem.acceptedRisk, 'icon': 'assets/icon-apps/icon-zl-1.png', 'title': '已验收隐患', 'num': 0},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
'title': '监测预警',
|
'title': '监测预警',
|
||||||
'list': [
|
'list': [
|
||||||
{'item': AppItem.aiAlarm, 'icon': 'assets/icon-apps/icon-pc-1.png', 'title': 'AI报警', 'num': 0},
|
{'item': AppItem.aiAlarm, 'icon': 'assets/icon-apps/icon-pc-1.png', 'title': 'AI报警', 'num': 0},
|
||||||
{'item': AppItem.gyAlarm, 'icon': 'assets/icon-apps/icon-pc-1.png', 'title': '工艺报警优化', 'num': 0},
|
|
||||||
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -76,20 +76,20 @@ class _DangerWaitListPageState extends State<DangerWaitListPage> {
|
||||||
void getListData(int type,bool addList,String keyWord){
|
void getListData(int type,bool addList,String keyWord){
|
||||||
switch(widget.appItem ){
|
switch(widget.appItem ){
|
||||||
case 1://隐患记录
|
case 1://隐患记录
|
||||||
_getDangerRecord(-1,_page,"","","","","","","","",keyWord,addList,"");
|
_getDangerRecord(-1,_page,"","","","","","","","",keyWord,addList);
|
||||||
// _getListTree();
|
// _getListTree();
|
||||||
break;
|
break;
|
||||||
case 2://待整改隐患
|
case 2://待整改隐患
|
||||||
_getDangerRecord(2,_page,"","","","","","","","",keyWord,addList,"");
|
_getDangerRecord(2,_page,"","","","","","","","",keyWord,addList);
|
||||||
break;
|
break;
|
||||||
case 3://超期未整改
|
case 3://超期未整改
|
||||||
_getDangerRecord(5,_page,"","","","","-1","","","",keyWord,addList,"");
|
_getDangerRecord(5,_page,"","","","","-1","","","",keyWord,addList);
|
||||||
break;
|
break;
|
||||||
case 4://隐患验收
|
case 4://隐患验收
|
||||||
_getDangerRecord(3,_page,"","","","","","3","","",keyWord,addList,"");
|
_getDangerRecord(3,_page,"","","","","","3","","",keyWord,addList);
|
||||||
break;
|
break;
|
||||||
case 5://已验收隐患
|
case 5://已验收隐患
|
||||||
_getDangerRecord(4,_page,"","","","","","4","","1",keyWord,addList,"");
|
_getDangerRecord(4,_page,"","","","","","4","","1",keyWord,addList);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -133,11 +133,11 @@ class _DangerWaitListPageState extends State<DangerWaitListPage> {
|
||||||
child: DangerWaitDrawer(
|
child: DangerWaitDrawer(
|
||||||
"",
|
"",
|
||||||
onClose: (String selectedCategoryId,String selectedDepartmentId,String investigationMethodOption,
|
onClose: (String selectedCategoryId,String selectedDepartmentId,String investigationMethodOption,
|
||||||
String hazardLevelOption,String dangerStatusOption,String startDate,String endDate,String laiYuanId) {
|
String hazardLevelOption,String dangerStatusOption,String startDate,String endDate) {
|
||||||
|
|
||||||
_page=1;
|
_page=1;
|
||||||
_getDangerRecord(-1,_page,startDate,endDate,hazardLevelOption,investigationMethodOption,
|
_getDangerRecord(-1,_page,startDate,endDate,hazardLevelOption,investigationMethodOption,
|
||||||
dangerStatusOption,selectedCategoryId,selectedDepartmentId,"",searchKey,false,laiYuanId);
|
dangerStatusOption,selectedCategoryId,selectedDepartmentId,"",searchKey,false);
|
||||||
|
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
|
@ -365,7 +365,7 @@ class _DangerWaitListPageState extends State<DangerWaitListPage> {
|
||||||
Future<void> _getDangerRecord(int type, int currentPage,
|
Future<void> _getDangerRecord(int type, int currentPage,
|
||||||
String startDate,String endDate,String level,String riskStandard,String state,
|
String startDate,String endDate,String level,String riskStandard,String state,
|
||||||
String departmentId,String correctiveDepartment,
|
String departmentId,String correctiveDepartment,
|
||||||
String isIndex,String keyWord,bool loadMore,String laiYuanId) async {
|
String isIndex,String keyWord,bool loadMore) async {
|
||||||
try {
|
try {
|
||||||
if (_isLoading) return;
|
if (_isLoading) return;
|
||||||
_isLoading = true;
|
_isLoading = true;
|
||||||
|
|
@ -373,7 +373,7 @@ class _DangerWaitListPageState extends State<DangerWaitListPage> {
|
||||||
LoadingDialogHelper.show();
|
LoadingDialogHelper.show();
|
||||||
final result = await ApiService.getHiddenTreatmentList( type, currentPage,
|
final result = await ApiService.getHiddenTreatmentList( type, currentPage,
|
||||||
startDate, endDate, level, riskStandard, state,
|
startDate, endDate, level, riskStandard, state,
|
||||||
departmentId, correctiveDepartment, isIndex, keyWord,laiYuanId);
|
departmentId, correctiveDepartment, isIndex, keyWord);
|
||||||
LoadingDialogHelper.hide();
|
LoadingDialogHelper.hide();
|
||||||
if (result['result'] == 'success') {
|
if (result['result'] == 'success') {
|
||||||
|
|
||||||
|
|
@ -468,10 +468,8 @@ class _DangerWaitListPageState extends State<DangerWaitListPage> {
|
||||||
return "隐患来源:标准排查";
|
return "隐患来源:标准排查";
|
||||||
}else if("4"==type){
|
}else if("4"==type){
|
||||||
return "隐患来源:专项检查";
|
return "隐患来源:专项检查";
|
||||||
}else if("5"==type){
|
|
||||||
return "隐患来源:安全检查";
|
|
||||||
}else{
|
}else{
|
||||||
return "隐患来源:NFC设备巡检";
|
return "隐患来源:安全检查";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,130 +0,0 @@
|
||||||
import 'package:flutter/material.dart';
|
|
||||||
import 'package:qhd_prevention/customWidget/ItemWidgetFactory.dart';
|
|
||||||
import 'package:qhd_prevention/customWidget/toast_util.dart';
|
|
||||||
import 'package:qhd_prevention/http/ApiService.dart';
|
|
||||||
import 'package:qhd_prevention/pages/KeyProjects/Danger/danger_list_page.dart';
|
|
||||||
import 'package:qhd_prevention/pages/KeyProjects/KeyProject/keyProject_list_page.dart';
|
|
||||||
import 'package:qhd_prevention/pages/KeyProjects/SafeCheck/safeCheck_list_page.dart';
|
|
||||||
import 'package:qhd_prevention/pages/home/SafeCheck/CheckPersonSign/safeCheck_sign_list_page.dart';
|
|
||||||
import 'package:qhd_prevention/pages/home/SafeCheck/CheckPersonSure/check_person_list_page.dart';
|
|
||||||
import 'package:qhd_prevention/pages/home/SafeCheck/DangeCheck/safeCheck_danger_list_page.dart';
|
|
||||||
import 'package:qhd_prevention/pages/home/SafeCheck/Record/defend_record_list_page.dart';
|
|
||||||
import 'package:qhd_prevention/pages/home/SafeCheck/Start/safeCheck_start_list_page.dart';
|
|
||||||
import 'package:qhd_prevention/pages/home/tap/tabList/work_tab_icon_grid.dart';
|
|
||||||
import 'package:qhd_prevention/pages/my_appbar.dart';
|
|
||||||
import 'package:qhd_prevention/tools/tools.dart';
|
|
||||||
|
|
||||||
|
|
||||||
class GyAlarmPage extends StatefulWidget {
|
|
||||||
const GyAlarmPage({super.key});
|
|
||||||
|
|
||||||
@override
|
|
||||||
State<GyAlarmPage> createState() => _GyAlarmPageState();
|
|
||||||
}
|
|
||||||
|
|
||||||
class _GyAlarmPageState extends State<GyAlarmPage> {
|
|
||||||
late List<Map<String, dynamic>> buttonInfos = [
|
|
||||||
{
|
|
||||||
"icon": "assets/icon-apps/icon-yxkj-1.png",
|
|
||||||
"title": "已检查",
|
|
||||||
"unreadCount": '0',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"icon": "assets/icon-apps/icon-yxkj-4.png",
|
|
||||||
"title": "未检查",
|
|
||||||
"unreadCount": '0',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"icon": "assets/icon-apps/icon-yxkj-2.png",
|
|
||||||
"title": "已完成",
|
|
||||||
"unreadCount":'0',
|
|
||||||
},
|
|
||||||
|
|
||||||
];
|
|
||||||
|
|
||||||
@override
|
|
||||||
void initState() {
|
|
||||||
super.initState();
|
|
||||||
// _getData();
|
|
||||||
}
|
|
||||||
// Future<void> _getData() async {
|
|
||||||
// final data = await ApiService.getSafeCheckCount();
|
|
||||||
// setState(() {
|
|
||||||
// final checkedCount = data['checkedCount']['checkedCount'] ?? '';
|
|
||||||
// final repulseAndCheckCount = data['repulseAndCheckCount']['repulseAndCheckCount'] ?? '';
|
|
||||||
// final confirmCount = data['confirmCount']['confirmCount'] ?? '';
|
|
||||||
// final repulseCount = data['repulseCount']['repulseCount'] ?? '';
|
|
||||||
//
|
|
||||||
// buttonInfos = [
|
|
||||||
// {
|
|
||||||
// "icon": "assets/icon-apps/icon-yxkj-1.png",
|
|
||||||
// "title": "安全检查\n发起",
|
|
||||||
// "unreadCount": repulseCount,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// "icon": "assets/icon-apps/icon-yxkj-4.png",
|
|
||||||
// "title": "检查人\n确认",
|
|
||||||
// "unreadCount": confirmCount,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// "icon": "assets/icon-apps/icon-yxkj-2.png",
|
|
||||||
// "title": "被检查人\n签字/申辩",
|
|
||||||
// "unreadCount":checkedCount,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// "icon": "assets/icon-apps/icon-yxkj-2.png",
|
|
||||||
// "title": "隐患指派\n及验收",
|
|
||||||
// "unreadCount":repulseAndCheckCount,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// "icon": "assets/icon-apps/icon-yxkj-2.png",
|
|
||||||
// "title": "申辩记录",
|
|
||||||
// "unreadCount":'0',
|
|
||||||
// },
|
|
||||||
//
|
|
||||||
// ];
|
|
||||||
// });
|
|
||||||
// }
|
|
||||||
void _handleItemPressed(int index) async {
|
|
||||||
// 根据索引执行不同的导航逻辑
|
|
||||||
String title = '';
|
|
||||||
switch (index) {
|
|
||||||
case 0: {
|
|
||||||
title = '安全检查发起';
|
|
||||||
// await pushPage(SafecheckStartListPage(flow: title), context);
|
|
||||||
} break;
|
|
||||||
case 1: {
|
|
||||||
title = '安全检查核实';
|
|
||||||
// await pushPage(CheckPersonListPage(flow: title), context);
|
|
||||||
|
|
||||||
} break;
|
|
||||||
case 2: {
|
|
||||||
title = '安全检查确认';
|
|
||||||
// await pushPage(SafecheckSignListPage(flow: title), context);
|
|
||||||
|
|
||||||
} break;
|
|
||||||
default:
|
|
||||||
print("按钮 $index 被点击");
|
|
||||||
}
|
|
||||||
ToastUtil.showNormal(context, '开发中');
|
|
||||||
// _getData();
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
Widget build(BuildContext context) {
|
|
||||||
return Scaffold(
|
|
||||||
appBar: MyAppbar(title: '工艺报警优化'),
|
|
||||||
body: SafeArea(
|
|
||||||
child: Column(
|
|
||||||
children: [
|
|
||||||
ListItemFactory.createBuildSimpleSection('工艺报警优化'),
|
|
||||||
WorkTabIconGrid(
|
|
||||||
buttonInfos: buttonInfos,
|
|
||||||
onItemPressed: _handleItemPressed,
|
|
||||||
),
|
|
||||||
],
|
|
||||||
)
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -690,8 +690,8 @@ class _HiddenDangerAcceptancePageState extends State<HiddenDangerAcceptancePage>
|
||||||
String _getSourceText(String? source) {
|
String _getSourceText(String? source) {
|
||||||
switch (source) {
|
switch (source) {
|
||||||
case '1': return '隐患快报';
|
case '1': return '隐患快报';
|
||||||
case '2': return '隐患排查';
|
case '2': return '隐患排查清单检查';
|
||||||
case '3': return '标准排查';
|
case '3': return '标准排查清单检查';
|
||||||
case '4': return '专项检查';
|
case '4': return '专项检查';
|
||||||
case '5': return '安全检查';
|
case '5': return '安全检查';
|
||||||
case '6': return 'NFC设备巡检';
|
case '6': return 'NFC设备巡检';
|
||||||
|
|
|
||||||
|
|
@ -496,8 +496,8 @@ class _HiddenRecordDetailPageState extends State<HiddenRecordDetailPage> {
|
||||||
|
|
||||||
switch (source) {
|
switch (source) {
|
||||||
case '1': return '隐患快报';
|
case '1': return '隐患快报';
|
||||||
case '2': return '隐患排查';
|
case '2': return '隐患排查清单检查';
|
||||||
case '3': return '标准排查';
|
case '3': return '标准排查清单检查';
|
||||||
case '4': return '专项检查';
|
case '4': return '专项检查';
|
||||||
case '5': return '安全检查';
|
case '5': return '安全检查';
|
||||||
case '6': return 'NFC设备巡检';
|
case '6': return 'NFC设备巡检';
|
||||||
|
|
|
||||||
|
|
@ -787,8 +787,8 @@ class _PendingRectificationDetailPageState extends State<PendingRectificationDet
|
||||||
String _getSourceText(String? source) {
|
String _getSourceText(String? source) {
|
||||||
switch (source) {
|
switch (source) {
|
||||||
case '1': return '隐患快报';
|
case '1': return '隐患快报';
|
||||||
case '2': return '隐患排查';
|
case '2': return '隐患排查清单检查';
|
||||||
case '3': return '标准排查';
|
case '3': return '标准排查清单检查';
|
||||||
case '4': return '专项检查';
|
case '4': return '专项检查';
|
||||||
case '5': return '安全检查';
|
case '5': return '安全检查';
|
||||||
case '6': return 'NFC设备巡检';
|
case '6': return 'NFC设备巡检';
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,15 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
import 'dart:ffi';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:qhd_prevention/customWidget/bottom_picker.dart';
|
import 'package:qhd_prevention/customWidget/bottom_picker.dart';
|
||||||
import 'package:qhd_prevention/customWidget/custom_alert_dialog.dart';
|
import 'package:qhd_prevention/customWidget/custom_alert_dialog.dart';
|
||||||
import 'package:qhd_prevention/customWidget/custom_button.dart';
|
import 'package:qhd_prevention/customWidget/custom_button.dart';
|
||||||
|
import 'package:qhd_prevention/customWidget/department_person_picker.dart';
|
||||||
import 'package:qhd_prevention/customWidget/toast_util.dart';
|
import 'package:qhd_prevention/customWidget/toast_util.dart';
|
||||||
import 'package:qhd_prevention/http/ApiService.dart';
|
import 'package:qhd_prevention/http/ApiService.dart';
|
||||||
import 'package:qhd_prevention/pages/home/tap/item_list_widget.dart';
|
import 'package:qhd_prevention/pages/home/tap/item_list_widget.dart';
|
||||||
|
import 'package:qhd_prevention/pages/home/work_alert.dart';
|
||||||
import 'package:qhd_prevention/pages/my_appbar.dart';
|
import 'package:qhd_prevention/pages/my_appbar.dart';
|
||||||
import 'package:qhd_prevention/services/nfc_service.dart';
|
import 'package:qhd_prevention/services/nfc_service.dart';
|
||||||
import 'package:qhd_prevention/tools/tools.dart';
|
import 'package:qhd_prevention/tools/tools.dart';
|
||||||
|
|
|
||||||
|
|
@ -247,16 +247,13 @@ class _SafetyCommitmentDhListState extends State<SafetyCommitmentDhList> {
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
const SizedBox(height: 8),
|
const SizedBox(height: 8),
|
||||||
Text('承诺时间: ${item['START_TIME']??""}-${item['END_TIME']??""}'),
|
Row(
|
||||||
const SizedBox(height: 5),
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
|
children: [
|
||||||
|
Text('承诺时间: ${item['SIGN_TIME']??""}'),
|
||||||
Text('承诺人: ${item['SIGN_USER_NAME']??""}'),
|
Text('承诺人: ${item['SIGN_USER_NAME']??""}'),
|
||||||
// Row(
|
],
|
||||||
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
),
|
||||||
// children: [
|
|
||||||
// Text('承诺时间: ${item['SIGN_TIME']??""}'),
|
|
||||||
// Text('承诺人: ${item['SIGN_USER_NAME']??""}'),
|
|
||||||
// ],
|
|
||||||
// ),
|
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
||||||
|
|
@ -42,14 +42,12 @@ class HomePage extends StatefulWidget {
|
||||||
class HomePageState extends State<HomePage> {
|
class HomePageState extends State<HomePage> {
|
||||||
int _eight_work_count = 0;
|
int _eight_work_count = 0;
|
||||||
int _safetyEnvironmentalInspection = 0;
|
int _safetyEnvironmentalInspection = 0;
|
||||||
|
|
||||||
void startScan() {
|
void startScan() {
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder: (_) => ScanPage(totalList: totalList)),
|
MaterialPageRoute(builder: (_) => ScanPage(totalList: totalList)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 缓存 key
|
// 缓存 key
|
||||||
static const String _hiddenCacheKey = 'hidden_roll_cache';
|
static const String _hiddenCacheKey = 'hidden_roll_cache';
|
||||||
|
|
||||||
|
|
@ -69,9 +67,7 @@ class HomePageState extends State<HomePage> {
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
List totalList = [];
|
List totalList = [];
|
||||||
|
|
||||||
/// 按钮信息
|
/// 按钮信息
|
||||||
List<Map<String, dynamic>> buttonInfos = [
|
List<Map<String, dynamic>> buttonInfos = [
|
||||||
{
|
{
|
||||||
|
|
@ -121,7 +117,7 @@ class HomePageState extends State<HomePage> {
|
||||||
"title": "安全例会",
|
"title": "安全例会",
|
||||||
"unreadCount": 0,
|
"unreadCount": 0,
|
||||||
},
|
},
|
||||||
{"icon": "assets/icon-apps/home-xj.png", "title": "燃气巡检", "unreadCount": 0},
|
// {"icon": "assets/icon-apps/home-xj.png", "title": "燃气巡检", "unreadCount": 0},
|
||||||
];
|
];
|
||||||
|
|
||||||
/// 我的工作
|
/// 我的工作
|
||||||
|
|
@ -190,12 +186,14 @@ class HomePageState extends State<HomePage> {
|
||||||
// 使用初始化加载:先恢复缓存(若存在则直接显示),然后再发起网络请求(成功则覆盖缓存)
|
// 使用初始化加载:先恢复缓存(若存在则直接显示),然后再发起网络请求(成功则覆盖缓存)
|
||||||
BadgeManager().initAllModules();
|
BadgeManager().initAllModules();
|
||||||
_initialLoad();
|
_initialLoad();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// 首次加载:先恢复缓存(如果有),然后在后台去刷新(只有当无缓存时才显示 loading)
|
/// 首次加载:先恢复缓存(如果有),然后在后台去刷新(只有当无缓存时才显示 loading)
|
||||||
Future<void> _initialLoad() async {
|
Future<void> _initialLoad() async {
|
||||||
final result = await AuthService.checkUpdate();
|
final result = await AuthService.checkUpdate();
|
||||||
try{
|
try{
|
||||||
|
|
||||||
if (FormUtils.hasValue(result, 'pd')) {
|
if (FormUtils.hasValue(result, 'pd')) {
|
||||||
Map pd = result['pd'];
|
Map pd = result['pd'];
|
||||||
final versionInfo = await getAppVersion();
|
final versionInfo = await getAppVersion();
|
||||||
|
|
@ -206,12 +204,9 @@ class HomePageState extends State<HomePage> {
|
||||||
context,
|
context,
|
||||||
barrierDismissible:false,
|
barrierDismissible:false,
|
||||||
title: '更新通知',
|
title: '更新通知',
|
||||||
content:
|
content: isWifi ? '发现新版本,是否更新?为了更好的体验,请更新到最新版本。' : '发现新版本,检查到您当前使用的是移动网络,是否更新?更新时请注意流量消耗。为了更好的体验,请更新到最新版本。',
|
||||||
isWifi
|
|
||||||
? '发现新版本,是否更新?为了更好的体验,请更新到最新版本。'
|
|
||||||
: '发现新版本,检查到您当前使用的是移动网络,是否更新?更新时请注意流量消耗。为了更好的体验,请更新到最新版本。',
|
|
||||||
cancelText: pd['ISUPDATE'] == '1' ? '' : '稍后更新',
|
cancelText: pd['ISUPDATE'] == '1' ? '' : '稍后更新',
|
||||||
confirmText: '立即更新',
|
confirmText: '立即更新'
|
||||||
);
|
);
|
||||||
if (ok) {
|
if (ok) {
|
||||||
if (Platform.isIOS) {
|
if (Platform.isIOS) {
|
||||||
|
|
@ -220,12 +215,15 @@ class HomePageState extends State<HomePage> {
|
||||||
final apkUrl = pd['FILEURL'] ?? '';
|
final apkUrl = pd['FILEURL'] ?? '';
|
||||||
await showUpdateConfirm(context, apkUrl: apkUrl);
|
await showUpdateConfirm(context, apkUrl: apkUrl);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}catch(_){}
|
}catch(_){}
|
||||||
|
|
||||||
|
|
||||||
final corppromiseData = await ApiService.checkSafeCorppromise();
|
final corppromiseData = await ApiService.checkSafeCorppromise();
|
||||||
if (corppromiseData['ISSIGN'] == 1) {
|
if (corppromiseData['ISSIGN'] == 1) {
|
||||||
// 承诺
|
// 承诺
|
||||||
|
|
@ -234,6 +232,7 @@ class HomePageState extends State<HomePage> {
|
||||||
title: '温馨提示',
|
title: '温馨提示',
|
||||||
content: '有未签署的安全承诺,点击确认前往签署',
|
content: '有未签署的安全承诺,点击确认前往签署',
|
||||||
force: true,
|
force: true,
|
||||||
|
|
||||||
);
|
);
|
||||||
if (confirmed) {
|
if (confirmed) {
|
||||||
Navigator.pushReplacement(
|
Navigator.pushReplacement(
|
||||||
|
|
@ -248,7 +247,6 @@ class HomePageState extends State<HomePage> {
|
||||||
// 拉取其他数据 + 隐患列表(当 hiddenList 为空时显示 loading,否则不显示)
|
// 拉取其他数据 + 隐患列表(当 hiddenList 为空时显示 loading,否则不显示)
|
||||||
_fetchData();
|
_fetchData();
|
||||||
_fetchHiddenList(showLoading: hiddenList.isEmpty);
|
_fetchHiddenList(showLoading: hiddenList.isEmpty);
|
||||||
|
|
||||||
/// 清单列表
|
/// 清单列表
|
||||||
final data = await ApiService.getListData();
|
final data = await ApiService.getListData();
|
||||||
if (data['result'] == 'success') {
|
if (data['result'] == 'success') {
|
||||||
|
|
@ -580,6 +578,7 @@ class HomePageState extends State<HomePage> {
|
||||||
pushPage(HomeNfcListPage(), context);
|
pushPage(HomeNfcListPage(), context);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
}).toList(),
|
}).toList(),
|
||||||
|
|
@ -776,6 +775,7 @@ class HomePageState extends State<HomePage> {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Future<bool> _getIsRest( )async {
|
Future<bool> _getIsRest( )async {
|
||||||
try {
|
try {
|
||||||
final raw = await ApiService.getIsRest();
|
final raw = await ApiService.getIsRest();
|
||||||
|
|
@ -794,4 +794,5 @@ class HomePageState extends State<HomePage> {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1623,7 +1623,7 @@ class ConfirmWithSignWidget extends StatelessWidget {
|
||||||
this.isShowTime = true,
|
this.isShowTime = true,
|
||||||
}) : super(key: key);
|
}) : super(key: key);
|
||||||
|
|
||||||
// 允许外部传入 null({}但构建内部会降级为 ,避免空异常)
|
// 允许外部传入 null(但构建内部会降级为 {},避免空异常)
|
||||||
final Map<String, dynamic>? signs;
|
final Map<String, dynamic>? signs;
|
||||||
final Map<String, dynamic>? pd;
|
final Map<String, dynamic>? pd;
|
||||||
final String baseImgPath;
|
final String baseImgPath;
|
||||||
|
|
|
||||||
|
|
@ -322,7 +322,7 @@ spacing: 12,
|
||||||
if (picked != null) {
|
if (picked != null) {
|
||||||
setState(() {
|
setState(() {
|
||||||
endTime = DateFormat(
|
endTime = DateFormat(
|
||||||
'yyyy-MM-dd HH:mm:ss',
|
'yyyy-MM-dd HH:mm',
|
||||||
).format(picked);
|
).format(picked);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -261,7 +261,7 @@ if (reasonText.isEmpty) {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
appBar: MyAppbar(title: '吊装作业人意见'),
|
appBar: MyAppbar(title: '作业人意见'),
|
||||||
body: SafeArea(
|
body: SafeArea(
|
||||||
child: SingleChildScrollView(
|
child: SingleChildScrollView(
|
||||||
padding: EdgeInsets.all(12),
|
padding: EdgeInsets.all(12),
|
||||||
|
|
@ -285,7 +285,7 @@ if (reasonText.isEmpty) {
|
||||||
Row(
|
Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
children: [
|
children: [
|
||||||
ListItemFactory.headerTitle('吊装作业人'),
|
ListItemFactory.headerTitle('作业人'),
|
||||||
CustomButton(
|
CustomButton(
|
||||||
text: '新增手写签字',
|
text: '新增手写签字',
|
||||||
height: 36,
|
height: 36,
|
||||||
|
|
|
||||||
|
|
@ -31,10 +31,6 @@ class DangerWaitBean {
|
||||||
final String itemNameOne;
|
final String itemNameOne;
|
||||||
final String itemNameTwo;
|
final String itemNameTwo;
|
||||||
|
|
||||||
final String laiYuanId;
|
|
||||||
final String laiYuanName;
|
|
||||||
|
|
||||||
|
|
||||||
DangerWaitBean({
|
DangerWaitBean({
|
||||||
required this.selectedCategoryId,
|
required this.selectedCategoryId,
|
||||||
required this.selectedDepartmentId,
|
required this.selectedDepartmentId,
|
||||||
|
|
@ -47,8 +43,7 @@ class DangerWaitBean {
|
||||||
required this.endTime,
|
required this.endTime,
|
||||||
required this.itemNameOne,
|
required this.itemNameOne,
|
||||||
required this.itemNameTwo,
|
required this.itemNameTwo,
|
||||||
required this.laiYuanId,
|
|
||||||
required this.laiYuanName,
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -59,7 +54,6 @@ class DangerWaitBean {
|
||||||
|
|
||||||
String startTime,String endTime,
|
String startTime,String endTime,
|
||||||
String itemNameOne,String itemNameTwo,
|
String itemNameOne,String itemNameTwo,
|
||||||
String laiYuanId,String laiYuanName,
|
|
||||||
) {
|
) {
|
||||||
return DangerWaitBean(
|
return DangerWaitBean(
|
||||||
selectedCategoryId:selectedCategoryId,
|
selectedCategoryId:selectedCategoryId,
|
||||||
|
|
@ -73,8 +67,6 @@ class DangerWaitBean {
|
||||||
endTime:endTime,
|
endTime:endTime,
|
||||||
itemNameOne:itemNameOne,
|
itemNameOne:itemNameOne,
|
||||||
itemNameTwo:itemNameTwo,
|
itemNameTwo:itemNameTwo,
|
||||||
laiYuanId:laiYuanId,
|
|
||||||
laiYuanName:laiYuanName,
|
|
||||||
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
@ -84,7 +76,7 @@ class DangerWaitBean {
|
||||||
"investigationMethodOption":investigationMethodOption,"investigationMethodId":investigationMethodId,
|
"investigationMethodOption":investigationMethodOption,"investigationMethodId":investigationMethodId,
|
||||||
"hazardLevelOption":hazardLevelOption,"dangerStatusOption":dangerStatusOption,
|
"hazardLevelOption":hazardLevelOption,"dangerStatusOption":dangerStatusOption,
|
||||||
"startTime":startTime,"endTime":endTime,
|
"startTime":startTime,"endTime":endTime,
|
||||||
"itemNameOne":itemNameOne,"itemNameTwo":itemNameTwo,"laiYuanId":laiYuanId,"laiYuanName":laiYuanName,};
|
"itemNameOne":itemNameOne,"itemNameTwo":itemNameTwo,};
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -93,7 +85,7 @@ class DangerWaitBean {
|
||||||
class DangerWaitDrawer extends StatefulWidget {
|
class DangerWaitDrawer extends StatefulWidget {
|
||||||
const DangerWaitDrawer(this.treeJson, {super.key,required this.onClose});
|
const DangerWaitDrawer(this.treeJson, {super.key,required this.onClose});
|
||||||
|
|
||||||
final Function(String,String,String,String,String,String,String,String) onClose; // 回调函数
|
final Function(String,String,String,String,String,String,String) onClose; // 回调函数
|
||||||
final String treeJson;
|
final String treeJson;
|
||||||
// final DangerWaitBean waitBean;
|
// final DangerWaitBean waitBean;
|
||||||
|
|
||||||
|
|
@ -131,12 +123,6 @@ class DangerWaitDrawerState extends State<DangerWaitDrawer> {
|
||||||
String itemNameOne="请选择";
|
String itemNameOne="请选择";
|
||||||
String itemNameTwo="请选择";
|
String itemNameTwo="请选择";
|
||||||
|
|
||||||
//隐患来源:
|
|
||||||
List<WaitListBean> laiYuanList =[];
|
|
||||||
|
|
||||||
String laiYuanId="";
|
|
||||||
String laiYuanName="请选择";
|
|
||||||
|
|
||||||
// 转换为List<Map<String, dynamic>>
|
// 转换为List<Map<String, dynamic>>
|
||||||
late List<Map<String, dynamic>> departmentList ;
|
late List<Map<String, dynamic>> departmentList ;
|
||||||
|
|
||||||
|
|
@ -145,7 +131,6 @@ class DangerWaitDrawerState extends State<DangerWaitDrawer> {
|
||||||
final List<String> investigationMethod = ["风险排查隐患", "隐患排查隐患"];
|
final List<String> investigationMethod = ["风险排查隐患", "隐患排查隐患"];
|
||||||
final List<String> hazardLevel = [" 一般风险 ", " 重大风险 "];
|
final List<String> hazardLevel = [" 一般风险 ", " 重大风险 "];
|
||||||
final List<String> dangerStatus = ["未整改", "已整改", "已验收", "已过期"];
|
final List<String> dangerStatus = ["未整改", "已整改", "已验收", "已过期"];
|
||||||
final List<String> laiYuanStatus = ["隐患快报", "隐患排查", "标准排查", "专项检查", "安全检查", "NFC设备巡检"];
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
|
|
@ -177,8 +162,6 @@ class DangerWaitDrawerState extends State<DangerWaitDrawer> {
|
||||||
}
|
}
|
||||||
itemNameOne= dangerWaitBean["itemNameOne"];
|
itemNameOne= dangerWaitBean["itemNameOne"];
|
||||||
itemNameTwo= dangerWaitBean["itemNameTwo"];
|
itemNameTwo= dangerWaitBean["itemNameTwo"];
|
||||||
laiYuanId= dangerWaitBean["laiYuanId"];
|
|
||||||
laiYuanName= dangerWaitBean["laiYuanName"];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -186,16 +169,6 @@ class DangerWaitDrawerState extends State<DangerWaitDrawer> {
|
||||||
print("解析失败: $e");
|
print("解析失败: $e");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//隐患来源数据处理
|
|
||||||
// setState(() {
|
|
||||||
// for(int i=0;i<laiYuanStatus.length;i++){
|
|
||||||
// WaitListBean waitListBean=WaitListBean(id: "${i+1}", name: laiYuanStatus[i], parentId: "");
|
|
||||||
// laiYuanList.add(waitListBean);
|
|
||||||
// }
|
|
||||||
// });
|
|
||||||
|
|
||||||
|
|
||||||
// // 解析JSON字符串
|
// // 解析JSON字符串
|
||||||
// jsonList = json.decode(widget.treeJson);
|
// jsonList = json.decode(widget.treeJson);
|
||||||
// departmentList = List<Map<String, dynamic>>.from(jsonList);
|
// departmentList = List<Map<String, dynamic>>.from(jsonList);
|
||||||
|
|
@ -288,27 +261,6 @@ class DangerWaitDrawerState extends State<DangerWaitDrawer> {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 隐患来源显示分类选择器
|
|
||||||
void showCategoryPickerTwo() {
|
|
||||||
showModalBottomSheet(
|
|
||||||
context: context,
|
|
||||||
isScrollControlled: true,
|
|
||||||
barrierColor: Colors.black54,
|
|
||||||
backgroundColor: Colors.transparent,
|
|
||||||
builder: (ctx) => WaitListPicker(
|
|
||||||
data: laiYuanList,
|
|
||||||
onSelected: (item) {
|
|
||||||
setState(() {
|
|
||||||
laiYuanId=item!.id;
|
|
||||||
laiYuanName=item!.name;
|
|
||||||
setResult();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
return SafeArea(
|
return SafeArea(
|
||||||
child:
|
child:
|
||||||
SingleChildScrollView( // 添加这一行
|
SingleChildScrollView( // 添加这一行
|
||||||
|
|
@ -362,18 +314,6 @@ class DangerWaitDrawerState extends State<DangerWaitDrawer> {
|
||||||
// },
|
// },
|
||||||
),
|
),
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// const SizedBox(height: 6),
|
|
||||||
// // 管控部门
|
|
||||||
// _buildDropdownBox(
|
|
||||||
// "隐患来源",
|
|
||||||
// display: laiYuanName ?? '请选择',
|
|
||||||
// onTap: () {
|
|
||||||
// showCategoryPickerTwo();
|
|
||||||
// }
|
|
||||||
// ),
|
|
||||||
|
|
||||||
const SizedBox(height: 12),
|
const SizedBox(height: 12),
|
||||||
const Text(
|
const Text(
|
||||||
"排查方式",
|
"排查方式",
|
||||||
|
|
@ -395,8 +335,6 @@ class DangerWaitDrawerState extends State<DangerWaitDrawer> {
|
||||||
itemCount: investigationMethod.length,
|
itemCount: investigationMethod.length,
|
||||||
itemBuilder: _itemGridviewItem
|
itemBuilder: _itemGridviewItem
|
||||||
),
|
),
|
||||||
|
|
||||||
|
|
||||||
// Row(
|
// Row(
|
||||||
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
// children: List.generate(investigationMethod.length, (idx) {
|
// children: List.generate(investigationMethod.length, (idx) {
|
||||||
|
|
@ -570,9 +508,6 @@ class DangerWaitDrawerState extends State<DangerWaitDrawer> {
|
||||||
itemNameOne="请选择";
|
itemNameOne="请选择";
|
||||||
itemNameTwo="请选择";
|
itemNameTwo="请选择";
|
||||||
|
|
||||||
laiYuanId="";
|
|
||||||
laiYuanName="请选择";
|
|
||||||
|
|
||||||
setResult();
|
setResult();
|
||||||
// widget.onClose("","","","","","","");
|
// widget.onClose("","","","","","","");
|
||||||
|
|
||||||
|
|
@ -763,9 +698,7 @@ class DangerWaitDrawerState extends State<DangerWaitDrawer> {
|
||||||
_selectedCategoryId ?? "", _selectedDepartmentId?? "",
|
_selectedCategoryId ?? "", _selectedDepartmentId?? "",
|
||||||
_investigationMethodOption,investigationMethodId,
|
_investigationMethodOption,investigationMethodId,
|
||||||
_hazardLevelOption, _dangerStatusOption,
|
_hazardLevelOption, _dangerStatusOption,
|
||||||
startTime, endTime,itemNameOne, itemNameTwo,laiYuanId,laiYuanName);
|
startTime, endTime,itemNameOne, itemNameTwo);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
String jsonString = jsonEncode(waitBean.toJson());
|
String jsonString = jsonEncode(waitBean.toJson());
|
||||||
SessionService.instance.setDangerWaitInfo(jsonString);
|
SessionService.instance.setDangerWaitInfo(jsonString);
|
||||||
|
|
@ -778,7 +711,6 @@ class DangerWaitDrawerState extends State<DangerWaitDrawer> {
|
||||||
_dangerStatusOption!=-1?dangerStatusId[_dangerStatusOption]:"",
|
_dangerStatusOption!=-1?dangerStatusId[_dangerStatusOption]:"",
|
||||||
_startDate!=null?startTime:"",
|
_startDate!=null?startTime:"",
|
||||||
_endDate!=null?endTime:"",
|
_endDate!=null?endTime:"",
|
||||||
laiYuanId?? ""
|
|
||||||
); // 触发回调
|
); // 触发回调
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -53,7 +53,7 @@ class _MineDutyDetailPage extends State<MineDutyDetailPage> {
|
||||||
|
|
||||||
// 申请人信息
|
// 申请人信息
|
||||||
if (widget.item["REVIEW_STATUS"] != '2')
|
if (widget.item["REVIEW_STATUS"] != '2')
|
||||||
_buildInfoRowTwo("审批人:", "${FormUtils.hasValue(widget.item, "REVIEW_USER_NAME") ? widget.item["REVIEW_USER_NAME"] : "无"}${FormUtils.hasValue(widget.item, "REVIEW_USER_DEPARTMENTNAME") ? "[${widget.item["REVIEW_USER_DEPARTMENTNAME"]}]": ""}",),
|
_buildInfoRowTwo("审批人:", "${FormUtils.hasValue(widget.item, "REVIEW_USER_NAME") ? widget.item["REVIEW_USER_NAME"] : "unfind"}[${FormUtils.hasValue(widget.item, "REVIEW_USER_DEPARTMENTNAME") ? widget.item["REVIEW_USER_DEPARTMENTNAME"] : "unfind"}]",),
|
||||||
// Container(
|
// Container(
|
||||||
// padding: const EdgeInsets.symmetric(
|
// padding: const EdgeInsets.symmetric(
|
||||||
// horizontal: 5,
|
// horizontal: 5,
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
|
import 'dart:ffi';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
import 'h_colors.dart';
|
import 'h_colors.dart';
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
import 'dart:ffi';
|
||||||
import 'dart:ui';
|
import 'dart:ui';
|
||||||
|
|
||||||
import 'package:flutter_baidu_mapapi_base/flutter_baidu_mapapi_base.dart';
|
import 'package:flutter_baidu_mapapi_base/flutter_baidu_mapapi_base.dart';
|
||||||
|
|
|
||||||
|
|
@ -1,33 +0,0 @@
|
||||||
// lib/utils/platform_utils.dart
|
|
||||||
import 'package:flutter/foundation.dart' show kIsWeb, defaultTargetPlatform, TargetPlatform;
|
|
||||||
|
|
||||||
/// 简单的跨平台判断工具,避免在 web 上引用 dart:io
|
|
||||||
class PlatformUtils {
|
|
||||||
/// 是否在浏览器
|
|
||||||
static bool get isWeb => kIsWeb;
|
|
||||||
|
|
||||||
/// 是否为 iOS(注意:在 web 上会返回 false)
|
|
||||||
static bool get isIOS => !kIsWeb && defaultTargetPlatform == TargetPlatform.iOS;
|
|
||||||
|
|
||||||
/// 是否为 Android(在 web 上会返回 false)
|
|
||||||
static bool get isAndroid => !kIsWeb && defaultTargetPlatform == TargetPlatform.android;
|
|
||||||
|
|
||||||
/// 返回一个简单的操作系统标识字符串(web 会返回 'web')
|
|
||||||
static String get operatingSystem {
|
|
||||||
if (kIsWeb) return 'web';
|
|
||||||
switch (defaultTargetPlatform) {
|
|
||||||
case TargetPlatform.android:
|
|
||||||
return 'android';
|
|
||||||
case TargetPlatform.iOS:
|
|
||||||
return 'ios';
|
|
||||||
case TargetPlatform.macOS:
|
|
||||||
return 'macos';
|
|
||||||
case TargetPlatform.linux:
|
|
||||||
return 'linux';
|
|
||||||
case TargetPlatform.windows:
|
|
||||||
return 'windows';
|
|
||||||
case TargetPlatform.fuchsia:
|
|
||||||
return 'fuchsia';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Loading…
Reference in New Issue