Merge branch 'develop_sync_record' into 'release'

Develop sync record

See merge request StarlockTeam/app-starlock!98
This commit is contained in:
刘燕峰 2025-05-23 10:52:42 +00:00
commit d31dfd509e
5 changed files with 234 additions and 178 deletions

View File

@ -76,7 +76,6 @@ class _StarLockRegisterPageState extends State<StarLockRegisterPage> {
Container( Container(
width: 340.w, width: 340.w,
height: 60.h, height: 60.h,
// color: Colors.red,
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(30.h)), borderRadius: BorderRadius.all(Radius.circular(30.h)),
border: border:
@ -119,28 +118,22 @@ class _StarLockRegisterPageState extends State<StarLockRegisterPage> {
child: Obx( child: Obx(
() => Container( () => Container(
height: 60.h, height: 60.h,
// color: Colors.red, decoration: !state.isIphoneType.value
decoration: state.isIphoneType.value ? BoxDecoration(
? null
: BoxDecoration(
color: AppColors.mainColor, color: AppColors.mainColor,
borderRadius: BorderRadius.all( borderRadius:
Radius.circular( BorderRadius.all(Radius.circular(30.h)),
30.h,
),
),
border: Border.all( border: Border.all(
width: 1.0, width: 1.0,
color: AppColors.greyLineColor, color: AppColors.greyLineColor))
), : null,
),
child: Center( child: Center(
child: Text( child: Text(
'邮箱'.tr, '邮箱'.tr,
style: TextStyle( style: TextStyle(
color: state.isIphoneType.value color: !state.isIphoneType.value
? Colors.black ? Colors.white
: Colors.white, : Colors.black,
), ),
), ),
), ),

View File

@ -3,8 +3,11 @@ import 'package:flutter/material.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
class StarLockRegisterState { class StarLockRegisterState {
StarLockRegisterState() { StarLockRegisterState() {
// tab
final Locale? systemLocale = Get.deviceLocale;
isIphoneType.value = systemLocale?.languageCode == 'zh';
resetResend(); resetResend();
} }
final TextEditingController phoneOrEmailController = TextEditingController(); final TextEditingController phoneOrEmailController = TextEditingController();
@ -28,8 +31,13 @@ class StarLockRegisterState {
// bool get isEmail => RegexUtil.isEmail(phoneOrEmailStr.value); // bool get isEmail => RegexUtil.isEmail(phoneOrEmailStr.value);
// bool get isIphone => RegexUtil.isMobileSimple(phoneOrEmailStr.value); // bool get isIphone => RegexUtil.isMobileSimple(phoneOrEmailStr.value);
bool get pwdIsOK => pwd.value.isNotEmpty && surePwd.value.isNotEmpty && pwd.value.length >= 8 && surePwd.value.length >= 8; bool get pwdIsOK =>
bool get codeIsOK => verificationCode.value.isNotEmpty && verificationCode.value.length >= 6 ; pwd.value.isNotEmpty &&
surePwd.value.isNotEmpty &&
pwd.value.length >= 8 &&
surePwd.value.length >= 8;
bool get codeIsOK =>
verificationCode.value.isNotEmpty && verificationCode.value.length >= 6;
RxBool canResend = false.obs; // RxBool canResend = false.obs; //
RxString btnText = ''.obs; RxString btnText = ''.obs;
@ -39,9 +47,8 @@ class StarLockRegisterState {
void resetResend() { void resetResend() {
canResend.value = totalSeconds == currentSecond; canResend.value = totalSeconds == currentSecond;
btnText.value = !canResend.value btnText.value =
? '$currentSecond s' !canResend.value ? '$currentSecond s' : btnText.value = '获取验证码'.tr;
: btnText.value = '获取验证码'.tr;
} }
void onClose() { void onClose() {

View File

@ -1,4 +1,3 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart';
@ -74,6 +73,7 @@ class _StarLockRegisterPageState extends State<StarLockRegisterXHJPage> {
height: 80.h, height: 80.h,
child: DefaultTabController( child: DefaultTabController(
length: 2, length: 2,
initialIndex: state.isIphoneType.value ? 0 : 1,
child: TabBar( child: TabBar(
onTap: (int index) { onTap: (int index) {
state.isIphoneType.value = index == 0; state.isIphoneType.value = index == 0;
@ -84,10 +84,7 @@ class _StarLockRegisterPageState extends State<StarLockRegisterXHJPage> {
}), }),
dividerHeight: 0, dividerHeight: 0,
indicatorSize: TabBarIndicatorSize.tab, indicatorSize: TabBarIndicatorSize.tab,
tabs: <Widget>[ tabs: <Widget>[Text('手机'.tr), Text('邮箱'.tr)],
Text('手机'.tr),
Text('邮箱'.tr)
],
indicatorColor: AppColors.mainColor, indicatorColor: AppColors.mainColor,
labelStyle: labelStyle:
TextStyle(color: AppColors.mainColor, fontSize: 26.sp), TextStyle(color: AppColors.mainColor, fontSize: 26.sp),
@ -259,8 +256,7 @@ class _StarLockRegisterPageState extends State<StarLockRegisterXHJPage> {
width: 20.w, width: 20.w,
height: 20.w, height: 20.w,
), ),
) ))),
)),
SizedBox( SizedBox(
width: 10.w, width: 10.w,
), ),
@ -268,14 +264,12 @@ class _StarLockRegisterPageState extends State<StarLockRegisterXHJPage> {
child: RichText( child: RichText(
text: TextSpan( text: TextSpan(
text: '我已阅读并同意'.tr, text: '我已阅读并同意'.tr,
style: style: TextStyle(color: const Color(0xff333333), fontSize: 20.sp),
TextStyle(color: const Color(0xff333333), fontSize: 20.sp),
children: <InlineSpan>[ children: <InlineSpan>[
WidgetSpan( WidgetSpan(
alignment: PlaceholderAlignment.middle, alignment: PlaceholderAlignment.middle,
child: GestureDetector( child: GestureDetector(
child: Text( child: Text('${'用户协议'.tr}',
'${'用户协议'.tr}',
style: TextStyle( style: TextStyle(
color: AppColors.mainColor, fontSize: 20.sp)), color: AppColors.mainColor, fontSize: 20.sp)),
onTap: () { onTap: () {
@ -289,8 +283,7 @@ class _StarLockRegisterPageState extends State<StarLockRegisterXHJPage> {
WidgetSpan( WidgetSpan(
alignment: PlaceholderAlignment.middle, alignment: PlaceholderAlignment.middle,
child: GestureDetector( child: GestureDetector(
child: Text( child: Text('${'隐私政策'.tr}',
'${'隐私政策'.tr}',
style: TextStyle( style: TextStyle(
color: AppColors.mainColor, fontSize: 20.sp)), color: AppColors.mainColor, fontSize: 20.sp)),
onTap: () { onTap: () {

View File

@ -405,6 +405,7 @@ class FingerprintListLogic extends BaseGetXController {
_teamEvent = eventBus _teamEvent = eventBus
.on<OtherTypeRefreshListEvent>() .on<OtherTypeRefreshListEvent>()
.listen((OtherTypeRefreshListEvent event) async { .listen((OtherTypeRefreshListEvent event) async {
//
await getFingerprintsListData(isRefresh: true); await getFingerprintsListData(isRefresh: true);
}); });
} }
@ -459,8 +460,10 @@ class FingerprintListLogic extends BaseGetXController {
final bool? isDemoMode = await Storage.getBool(ifIsDemoModeOrNot); final bool? isDemoMode = await Storage.getBool(ifIsDemoModeOrNot);
if (isDemoMode == false) { if (isDemoMode == false) {
_initReplySubscription(); _initReplySubscription();
_initRefreshAction();
// _initRefreshAction(); //
await getFingerprintsListData(isRefresh: true);
} }
} }

View File

@ -1,4 +1,3 @@
import 'dart:async'; import 'dart:async';
import 'package:flutter_blue_plus/flutter_blue_plus.dart'; import 'package:flutter_blue_plus/flutter_blue_plus.dart';
@ -7,6 +6,8 @@ import 'package:star_lock/blue/io_protocol/io_updataLockRemoteControlList.dart';
import 'package:star_lock/login/login/entity/LoginEntity.dart'; import 'package:star_lock/login/login/entity/LoginEntity.dart';
import 'package:star_lock/tools/baseGetXController.dart'; import 'package:star_lock/tools/baseGetXController.dart';
import 'package:star_lock/tools/commonDataManage.dart'; import 'package:star_lock/tools/commonDataManage.dart';
import 'package:star_lock/tools/eventBusEventManage.dart';
import 'package:star_lock/tools/storage.dart';
import '../../../../app_settings/app_settings.dart'; import '../../../../app_settings/app_settings.dart';
import '../../../../blue/blue_manage.dart'; import '../../../../blue/blue_manage.dart';
@ -21,48 +22,56 @@ import '../../../../blue/io_tool/io_tool.dart';
import '../../../../blue/io_tool/manager_event_bus.dart'; import '../../../../blue/io_tool/manager_event_bus.dart';
import '../../../../blue/sender_manage.dart'; import '../../../../blue/sender_manage.dart';
import '../../../../network/api_repository.dart'; import '../../../../network/api_repository.dart';
import '../../../../tools/storage.dart';
import 'uploadData_state.dart'; import 'uploadData_state.dart';
class UploadDataLogic extends BaseGetXController { class UploadDataLogic extends BaseGetXController {
UploadDataState state = UploadDataState(); final UploadDataState state = UploadDataState();
// //
late StreamSubscription<Reply> _replySubscription; late StreamSubscription<Reply> _replySubscription;
void _initReplySubscription() { void _initReplySubscription() {
_replySubscription = EventBusManager().eventBus!.on<Reply>().listen((Reply reply) async { _replySubscription =
EventBusManager().eventBus!.on<Reply>().listen((Reply reply) async {
// //
if (reply is UpdataLockPasswordListReply && (state.ifCurrentScreen.value == true)) { if (reply is UpdataLockPasswordListReply &&
(state.ifCurrentScreen.value == true)) {
_replyUpdataLockPasswordListReply(reply); _replyUpdataLockPasswordListReply(reply);
} }
// //
if (reply is UpdataLockCardListReply && (state.ifCurrentScreen.value == true)) { if (reply is UpdataLockCardListReply &&
(state.ifCurrentScreen.value == true)) {
_replyUpdataLockCardListReply(reply); _replyUpdataLockCardListReply(reply);
} }
// //
if (reply is UpdataLockFingerprintListReply && (state.ifCurrentScreen.value == true)) { if (reply is UpdataLockFingerprintListReply &&
(state.ifCurrentScreen.value == true)) {
_replyUpdataLockFingerprintListReply(reply); _replyUpdataLockFingerprintListReply(reply);
} }
// //
if (reply is UpdataLockFaceListReply && (state.ifCurrentScreen.value == true)) { if (reply is UpdataLockFaceListReply &&
(state.ifCurrentScreen.value == true)) {
_replyUpdataLockFaceListReply(reply); _replyUpdataLockFaceListReply(reply);
} }
// //
if (reply is UpdataLockPalmVeinListReply && (state.ifCurrentScreen.value == true)) { if (reply is UpdataLockPalmVeinListReply &&
(state.ifCurrentScreen.value == true)) {
_replyUpdataLockPalmVeinListReply(reply); _replyUpdataLockPalmVeinListReply(reply);
} }
// //
if (reply is UpdataLockRemoteControlListReply && (state.ifCurrentScreen.value == true)) { if (reply is UpdataLockRemoteControlListReply &&
(state.ifCurrentScreen.value == true)) {
_replyUpdataLockRemoteControlListReply(reply); _replyUpdataLockRemoteControlListReply(reply);
} }
// //
if (reply is UpdataLockSetReply && (state.ifCurrentScreen.value == true) && (state.ifSeletUpdataBtnState == true)) { if (reply is UpdataLockSetReply &&
(state.ifCurrentScreen.value == true) &&
(state.ifSeletUpdataBtnState == true)) {
_replyUpdataLockSetReply(reply); _replyUpdataLockSetReply(reply);
} }
}); });
@ -77,7 +86,8 @@ class UploadDataLogic extends BaseGetXController{
cancelBlueConnetctToastTimer(); cancelBlueConnetctToastTimer();
final int dataLength = reply.data[8]; final int dataLength = reply.data[8];
state.uploadPasswordDataList.addAll(reply.data.sublist(9, reply.data.length)); state.uploadPasswordDataList
.addAll(reply.data.sublist(9, reply.data.length));
if (dataLength == 10) { if (dataLength == 10) {
// 10 // 10
state.uploadPasswordPage = state.uploadPasswordPage + 1; state.uploadPasswordPage = state.uploadPasswordPage + 1;
@ -95,7 +105,10 @@ class UploadDataLogic extends BaseGetXController{
// }else{ // }else{
// // // //
state.indexCount.value = state.indexCount.value + 1; state.indexCount.value = state.indexCount.value + 1;
_lockDataUpload(uploadType:2, recordType:2, records:state.uploadPasswordDataList); _lockDataUpload(
uploadType: 2,
recordType: 2,
records: state.uploadPasswordDataList);
// } // }
} }
break; break;
@ -126,7 +139,8 @@ class UploadDataLogic extends BaseGetXController{
cancelBlueConnetctToastTimer(); cancelBlueConnetctToastTimer();
final int dataLength = reply.data[8]; final int dataLength = reply.data[8];
state.uploadCardDataList.addAll(reply.data.sublist(9, reply.data.length)); state.uploadCardDataList
.addAll(reply.data.sublist(9, reply.data.length));
if (dataLength == 10) { if (dataLength == 10) {
// 10 // 10
state.uploadCardPage = state.uploadCardPage + 1; state.uploadCardPage = state.uploadCardPage + 1;
@ -143,7 +157,8 @@ class UploadDataLogic extends BaseGetXController{
// }else{ // }else{
// // // //
state.indexCount.value = state.indexCount.value + 1; state.indexCount.value = state.indexCount.value + 1;
_lockDataUpload(uploadType:2, recordType:3, records:state.uploadCardDataList); _lockDataUpload(
uploadType: 2, recordType: 3, records: state.uploadCardDataList);
// } // }
} }
break; break;
@ -173,7 +188,8 @@ class UploadDataLogic extends BaseGetXController{
cancelBlueConnetctToastTimer(); cancelBlueConnetctToastTimer();
final int dataLength = reply.data[8]; final int dataLength = reply.data[8];
state.uploadFingerprintDataList.addAll(reply.data.sublist(9, reply.data.length)); state.uploadFingerprintDataList
.addAll(reply.data.sublist(9, reply.data.length));
if (dataLength == 10) { if (dataLength == 10) {
// 10 // 10
state.uploadFingerprintPage = state.uploadFingerprintPage + 1; state.uploadFingerprintPage = state.uploadFingerprintPage + 1;
@ -190,7 +206,10 @@ class UploadDataLogic extends BaseGetXController{
// }else{ // }else{
// // // //
state.indexCount.value = state.indexCount.value + 1; state.indexCount.value = state.indexCount.value + 1;
_lockDataUpload(uploadType:2, recordType:4, records:state.uploadFingerprintDataList); _lockDataUpload(
uploadType: 2,
recordType: 4,
records: state.uploadFingerprintDataList);
// } // }
} }
break; break;
@ -220,7 +239,8 @@ class UploadDataLogic extends BaseGetXController{
cancelBlueConnetctToastTimer(); cancelBlueConnetctToastTimer();
final int dataLength = reply.data[8]; final int dataLength = reply.data[8];
state.uploadFaceDataList.addAll(reply.data.sublist(9, reply.data.length)); state.uploadFaceDataList
.addAll(reply.data.sublist(9, reply.data.length));
if (dataLength == 10) { if (dataLength == 10) {
// 10 // 10
state.uploadFacePage = state.uploadFacePage + 1; state.uploadFacePage = state.uploadFacePage + 1;
@ -237,7 +257,8 @@ class UploadDataLogic extends BaseGetXController{
// }else{ // }else{
// //
state.indexCount.value = state.indexCount.value + 1; state.indexCount.value = state.indexCount.value + 1;
_lockDataUpload(uploadType:2, recordType:5, records:state.uploadFaceDataList); _lockDataUpload(
uploadType: 2, recordType: 5, records: state.uploadFaceDataList);
// } // }
} }
break; break;
@ -267,7 +288,8 @@ class UploadDataLogic extends BaseGetXController{
cancelBlueConnetctToastTimer(); cancelBlueConnetctToastTimer();
final int dataLength = reply.data[8]; final int dataLength = reply.data[8];
state.uploadPalmVeinDataList.addAll(reply.data.sublist(9, reply.data.length)); state.uploadPalmVeinDataList
.addAll(reply.data.sublist(9, reply.data.length));
if (dataLength == 10) { if (dataLength == 10) {
// 10 // 10
state.uploadPalmVeinPage = state.uploadPalmVeinPage + 1; state.uploadPalmVeinPage = state.uploadPalmVeinPage + 1;
@ -284,7 +306,10 @@ class UploadDataLogic extends BaseGetXController{
// }else{ // }else{
// // // //
state.indexCount.value = state.indexCount.value + 1; state.indexCount.value = state.indexCount.value + 1;
_lockDataUpload(uploadType:2, recordType:6, records:state.uploadPalmVeinDataList); _lockDataUpload(
uploadType: 2,
recordType: 6,
records: state.uploadPalmVeinDataList);
// } // }
} }
break; break;
@ -314,7 +339,8 @@ class UploadDataLogic extends BaseGetXController{
cancelBlueConnetctToastTimer(); cancelBlueConnetctToastTimer();
final int dataLength = reply.data[8]; final int dataLength = reply.data[8];
state.uploadRemoteControlDataList.addAll(reply.data.sublist(9, reply.data.length)); state.uploadRemoteControlDataList
.addAll(reply.data.sublist(9, reply.data.length));
if (dataLength == 10) { if (dataLength == 10) {
// 10 // 10
state.uploadRemoteControlPage = state.uploadRemoteControlPage + 1; state.uploadRemoteControlPage = state.uploadRemoteControlPage + 1;
@ -331,7 +357,10 @@ class UploadDataLogic extends BaseGetXController{
// }else{ // }else{
// // // //
state.indexCount.value = state.indexCount.value + 1; state.indexCount.value = state.indexCount.value + 1;
_lockDataUpload(uploadType:2, recordType:7, records:state.uploadRemoteControlDataList); _lockDataUpload(
uploadType: 2,
recordType: 7,
records: state.uploadRemoteControlDataList);
// } // }
} }
break; break;
@ -361,8 +390,10 @@ class UploadDataLogic extends BaseGetXController{
state.indexCount.value = state.indexCount.value + 1; state.indexCount.value = state.indexCount.value + 1;
cancelBlueConnetctToastTimer(); cancelBlueConnetctToastTimer();
state.uploadLockSetDataList.addAll(reply.data.sublist(7, reply.data.length)); state.uploadLockSetDataList
_lockDataUpload(uploadType:1, recordType:0, records:state.uploadLockSetDataList); .addAll(reply.data.sublist(7, reply.data.length));
_lockDataUpload(
uploadType: 1, recordType: 0, records: state.uploadLockSetDataList);
break; break;
case 0x06: case 0x06:
// //
@ -394,7 +425,8 @@ class UploadDataLogic extends BaseGetXController{
AppLog.log('上传密码列表获取超时 关闭加载菊花'); AppLog.log('上传密码列表获取超时 关闭加载菊花');
state.sureBtnState.value = 0; state.sureBtnState.value = 0;
}); });
BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState connectionState) async { BlueManage().blueSendData(BlueManage().connectDeviceName,
(BluetoothConnectionState connectionState) async {
if (connectionState == BluetoothConnectionState.connected) { if (connectionState == BluetoothConnectionState.connected) {
final List<String>? token = await Storage.getStringList(saveBlueToken); final List<String>? token = await Storage.getStringList(saveBlueToken);
final List<int> getTokenList = changeStringListToIntList(token!); final List<int> getTokenList = changeStringListToIntList(token!);
@ -414,7 +446,8 @@ class UploadDataLogic extends BaseGetXController{
// //
Future<void> updataLockPasswordList(List<int> token, int page) async { Future<void> updataLockPasswordList(List<int> token, int page) async {
final List<String>? privateKey = await Storage.getStringList(saveBluePrivateKey); final List<String>? privateKey =
await Storage.getStringList(saveBluePrivateKey);
final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!); final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
final List<String>? signKey = await Storage.getStringList(saveBlueSignKey); final List<String>? signKey = await Storage.getStringList(saveBlueSignKey);
@ -428,8 +461,7 @@ class UploadDataLogic extends BaseGetXController{
token: token, token: token,
needAuthor: 1, needAuthor: 1,
signKey: signKeyDataList, signKey: signKeyDataList,
privateKey: getPrivateKeyList privateKey: getPrivateKeyList);
);
} }
// Card列表 // Card列表
@ -440,7 +472,8 @@ class UploadDataLogic extends BaseGetXController{
state.indexCount.value = 0; state.indexCount.value = 0;
state.sureBtnState.value = 0; state.sureBtnState.value = 0;
}); });
BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState connectionState) async { BlueManage().blueSendData(BlueManage().connectDeviceName,
(BluetoothConnectionState connectionState) async {
if (connectionState == BluetoothConnectionState.connected) { if (connectionState == BluetoothConnectionState.connected) {
final List<String>? token = await Storage.getStringList(saveBlueToken); final List<String>? token = await Storage.getStringList(saveBlueToken);
final List<int> getTokenList = changeStringListToIntList(token!); final List<int> getTokenList = changeStringListToIntList(token!);
@ -460,7 +493,8 @@ class UploadDataLogic extends BaseGetXController{
// Card列表 // Card列表
Future<void> updataLockCardList(List<int> token, int page) async { Future<void> updataLockCardList(List<int> token, int page) async {
final List<String>? privateKey = await Storage.getStringList(saveBluePrivateKey); final List<String>? privateKey =
await Storage.getStringList(saveBluePrivateKey);
final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!); final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
final List<String>? signKey = await Storage.getStringList(saveBlueSignKey); final List<String>? signKey = await Storage.getStringList(saveBlueSignKey);
@ -474,8 +508,7 @@ class UploadDataLogic extends BaseGetXController{
token: token, token: token,
needAuthor: 1, needAuthor: 1,
signKey: signKeyDataList, signKey: signKeyDataList,
privateKey: getPrivateKeyList privateKey: getPrivateKeyList);
);
} }
// //
@ -486,7 +519,8 @@ class UploadDataLogic extends BaseGetXController{
state.indexCount.value = 0; state.indexCount.value = 0;
state.sureBtnState.value = 0; state.sureBtnState.value = 0;
}); });
BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState connectionState) async { BlueManage().blueSendData(BlueManage().connectDeviceName,
(BluetoothConnectionState connectionState) async {
if (connectionState == BluetoothConnectionState.connected) { if (connectionState == BluetoothConnectionState.connected) {
final List<String>? token = await Storage.getStringList(saveBlueToken); final List<String>? token = await Storage.getStringList(saveBlueToken);
final List<int> getTokenList = changeStringListToIntList(token!); final List<int> getTokenList = changeStringListToIntList(token!);
@ -506,7 +540,8 @@ class UploadDataLogic extends BaseGetXController{
// //
Future<void> updataLockFingerprintList(List<int> token, int page) async { Future<void> updataLockFingerprintList(List<int> token, int page) async {
final List<String>? privateKey = await Storage.getStringList(saveBluePrivateKey); final List<String>? privateKey =
await Storage.getStringList(saveBluePrivateKey);
final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!); final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
final List<String>? signKey = await Storage.getStringList(saveBlueSignKey); final List<String>? signKey = await Storage.getStringList(saveBlueSignKey);
@ -520,8 +555,7 @@ class UploadDataLogic extends BaseGetXController{
token: token, token: token,
needAuthor: 1, needAuthor: 1,
signKey: signKeyDataList, signKey: signKeyDataList,
privateKey: getPrivateKeyList privateKey: getPrivateKeyList);
);
} }
// //
@ -532,7 +566,8 @@ class UploadDataLogic extends BaseGetXController{
state.indexCount.value = 0; state.indexCount.value = 0;
state.sureBtnState.value = 0; state.sureBtnState.value = 0;
}); });
BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState connectionState) async { BlueManage().blueSendData(BlueManage().connectDeviceName,
(BluetoothConnectionState connectionState) async {
if (connectionState == BluetoothConnectionState.connected) { if (connectionState == BluetoothConnectionState.connected) {
final List<String>? token = await Storage.getStringList(saveBlueToken); final List<String>? token = await Storage.getStringList(saveBlueToken);
final List<int> getTokenList = changeStringListToIntList(token!); final List<int> getTokenList = changeStringListToIntList(token!);
@ -552,7 +587,8 @@ class UploadDataLogic extends BaseGetXController{
// //
Future<void> updataLockFaceList(List<int> token, int page) async { Future<void> updataLockFaceList(List<int> token, int page) async {
final List<String>? privateKey = await Storage.getStringList(saveBluePrivateKey); final List<String>? privateKey =
await Storage.getStringList(saveBluePrivateKey);
final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!); final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
final List<String>? signKey = await Storage.getStringList(saveBlueSignKey); final List<String>? signKey = await Storage.getStringList(saveBlueSignKey);
@ -566,11 +602,9 @@ class UploadDataLogic extends BaseGetXController{
token: token, token: token,
needAuthor: 1, needAuthor: 1,
signKey: signKeyDataList, signKey: signKeyDataList,
privateKey: getPrivateKeyList privateKey: getPrivateKeyList);
);
} }
// //
Future<void> getUpdataLockPalmVeinList() async { Future<void> getUpdataLockPalmVeinList() async {
showEasyLoading(); showEasyLoading();
@ -579,7 +613,8 @@ class UploadDataLogic extends BaseGetXController{
state.indexCount.value = 0; state.indexCount.value = 0;
state.sureBtnState.value = 0; state.sureBtnState.value = 0;
}); });
BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState connectionState) async { BlueManage().blueSendData(BlueManage().connectDeviceName,
(BluetoothConnectionState connectionState) async {
if (connectionState == BluetoothConnectionState.connected) { if (connectionState == BluetoothConnectionState.connected) {
final List<String>? token = await Storage.getStringList(saveBlueToken); final List<String>? token = await Storage.getStringList(saveBlueToken);
final List<int> getTokenList = changeStringListToIntList(token!); final List<int> getTokenList = changeStringListToIntList(token!);
@ -599,7 +634,8 @@ class UploadDataLogic extends BaseGetXController{
// //
Future<void> updataLockPalmVeinList(List<int> token, int page) async { Future<void> updataLockPalmVeinList(List<int> token, int page) async {
final List<String>? privateKey = await Storage.getStringList(saveBluePrivateKey); final List<String>? privateKey =
await Storage.getStringList(saveBluePrivateKey);
final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!); final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
final List<String>? signKey = await Storage.getStringList(saveBlueSignKey); final List<String>? signKey = await Storage.getStringList(saveBlueSignKey);
@ -613,8 +649,7 @@ class UploadDataLogic extends BaseGetXController{
token: token, token: token,
needAuthor: 1, needAuthor: 1,
signKey: signKeyDataList, signKey: signKeyDataList,
privateKey: getPrivateKeyList privateKey: getPrivateKeyList);
);
} }
// //
@ -625,12 +660,14 @@ class UploadDataLogic extends BaseGetXController{
state.indexCount.value = 0; state.indexCount.value = 0;
state.sureBtnState.value = 0; state.sureBtnState.value = 0;
}); });
BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState connectionState) async { BlueManage().blueSendData(BlueManage().connectDeviceName,
(BluetoothConnectionState connectionState) async {
if (connectionState == BluetoothConnectionState.connected) { if (connectionState == BluetoothConnectionState.connected) {
final List<String>? token = await Storage.getStringList(saveBlueToken); final List<String>? token = await Storage.getStringList(saveBlueToken);
final List<int> getTokenList = changeStringListToIntList(token!); final List<int> getTokenList = changeStringListToIntList(token!);
updataLockRemoteControlList(getTokenList, state.uploadRemoteControlPage); updataLockRemoteControlList(
getTokenList, state.uploadRemoteControlPage);
} else if (connectionState == BluetoothConnectionState.disconnected) { } else if (connectionState == BluetoothConnectionState.disconnected) {
dismissEasyLoading(); dismissEasyLoading();
cancelBlueConnetctToastTimer(); cancelBlueConnetctToastTimer();
@ -645,7 +682,8 @@ class UploadDataLogic extends BaseGetXController{
// //
Future<void> updataLockRemoteControlList(List<int> token, int page) async { Future<void> updataLockRemoteControlList(List<int> token, int page) async {
final List<String>? privateKey = await Storage.getStringList(saveBluePrivateKey); final List<String>? privateKey =
await Storage.getStringList(saveBluePrivateKey);
final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!); final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
final List<String>? signKey = await Storage.getStringList(saveBlueSignKey); final List<String>? signKey = await Storage.getStringList(saveBlueSignKey);
@ -659,8 +697,7 @@ class UploadDataLogic extends BaseGetXController{
token: token, token: token,
needAuthor: 1, needAuthor: 1,
signKey: signKeyDataList, signKey: signKeyDataList,
privateKey: getPrivateKeyList privateKey: getPrivateKeyList);
);
} }
// //
@ -671,7 +708,8 @@ class UploadDataLogic extends BaseGetXController{
state.indexCount.value = 0; state.indexCount.value = 0;
state.sureBtnState.value = 0; state.sureBtnState.value = 0;
}); });
BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState connectionState) async { BlueManage().blueSendData(BlueManage().connectDeviceName,
(BluetoothConnectionState connectionState) async {
if (connectionState == BluetoothConnectionState.connected) { if (connectionState == BluetoothConnectionState.connected) {
final List<String>? token = await Storage.getStringList(saveBlueToken); final List<String>? token = await Storage.getStringList(saveBlueToken);
final List<int> getTokenList = changeStringListToIntList(token!); final List<int> getTokenList = changeStringListToIntList(token!);
@ -691,7 +729,8 @@ class UploadDataLogic extends BaseGetXController{
// //
Future<void> updataLockSet(List<int> token) async { Future<void> updataLockSet(List<int> token) async {
final List<String>? privateKey = await Storage.getStringList(saveBluePrivateKey); final List<String>? privateKey =
await Storage.getStringList(saveBluePrivateKey);
final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!); final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
final List<String>? signKey = await Storage.getStringList(saveBlueSignKey); final List<String>? signKey = await Storage.getStringList(saveBlueSignKey);
@ -703,23 +742,20 @@ class UploadDataLogic extends BaseGetXController{
token: token, token: token,
needAuthor: 1, needAuthor: 1,
signKey: signKeyDataList, signKey: signKeyDataList,
privateKey: getPrivateKeyList privateKey: getPrivateKeyList);
);
} }
// //
Future<void> _lockDataUpload({ Future<void> _lockDataUpload(
required int uploadType, {required int uploadType,
required int recordType, required int recordType,
required List records required List records}) async {
}) async{
final LoginEntity entity = await ApiRepository.to.lockDataUpload( final LoginEntity entity = await ApiRepository.to.lockDataUpload(
lockId: CommonDataManage().currentKeyInfo.lockId!, lockId: CommonDataManage().currentKeyInfo.lockId!,
uploadType: uploadType, uploadType: uploadType,
recordType: recordType, recordType: recordType,
records: records, records: records,
isUnShowLoading: false isUnShowLoading: false);
);
if (entity.errorCode!.codeIsSuccessful) { if (entity.errorCode!.codeIsSuccessful) {
if (uploadType == 1) { if (uploadType == 1) {
// 1 // 1
@ -768,6 +804,31 @@ class UploadDataLogic extends BaseGetXController{
} }
} }
//
void onUploadSuccess() {
//
eventBus.fire(OtherTypeRefreshListEvent());
//
Get.back();
}
//
Future<void> uploadData() async {
try {
// ... existing upload code ...
//
bool uploadSuccess = true; //
if (uploadSuccess) {
onUploadSuccess();
}
} catch (e) {
//
print('Upload failed: $e');
}
}
@override @override
void onReady() { void onReady() {
super.onReady(); super.onReady();
@ -783,5 +844,4 @@ class UploadDataLogic extends BaseGetXController{
_replySubscription.cancel(); _replySubscription.cancel();
} }
} }