Merge branch 'release' of gitee.com:starlock-cn/app-starlock into release
This commit is contained in:
commit
7d55cc2159
@ -921,5 +921,8 @@
|
|||||||
"系统的全局配置在此项内进行设置":"The global configuration of the system is set in this item",
|
"系统的全局配置在此项内进行设置":"The global configuration of the system is set in this item",
|
||||||
"导出操作记录":"Export operation record",
|
"导出操作记录":"Export operation record",
|
||||||
"立即查看":"View now",
|
"立即查看":"View now",
|
||||||
"导出成功":"Export success"
|
"导出成功":"Export success",
|
||||||
|
"发送钥匙": "Send key",
|
||||||
|
"进度": "Progress",
|
||||||
|
"失败": "Failure"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -953,5 +953,8 @@
|
|||||||
"系统的全局配置在此项内进行设置":"系统的全局配置在此项内进行设置",
|
"系统的全局配置在此项内进行设置":"系统的全局配置在此项内进行设置",
|
||||||
"导出操作记录":"导出操作记录",
|
"导出操作记录":"导出操作记录",
|
||||||
"立即查看":"立即查看",
|
"立即查看":"立即查看",
|
||||||
"导出成功":"导出成功"
|
"导出成功":"导出成功",
|
||||||
|
"发送钥匙": "发送钥匙",
|
||||||
|
"进度": "进度",
|
||||||
|
"失败": "失败"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -918,5 +918,9 @@
|
|||||||
"系统的全局配置在此项内进行设置":"系统的全局配置在此项内进行设置",
|
"系统的全局配置在此项内进行设置":"系统的全局配置在此项内进行设置",
|
||||||
"导出操作记录":"导出操作记录",
|
"导出操作记录":"导出操作记录",
|
||||||
"立即查看":"立即查看",
|
"立即查看":"立即查看",
|
||||||
"导出成功":"导出成功"
|
"导出成功":"导出成功",
|
||||||
|
"发送钥匙": "发送钥匙",
|
||||||
|
"进度": "进度",
|
||||||
|
"失败": "失败"
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,13 +3,15 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
|
|
||||||
import '../../../../../appRouters.dart';
|
|
||||||
import '../../../../../app_settings/app_colors.dart';
|
import '../../../../../app_settings/app_colors.dart';
|
||||||
import '../massSendLockGroupList/lockUserList/lockUserList_entity.dart';
|
import '../massSendLockGroupList/lockUserList/lockUserList_entity.dart';
|
||||||
|
|
||||||
|
typedef BlockCallback = void Function(List receiverList);
|
||||||
|
|
||||||
class MassSendElectronicKeyProgressPage extends StatefulWidget {
|
class MassSendElectronicKeyProgressPage extends StatefulWidget {
|
||||||
MassSendElectronicKeyProgressPage({required this.receiverList, Key? key}) : super(key: key);
|
MassSendElectronicKeyProgressPage({required this.receiverList, required this.callback, Key? key}) : super(key: key);
|
||||||
List receiverList;
|
List receiverList;
|
||||||
|
BlockCallback callback;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<MassSendElectronicKeyProgressPage> createState() => _MassSendElectronicKeyProgressPageState();
|
State<MassSendElectronicKeyProgressPage> createState() => _MassSendElectronicKeyProgressPageState();
|
||||||
@ -86,7 +88,7 @@ class _MassSendElectronicKeyProgressPageState extends State<MassSendElectronicKe
|
|||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Text('进度'.tr + ':' + '$failCount/${widget.receiverList.length}', style: TextStyle(fontSize: 24.sp)),
|
Text('进度'.tr + ':' + '$failCount/${widget.receiverList.length}', style: TextStyle(fontSize: 24.sp)),
|
||||||
SizedBox(width: 20.w),
|
SizedBox(width: 20.w),
|
||||||
Text('失败:$failCount', style: TextStyle(fontSize: 24.sp, color: Colors.red))
|
Text('失败'.tr + ':' + '$failCount', style: TextStyle(fontSize: 24.sp, color: Colors.red))
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
@ -117,19 +119,6 @@ class _MassSendElectronicKeyProgressPageState extends State<MassSendElectronicKe
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget progressItem(){
|
|
||||||
return Container(
|
|
||||||
padding: EdgeInsets.only(left: 15.w, top: 15.h, bottom: 10.h),
|
|
||||||
child: Row(
|
|
||||||
children: <Widget>[
|
|
||||||
Text('发送中'.tr+'1/2', style: TextStyle(fontSize: 24.sp)),
|
|
||||||
SizedBox(width: 20.w),
|
|
||||||
Text('失败:1', style: TextStyle(fontSize: 24.sp, color: Colors.red))
|
|
||||||
],
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
Widget bottomBtn(){
|
Widget bottomBtn(){
|
||||||
return Container(
|
return Container(
|
||||||
height: 80.h,
|
height: 80.h,
|
||||||
@ -157,19 +146,10 @@ class _MassSendElectronicKeyProgressPageState extends State<MassSendElectronicKe
|
|||||||
Expanded(
|
Expanded(
|
||||||
child: GestureDetector(
|
child: GestureDetector(
|
||||||
onTap: (){
|
onTap: (){
|
||||||
Get.back();
|
Get.back();
|
||||||
// 剔除发送失败的数据,重新发送
|
// 剔除发送失败的数据,重新发送
|
||||||
widget.receiverList.removeWhere((element) => (element as LockUserItemData).isSendSuccess == true);
|
widget.receiverList.removeWhere((element) => (element as LockUserItemData).isSendSuccess == true);
|
||||||
Navigator.pushNamed(context, Routers.massSendReceiverPage,
|
widget.callback(widget.receiverList);
|
||||||
arguments: <String, List>{
|
|
||||||
'lockUserList': widget.receiverList,
|
|
||||||
}).then((Object? value) {
|
|
||||||
// if (value != null) {
|
|
||||||
// value as Map<String, dynamic>;
|
|
||||||
// state.receiverList = value['lockUserList'];
|
|
||||||
// setState(() {});
|
|
||||||
// }
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
alignment: Alignment.center,
|
alignment: Alignment.center,
|
||||||
|
|||||||
@ -1,10 +1,10 @@
|
|||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:star_lock/app_settings/app_settings.dart';
|
|
||||||
import 'package:star_lock/main/lockDetail/lockSet/basicInformation/basicInformation/KeyDetailEntity.dart';
|
import 'package:star_lock/main/lockDetail/lockSet/basicInformation/basicInformation/KeyDetailEntity.dart';
|
||||||
import 'package:star_lock/tools/baseGetXController.dart';
|
import 'package:star_lock/tools/baseGetXController.dart';
|
||||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||||
|
import '../../../../../appRouters.dart';
|
||||||
import '../../../../../common/XSConstantMacro/XSConstantMacro.dart';
|
import '../../../../../common/XSConstantMacro/XSConstantMacro.dart';
|
||||||
import '../../../../../network/api_repository.dart';
|
import '../../../../../network/api_repository.dart';
|
||||||
import '../../../../../tools/dateTool.dart';
|
import '../../../../../tools/dateTool.dart';
|
||||||
@ -31,7 +31,7 @@ class MassSendElectronicKeyLogic extends BaseGetXController {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state.receiverList.isEmpty) {
|
if (state.receiverList.value.isEmpty) {
|
||||||
showToast('请选择接收者'.tr);
|
showToast('请选择接收者'.tr);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -57,33 +57,16 @@ class MassSendElectronicKeyLogic extends BaseGetXController {
|
|||||||
|
|
||||||
final KeyDetailEntity entity = await ApiRepository.to.canSendKey(getFailureDateTime, state.lockIdList);
|
final KeyDetailEntity entity = await ApiRepository.to.canSendKey(getFailureDateTime, state.lockIdList);
|
||||||
if (entity.errorCode!.codeIsSuccessful) {
|
if (entity.errorCode!.codeIsSuccessful) {
|
||||||
|
|
||||||
// final List<Future> futures = <Future>[];
|
|
||||||
// 遍历发送
|
// 遍历发送
|
||||||
for (int i = 0; i < state.receiverList.length; i++) {
|
for (int i = 0; i < state.receiverList.value.length; i++) {
|
||||||
final LockUserItemData data = state.receiverList[i];
|
final LockUserItemData data = state.receiverList.value[i];
|
||||||
AppLog.log('receiverUserID:${data.userid} receiverUserName:${data.nickname} data.isSendSuccess:${data.isSendSuccess} data.sendFailReason:${data.sendFailReason}');
|
|
||||||
await batchSendElectronicKeyRequest(data.userid ?? '', data.nickname ?? '');
|
await batchSendElectronicKeyRequest(data.userid ?? '', data.nickname ?? '');
|
||||||
// futures.add(
|
|
||||||
// batchSendElectronicKeyRequest(data.userid ?? '', data.nickname ?? '').catchError((error) {
|
|
||||||
// // 处理异常,例如打印错误信息
|
|
||||||
// AppLog.log('Error in batchSendElectronicKeyRequest: $error');
|
|
||||||
// })
|
|
||||||
// );
|
|
||||||
AppLog.log('接口调用成功 receiverUserID:${data.userid} receiverUserName:${data.nickname} data.isSendSuccess:${data.isSendSuccess} data.sendFailReason:${data.sendFailReason}');
|
|
||||||
}
|
}
|
||||||
// 等待所有的Future完成
|
|
||||||
// try {
|
|
||||||
// await Future.wait(futures);
|
|
||||||
// } catch (e) {
|
|
||||||
// AppLog.log('Error in Future.wait: $e');
|
|
||||||
// }
|
|
||||||
|
|
||||||
// 发送完成之后遍历数据,如果所有的数据都发送成功,改变state.isSendSuccess的值,如果有一个发送失败,不改变state.isSendSuccess的值,然后弹框显示进度
|
// 发送完成之后遍历数据,如果所有的数据都发送成功,改变state.isSendSuccess的值,如果有一个发送失败,不改变state.isSendSuccess的值,然后弹框显示进度
|
||||||
bool isSendSuccess = true;
|
bool isSendSuccess = true;
|
||||||
for (int i = 0; i < state.receiverList.length; i++) {
|
for (int i = 0; i < state.receiverList.value.length; i++) {
|
||||||
final LockUserItemData data = state.receiverList[i];
|
final LockUserItemData data = state.receiverList.value[i];
|
||||||
AppLog.log('遍历是否弹框 receiverUserID:${data.userid} receiverUserName:${data.nickname} data.isSendSuccess:${data.isSendSuccess} data.sendFailReason:${data.sendFailReason}');
|
|
||||||
if (!(data.isSendSuccess ?? false)) {
|
if (!(data.isSendSuccess ?? false)) {
|
||||||
isSendSuccess = false;
|
isSendSuccess = false;
|
||||||
break;
|
break;
|
||||||
@ -178,13 +161,12 @@ class MassSendElectronicKeyLogic extends BaseGetXController {
|
|||||||
state.isCreateUser.value = false;
|
state.isCreateUser.value = false;
|
||||||
|
|
||||||
// 发送成功之后,查询发送类列表里面对应的数据,将发送成功的状态改为true
|
// 发送成功之后,查询发送类列表里面对应的数据,将发送成功的状态改为true
|
||||||
for (int i = 0; i < state.receiverList.length; i++) {
|
for (int i = 0; i < state.receiverList.value.length; i++) {
|
||||||
final LockUserItemData data = state.receiverList[i];
|
final LockUserItemData data = state.receiverList.value[i];
|
||||||
if (data.userid == receiverUserID) {
|
if (data.userid == receiverUserID) {
|
||||||
data.isSendSuccess = true;
|
data.isSendSuccess = true;
|
||||||
data.sendFailReason = '';
|
data.sendFailReason = '';
|
||||||
}
|
}
|
||||||
AppLog.log('发送成功:receiverUserID:$receiverUserID data.userid:${data.userid} receiverUserName:${data.nickname} data.isSendSuccess:${data.isSendSuccess} data.sendFailReason:${data.sendFailReason}');
|
|
||||||
}
|
}
|
||||||
// resetData();
|
// resetData();
|
||||||
} else {
|
} else {
|
||||||
@ -192,16 +174,15 @@ class MassSendElectronicKeyLogic extends BaseGetXController {
|
|||||||
if (entity.errorCode == 425) {
|
if (entity.errorCode == 425) {
|
||||||
//用户未注册 重新发送
|
//用户未注册 重新发送
|
||||||
state.isCreateUser.value = true;
|
state.isCreateUser.value = true;
|
||||||
batchSendElectronicKeyRequest(receiverUserID, receiverUserName);
|
await batchSendElectronicKeyRequest(receiverUserID, receiverUserName);
|
||||||
}else{
|
}else{
|
||||||
// 发送失败之后,查询发送类列表里面对应的数据,将发送成功的状态改为false
|
// 发送失败之后,查询发送类列表里面对应的数据,将发送成功的状态改为false
|
||||||
for (int i = 0; i < state.receiverList.length; i++) {
|
for (int i = 0; i < state.receiverList.value.length; i++) {
|
||||||
final LockUserItemData data = state.receiverList[i];
|
final LockUserItemData data = state.receiverList.value[i];
|
||||||
if (data.userid == receiverUserID) {
|
if (data.userid == receiverUserID) {
|
||||||
data.isSendSuccess = false;
|
data.isSendSuccess = false;
|
||||||
data.sendFailReason = entity.errorMsg;
|
data.sendFailReason = entity.errorMsg;
|
||||||
}
|
}
|
||||||
AppLog.log('发送失败之后 receiverUserID:$receiverUserID data.userid:${data.userid} receiverUserName:${data.nickname} data.isSendSuccess:${data.isSendSuccess} data.sendFailReason:${data.sendFailReason}');
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -225,7 +206,20 @@ class MassSendElectronicKeyLogic extends BaseGetXController {
|
|||||||
builder: (BuildContext context) {
|
builder: (BuildContext context) {
|
||||||
return Dialog(
|
return Dialog(
|
||||||
backgroundColor: Colors.transparent,
|
backgroundColor: Colors.transparent,
|
||||||
child: MassSendElectronicKeyProgressPage(receiverList:state.receiverList),
|
child: MassSendElectronicKeyProgressPage(receiverList:state.receiverList.value, callback: (List receiverList){
|
||||||
|
Navigator.pushNamed(context, Routers.massSendReceiverPage,
|
||||||
|
arguments: <String, List>{
|
||||||
|
'lockUserList': state.receiverList.value,
|
||||||
|
}).then((Object? value) {
|
||||||
|
if (value != null) {
|
||||||
|
value as Map<String, dynamic>;
|
||||||
|
state.receiverList.value = value['lockUserList'];
|
||||||
|
for (int i = 0; i < state.receiverList.value.length; i++) {
|
||||||
|
final LockUserItemData data = state.receiverList.value[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|||||||
@ -1,11 +1,9 @@
|
|||||||
|
|
||||||
import 'package:flutter/cupertino.dart';
|
import 'package:flutter/cupertino.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/widgets.dart';
|
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:star_lock/app_settings/app_colors.dart';
|
import 'package:star_lock/app_settings/app_colors.dart';
|
||||||
import 'package:star_lock/app_settings/app_settings.dart';
|
|
||||||
import 'package:star_lock/main/lockDetail/electronicKey/massSendElectronicKey/massSendElectronicKey/massSendElectronicKey_state.dart';
|
import 'package:star_lock/main/lockDetail/electronicKey/massSendElectronicKey/massSendElectronicKey/massSendElectronicKey_state.dart';
|
||||||
import 'package:star_lock/tools/pickers/pickers.dart';
|
import 'package:star_lock/tools/pickers/pickers.dart';
|
||||||
import 'package:star_lock/tools/pickers/time_picker/model/date_mode.dart';
|
import 'package:star_lock/tools/pickers/time_picker/model/date_mode.dart';
|
||||||
@ -155,26 +153,26 @@ class _MassSendElectronicKeyPageState extends State<MassSendElectronicKeyPage> {
|
|||||||
Widget keyInfoWidget() {
|
Widget keyInfoWidget() {
|
||||||
return Column(
|
return Column(
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
CommonItem(
|
Obx(() => CommonItem(
|
||||||
leftTitel: TranslationLoader.lanKeys!.receiver!.tr,
|
leftTitel: TranslationLoader.lanKeys!.receiver!.tr,
|
||||||
rightTitle: state.receiverList.isEmpty
|
rightTitle: state.receiverList.value.isEmpty
|
||||||
? TranslationLoader.lanKeys!.pleaseAdd!.tr
|
? TranslationLoader.lanKeys!.pleaseAdd!.tr
|
||||||
: state.receiverList.length.toString(),
|
: state.receiverList.value.length.toString(),
|
||||||
isHaveLine: true,
|
isHaveLine: true,
|
||||||
isHaveDirection: true,
|
isHaveDirection: true,
|
||||||
action: () {
|
action: () {
|
||||||
Navigator.pushNamed(context, Routers.massSendReceiverPage,
|
Navigator.pushNamed(context, Routers.massSendReceiverPage,
|
||||||
arguments: <String, List>{
|
arguments: <String, List>{
|
||||||
'lockUserList': state.receiverList,
|
'lockUserList': state.receiverList.value,
|
||||||
}).then((Object? value) {
|
}).then((Object? value) {
|
||||||
if (value != null) {
|
if (value != null) {
|
||||||
value as Map<String, dynamic>;
|
value as Map<String, dynamic>;
|
||||||
state.receiverList = value['lockUserList'];
|
state.receiverList.value = value['lockUserList'];
|
||||||
setState(() {});
|
// setState(() {});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
),
|
)),
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel: TranslationLoader.lanKeys!.countryAndRegion!.tr,
|
leftTitel: TranslationLoader.lanKeys!.countryAndRegion!.tr,
|
||||||
rightTitle: '',
|
rightTitle: '',
|
||||||
@ -247,10 +245,8 @@ class _MassSendElectronicKeyPageState extends State<MassSendElectronicKeyPage> {
|
|||||||
rightTitle: state.endTime.value,
|
rightTitle: state.endTime.value,
|
||||||
isHaveDirection: true,
|
isHaveDirection: true,
|
||||||
action: () {
|
action: () {
|
||||||
PDuration selectDate =
|
PDuration selectDate = PDuration.parse(DateTime.tryParse(state.endTime.value));
|
||||||
PDuration.parse(DateTime.tryParse(state.endTime.value));
|
Pickers.showDatePicker(context, selectDate: selectDate, mode: DateMode.YMDHM, onConfirm: (PDuration p) {
|
||||||
Pickers.showDatePicker(context,
|
|
||||||
selectDate: selectDate, mode: DateMode.YMDHM, onConfirm: (PDuration p) {
|
|
||||||
state.endTime.value = DateTool().getYMDHNDateString(p, 1);
|
state.endTime.value = DateTool().getYMDHNDateString(p, 1);
|
||||||
});
|
});
|
||||||
})),
|
})),
|
||||||
@ -298,7 +294,6 @@ class _MassSendElectronicKeyPageState extends State<MassSendElectronicKeyPage> {
|
|||||||
state.endTime.value = result['endDate'];
|
state.endTime.value = result['endDate'];
|
||||||
state.effectiveDateTime.value = result['starTime'];
|
state.effectiveDateTime.value = result['starTime'];
|
||||||
state.failureDateTime.value = result['endTime'];
|
state.failureDateTime.value = result['endTime'];
|
||||||
AppLog.log('111weekdaysList:${state.weekdaysList} beginTime:${state.beginTime} endTime:${state.endTime} effectiveDateTime:${state.effectiveDateTime} failureDateTime:${state.failureDateTime}');
|
|
||||||
}
|
}
|
||||||
})),
|
})),
|
||||||
Obx(() => Visibility(
|
Obx(() => Visibility(
|
||||||
|
|||||||
@ -7,7 +7,7 @@ class MassSendElectronicKeyState{
|
|||||||
late Contact contact;
|
late Contact contact;
|
||||||
|
|
||||||
final RxBool isRemoteUnlock = false.obs; //是否允许远程开锁
|
final RxBool isRemoteUnlock = false.obs; //是否允许远程开锁
|
||||||
List receiverList = []; //接受者列表
|
RxList receiverList = [].obs; //接受者列表
|
||||||
List<int> lockIdList = <int>[]; //选中的锁ID列表
|
List<int> lockIdList = <int>[]; //选中的锁ID列表
|
||||||
|
|
||||||
RxString beginTime = ''.obs; //默认为当前时间 开始时间
|
RxString beginTime = ''.obs; //默认为当前时间 开始时间
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import 'package:flutter/cupertino.dart';
|
import 'package:flutter/cupertino.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
|
import 'package:flutter/widgets.dart';
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:star_lock/main/lockDetail/passwordKey/passwordKeyDetail/passwordKeyDetail_logic.dart';
|
import 'package:star_lock/main/lockDetail/passwordKey/passwordKeyDetail/passwordKeyDetail_logic.dart';
|
||||||
@ -146,18 +147,21 @@ class _PasswordKeyDetailPageState extends State<PasswordKeyDetailPage>
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
)),
|
)),
|
||||||
CommonItem(
|
Visibility(
|
||||||
leftTitel: TranslationLoader.lanKeys!.operatingRecord!.tr,
|
visible: state.itemData.value.keyboardPwdType != 4,
|
||||||
rightTitle: '',
|
child: CommonItem(
|
||||||
isHaveDirection: true,
|
leftTitel: TranslationLoader.lanKeys!.operatingRecord!.tr,
|
||||||
action: () {
|
rightTitle: '',
|
||||||
Get.toNamed(Routers.lockOperatingRecordPage,
|
isHaveDirection: true,
|
||||||
arguments: <String, Object?>{
|
action: () {
|
||||||
'type': 1,
|
Get.toNamed(Routers.lockOperatingRecordPage,
|
||||||
'id': state.itemData.value.keyboardPwdId.toString(),
|
arguments: <String, Object?>{
|
||||||
'recordName': state.itemData.value.keyboardPwdName
|
'type': 1,
|
||||||
});
|
'id': state.itemData.value.keyboardPwdId.toString(),
|
||||||
}),
|
'recordName': state.itemData.value.keyboardPwdName
|
||||||
|
});
|
||||||
|
}),
|
||||||
|
),
|
||||||
Visibility(
|
Visibility(
|
||||||
visible: state.itemData.value.isCustom == 0 &&
|
visible: state.itemData.value.isCustom == 0 &&
|
||||||
state.itemData.value.keyboardPwdType != 1 &&
|
state.itemData.value.keyboardPwdType != 1 &&
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user