Merge branch 'release' of gitee.com:starlock-cn/app-starlock into release
# Conflicts: # images/lan/lan_en.json # images/lan/lan_keys.json # images/lan/lan_zh.json 解决冲突
This commit is contained in:
commit
4cf9c99e5d
@ -2,14 +2,14 @@
|
||||
"starLock": "Star Lock",
|
||||
"lockThrough": "Lock Through",
|
||||
"clickUnlockAndHoldDownClose": "Click To Unlock And Hold Down to Close",
|
||||
"checkingIn": "Checking In",
|
||||
"electronicKey": "Electronic Key",
|
||||
"checkingIn": "CheckIn",
|
||||
"electronicKey": "KeyCard",
|
||||
"password": "Password",
|
||||
"card": "Card",
|
||||
"fingerprint": "Fingerprint",
|
||||
"remoteControl": "RemoteControl",
|
||||
"fingerprint": "Finger",
|
||||
"remoteControl": "RemCtrl",
|
||||
"face": "face",
|
||||
"operatingRecord": "Operating Record",
|
||||
"operatingRecord": "OpLog",
|
||||
"doorLockLog": "Door lock log",
|
||||
"number": "Number",
|
||||
"additive": "Additive",
|
||||
@ -217,7 +217,7 @@
|
||||
"aboutToExpire": "About to expire",
|
||||
"deAuthorize": "de-authorize",
|
||||
"changeName": "Change name",
|
||||
"authorizedAdmin": "Authorized Admin",
|
||||
"authorizedAdmin": "Admin",
|
||||
"addAuthorizedAdmin": "Adding an Authorized Administrator",
|
||||
"lockGroup": "Lock Group",
|
||||
"transferSmartLock": "Transfer Smart Lock",
|
||||
@ -407,10 +407,10 @@
|
||||
"getFingerprint": "Get Fingerprint",
|
||||
"safeVerify": "Security verification",
|
||||
"deleteAccountTips": "After deleting the account, all your information and related records will be completely deleted from the platform, and can not be recovered, delete or not",
|
||||
"humanFace": "Human Face",
|
||||
"humanFace": "HmFace",
|
||||
"monitoring": "Monitoring",
|
||||
"videoLog": "Video Log",
|
||||
"messageReminding": "Message Reminding",
|
||||
"messageReminding": "Notice",
|
||||
"superAdmin": "Super Admin",
|
||||
"normalUser": "Normal User",
|
||||
"gatewayDevice": "Gateway Device",
|
||||
@ -454,7 +454,7 @@
|
||||
"videoSlot": "Video slot",
|
||||
"密码": "Password",
|
||||
"卡": "Card",
|
||||
"指纹": "Fingerprint",
|
||||
"指纹": "Finger",
|
||||
"人脸": "Face",
|
||||
"配件商城": "Lock Mall",
|
||||
"公司名称": "Company Name",
|
||||
@ -487,7 +487,7 @@
|
||||
"钥匙将在": "The key will be in",
|
||||
"天后失效": "Days later invalid",
|
||||
"电量更新时间:": "Power update time:",
|
||||
"新增配件": "Add accessories",
|
||||
"新增配件": "Add",
|
||||
"请在锁旁边完成第一次开锁": "Please complete the first unlock next to the lock",
|
||||
"正在开锁中...": "Unlocking...",
|
||||
"你的钥匙": "Your key",
|
||||
@ -911,5 +911,12 @@
|
||||
"选择时间段":"Select time period",
|
||||
"导出":"Export",
|
||||
"批量导出":"Batch export",
|
||||
"读取记录":"Read record"
|
||||
"读取记录":"Read record",
|
||||
"手机需联网":"NeedNet",
|
||||
"设备":"Device",
|
||||
"消息":"Message",
|
||||
"智能分析":"Intelligent analytics",
|
||||
"精准识别设备事件,过滤无效信息":"Accurately identify device events and filter out invalid information",
|
||||
"系统设置":"System settings",
|
||||
"系统的全局配置在此项内进行设置":"The global configuration of the system is set in this item"
|
||||
}
|
||||
|
||||
@ -943,5 +943,12 @@
|
||||
"选择时间段":"选择时间段",
|
||||
"导出":"导出",
|
||||
"批量导出":"批量导出",
|
||||
"读取记录":"读取记录"
|
||||
"读取记录":"读取记录",
|
||||
"手机需联网":"手机需联网",
|
||||
"设备":"设备",
|
||||
"消息":"消息",
|
||||
"智能分析":"智能分析",
|
||||
"精准识别设备事件,过滤无效信息":"精准识别设备事件,过滤无效信息",
|
||||
"系统设置":"系统设置",
|
||||
"系统的全局配置在此项内进行设置":"系统的全局配置在此项内进行设置"
|
||||
}
|
||||
|
||||
@ -908,5 +908,12 @@
|
||||
"选择时间段":"选择时间段",
|
||||
"导出":"导出",
|
||||
"批量导出":"批量导出",
|
||||
"读取记录":"读取记录"
|
||||
"读取记录":"读取记录",
|
||||
"手机需联网":"手机需联网",
|
||||
"设备":"设备",
|
||||
"消息":"消息",
|
||||
"智能分析":"智能分析",
|
||||
"精准识别设备事件,过滤无效信息":"精准识别设备事件,过滤无效信息",
|
||||
"系统设置":"系统设置",
|
||||
"系统的全局配置在此项内进行设置":"系统的全局配置在此项内进行设置"
|
||||
}
|
||||
|
||||
BIN
ios/.DS_Store
vendored
BIN
ios/.DS_Store
vendored
Binary file not shown.
@ -103,7 +103,7 @@ class _LockDetailPageState extends State<LockDetailPage>
|
||||
child: Column(
|
||||
children: <Widget>[
|
||||
SizedBox(
|
||||
height: 15.h,
|
||||
height: 10.h,
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 24.w),
|
||||
@ -114,20 +114,16 @@ class _LockDetailPageState extends State<LockDetailPage>
|
||||
),
|
||||
),
|
||||
SizedBox(
|
||||
height: 35.h,
|
||||
height: 20.h,
|
||||
),
|
||||
xhjInfoView(),
|
||||
SizedBox(
|
||||
height: 35.h,
|
||||
height: 20.h,
|
||||
),
|
||||
labelText(
|
||||
img: 'images/icon_slider_horizontal.png',
|
||||
text: '功能'.tr,
|
||||
child: bottomWidget()),
|
||||
labelText(
|
||||
img: 'images/icon_puzzlepiece_extension.png',
|
||||
text: '配件'.tr,
|
||||
child: attachmentWidget()),
|
||||
btnText(
|
||||
img: 'images/main/icon_main_set.png',
|
||||
text: TranslationLoader.lanKeys!.set!.tr,
|
||||
@ -141,6 +137,10 @@ class _LockDetailPageState extends State<LockDetailPage>
|
||||
'isOnlyOneData': state.isOnlyOneData
|
||||
});
|
||||
}),
|
||||
labelText(
|
||||
img: 'images/icon_puzzlepiece_extension.png',
|
||||
text: '配件'.tr,
|
||||
child: attachmentWidget()),
|
||||
],
|
||||
),
|
||||
),
|
||||
@ -208,7 +208,7 @@ class _LockDetailPageState extends State<LockDetailPage>
|
||||
{required String img, required String text, required Widget child}) {
|
||||
return Container(
|
||||
margin: EdgeInsets.symmetric(horizontal: 0.05.sw, vertical: 15.h),
|
||||
padding: EdgeInsets.symmetric(horizontal: 0.05.sw, vertical: 20.h),
|
||||
padding: EdgeInsets.symmetric(horizontal: 0.05.sw, vertical: 15.h),
|
||||
decoration: BoxDecoration(
|
||||
color: Colors.white,
|
||||
borderRadius: BorderRadius.circular(16.r),
|
||||
@ -778,7 +778,7 @@ class _LockDetailPageState extends State<LockDetailPage>
|
||||
? AppColors.mainColor
|
||||
: AppColors.btnDisableColor),
|
||||
),
|
||||
if (add) SizedBox(width: 20.w) else SizedBox(width: 40.w),
|
||||
if (add) SizedBox(width: 20.w) else SizedBox(width: 20.w),
|
||||
FlavorsImg(
|
||||
child: Image.asset('images/main/icon_lockDetail_needNetwork.png',
|
||||
width: 24.w,
|
||||
@ -789,7 +789,7 @@ class _LockDetailPageState extends State<LockDetailPage>
|
||||
),
|
||||
SizedBox(width: 6.w),
|
||||
Text(
|
||||
'手机需联网',
|
||||
'手机需联网'.tr,
|
||||
style: TextStyle(
|
||||
fontSize: 20.sp,
|
||||
color: state.isOpenLockNeedOnline.value == 1
|
||||
@ -900,7 +900,7 @@ class _LockDetailPageState extends State<LockDetailPage>
|
||||
child: GridView.count(
|
||||
crossAxisCount: 4,
|
||||
// childAspectRatio: 3,
|
||||
crossAxisSpacing: 20.w,
|
||||
crossAxisSpacing: 0.w,
|
||||
mainAxisSpacing: 0.h,
|
||||
shrinkWrap: true,
|
||||
physics: const NeverScrollableScrollPhysics(),
|
||||
@ -946,8 +946,8 @@ class _LockDetailPageState extends State<LockDetailPage>
|
||||
child: GridView.count(
|
||||
crossAxisCount: 4,
|
||||
// childAspectRatio: 3,
|
||||
crossAxisSpacing: 25.h,
|
||||
mainAxisSpacing: 5.h,
|
||||
crossAxisSpacing: 0.h,
|
||||
mainAxisSpacing: 0.h,
|
||||
shrinkWrap: true,
|
||||
physics: const NeverScrollableScrollPhysics(),
|
||||
children: getBottomWidget()),
|
||||
|
||||
@ -36,15 +36,16 @@ class LockMainLogic extends BaseGetXController {
|
||||
isUnShowLoading: isUnShowLoading,
|
||||
);
|
||||
if (entity.errorCode!.codeIsSuccessful) {
|
||||
loadMainDataLogic(entity.data!);
|
||||
await loadMainDataLogic(entity.data!);
|
||||
}
|
||||
return entity;
|
||||
}
|
||||
|
||||
void loadMainDataLogic(LockListInfoGroupEntity entity) {
|
||||
final bool every = entity.groupList!.every((GroupList list) =>
|
||||
(list.lockList ?? <LockListInfoItemEntity>[]).isEmpty);
|
||||
if (entity.groupList!.isEmpty || every) {
|
||||
Future<void> loadMainDataLogic(LockListInfoGroupEntity entity) async {
|
||||
final bool every = entity.groupList?.every((GroupList list) =>
|
||||
(list.lockList ?? <LockListInfoItemEntity>[]).isEmpty) ??
|
||||
true;
|
||||
if ((entity.groupList ?? <GroupList>[]).isEmpty || every) {
|
||||
state.dataLength.value = 0;
|
||||
} else if (entity.groupList!.length == 1) {
|
||||
final GroupList groupList = entity.groupList![0];
|
||||
@ -70,7 +71,7 @@ class LockMainLogic extends BaseGetXController {
|
||||
}
|
||||
});
|
||||
}
|
||||
Storage.saveMainListData(entity);
|
||||
await Storage.saveMainListData(entity);
|
||||
}
|
||||
|
||||
/// 获取联网类型
|
||||
@ -148,7 +149,8 @@ class LockMainLogic extends BaseGetXController {
|
||||
final LockListInfoEntity entity = await ApiRepository.to.getStarLockInfo(
|
||||
keyId: keyId,
|
||||
);
|
||||
if (entity.errorCode!.codeIsSuccessful) {
|
||||
if (entity.errorCode!.codeIsSuccessful &&
|
||||
(entity.data?.groupList ?? <GroupList>[]).isNotEmpty) {
|
||||
state.lockListInfoGroupEntity.value.groupList ??= <GroupList>[];
|
||||
final GroupList list = entity.data!.groupList!.first;
|
||||
final LockListInfoItemEntity listItem =
|
||||
|
||||
@ -45,27 +45,25 @@ class _StarLockMainPageState extends State<StarLockMainPage>
|
||||
await Storage.getLockMainListData();
|
||||
if (lockListInfoGroupEntity != null) {
|
||||
logic.loadMainDataLogic(lockListInfoGroupEntity);
|
||||
setState(() {});
|
||||
}
|
||||
lockListInfoGroupEntity =
|
||||
(await logic.getStarLockInfo(isUnShowLoading: isUnShowLoading)).data;
|
||||
if (lockListInfoGroupEntity != null) {
|
||||
logic.loadMainDataLogic(lockListInfoGroupEntity);
|
||||
setState(() {});
|
||||
}
|
||||
if (clearScanDevices) {
|
||||
BlueManage().scanDevices.clear();
|
||||
}
|
||||
setState(() {});
|
||||
}
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) async {
|
||||
logic.pageNo = 1;
|
||||
getHttpData();
|
||||
_initLoadDataAction();
|
||||
setState(() {});
|
||||
});
|
||||
logic.pageNo = 1;
|
||||
getHttpData();
|
||||
_initLoadDataAction();
|
||||
}
|
||||
|
||||
@override
|
||||
|
||||
@ -74,15 +74,13 @@ class MessageManagement {
|
||||
case MessageConstant.lockSetChange:
|
||||
final int keyId = data['keyId'];
|
||||
final int lockId = data['lockId'];
|
||||
final Map<String, dynamic> extra = data['updateFieldList'];
|
||||
if (extra['appUnlockOnline'] != null) {
|
||||
final String appUnlockOnline = extra['appUnlockOnline'];
|
||||
eventBus.fire(
|
||||
LockSetChangeSetRefreshLockDetailWithType(1, appUnlockOnline));
|
||||
eventBus.fire(RefreshLockInfoDataEvent(keyId: keyId, lockId: lockId));
|
||||
}
|
||||
// 暂时只用刷新
|
||||
// final Map<Object?, Object?> extra = data['updateFieldList'];
|
||||
// if (extra['appUnlockOnline'] != null) {
|
||||
// final String appUnlockOnline = extra['appUnlockOnline']!.toString();
|
||||
// }
|
||||
eventBus.fire(RefreshLockInfoDataEvent(keyId: keyId, lockId: lockId));
|
||||
break;
|
||||
|
||||
default:
|
||||
throw Exception('无法识别eventNo 参数:$eventNo');
|
||||
}
|
||||
|
||||
@ -73,8 +73,9 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
|
||||
# 1.0.62+2024061301:xhj 线上环境,对外发布,提交测试:处理华为拒审
|
||||
# 1.0.63+2024061302:xhj 线上环境,提交测试:回归 bug
|
||||
# 1.0.65+2024061801:xhj 线上环境,提交测试:回归 bug
|
||||
# 1.0.66+2024061802:xhj 线上环境,提交测试:回归 bug
|
||||
|
||||
version: 1.0.65+2024061801
|
||||
version: 1.0.66+2024061802
|
||||
|
||||
environment:
|
||||
sdk: '>=2.12.0 <3.0.0'
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user