diff --git a/lib/components/UserInfo.dart b/lib/components/UserInfo.dart index b47d6db..6c73b25 100644 --- a/lib/components/UserInfo.dart +++ b/lib/components/UserInfo.dart @@ -1,16 +1,19 @@ +import 'package:hyzp_ybqx/components/commonFun.dart'; + import 'EncryptUtil.dart'; -import 'dart:convert'; +import 'commonFun.dart'; class UserInfo { UserInfo({this.mapUserInfoRet}) { setUserInfo(theMapUserInfoRet: mapUserInfoRet); } - setUserInfo({Map theMapUserInfoRet}) { + Future setUserInfo({Map theMapUserInfoRet}) async { if (200 == theMapUserInfoRet["ret"]) { mapUserInfoRet = theMapUserInfoRet; mapUserInfo = theMapUserInfoRet["data"]; print('mapUserInfo = ${mapUserInfo.toString()}'); + setQxInfo(mapUserInfo["qx_code"], mapUserInfo["qx_name"]); } } @@ -18,23 +21,107 @@ class UserInfo { setUserInfoFaceLogin(Map _mapGetData) { mapUserInfo['user_id'] = _mapGetData['user_id']; mapUserInfo['token'] = _mapGetData['token']; + setQxInfo(mapUserInfo["qx_code"], mapUserInfo["qx_name"]); + } + + setQxInfo(String _qx_code, String _qx_name) { + qx_code = int.parse(_qx_code.trim()); + qx_name = _qx_name; + + // 511528、兴文县 + // int qx_code = 511528; + // String qx_name = '宜宾市兴文'; + // String service_tel = '\n服务热线:187-8467-8300'; + // String copyright_info = '© ' + qx_name + '生态环境局 四川省踏石科技 版权所有' + service_tel; + // String copyright_info_PinYin = 'YIBIN XINGWEN BLACK SMOKE CAR CAPTURE SYSTEM'; + // // 兴文县中心地址:天泉商城 + // double center_latitude = 28.29678023715008; // 区县中心纬度 + // double center_longitude = 105.24189826141459; // 区县中心经度 + + // 511501 市辖区 + // 511502 翠屏区 + // 511503 南溪区 + // 511504 叙州区 + // 511523 江安县 + // 511524 长宁县 + // 511525 高县 + // 511526 珙县 + // 511527 筠连县 + // 511528 兴文县 + // 511529 屏山县 + + // 511501、宜宾市生态环境局、四川省踏石科技,保留客服电话 + // 511502、宜宾市翠屏生态环境局,去掉客服电话 + // 511505、宜宾三江新区城乡融合发展局、四川省踏石科技,保留客服电话 + // 511524、宜宾市长宁生态环境局,去掉客服电话 + // 511528、宜宾市兴文生态环境局、四川省踏石科技,保留客服电话 + // 511527、宜宾市筠连生态环境局、四川省踏石科技,保留客服电话 + + qx_name_long = '宜宾市' + trim_county(qx_name); + service_tel = '\n服务热线:187-8467-8300'; + copyright_info = '© ' + qx_name_long + '生态环境局 四川省踏石科技 版权所有' + service_tel; + // 中心地址:宜宾市白塔山 + center_latitude = 28.77914; // 区县中心纬度 + center_longitude = 104.644079; // 区县中心经度 + + // App开发登录用户: + // 翠屏区:mancpq + // 三江新区:mansjxq + // 长宁县:mancnx + // 高县:mangx + // 筠连县:manjlx + // 兴文县:manxwx + switch (qx_code) { + case 511502: // 翠屏区 + service_tel = ''; + copyright_info = '© ' + qx_name_long + '生态环境局 版权所有' + service_tel; + copyright_info_PinYin = 'YIBIN CUIPING BLACK SMOKE CAR CAPTURE SYSTEM'; + break; + case 511505: // 三江新区 + qx_name_long = '宜宾' + qx_name; + copyright_info = '© ' + qx_name_long + '城乡融合发展局 四川省踏石科技\n版权所有, ' + service_tel; + copyright_info_PinYin = 'YIBIN SANJIANG NEW AREA BLACK SMOKE CAR CAPTURE SYSTEM'; + break; + case 511524: // 长宁县 + service_tel = ''; + copyright_info = '© ' + qx_name_long + '生态环境局 版权所有' + service_tel; + copyright_info_PinYin = 'YIBIN CHANGNING BLACK SMOKE CAR CAPTURE SYSTEM'; + break; + case 511525: // 高县 + copyright_info_PinYin = 'YIBIN GAOXIAN BLACK SMOKE CAR CAPTURE SYSTEM'; + break; + case 511527: // 筠连县 + copyright_info_PinYin = 'YIBIN JUNLIAN BLACK SMOKE CAR CAPTURE SYSTEM'; + break; + case 511528: // 兴文县 + copyright_info_PinYin = 'YIBIN XINGWEN BLACK SMOKE CAR CAPTURE SYSTEM'; + // 中心地址:天泉商城 + center_latitude = 28.29678023715008; // 区县中心纬度 + center_longitude = 105.24189826141459; // 区县中心经度 + break; + default: + break; + } + } + + // 去除末尾的区县 + String trim_county(String _name) { + return _name.substring(0, _name.length - 1); } Map mapUserInfoRet = { "ret": 200, "data": { "is_login": true, - "user_id": 1, - "token": "B93EC91FA2FE293B7077162D4527FC4BB228CD6C0A4F24A882B9A8BBE6C3FB47" + "user_id": 152, + "token": "959091E2A5E362E22F22F8DBE05737A95545A43AF28B19AB3DAD5F8557EE2E29", + "qx_code": "511528", + "qx_name": "兴文县" }, "msg": "" }; - Map mapUserInfo = { - "is_login": false, - "user_id": -1, - "token": "" - }; + Map mapUserInfo = {"is_login": false, "user_id": -1, "token": "", "qx_code": "", "qx_name": ""}; //若list[i]为'',解密时会报错:aes decode error:RangeError: Value not in range: -16 String thisAndroidId = ''; //每个手机唯一的设备号 diff --git a/lib/components/commonFun.dart b/lib/components/commonFun.dart index 55e40c3..df4896a 100644 --- a/lib/components/commonFun.dart +++ b/lib/components/commonFun.dart @@ -43,8 +43,8 @@ import 'UserInfo.dart'; // 511501、宜宾市 // String APPkey = 'ijddvzgEGaxbzsbmCtpdohxHyrAArwJB'; // 宜宾市APPkey // String service_tel = '\n服务热线:187-8467-8300'; -// String qx_name = '宜宾'; -// String copyright_info = '© ' + qx_name + '市生态环境局 四川省踏石科技有限公司 版权所有' + service_tel; +// String yibin_QuXian = '宜宾'; +// String copyright_info = '© ' + yibin_QuXian + '市生态环境局 四川省踏石科技有限公司 版权所有' + service_tel; // String copyright_info_PinYin = 'YIBIN BLACK SMOKE CAR CAPTURE SYSTEM'; // const serviceUrl_ybqx = 'http://125.64.218.67:9904'; // 宜宾市 @@ -74,6 +74,7 @@ const String setSphericalCameraUrl = 'http://125.64.218.67:9914/'; // 一套APP适应多个区县,等用户登录后,会返回 qx_code、qx_name int qx_code = -1; String qx_name = ''; +String qx_name_long = ''; String service_tel = ''; String copyright_info = ''; String copyright_info_PinYin = ''; @@ -81,6 +82,18 @@ String copyright_info_PinYin = ''; double center_latitude = -1; // 区县中心纬度 double center_longitude = -1; // 区县中心经度 +clear_user_info() { + qx_code = -1; + qx_name = ''; + qx_name_long = ''; + service_tel = ''; + copyright_info = ''; + copyright_info_PinYin = ''; + // 区县中心地址 + center_latitude = -1; // 区县中心纬度 + center_longitude = -1; // 区县中心经度 +} + // 511528、兴文县 // int qx_code = 511528; // String qx_name = '宜宾市兴文'; @@ -220,6 +233,11 @@ UserInfo g_userInfo = UserInfo(mapUserInfoRet: { "msg": "" }); +// 去除末尾的区县 +String trim_county(String _name) { + return _name.substring(0, _name.length - 1); +} + Future getMapFromJson(var response) async { String _str = json.encode(response); Map _map = json.decode(_str); @@ -747,6 +765,13 @@ Widget getImageWidget() { color: Color.fromRGBO(49, 216, 123, 1), fontWeight: FontWeight.bold)), ), + SizedBox(height: ScreenUtil().setHeight(copyright_info.contains('\n') ? 50 : 90)), + Container( + alignment: Alignment.center, + child: Text(copyright_info, + style: TextStyle(fontSize: 13, color: Color.fromRGBO(192, 192, 192, 1)), + textAlign: TextAlign.center), + ), ], ), // child: Image.asset( diff --git a/lib/components/dioFun.dart b/lib/components/dioFun.dart index 0a7bd3b..82d568b 100644 --- a/lib/components/dioFun.dart +++ b/lib/components/dioFun.dart @@ -475,7 +475,7 @@ Future getAllStatisData({String ip = '', String date = ''}) async { } //访问区县后台接口,需要统一添加区县代码参数 - map['qx_code'] = qx_code; + map['qxdm'] = qx_code; Dio dio = Dio(); String api = ServicePath.getStaAllUrl; @@ -735,7 +735,7 @@ Future getStatisData({@required String statisType, String ip = '', String date = } //访问区县后台接口,需要统一添加区县代码参数 - map['qx_code'] = qx_code; + map['qxdm'] = qx_code; Dio dio = Dio(); String api = mapStatisType[statisType]['api']; @@ -1963,7 +1963,7 @@ Future getThePageList( } //访问区县后台接口,需要统一添加区县代码参数 - map['qx_code'] = qx_code; + map['qxdm'] = qx_code; print('mapHyshlx[theHyshlx][api] = ${mapHyshlx[theHyshlx]['api']}'); // mapHyshlx[theHyshlx][api] = http://125.64.218.67:9904/?s=App.Car_Hyc.GetList diff --git a/lib/main.dart b/lib/main.dart index 8b3c822..213b04c 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -8,7 +8,6 @@ import 'package:flutter_bmfbase/BaiduMap/bmfmap_base.dart' show BMFMapSDK, BMF_C import 'package:flutter_screenutil/screenutil_init.dart'; import 'package:hyzp_ybqx/pages/Login/LoginTabs2.dart'; import 'package:hyzp_ybqx/pages/MyMsics/05_updated/MyUpdatedNew.dart'; -import 'package:hyzp_ybqx/pages/Works/TJXX/tj_data.dart'; import 'package:package_info/package_info.dart'; // 引入provider import 'package:provider/provider.dart'; @@ -65,7 +64,7 @@ class _MyAppState extends State { @override void initState() { initApp(); // 1、处理百度地图sdk初始化鉴权 - startGetStatisDataNew(); // 2、登录前提前获取统计数据,改善用户登录体验 + // startGetStatisDataNew(); // 2、登录前提前获取统计数据,改善用户登录体验 // 3、处理版本更新 PackageInfo.fromPlatform().then((PackageInfo packageInfo) async { String appName = packageInfo.appName; @@ -250,8 +249,7 @@ class _SplashScreenState extends State { // 屏幕高度 // child: Image.asset('assets/images/hyzp_ybqx00_yibin_launche.png', fit: BoxFit.cover), // child: Image.asset('assets/images/hyzp_ybqx01_cuiping_launche.png', fit: BoxFit.cover), - child: Image.asset('assets/images/hyzp_ybqx_launche.png', - fit: BoxFit.cover)), + child: Image.asset('assets/images/hyzp_ybqx_launche.png', fit: BoxFit.cover)), ], ), ); diff --git a/lib/pages/Login/LoginByName2.dart b/lib/pages/Login/LoginByName2.dart index 17b1ecc..21ab09f 100644 --- a/lib/pages/Login/LoginByName2.dart +++ b/lib/pages/Login/LoginByName2.dart @@ -55,7 +55,7 @@ class _LoginPageState extends State { }); } - //处理延迟登录 + // 一套APP适应多个区县登录过程05、处理延迟登录。等待预加载数据成功后,进行页面跳转 updateMayLogin() { //判断从网络获取三种统计数据是否完成 // if (listZptjStatisAlone.length >= dwSum && @@ -99,11 +99,16 @@ class _LoginPageState extends State { // Navigator.pushNamed(context, '/tabs', arguments: g_iIndex); // return; - if (!bMayLogin) { - bPreLoading = true; - try_setState(); - } + // if (!bMayLogin) { + // bPreLoading = true; + // try_setState(); + // } + + // 一套APP适应多个区县登录过程01、显示“加载中 ...” + bPreLoading = true; + try_setState(); + // 一套APP适应多个区县登录过程02、进行登录验证,保存登录信息 if (bRemmberPW) { Storage.setBool('bRemmberPW', bRemmberPW); //加密保存 @@ -158,9 +163,17 @@ class _LoginPageState extends State { if (true == response.data["data"]["is_login"]) { print('登录成功'); print('response.data = ${response.data}'); - //保存用户信息 + + // 一套APP适应多个区县登录过程03、登录成功,保存登录信息 Storage.setString('userInfo', json.encode(response.data["data"])); - g_userInfo.setUserInfo(theMapUserInfoRet: await getMapFromJson(response.data)); + g_userInfo + .setUserInfo(theMapUserInfoRet: await getMapFromJson(response.data)) + .then((value) { + // 一套APP适应多个区县登录过程04、登录成功,开始使用保存的登录信息预加载数据,并设置bLoginVerify = true + bLoginVerify = true; //处理延时登录,判断用户名登录是否验证通过 + startGetStatisDataNew(); // 2、登录前提前获取统计数据,改善用户登录体验 + // Navigator.pushNamed(context, '/tabs', arguments: g_iIndex); + }); //获取用户所属分组和相应权限 // getUserGroupAll().then((value) { // bLoginVerify = true; //处理延时登录,判断用户名登录是否验证通过 @@ -171,8 +184,9 @@ class _LoginPageState extends State { // Navigator.pushNamed(context, '/tabs', arguments: g_iIndex); // } // }); - bLoginVerify = true; //处理延时登录,判断用户名登录是否验证通过 - Navigator.pushNamed(context, '/tabs', arguments: g_iIndex); + + // bLoginVerify = true; //处理延时登录,判断用户名登录是否验证通过 + // Navigator.pushNamed(context, '/tabs', arguments: g_iIndex); } else { print('登录失败:${response.data["data"]}'); bLoginVerify = false; //处理延时登录,判断用户名登录是否验证通过