feat:完成循环日期大写
This commit is contained in:
parent
487ff04a8d
commit
d5db2db672
@ -337,7 +337,6 @@
|
||||
"customSMSTemplate": "Custom SMS Template",
|
||||
"customMailTemplate": "Custom Mail Template",
|
||||
"record": "Record",
|
||||
|
||||
"forTheFirstTime": "For the first time",
|
||||
"onceDay": "once a day",
|
||||
"weekOnce": "once a week",
|
||||
@ -797,7 +796,6 @@
|
||||
"购买": "Buy",
|
||||
"实名认证为付费功能,请购买后再使用": "Real-name authentication is a paid function, please use it after purchase",
|
||||
"密码不一致哦": "The passwords are inconsistent",
|
||||
|
||||
"退出添加": "Quit adding",
|
||||
"管理员已满": "Admin full",
|
||||
"用户已满": "The user is full",
|
||||
@ -811,7 +809,6 @@
|
||||
"密码已存在": "Password already exists",
|
||||
"请输入密码": "Please enter password",
|
||||
"暂无密码,无需重置": "No password, no need to reset",
|
||||
|
||||
"真实姓名": "Real name",
|
||||
"身份证号": "ID number",
|
||||
"请输入真实姓名": "Please enter your real name",
|
||||
@ -857,5 +854,12 @@
|
||||
"请开启蓝牙": "Please turn on Bluetooth",
|
||||
"请选择有效日": "Please select the effective day",
|
||||
"公司名字长度不能小于 6 ": "The length of the company name cannot be less than 6",
|
||||
"已是最新版本": "It is the latest version"
|
||||
"已是最新版本": "It is the latest version",
|
||||
"一": "Mon",
|
||||
"二": "Tue",
|
||||
"三": "Wed",
|
||||
"四": "Thu",
|
||||
"五": "Fri",
|
||||
"六": "Sat",
|
||||
"日": "Sun"
|
||||
}
|
||||
|
||||
@ -886,5 +886,12 @@
|
||||
"请开启蓝牙":"请开启蓝牙",
|
||||
"请选择有效日":"请选择有效日",
|
||||
"公司名字长度不能小于 6 ": "公司名字长度不能小于 6 ",
|
||||
"已是最新版本": "已是最新版本"
|
||||
"已是最新版本": "已是最新版本",
|
||||
"一":"一",
|
||||
"二":"二",
|
||||
"三":"三",
|
||||
"四":"四",
|
||||
"五":"五",
|
||||
"六":"六",
|
||||
"日":"日"
|
||||
}
|
||||
|
||||
@ -856,5 +856,12 @@
|
||||
"请开启蓝牙": "请开启蓝牙",
|
||||
"请选择有效日": "请选择有效日",
|
||||
"公司名字长度不能小于 6 ": "公司名字长度不能小于 6 ",
|
||||
"已是最新版本": "已是最新版本"
|
||||
"已是最新版本": "已是最新版本",
|
||||
"一": "一",
|
||||
"二": "二",
|
||||
"三": "三",
|
||||
"四": "四",
|
||||
"五": "五",
|
||||
"六": "六",
|
||||
"日": "日"
|
||||
}
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
import 'package:get/get.dart';
|
||||
import 'package:star_lock/login/login/entity/LoginEntity.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
|
||||
import '../../../../appRouters.dart';
|
||||
import '../../../../network/api_repository.dart';
|
||||
@ -11,6 +12,10 @@ import 'addCardType_state.dart';
|
||||
class AddCardTypeLogic extends BaseGetXController{
|
||||
AddCardTypeState state = AddCardTypeState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekdaysList.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
// 添加卡数据
|
||||
Future<void> addCardData() async {
|
||||
int carType = 0; // 永久:1;限时2,单次3,循环:4
|
||||
|
||||
@ -210,7 +210,7 @@ class _AddCardPageState extends State<AddCardPage>
|
||||
visible: state.weekdaysList.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: state.weekdaysList.value.join(',').toString(),
|
||||
rightTitle: logic.weekDayStr.join(',').toString(),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
|
||||
@ -1,4 +1,3 @@
|
||||
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:flutter_blue_plus/flutter_blue_plus.dart';
|
||||
@ -7,6 +6,7 @@ import 'package:star_lock/blue/io_type.dart';
|
||||
import 'package:star_lock/login/login/entity/LoginEntity.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/eventBusEventManage.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
|
||||
import '../../../../blue/blue_manage.dart';
|
||||
import '../../../../blue/io_protocol/io_addICCardWithTimeCycleCoercion.dart';
|
||||
@ -22,12 +22,19 @@ import 'cardDetail_state.dart';
|
||||
class CardDetailLogic extends BaseGetXController {
|
||||
CardDetailState state = CardDetailState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekDay.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
// 监听设备返回的数据
|
||||
late StreamSubscription<Reply> _replySubscription;
|
||||
|
||||
void _initReplySubscription() {
|
||||
_replySubscription = EventBusManager().eventBus!.on<Reply>().listen((Reply reply) async {
|
||||
_replySubscription =
|
||||
EventBusManager().eventBus!.on<Reply>().listen((Reply reply) async {
|
||||
// 添加卡片开始(重置锁里面所有卡)
|
||||
if((reply is SenderAddICCardWithTimeCycleCoercionReply) && (state.ifCurrentScreen.value == true)) {
|
||||
if ((reply is SenderAddICCardWithTimeCycleCoercionReply) &&
|
||||
(state.ifCurrentScreen.value == true)) {
|
||||
_replyAddICCardBegin(reply);
|
||||
}
|
||||
});
|
||||
@ -50,10 +57,13 @@ class CardDetailLogic extends BaseGetXController{
|
||||
break;
|
||||
case 0x06:
|
||||
//无权限
|
||||
final List<String>? privateKey = await Storage.getStringList(saveBluePrivateKey);
|
||||
final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
|
||||
final List<String>? privateKey =
|
||||
await Storage.getStringList(saveBluePrivateKey);
|
||||
final List<int> getPrivateKeyList =
|
||||
changeStringListToIntList(privateKey!);
|
||||
|
||||
final List<String>? signKey = await Storage.getStringList(saveBlueSignKey);
|
||||
final List<String>? signKey =
|
||||
await Storage.getStringList(saveBlueSignKey);
|
||||
final List<int> signKeyDataList = changeStringListToIntList(signKey!);
|
||||
|
||||
final List<int> token = reply.data.sublist(5, 9);
|
||||
@ -65,11 +75,16 @@ class CardDetailLogic extends BaseGetXController{
|
||||
userID: await Storage.getUid(),
|
||||
cardNo: int.parse(state.typeNumber.value),
|
||||
useCountLimit: 0xffff,
|
||||
operate:state.isDeletCard.value ? 2 : 1, // 0:注册 1:修改 2:删除 3:删除全部
|
||||
operate: state.isDeletCard.value ? 2 : 1,
|
||||
// 0:注册 1:修改 2:删除 3:删除全部
|
||||
isAdmin: state.isAdministrator.value == true ? 1 : 0,
|
||||
isForce:state.isStressCard.value == true ? 1 : 0, // 是否是胁迫
|
||||
isRound:state.keyType.value == 4 ? 1: 0, // 是否是循环
|
||||
weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.weekDay.value), // 周循环
|
||||
isForce: state.isStressCard.value == true ? 1 : 0,
|
||||
// 是否是胁迫
|
||||
isRound: state.keyType.value == 4 ? 1 : 0,
|
||||
// 是否是循环
|
||||
weekRound: DateTool().accordingTheCycleIntoTheCorrespondingNumber(
|
||||
state.weekDay.value),
|
||||
// 周循环
|
||||
startDate: int.parse(state.startDate.value) ~/ 1000,
|
||||
endDate: int.parse(state.endDate.value) ~/ 1000,
|
||||
startTime: DateTool().dateToHNString(state.starTime.value),
|
||||
@ -78,8 +93,7 @@ class CardDetailLogic extends BaseGetXController{
|
||||
signKey: signKeyDataList,
|
||||
privateKey: getPrivateKeyList,
|
||||
token: token,
|
||||
isBeforeAddUser: false
|
||||
);
|
||||
isBeforeAddUser: false);
|
||||
break;
|
||||
default:
|
||||
//失败
|
||||
@ -99,13 +113,17 @@ class CardDetailLogic extends BaseGetXController{
|
||||
dismissEasyLoading();
|
||||
state.sureBtnState.value = 0;
|
||||
});
|
||||
BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState deviceConnectionState) async {
|
||||
BlueManage().blueSendData(BlueManage().connectDeviceName,
|
||||
(BluetoothConnectionState deviceConnectionState) async {
|
||||
if (deviceConnectionState == BluetoothConnectionState.connected) {
|
||||
final List<String>? signKey = await Storage.getStringList(saveBlueSignKey);
|
||||
final List<String>? signKey =
|
||||
await Storage.getStringList(saveBlueSignKey);
|
||||
final List<int> signKeyDataList = changeStringListToIntList(signKey!);
|
||||
|
||||
final List<String>? privateKey = await Storage.getStringList(saveBluePrivateKey);
|
||||
final List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
|
||||
final List<String>? privateKey =
|
||||
await Storage.getStringList(saveBluePrivateKey);
|
||||
final List<int> getPrivateKeyList =
|
||||
changeStringListToIntList(privateKey!);
|
||||
|
||||
final List<String>? token = await Storage.getStringList(saveBlueToken);
|
||||
final List<int> getTokenList = changeStringListToIntList(token!);
|
||||
@ -115,11 +133,16 @@ class CardDetailLogic extends BaseGetXController{
|
||||
userID: await Storage.getUid(),
|
||||
cardNo: int.parse(state.typeNumber.value),
|
||||
useCountLimit: 0xffff,
|
||||
operate:state.isDeletCard.value ? 2 : 1, // 0:注册 1:修改 2:删除 3:删除全部
|
||||
operate: state.isDeletCard.value ? 2 : 1,
|
||||
// 0:注册 1:修改 2:删除 3:删除全部
|
||||
isAdmin: state.isAdministrator.value == true ? 1 : 0,
|
||||
isForce:state.isStressCard.value == true ? 1 : 0, // 是否是胁迫
|
||||
isRound:state.keyType.value == 4 ? 1: 0, // 是否是循环
|
||||
weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.weekDay.value), // 周循环
|
||||
isForce: state.isStressCard.value == true ? 1 : 0,
|
||||
// 是否是胁迫
|
||||
isRound: state.keyType.value == 4 ? 1 : 0,
|
||||
// 是否是循环
|
||||
weekRound: DateTool().accordingTheCycleIntoTheCorrespondingNumber(
|
||||
state.weekDay.value),
|
||||
// 周循环
|
||||
startDate: int.parse(state.startDate.value) ~/ 1000,
|
||||
endDate: int.parse(state.endDate.value) ~/ 1000,
|
||||
startTime: DateTool().dateToHNString(state.starTime.value),
|
||||
@ -128,9 +151,9 @@ class CardDetailLogic extends BaseGetXController{
|
||||
signKey: signKeyDataList,
|
||||
privateKey: getPrivateKeyList,
|
||||
token: getTokenList,
|
||||
isBeforeAddUser: false
|
||||
);
|
||||
} else if (deviceConnectionState == BluetoothConnectionState.disconnected) {
|
||||
isBeforeAddUser: false);
|
||||
} else if (deviceConnectionState ==
|
||||
BluetoothConnectionState.disconnected) {
|
||||
dismissEasyLoading();
|
||||
cancelBlueConnetctToastTimer();
|
||||
state.sureBtnState.value = 0;
|
||||
@ -170,8 +193,7 @@ class CardDetailLogic extends BaseGetXController{
|
||||
cardId: state.fingerprintItemData.value.cardId.toString(),
|
||||
lockId: state.fingerprintItemData.value.lockId.toString(),
|
||||
type: '0',
|
||||
deleteType:'1'
|
||||
);
|
||||
deleteType: '1');
|
||||
if (entity.errorCode!.codeIsSuccessful) {
|
||||
showToast('删除成功'.tr, something: () {
|
||||
Get.back(result: 'addScuess');
|
||||
@ -184,9 +206,11 @@ class CardDetailLogic extends BaseGetXController{
|
||||
if (state.keyType.value == 1) {
|
||||
useDateStr = '永久'.tr;
|
||||
} else if (state.keyType.value == 2) {
|
||||
useDateStr = '${DateTool().dateToYMDHNString(state.startDate.value)}\n${DateTool().dateToYMDHNString(state.endDate.value)}';
|
||||
useDateStr =
|
||||
'${DateTool().dateToYMDHNString(state.startDate.value)}\n${DateTool().dateToYMDHNString(state.endDate.value)}';
|
||||
} else if (state.keyType.value == 4) {
|
||||
useDateStr = '${DateTool().dateToYMDString(state.startDate.value)}\n${DateTool().dateToYMDString(state.endDate.value)}';
|
||||
useDateStr =
|
||||
'${DateTool().dateToYMDString(state.startDate.value)}\n${DateTool().dateToYMDString(state.endDate.value)}';
|
||||
}
|
||||
return useDateStr;
|
||||
}
|
||||
@ -204,5 +228,4 @@ class CardDetailLogic extends BaseGetXController{
|
||||
|
||||
_replySubscription.cancel();
|
||||
}
|
||||
|
||||
}
|
||||
@ -110,7 +110,7 @@ class _CardDetailPageState extends State<CardDetailPage> with RouteAware {
|
||||
visible: state.keyType.value == 4,
|
||||
child: Obx(() => CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.effectiveDay!.tr,
|
||||
rightTitle: state.weekDay.value.join(','),
|
||||
rightTitle: logic.weekDayStr.join(','),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
|
||||
@ -14,6 +14,7 @@ import '../../../../../tools/commonDataManage.dart';
|
||||
import '../../../../../tools/custom_bottom_sheet.dart';
|
||||
import '../../../../../tools/dateTool.dart';
|
||||
import '../../../../../tools/eventBusEventManage.dart';
|
||||
import '../../../../../tools/pickers/time_picker/time_utils.dart';
|
||||
import '../../../../../tools/showTipView.dart';
|
||||
import '../../../lockOperatingRecord/keyOperationRecord_entity.dart';
|
||||
|
||||
@ -22,6 +23,10 @@ typedef BlockIsHaveAllDataCallback = void Function(bool isAllData);
|
||||
class ElectronicKeyDetailLogic extends BaseGetXController {
|
||||
final ElectronicKeyDetailState state = ElectronicKeyDetailState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekDay.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
//修改钥匙名称请求
|
||||
Future<void> modifyKeyNameRequest() async {
|
||||
if (state.changeNameController.text.isEmpty) {
|
||||
|
||||
@ -147,7 +147,7 @@ class _ElectronicKeyDetailPageState extends State<ElectronicKeyDetailPage> {
|
||||
visible: state.keyType.value == 4 ? true : false,
|
||||
child: Obx(() => CommonItem(
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: state.weekDay.value.join(','),
|
||||
rightTitle: logic.weekDayStr.join(','),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
import 'package:get/get.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
import '../../../../../common/XSConstantMacro/XSConstantMacro.dart';
|
||||
import '../../../../../network/api_repository.dart';
|
||||
import '../../../../../tools/dateTool.dart';
|
||||
@ -9,6 +10,10 @@ import 'massSendElectronicKey_state.dart';
|
||||
class MassSendElectronicKeyLogic extends BaseGetXController {
|
||||
MassSendElectronicKeyState state = MassSendElectronicKeyState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekdaysList.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
//群发钥匙检查
|
||||
Future<void> massKeyChecksRequest() async {
|
||||
String getFailureDateTime = '0';
|
||||
|
||||
@ -176,7 +176,7 @@ class _MassSendElectronicKeyPageState extends State<MassSendElectronicKeyPage> {
|
||||
),
|
||||
CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.countryAndRegion!.tr,
|
||||
rightTitle: "",
|
||||
rightTitle: '',
|
||||
isHaveLine: true,
|
||||
isHaveRightWidget: true,
|
||||
isHaveDirection: true,
|
||||
@ -261,7 +261,7 @@ class _MassSendElectronicKeyPageState extends State<MassSendElectronicKeyPage> {
|
||||
children: [
|
||||
CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.remoteUnlockingAllowed!.tr,
|
||||
rightTitle: "",
|
||||
rightTitle: '',
|
||||
isHaveRightWidget: true,
|
||||
rightWidget: SizedBox(width: 60.w, height: 50.h, child: _switch()),
|
||||
action: () {}),
|
||||
@ -276,7 +276,7 @@ class _MassSendElectronicKeyPageState extends State<MassSendElectronicKeyPage> {
|
||||
children: [
|
||||
Obx(() => CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.periodValidity!.tr,
|
||||
rightTitle: "${state.beginTime.value}\n${state.endTime.value}",
|
||||
rightTitle: '${state.beginTime.value}\n${state.endTime.value}',
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
@ -297,10 +297,10 @@ class _MassSendElectronicKeyPageState extends State<MassSendElectronicKeyPage> {
|
||||
}
|
||||
})),
|
||||
Obx(() => Visibility(
|
||||
visible: state.weekdaysList.isNotEmpty ? true : false,
|
||||
visible: state.weekdaysList.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: "有效日".tr,
|
||||
rightTitle: state.weekdaysList.value.join(",").toString(),
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: logic.weekDayStr.join(',').toString(),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
@ -323,9 +323,9 @@ class _MassSendElectronicKeyPageState extends State<MassSendElectronicKeyPage> {
|
||||
Obx(() => Visibility(
|
||||
visible: state.effectiveDateTime.value.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: "有效时间".tr,
|
||||
leftTitel: '有效时间'.tr,
|
||||
rightTitle:
|
||||
"${state.effectiveDateTime.value}-${state.failureDateTime.value}",
|
||||
'${state.effectiveDateTime.value}-${state.failureDateTime.value}',
|
||||
isHaveDirection: true,
|
||||
action: () async {
|
||||
var result = await Get.toNamed(
|
||||
|
||||
@ -6,12 +6,13 @@ import 'package:star_lock/main/lockDetail/authorizedAdmin/authorizedAdmin/author
|
||||
import 'package:star_lock/main/lockDetail/electronicKey/sendElectronicKey/sendElectronicKey/view/sendElectronicKeyView_state.dart';
|
||||
import 'package:star_lock/mine/valueAddedServices/advancedFunctionRecord/advancedFunctionRecord_entity.dart';
|
||||
import 'package:star_lock/network/api_repository.dart';
|
||||
import 'package:star_lock/tools/regularExpression.dart';
|
||||
import 'package:star_lock/tools/showCupertinoAlertView.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/commonDataManage.dart';
|
||||
import 'package:star_lock/tools/dateTool.dart';
|
||||
import 'package:star_lock/tools/eventBusEventManage.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
import 'package:star_lock/tools/regularExpression.dart';
|
||||
import 'package:star_lock/tools/showCupertinoAlertView.dart';
|
||||
import 'package:star_lock/tools/showTipView.dart';
|
||||
import 'package:star_lock/tools/storage.dart';
|
||||
|
||||
@ -20,6 +21,10 @@ class SendElectronicKeyViewLogic extends BaseGetXController {
|
||||
String type;
|
||||
final SendElectronicKeyViewState state = SendElectronicKeyViewState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekdaysList.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
@override
|
||||
void onInit() {
|
||||
super.onInit();
|
||||
|
||||
@ -257,7 +257,7 @@ class _SendElectronicKeyViewState extends State<SendElectronicKeyView>
|
||||
visible: logic.state.weekdaysList.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: logic.state.weekdaysList.join(',').toString(),
|
||||
rightTitle: logic.weekDayStr.join(',').toString(),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
|
||||
@ -3,12 +3,17 @@ import 'package:star_lock/login/login/entity/LoginEntity.dart';
|
||||
import 'package:star_lock/main/lockDetail/face/addFaceType/addFaceType_state.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/dateTool.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
import '../../../../appRouters.dart';
|
||||
import '../../../../network/api_repository.dart';
|
||||
|
||||
class AddFaceTypeLogic extends BaseGetXController {
|
||||
AddFaceTypeState state = AddFaceTypeState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekdaysList.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
// 添加指纹
|
||||
Future<void> addFaceData() async {
|
||||
int faceType = 0; // 永久:1;限时2,单次3,循环:4
|
||||
|
||||
@ -209,7 +209,7 @@ class _AddFaceTypePageState extends State<AddFaceTypePage> with SingleTickerProv
|
||||
visible: state.weekdaysList.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: state.weekdaysList.value.join(',').toString(),
|
||||
rightTitle: logic.weekDayStr.join(',').toString(),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
|
||||
@ -2,12 +2,11 @@ import 'dart:async';
|
||||
|
||||
import 'package:flutter_blue_plus/flutter_blue_plus.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:star_lock/app_settings/app_settings.dart';
|
||||
import 'package:star_lock/blue/io_protocol/io_addFace.dart';
|
||||
import 'package:star_lock/blue/io_type.dart';
|
||||
import 'package:star_lock/main/lockDetail/face/faceDetail/faceDetail_state.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/dateTool.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
import '../../../../blue/blue_manage.dart';
|
||||
import '../../../../blue/io_reply.dart';
|
||||
import '../../../../blue/io_tool/io_tool.dart';
|
||||
@ -19,6 +18,10 @@ import '../../../../tools/storage.dart';
|
||||
class FaceDetailLogic extends BaseGetXController {
|
||||
FaceDetailState state = FaceDetailState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekDay.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
// 获取解析后的数据
|
||||
late StreamSubscription<Reply> _replySubscription;
|
||||
void _initReplySubscription() {
|
||||
|
||||
@ -111,10 +111,10 @@ class _FaceDetailPageState extends State<FaceDetailPage> with RouteAware {
|
||||
}
|
||||
}))),
|
||||
Obx(() => Visibility(
|
||||
visible: state.keyType.value == 4 ? true : false,
|
||||
visible: state.keyType.value == 4,
|
||||
child: Obx(() => CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.effectiveDay!.tr,
|
||||
rightTitle: state.weekDay.value.join(','),
|
||||
rightTitle: logic.weekDayStr.join(','),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
import 'package:get/get.dart';
|
||||
import 'package:star_lock/login/login/entity/LoginEntity.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
import '../../../../appRouters.dart';
|
||||
import '../../../../network/api_repository.dart';
|
||||
import '../../../../tools/dateTool.dart';
|
||||
@ -10,6 +11,10 @@ import 'addFingerprintType_state.dart';
|
||||
class AddFingerprintTypeLogic extends BaseGetXController{
|
||||
AddFingerprintState state = AddFingerprintState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekdaysList.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
// 添加指纹
|
||||
Future<void> addFingerprintsData() async {
|
||||
int fingerprintType = 0; // 永久:1;限时2,单次3,循环:4
|
||||
|
||||
@ -202,7 +202,7 @@ class _AddFingerprintTypePageState extends State<AddFingerprintTypePage> with Si
|
||||
visible: state.weekdaysList.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: state.weekdaysList.value.join(',').toString(),
|
||||
rightTitle: logic.weekDayStr.join(',').toString(),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
|
||||
@ -5,6 +5,7 @@ import 'package:flutter_blue_plus/flutter_blue_plus.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:star_lock/login/login/entity/LoginEntity.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
import '../../../../blue/blue_manage.dart';
|
||||
import '../../../../blue/io_protocol/io_addFingerprintWithTimeCycleCoercion.dart';
|
||||
import '../../../../blue/io_reply.dart';
|
||||
@ -20,6 +21,10 @@ import 'fingerprintDetail_state.dart';
|
||||
class FingerprintDetailLogic extends BaseGetXController{
|
||||
FingerprintDetailState state = FingerprintDetailState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekDay.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
// 获取解析后的数据
|
||||
late StreamSubscription<Reply> _replySubscription;
|
||||
void _initReplySubscription() {
|
||||
|
||||
@ -115,10 +115,10 @@ class _FingerprintDetailPageState extends State<FingerprintDetailPage>
|
||||
}
|
||||
}))),
|
||||
Obx(() => Visibility(
|
||||
visible: state.keyType.value == 4 ? true : false,
|
||||
visible: state.keyType.value == 4,
|
||||
child: Obx(() => CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.effectiveDay!.tr,
|
||||
rightTitle: state.weekDay.value.join(','),
|
||||
rightTitle: logic.weekDayStr.join(','),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
|
||||
@ -2,12 +2,17 @@ import 'package:get/get.dart';
|
||||
import 'package:star_lock/main/lockDetail/iris/addIrisType/addIrisType_state.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/dateTool.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
import '../../../../appRouters.dart';
|
||||
import '../../../../network/api_repository.dart';
|
||||
|
||||
class AddIrisTypeLogic extends BaseGetXController {
|
||||
AddIrisTypeState state = AddIrisTypeState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekdaysList.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
// 添加虹膜
|
||||
void addIrisData() async {
|
||||
var irisType = 0; // 永久:1;限时2,单次3,循环:4
|
||||
|
||||
@ -57,14 +57,14 @@ class _AddIrisTypePageState extends State<AddIrisTypePage> {
|
||||
super.initState();
|
||||
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
if (state.selectType.value == "1") {
|
||||
if (state.selectType.value == '1') {
|
||||
state.beginTime.value = DateTool().dateToYMDHNString(
|
||||
DateTime.now().millisecondsSinceEpoch.toString()); //默认为当前时间
|
||||
state.endTime.value = DateTool().dateToYMDHNString(
|
||||
DateTime.now().millisecondsSinceEpoch.toString()); //默认为当前时间
|
||||
} else {
|
||||
state.beginTime.value = ""; //默认为当前时间
|
||||
state.endTime.value = ""; //默认为当前时间
|
||||
state.beginTime.value = ''; //默认为当前时间
|
||||
state.endTime.value = ''; //默认为当前时间
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -126,7 +126,7 @@ class _AddIrisTypePageState extends State<AddIrisTypePage> {
|
||||
Container(height: 10.h),
|
||||
CommonItem(
|
||||
leftTitel: titleStr,
|
||||
rightTitle: "",
|
||||
rightTitle: '',
|
||||
isHaveRightWidget: true,
|
||||
rightWidget: getTFWidget(rightTitle)),
|
||||
Container(height: 10.h),
|
||||
@ -174,7 +174,7 @@ class _AddIrisTypePageState extends State<AddIrisTypePage> {
|
||||
children: [
|
||||
Obx(() => CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.periodValidity!.tr,
|
||||
rightTitle: "${state.beginTime.value}\n${state.endTime.value}",
|
||||
rightTitle: '${state.beginTime.value}\n${state.endTime.value}',
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
@ -197,8 +197,8 @@ class _AddIrisTypePageState extends State<AddIrisTypePage> {
|
||||
Obx(() => Visibility(
|
||||
visible: state.weekdaysList.isNotEmpty ? true : false,
|
||||
child: CommonItem(
|
||||
leftTitel: "有效日",
|
||||
rightTitle: state.weekdaysList.value.join(",").toString(),
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: logic.weekDayStr.join(',').toString(),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
@ -221,9 +221,9 @@ class _AddIrisTypePageState extends State<AddIrisTypePage> {
|
||||
Obx(() => Visibility(
|
||||
visible: state.effectiveDateTime.value.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: "有效时间".tr,
|
||||
leftTitel: '有效时间'.tr,
|
||||
rightTitle:
|
||||
"${state.effectiveDateTime.value}-${state.failureDateTime.value}",
|
||||
'${state.effectiveDateTime.value}-${state.failureDateTime.value}',
|
||||
isHaveDirection: true,
|
||||
action: () async {
|
||||
var result = await Get.toNamed(Routers.seletKeyCyclicDatePage,
|
||||
@ -255,8 +255,8 @@ class _AddIrisTypePageState extends State<AddIrisTypePage> {
|
||||
? true
|
||||
: false,
|
||||
child: CommonItem(
|
||||
leftTitel: "是否为管理员".tr,
|
||||
rightTitle: "",
|
||||
leftTitel: '是否为管理员'.tr,
|
||||
rightTitle: '',
|
||||
isTipsImg: false,
|
||||
isHaveRightWidget: true,
|
||||
rightWidget: SizedBox(
|
||||
@ -268,13 +268,13 @@ class _AddIrisTypePageState extends State<AddIrisTypePage> {
|
||||
var isDemoMode = await Storage.getBool(ifIsDemoModeOrNot);
|
||||
if (isDemoMode == false) {
|
||||
if (state.nameController.text.isEmpty) {
|
||||
logic.showToast("请输入姓名");
|
||||
logic.showToast('请输入姓名');
|
||||
return;
|
||||
}
|
||||
logic.checkIrisNameDuplicated(state.nameController.text);
|
||||
} else {
|
||||
// Get.toNamed(Routers.selectLockTypePage);
|
||||
logic.showToast("演示模式");
|
||||
logic.showToast('演示模式');
|
||||
}
|
||||
}),
|
||||
],
|
||||
|
||||
@ -6,6 +6,7 @@ import 'package:star_lock/blue/io_type.dart';
|
||||
import 'package:star_lock/main/lockDetail/iris/irisDetail/irisDetail_state.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/eventBusEventManage.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
|
||||
import '../../../../blue/blue_manage.dart';
|
||||
// import '../../../../blue/io_protocol/io_addICCard.dart';
|
||||
@ -20,6 +21,10 @@ import '../../../../tools/storage.dart';
|
||||
class IrisDetailLogic extends BaseGetXController {
|
||||
IrisDetailState state = IrisDetailState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekDay.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
// 监听设备返回的数据
|
||||
late StreamSubscription<Reply> _replySubscription;
|
||||
void _initReplySubscription() {
|
||||
|
||||
@ -108,7 +108,7 @@ class _CardDetailPageState extends State<CardDetailPage> with RouteAware {
|
||||
visible: state.keyType.value == 4 ? true : false,
|
||||
child: Obx(() => CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.effectiveDay!.tr,
|
||||
rightTitle: state.weekDay.value.join(','),
|
||||
rightTitle: logic.weekDayStr.join(','),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:star_lock/app_settings/app_settings.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
|
||||
import '../../../../../tools/baseGetXController.dart';
|
||||
import '../../../../../tools/eventBusEventManage.dart';
|
||||
@ -11,11 +11,21 @@ import 'basicInformation_state.dart';
|
||||
class BasicInformationLogic extends BaseGetXController {
|
||||
final BasicInformationState state = BasicInformationState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.lockBasicInfo.value.weekDays
|
||||
?.map((e) => TimeUtils.translateWeekday(e))
|
||||
.toList() ??
|
||||
[];
|
||||
}
|
||||
|
||||
// 下级界面修改成功后传递数据
|
||||
StreamSubscription? _passCurrentLockInformationEvent;
|
||||
|
||||
void initLoadDataAction(BlockSetStateCallback blockSetStateCallback) {
|
||||
// 蓝牙协议通知传输跟蓝牙之外的数据传输类不一样 eventBus
|
||||
_passCurrentLockInformationEvent = eventBus.on<PassCurrentLockInformationEvent>().listen((PassCurrentLockInformationEvent event) {
|
||||
_passCurrentLockInformationEvent = eventBus
|
||||
.on<PassCurrentLockInformationEvent>()
|
||||
.listen((PassCurrentLockInformationEvent event) {
|
||||
state.lockSetInfoData.value = event.lockSetInfoData;
|
||||
blockSetStateCallback();
|
||||
});
|
||||
@ -25,7 +35,8 @@ class BasicInformationLogic extends BaseGetXController{
|
||||
void onReady() {
|
||||
super.onReady();
|
||||
|
||||
AppLog.log('厂商 vendor:${state.lockBasicInfo.value.vendor} 型号 model:${state.lockBasicInfo.value.model}');
|
||||
AppLog.log(
|
||||
'厂商 vendor:${state.lockBasicInfo.value.vendor} 型号 model:${state.lockBasicInfo.value.model}');
|
||||
}
|
||||
|
||||
@override
|
||||
@ -33,5 +44,4 @@ class BasicInformationLogic extends BaseGetXController{
|
||||
super.onClose();
|
||||
_passCurrentLockInformationEvent?.cancel();
|
||||
}
|
||||
|
||||
}
|
||||
@ -89,7 +89,7 @@ class _BasicInformationPageState extends State<BasicInformationPage> {
|
||||
visible: (state.lockBasicInfo.value.keyType ?? 0) == 4,
|
||||
child: CommonItem(
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: (state.lockBasicInfo.value.weekDays ?? []).join(',').toString(),
|
||||
rightTitle: logic.weekDayStr.join(',').toString(),
|
||||
allHeight: 70.h,
|
||||
isHaveLine: true),
|
||||
)),
|
||||
|
||||
@ -2,12 +2,17 @@ import 'package:get/get.dart';
|
||||
import 'package:star_lock/main/lockDetail/palm/addPalmType/addPalmType_state.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/dateTool.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
import '../../../../appRouters.dart';
|
||||
import '../../../../network/api_repository.dart';
|
||||
|
||||
class AddPalmTypeLogic extends BaseGetXController {
|
||||
AddPalmTypeState state = AddPalmTypeState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekdaysList.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
// 添加指纹
|
||||
void addPalmData() async {
|
||||
var palmType = 0; // 永久:1;限时2,单次3,循环:4
|
||||
|
||||
@ -57,14 +57,14 @@ class _AddPalmTypePageState extends State<AddPalmTypePage> {
|
||||
super.initState();
|
||||
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
if (state.selectType.value == "1") {
|
||||
if (state.selectType.value == '1') {
|
||||
state.beginTime.value = DateTool().dateToYMDHNString(
|
||||
DateTime.now().millisecondsSinceEpoch.toString()); //默认为当前时间
|
||||
state.endTime.value = DateTool().dateToYMDHNString(
|
||||
DateTime.now().millisecondsSinceEpoch.toString()); //默认为当前时间
|
||||
} else {
|
||||
state.beginTime.value = ""; //默认为当前时间
|
||||
state.endTime.value = ""; //默认为当前时间
|
||||
state.beginTime.value = ''; //默认为当前时间
|
||||
state.endTime.value = ''; //默认为当前时间
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -126,7 +126,7 @@ class _AddPalmTypePageState extends State<AddPalmTypePage> {
|
||||
Container(height: 10.h),
|
||||
CommonItem(
|
||||
leftTitel: titleStr,
|
||||
rightTitle: "",
|
||||
rightTitle: '',
|
||||
isHaveRightWidget: true,
|
||||
rightWidget: getTFWidget(rightTitle)),
|
||||
Container(height: 10.h),
|
||||
@ -174,7 +174,7 @@ class _AddPalmTypePageState extends State<AddPalmTypePage> {
|
||||
children: [
|
||||
Obx(() => CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.periodValidity!.tr,
|
||||
rightTitle: "${state.beginTime.value}\n${state.endTime.value}",
|
||||
rightTitle: '${state.beginTime.value}\n${state.endTime.value}',
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
@ -195,10 +195,10 @@ class _AddPalmTypePageState extends State<AddPalmTypePage> {
|
||||
}
|
||||
})),
|
||||
Obx(() => Visibility(
|
||||
visible: state.weekdaysList.isNotEmpty ? true : false,
|
||||
visible: state.weekdaysList.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: "有效日",
|
||||
rightTitle: state.weekdaysList.value.join(",").toString(),
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: logic.weekDayStr.join(',').toString(),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
@ -221,9 +221,9 @@ class _AddPalmTypePageState extends State<AddPalmTypePage> {
|
||||
Obx(() => Visibility(
|
||||
visible: state.effectiveDateTime.value.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: "有效时间".tr,
|
||||
leftTitel: '有效时间'.tr,
|
||||
rightTitle:
|
||||
"${state.effectiveDateTime.value}-${state.failureDateTime.value}",
|
||||
'${state.effectiveDateTime.value}-${state.failureDateTime.value}',
|
||||
isHaveDirection: true,
|
||||
action: () async {
|
||||
var result = await Get.toNamed(Routers.seletKeyCyclicDatePage,
|
||||
@ -255,8 +255,8 @@ class _AddPalmTypePageState extends State<AddPalmTypePage> {
|
||||
? true
|
||||
: false,
|
||||
child: CommonItem(
|
||||
leftTitel: "是否为管理员".tr,
|
||||
rightTitle: "",
|
||||
leftTitel: '是否为管理员'.tr,
|
||||
rightTitle: '',
|
||||
isTipsImg: false,
|
||||
isHaveRightWidget: true,
|
||||
rightWidget: SizedBox(
|
||||
@ -268,13 +268,13 @@ class _AddPalmTypePageState extends State<AddPalmTypePage> {
|
||||
var isDemoMode = await Storage.getBool(ifIsDemoModeOrNot);
|
||||
if (isDemoMode == false) {
|
||||
if (state.nameController.text.isEmpty) {
|
||||
logic.showToast("请输入姓名");
|
||||
logic.showToast('请输入姓名');
|
||||
return;
|
||||
}
|
||||
logic.checkPalmNameDuplicated(state.nameController.text);
|
||||
} else {
|
||||
// Get.toNamed(Routers.selectLockTypePage);
|
||||
logic.showToast("演示模式");
|
||||
logic.showToast('演示模式');
|
||||
}
|
||||
}),
|
||||
],
|
||||
|
||||
@ -6,13 +6,12 @@ import 'package:star_lock/blue/io_type.dart';
|
||||
import 'package:star_lock/main/lockDetail/palm/palmDetail/palmDetail_state.dart';
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/eventBusEventManage.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
|
||||
import '../../../../blue/blue_manage.dart';
|
||||
// import '../../../../blue/io_protocol/io_addICCard.dart';
|
||||
import '../../../../blue/io_reply.dart';
|
||||
import '../../../../blue/io_tool/io_tool.dart';
|
||||
import '../../../../blue/io_tool/manager_event_bus.dart';
|
||||
import '../../../../blue/sender_manage.dart';
|
||||
import '../../../../network/api_repository.dart';
|
||||
import '../../../../tools/dateTool.dart';
|
||||
import '../../../../tools/storage.dart';
|
||||
@ -20,6 +19,10 @@ import '../../../../tools/storage.dart';
|
||||
class PalmDetailLogic extends BaseGetXController {
|
||||
PalmDetailState state = PalmDetailState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekDay.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
// 监听设备返回的数据
|
||||
late StreamSubscription<Reply> _replySubscription;
|
||||
void _initReplySubscription() {
|
||||
|
||||
@ -34,14 +34,14 @@ class _PalmDetailPageState extends State<PalmDetailPage> with RouteAware {
|
||||
return Scaffold(
|
||||
backgroundColor: AppColors.mainBackgroundColor,
|
||||
appBar: TitleAppBar(
|
||||
barTitle: "手掌详情",
|
||||
barTitle: '手掌详情',
|
||||
haveBack: true,
|
||||
backgroundColor: AppColors.mainColor,
|
||||
),
|
||||
body: ListView(
|
||||
children: [
|
||||
Obx(() => CommonItem(
|
||||
leftTitel: "手掌号",
|
||||
leftTitel: '手掌号',
|
||||
rightTitle: state.typeNumber.value,
|
||||
isHaveDirection: false,
|
||||
isHaveLine: true)),
|
||||
@ -72,14 +72,14 @@ class _PalmDetailPageState extends State<PalmDetailPage> with RouteAware {
|
||||
var data = await Get.toNamed(
|
||||
Routers.otherTypeKeyChangeDatePage,
|
||||
arguments: {
|
||||
"pushType": 0,
|
||||
"fingerprintItemData":
|
||||
'pushType': 0,
|
||||
'fingerprintItemData':
|
||||
state.fingerprintItemData.value,
|
||||
});
|
||||
if (data != null) {
|
||||
setState(() {
|
||||
state.starDate.value = data["beginTimeTimestamp"];
|
||||
state.endDate.value = data["endTimeTimestamp"];
|
||||
state.starDate.value = data['beginTimeTimestamp'];
|
||||
state.endDate.value = data['endTimeTimestamp'];
|
||||
state.keyType.value = 2;
|
||||
});
|
||||
}
|
||||
@ -88,68 +88,68 @@ class _PalmDetailPageState extends State<PalmDetailPage> with RouteAware {
|
||||
var data = await Get.toNamed(
|
||||
Routers.otherTypeKeyChangeValidityDatePage,
|
||||
arguments: {
|
||||
"pushType": 0,
|
||||
"fingerprintItemData":
|
||||
'pushType': 0,
|
||||
'fingerprintItemData':
|
||||
state.fingerprintItemData.value,
|
||||
});
|
||||
if (data != null) {
|
||||
setState(() {
|
||||
state.starDate.value = data["starDate"];
|
||||
state.endDate.value = data["endDate"];
|
||||
state.starTime.value = data["starTime"];
|
||||
state.endTime.value = data["endTime"];
|
||||
state.weekDay.value = data["weekDay"];
|
||||
state.starDate.value = data['starDate'];
|
||||
state.endDate.value = data['endDate'];
|
||||
state.starTime.value = data['starTime'];
|
||||
state.endTime.value = data['endTime'];
|
||||
state.weekDay.value = data['weekDay'];
|
||||
});
|
||||
}
|
||||
}
|
||||
}))),
|
||||
Obx(() => Visibility(
|
||||
visible: state.keyType.value == 4 ? true : false,
|
||||
visible: state.keyType.value == 4 ,
|
||||
child: Obx(() => CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.effectiveDay!.tr,
|
||||
rightTitle: state.weekDay.value.join(','),
|
||||
rightTitle: logic.weekDayStr.join(','),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
var data = await Get.toNamed(
|
||||
Routers.otherTypeKeyChangeValidityDatePage,
|
||||
arguments: {
|
||||
"pushType": 0,
|
||||
"fingerprintItemData":
|
||||
'pushType': 0,
|
||||
'fingerprintItemData':
|
||||
state.fingerprintItemData.value,
|
||||
});
|
||||
if (data != null) {
|
||||
setState(() {
|
||||
state.starDate.value = data["starDate"];
|
||||
state.endDate.value = data["endDate"];
|
||||
state.starTime.value = data["starTime"];
|
||||
state.endTime.value = data["endTime"];
|
||||
state.weekDay.value = data["weekDay"];
|
||||
state.starDate.value = data['starDate'];
|
||||
state.endDate.value = data['endDate'];
|
||||
state.starTime.value = data['starTime'];
|
||||
state.endTime.value = data['endTime'];
|
||||
state.weekDay.value = data['weekDay'];
|
||||
});
|
||||
}
|
||||
})))),
|
||||
Obx(() => Visibility(
|
||||
visible: state.keyType.value == 4 ? true : false,
|
||||
child: Obx(() => CommonItem(
|
||||
leftTitel: "有效时间",
|
||||
leftTitel: '有效时间',
|
||||
rightTitle:
|
||||
"${DateTool().dateToHNString(state.starTime.value)}-${DateTool().dateToHNString(state.endTime.value)}",
|
||||
'${DateTool().dateToHNString(state.starTime.value)}-${DateTool().dateToHNString(state.endTime.value)}',
|
||||
isHaveDirection: true,
|
||||
action: () async {
|
||||
var data = await Get.toNamed(
|
||||
Routers.otherTypeKeyChangeValidityDatePage,
|
||||
arguments: {
|
||||
"pushType": 0,
|
||||
"fingerprintItemData":
|
||||
'pushType': 0,
|
||||
'fingerprintItemData':
|
||||
state.fingerprintItemData.value,
|
||||
});
|
||||
if (data != null) {
|
||||
setState(() {
|
||||
state.starDate.value = data["starDate"];
|
||||
state.endDate.value = data["endDate"];
|
||||
state.starTime.value = data["starTime"];
|
||||
state.endTime.value = data["endTime"];
|
||||
state.weekDay.value = data["validityValue"];
|
||||
state.starDate.value = data['starDate'];
|
||||
state.endDate.value = data['endDate'];
|
||||
state.starTime.value = data['starTime'];
|
||||
state.endTime.value = data['endTime'];
|
||||
state.weekDay.value = data['validityValue'];
|
||||
});
|
||||
}
|
||||
})))),
|
||||
@ -166,7 +166,7 @@ class _PalmDetailPageState extends State<PalmDetailPage> with RouteAware {
|
||||
SizedBox(height: 10.h),
|
||||
CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.operatingRecord!.tr,
|
||||
rightTitle: "",
|
||||
rightTitle: '',
|
||||
isHaveDirection: true,
|
||||
action: () {
|
||||
// Get.toNamed(Routers.keyOperationRecordPage, arguments: {
|
||||
@ -199,11 +199,11 @@ class _PalmDetailPageState extends State<PalmDetailPage> with RouteAware {
|
||||
return ShowTFView(
|
||||
title:
|
||||
"${TranslationLoader.lanKeys!.amend!.tr}${TranslationLoader.lanKeys!.name!.tr}",
|
||||
tipTitle: "",
|
||||
tipTitle: '',
|
||||
controller: state.changeNameController,
|
||||
sureClick: () {
|
||||
if (state.changeNameController.text.isEmpty) {
|
||||
logic.showToast("请输入姓名");
|
||||
logic.showToast('请输入姓名');
|
||||
return;
|
||||
}
|
||||
Get.back();
|
||||
@ -222,8 +222,8 @@ class _PalmDetailPageState extends State<PalmDetailPage> with RouteAware {
|
||||
context: context,
|
||||
builder: (BuildContext context) {
|
||||
return ShowIosTipView(
|
||||
title: "提示",
|
||||
tipTitle: "确定要删除吗?",
|
||||
title: '提示',
|
||||
tipTitle: '确定要删除吗?',
|
||||
sureClick: () async {
|
||||
Get.back();
|
||||
String? idStr = await Storage.getUid();
|
||||
|
||||
@ -355,7 +355,7 @@ class _PasswordKeyPerpetualPageState extends State<PasswordKeyPerpetualPage>
|
||||
return Column(
|
||||
children: <Widget>[
|
||||
CommonItem(
|
||||
leftTitel: '有效日',
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: state.loopModeStr.value,
|
||||
isHaveLine: true,
|
||||
isHaveDirection: true,
|
||||
|
||||
@ -1,11 +1,16 @@
|
||||
|
||||
import 'package:star_lock/tools/baseGetXController.dart';
|
||||
import 'package:star_lock/tools/pickers/time_picker/time_utils.dart';
|
||||
|
||||
import 'addRemoteControl_state.dart';
|
||||
|
||||
class AddRemoteControlLoigc extends BaseGetXController{
|
||||
AddRemoteControlState state = AddRemoteControlState();
|
||||
|
||||
List<dynamic> get weekDayStr {
|
||||
return state.weekdaysList.map((e) => TimeUtils.translateWeekday(e)).toList();
|
||||
}
|
||||
|
||||
@override
|
||||
void onInit() {
|
||||
|
||||
|
||||
@ -130,7 +130,7 @@ class _AddRemoteControlPageState extends State<AddRemoteControlPage>
|
||||
children: [
|
||||
CommonItem(
|
||||
leftTitel: titleStr,
|
||||
rightTitle: "",
|
||||
rightTitle: '',
|
||||
isHaveRightWidget: true,
|
||||
rightWidget: getTFWidget(rightTitle)),
|
||||
Container(height: 10.h),
|
||||
@ -161,8 +161,8 @@ class _AddRemoteControlPageState extends State<AddRemoteControlPage>
|
||||
rightTitle: state.timeLimitEndTime.value,
|
||||
isHaveDirection: true,
|
||||
action: () {
|
||||
PDuration selectDate =
|
||||
PDuration.parse(DateTime.tryParse(state.timeLimitEndTime.value));
|
||||
PDuration selectDate = PDuration.parse(
|
||||
DateTime.tryParse(state.timeLimitEndTime.value));
|
||||
Pickers.showDatePicker(context,
|
||||
selectDate: selectDate, mode: DateMode.YMDHM, onConfirm: (p) {
|
||||
state.timeLimitEndTime.value =
|
||||
@ -181,7 +181,7 @@ class _AddRemoteControlPageState extends State<AddRemoteControlPage>
|
||||
Obx(() => CommonItem(
|
||||
leftTitel: TranslationLoader.lanKeys!.periodValidity!.tr,
|
||||
rightTitle:
|
||||
"${state.cycleBeginTime.value}\n${state.cycleEndTime.value}",
|
||||
'${state.cycleBeginTime.value}\n${state.cycleEndTime.value}',
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
@ -202,10 +202,10 @@ class _AddRemoteControlPageState extends State<AddRemoteControlPage>
|
||||
}
|
||||
})),
|
||||
Obx(() => Visibility(
|
||||
visible: state.weekdaysList.isNotEmpty ? true : false,
|
||||
visible: state.weekdaysList.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: "有效日".tr,
|
||||
rightTitle: state.weekdaysList.value.join(",").toString(),
|
||||
leftTitel: '有效日'.tr,
|
||||
rightTitle: logic.weekDayStr.join(',').toString(),
|
||||
isHaveDirection: true,
|
||||
isHaveLine: true,
|
||||
action: () async {
|
||||
@ -228,9 +228,9 @@ class _AddRemoteControlPageState extends State<AddRemoteControlPage>
|
||||
Obx(() => Visibility(
|
||||
visible: state.effectiveDateTime.value.isNotEmpty,
|
||||
child: CommonItem(
|
||||
leftTitel: "有效时间".tr,
|
||||
leftTitel: '有效时间'.tr,
|
||||
rightTitle:
|
||||
"${state.effectiveDateTime.value}-${state.failureDateTime.value}",
|
||||
'${state.effectiveDateTime.value}-${state.failureDateTime.value}',
|
||||
isHaveDirection: true,
|
||||
action: () async {
|
||||
var result = await Get.toNamed(Routers.seletKeyCyclicDatePage,
|
||||
@ -270,14 +270,14 @@ class _AddRemoteControlPageState extends State<AddRemoteControlPage>
|
||||
var isDemoMode = await Storage.getBool(ifIsDemoModeOrNot);
|
||||
if (isDemoMode == false) {
|
||||
if (state.nameController.text.isEmpty) {
|
||||
logic.showToast("请输入姓名");
|
||||
logic.showToast('请输入姓名');
|
||||
return;
|
||||
}
|
||||
logic.showToast("请确保在设备附近");
|
||||
logic.showToast('请确保在设备附近');
|
||||
// logic.addFingerprintsData();
|
||||
} else {
|
||||
// Get.toNamed(Routers.selectLockTypePage);
|
||||
logic.showToast("演示模式");
|
||||
logic.showToast('演示模式');
|
||||
}
|
||||
}),
|
||||
],
|
||||
@ -307,7 +307,7 @@ class _AddRemoteControlPageState extends State<AddRemoteControlPage>
|
||||
height: 20.h,
|
||||
),
|
||||
Text(
|
||||
"操作成功,密码为",
|
||||
'操作成功,密码为',
|
||||
style: TextStyle(
|
||||
fontSize: 32.sp,
|
||||
color: Colors.black,
|
||||
@ -317,7 +317,7 @@ class _AddRemoteControlPageState extends State<AddRemoteControlPage>
|
||||
height: 10.h,
|
||||
),
|
||||
Text(
|
||||
"62689876",
|
||||
'62689876',
|
||||
style: TextStyle(
|
||||
fontSize: 60.sp,
|
||||
color: Colors.black,
|
||||
@ -423,15 +423,15 @@ class _AddRemoteControlPageState extends State<AddRemoteControlPage>
|
||||
}
|
||||
|
||||
final List<ItemView> _itemTabs = <ItemView>[
|
||||
ItemView(title: TranslationLoader.lanKeys!.permanent!.tr, selectType: "0"),
|
||||
ItemView(title: TranslationLoader.lanKeys!.timeLimit!.tr, selectType: "1"),
|
||||
ItemView(title: TranslationLoader.lanKeys!.permanent!.tr, selectType: '0'),
|
||||
ItemView(title: TranslationLoader.lanKeys!.timeLimit!.tr, selectType: '1'),
|
||||
ItemView(
|
||||
title: TranslationLoader.lanKeys!.circulation!.tr, selectType: "2"),
|
||||
title: TranslationLoader.lanKeys!.circulation!.tr, selectType: '2'),
|
||||
];
|
||||
|
||||
final List<ItemView> _fromCheckInTypeItemTabs = <ItemView>[
|
||||
ItemView(title: TranslationLoader.lanKeys!.permanent!.tr, selectType: "0"),
|
||||
ItemView(title: TranslationLoader.lanKeys!.timeLimit!.tr, selectType: "1"),
|
||||
ItemView(title: TranslationLoader.lanKeys!.permanent!.tr, selectType: '0'),
|
||||
ItemView(title: TranslationLoader.lanKeys!.timeLimit!.tr, selectType: '1'),
|
||||
];
|
||||
|
||||
TabBar _tabBar() {
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
import 'package:get/get_utils/get_utils.dart';
|
||||
|
||||
class TimeUtils {
|
||||
/// 年
|
||||
static List calcYears({int begin = 1900, int end = 2100}) =>
|
||||
@ -14,7 +16,7 @@ class TimeUtils {
|
||||
static List calcDay(int year, int month, {int begin = 1, int end = 31}) {
|
||||
begin = begin < 1 ? 1 : begin;
|
||||
|
||||
int days = _calcDateCount(year, month);
|
||||
final int days = _calcDateCount(year, month);
|
||||
if (end > days) {
|
||||
end = days;
|
||||
}
|
||||
@ -36,11 +38,15 @@ class TimeUtils {
|
||||
}
|
||||
|
||||
static List _calcCount(begin, end) {
|
||||
int length = end - begin + 1;
|
||||
if (length == 0) return [begin];
|
||||
if (length < 0) return [];
|
||||
final int length = end - begin + 1;
|
||||
if (length == 0) {
|
||||
return [begin];
|
||||
}
|
||||
if (length < 0) {
|
||||
return [];
|
||||
}
|
||||
|
||||
return List.generate(length, (index) => begin + index);
|
||||
return List.generate(length, (int index) => begin + index);
|
||||
}
|
||||
|
||||
// 计算月份所对应天数
|
||||
@ -67,6 +73,21 @@ class TimeUtils {
|
||||
return (v < 10) ? "0$v" : "$v";
|
||||
}
|
||||
|
||||
|
||||
static String translateWeekday(int number,[int index=1]) {
|
||||
final List<String> weekDays = <String>[
|
||||
'一'.tr,
|
||||
'二'.tr,
|
||||
'三'.tr,
|
||||
'四'.tr,
|
||||
'五'.tr,
|
||||
'六'.tr,
|
||||
'日'.tr
|
||||
];
|
||||
final String days = weekDays[number- index];
|
||||
return days; //
|
||||
}
|
||||
|
||||
// String _checkStr(String v) {
|
||||
// return v == null ? "" : v;
|
||||
// }
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user