打包给欧阳回归测试
This commit is contained in:
parent
d38e56bd84
commit
37e2f3ec2a
@ -462,7 +462,7 @@ class BlueManage {
|
|||||||
|
|
||||||
_subScribeToCharacteristic(BluetoothCharacteristic characteristic) async {
|
_subScribeToCharacteristic(BluetoothCharacteristic characteristic) async {
|
||||||
final subscription = characteristic.onValueReceived.listen((data) {
|
final subscription = characteristic.onValueReceived.listen((data) {
|
||||||
AppLog.log("订阅获取的数据:$data");
|
// AppLog.log("订阅获取的数据:$data");
|
||||||
if (data == lastTimeData || data.isEmpty) {
|
if (data == lastTimeData || data.isEmpty) {
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
@ -477,7 +477,7 @@ class BlueManage {
|
|||||||
// 当包有头时
|
// 当包有头时
|
||||||
// 判断是否需要分包
|
// 判断是否需要分包
|
||||||
dataLen = data[8] * 256 + data[9]; // 高16位用来指示后面数据块内容的长度
|
dataLen = data[8] * 256 + data[9]; // 高16位用来指示后面数据块内容的长度
|
||||||
AppLog.log("dataLen1111:$dataLen getDataLength:${data.length} data:$data");
|
// AppLog.log("dataLen1111:$dataLen getDataLength:${data.length} data:$data");
|
||||||
if (dataLen! + 14 > data.length) {
|
if (dataLen! + 14 > data.length) {
|
||||||
// 当前包的长度小于实际的包时 分包添加 不解析
|
// 当前包的长度小于实际的包时 分包添加 不解析
|
||||||
allData.addAll(data);
|
allData.addAll(data);
|
||||||
@ -493,8 +493,7 @@ class BlueManage {
|
|||||||
// 当包没有头时 是分包的包 直接添加
|
// 当包没有头时 是分包的包 直接添加
|
||||||
allData.addAll(data);
|
allData.addAll(data);
|
||||||
// var len = allData[8] * 256 + allData[9];
|
// var len = allData[8] * 256 + allData[9];
|
||||||
AppLog.log(
|
// AppLog.log("dataLen3333:$dataLen allData.length:${allData.length} allData:$allData");
|
||||||
"dataLen3333:$dataLen allData.length:${allData.length} allData:$allData");
|
|
||||||
if (((dataLen ?? 0) + 14) <= allData.length) {
|
if (((dataLen ?? 0) + 14) <= allData.length) {
|
||||||
// 当长度小于等于当前包的数据时 直接解析数据
|
// 当长度小于等于当前包的数据时 直接解析数据
|
||||||
CommandReciverManager.appDataReceive(allData);
|
CommandReciverManager.appDataReceive(allData);
|
||||||
|
|||||||
@ -34,8 +34,8 @@ abstract class SenderProtocol extends IOData {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void printLog(List<int> data) {
|
void printLog(List<int> data) {
|
||||||
// AppLog.log(
|
AppLog.log(
|
||||||
// "App -> 锁,指令类型:${commandType!.typeName} \n参数是:\n${toString()} \n加密之前数据是:\n$data 长度是:${data.length}");
|
"App -> 锁,指令类型:${commandType!.typeName} \n参数是:\n${toString()} \n加密之前数据是:\n$data 长度是:${data.length}");
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO:拼装数据Ï
|
//TODO:拼装数据Ï
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import 'package:star_lock/network/api_repository.dart';
|
|||||||
import 'package:star_lock/tools/baseGetXController.dart';
|
import 'package:star_lock/tools/baseGetXController.dart';
|
||||||
import 'package:star_lock/tools/showCupertinoAlertView.dart';
|
import 'package:star_lock/tools/showCupertinoAlertView.dart';
|
||||||
|
|
||||||
|
import '../../../../../tools/commonDataManage.dart';
|
||||||
import '../../../../../tools/custom_bottom_sheet.dart';
|
import '../../../../../tools/custom_bottom_sheet.dart';
|
||||||
import '../../../../../tools/dateTool.dart';
|
import '../../../../../tools/dateTool.dart';
|
||||||
import '../../../../../tools/eventBusEventManage.dart';
|
import '../../../../../tools/eventBusEventManage.dart';
|
||||||
@ -233,15 +234,21 @@ class ElectronicKeyDetailLogic extends BaseGetXController {
|
|||||||
|
|
||||||
Future openModalBottomSheet(BuildContext context) async {
|
Future openModalBottomSheet(BuildContext context) async {
|
||||||
var textList = <String>[];
|
var textList = <String>[];
|
||||||
if (state.keyType.value == 1 || state.keyType.value == 2) {
|
if(CommonDataManage().currentKeyInfo.keyRight == 1){
|
||||||
textList = [
|
|
||||||
state.itemData.value.keyStatus == 110405 ? '取消冻结'.tr : "冻结".tr,
|
|
||||||
state.itemData.value.keyRight == 1 ? '取消授权'.tr : '授权'.tr
|
|
||||||
];
|
|
||||||
} else if (state.keyType.value == 4) {
|
|
||||||
textList = [
|
textList = [
|
||||||
state.itemData.value.keyStatus == 110405 ? '取消冻结'.tr : "冻结".tr
|
state.itemData.value.keyStatus == 110405 ? '取消冻结'.tr : "冻结".tr
|
||||||
];
|
];
|
||||||
|
}else if(CommonDataManage().currentKeyInfo.isLockOwner == 1){
|
||||||
|
if (state.keyType.value == 1 || state.keyType.value == 2) {
|
||||||
|
textList = [
|
||||||
|
state.itemData.value.keyStatus == 110405 ? '取消冻结'.tr : "冻结".tr,
|
||||||
|
state.itemData.value.keyRight == 1 ? '取消授权'.tr : '授权'.tr
|
||||||
|
];
|
||||||
|
} else if (state.keyType.value == 4) {
|
||||||
|
textList = [
|
||||||
|
state.itemData.value.keyStatus == 110405 ? '取消冻结'.tr : "冻结".tr
|
||||||
|
];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
showModalBottomSheet(
|
showModalBottomSheet(
|
||||||
context: context,
|
context: context,
|
||||||
|
|||||||
@ -158,7 +158,7 @@ class AddFingerprintLogic extends BaseGetXController {
|
|||||||
// var fingerprintNum = listChangInt(reply.data.sublist(9, 11)).toString();
|
// var fingerprintNum = listChangInt(reply.data.sublist(9, 11)).toString();
|
||||||
var fingerprintList = reply.data.sublist(reply.data.length - 2);
|
var fingerprintList = reply.data.sublist(reply.data.length - 2);
|
||||||
var fingerprintNum = listChangInt(fingerprintList).toString();
|
var fingerprintNum = listChangInt(fingerprintList).toString();
|
||||||
|
state.regIndex.value++;
|
||||||
if(state.fingerprintNumber.value == fingerprintNum){
|
if(state.fingerprintNumber.value == fingerprintNum){
|
||||||
return;
|
return;
|
||||||
}else{
|
}else{
|
||||||
|
|||||||
@ -28,9 +28,9 @@ class AdminOpenLockPasswordLogic extends BaseGetXController{
|
|||||||
_replyChangeAdministratorPassword(reply);
|
_replyChangeAdministratorPassword(reply);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (reply is SenderReadAdminPasswordReply) {
|
// if (reply is SenderReadAdminPasswordReply) {
|
||||||
_replyReadAdminPassword(reply);
|
// _replyReadAdminPassword(reply);
|
||||||
}
|
// }
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -61,11 +61,11 @@ class AdminOpenLockPasswordLogic extends BaseGetXController{
|
|||||||
IoSenderManage.changeAdministratorPasswordCommand(
|
IoSenderManage.changeAdministratorPasswordCommand(
|
||||||
keyID: state.lockSetInfoData.value.lockBasicInfo!.keyId.toString(),
|
keyID: state.lockSetInfoData.value.lockBasicInfo!.keyId.toString(),
|
||||||
userID: await Storage.getUid(),
|
userID: await Storage.getUid(),
|
||||||
pwdNo: 254,
|
pwdNo: state.lockBasicInfo.value.lockUserNo!,
|
||||||
pwd:state.changePwdController.text,
|
pwd:state.changePwdController.text,
|
||||||
useCountLimit: 0xff,
|
useCountLimit: 0xffff,
|
||||||
startTime: 0x11223344,
|
startTime: 0,
|
||||||
endTime: 0x11223344,
|
endTime: 0,
|
||||||
needAuthor: 1,
|
needAuthor: 1,
|
||||||
isBeforeAddUser: false,
|
isBeforeAddUser: false,
|
||||||
signKey: signKeyDataList,
|
signKey: signKeyDataList,
|
||||||
@ -79,102 +79,102 @@ class AdminOpenLockPasswordLogic extends BaseGetXController{
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 读取管理员密码
|
// 读取管理员密码
|
||||||
Future<void> _replyReadAdminPassword(Reply reply) async {
|
// Future<void> _replyReadAdminPassword(Reply reply) async {
|
||||||
var token = reply.data.sublist(5, 9);
|
// var token = reply.data.sublist(5, 9);
|
||||||
var saveStrList = changeIntListToStringList(token);
|
// var saveStrList = changeIntListToStringList(token);
|
||||||
Storage.setStringList(saveBlueToken, saveStrList);
|
// Storage.setStringList(saveBlueToken, saveStrList);
|
||||||
|
//
|
||||||
int status = reply.data[2];
|
// int status = reply.data[2];
|
||||||
switch (status) {
|
// switch (status) {
|
||||||
case 0x00:
|
// case 0x00:
|
||||||
//成功
|
// //成功
|
||||||
dismissEasyLoading();
|
// dismissEasyLoading();
|
||||||
cancelBlueConnetctToastTimer();
|
// cancelBlueConnetctToastTimer();
|
||||||
|
//
|
||||||
if(reply.data[5] > 0){
|
// if(reply.data[5] > 0){
|
||||||
reply.data.removeRange(0, 6);
|
// reply.data.removeRange(0, 6);
|
||||||
// 把得到的数据按8位分割成数组 然后塞进一个新的数组里面
|
// // 把得到的数据按8位分割成数组 然后塞进一个新的数组里面
|
||||||
var getList = splitList(reply.data, 13);
|
// var getList = splitList(reply.data, 13);
|
||||||
for(int i = 0; i<getList.length; i++){
|
// for(int i = 0; i<getList.length; i++){
|
||||||
var indexList = getList[i];
|
// var indexList = getList[i];
|
||||||
var pwd = indexList.sublist(1, 11);
|
// var pwd = indexList.sublist(1, 11);
|
||||||
var pwdStr = utf8String(pwd);
|
// var pwdStr = utf8String(pwd);
|
||||||
|
//
|
||||||
if(pwdStr == state.adminPwd.value){
|
// if(pwdStr == state.adminPwd.value){
|
||||||
showToast("管理员密码相同,无需修改".tr);
|
// showToast("管理员密码相同,无需修改".tr);
|
||||||
return;
|
// return;
|
||||||
}
|
// }
|
||||||
state.adminPwd.value = pwdStr;
|
// state.adminPwd.value = pwdStr;
|
||||||
addLockAdminPassword(false);
|
// addLockAdminPassword(false);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
break;
|
// break;
|
||||||
case 0x06:
|
// case 0x06:
|
||||||
//无权限
|
// //无权限
|
||||||
var privateKey = await Storage.getStringList(saveBluePrivateKey);
|
// var privateKey = await Storage.getStringList(saveBluePrivateKey);
|
||||||
List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
|
// List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
|
||||||
|
//
|
||||||
var token = await Storage.getStringList(saveBlueToken);
|
// var token = await Storage.getStringList(saveBlueToken);
|
||||||
List<int> getTokenList = changeStringListToIntList(token!);
|
// List<int> getTokenList = changeStringListToIntList(token!);
|
||||||
|
//
|
||||||
var publicKey = await Storage.getStringList(saveBluePublicKey);
|
// var publicKey = await Storage.getStringList(saveBluePublicKey);
|
||||||
List<int> getPublicKeyList = changeStringListToIntList(publicKey!);
|
// List<int> getPublicKeyList = changeStringListToIntList(publicKey!);
|
||||||
|
//
|
||||||
IoSenderManage.senderReadAdminPasswordCommand(
|
// IoSenderManage.senderReadAdminPasswordCommand(
|
||||||
keyID: state.lockSetInfoData.value.lockBasicInfo!.keyId.toString(),
|
// keyID: state.lockSetInfoData.value.lockBasicInfo!.keyId.toString(),
|
||||||
userID: await Storage.getUid(),
|
// userID: await Storage.getUid(),
|
||||||
role:0xff,
|
// role:0xff,
|
||||||
pwdNum:1,
|
// pwdNum:1,
|
||||||
pwdNo: 0,
|
// pwdNo: 0,
|
||||||
token: getTokenList,
|
// token: getTokenList,
|
||||||
needAuthor: 1,
|
// needAuthor: 1,
|
||||||
publicKey: getPublicKeyList,
|
// publicKey: getPublicKeyList,
|
||||||
privateKey: getPrivateKeyList
|
// privateKey: getPrivateKeyList
|
||||||
);
|
// );
|
||||||
break;
|
// break;
|
||||||
default:
|
// default:
|
||||||
//失败
|
// //失败
|
||||||
break;
|
// break;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
// 读取支持功能-带参数
|
// 读取支持功能-带参数
|
||||||
Future<void> readAdminPassword() async {
|
// Future<void> readAdminPassword() async {
|
||||||
showEasyLoading();
|
// showEasyLoading();
|
||||||
showBlueConnetctToastTimer(action: (){
|
// showBlueConnetctToastTimer(action: (){
|
||||||
dismissEasyLoading();
|
// dismissEasyLoading();
|
||||||
});
|
// });
|
||||||
BlueManage().bludSendData(BlueManage().connectDeviceName, (BluetoothConnectionState connectionState) async {
|
// BlueManage().bludSendData(BlueManage().connectDeviceName, (BluetoothConnectionState connectionState) async {
|
||||||
if (connectionState == BluetoothConnectionState.connected) {
|
// if (connectionState == BluetoothConnectionState.connected) {
|
||||||
var privateKey = await Storage.getStringList(saveBluePrivateKey);
|
// var privateKey = await Storage.getStringList(saveBluePrivateKey);
|
||||||
List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
|
// List<int> getPrivateKeyList = changeStringListToIntList(privateKey!);
|
||||||
|
//
|
||||||
var token = await Storage.getStringList(saveBlueToken);
|
// var token = await Storage.getStringList(saveBlueToken);
|
||||||
List<int> getTokenList = changeStringListToIntList(token!);
|
// List<int> getTokenList = changeStringListToIntList(token!);
|
||||||
|
//
|
||||||
var publicKey = await Storage.getStringList(saveBluePublicKey);
|
// var publicKey = await Storage.getStringList(saveBluePublicKey);
|
||||||
List<int> getPublicKeyList = changeStringListToIntList(publicKey!);
|
// List<int> getPublicKeyList = changeStringListToIntList(publicKey!);
|
||||||
|
//
|
||||||
IoSenderManage.senderReadAdminPasswordCommand(
|
// IoSenderManage.senderReadAdminPasswordCommand(
|
||||||
keyID: state.lockSetInfoData.value.lockBasicInfo!.keyId.toString(),
|
// keyID: state.lockSetInfoData.value.lockBasicInfo!.keyId.toString(),
|
||||||
userID: await Storage.getUid(),
|
// userID: await Storage.getUid(),
|
||||||
role:0xff,
|
// role:0xff,
|
||||||
pwdNum:1,
|
// pwdNum:1,
|
||||||
pwdNo: 0,
|
// pwdNo: 0,
|
||||||
token: getTokenList,
|
// token: getTokenList,
|
||||||
needAuthor: 1,
|
// needAuthor: 1,
|
||||||
publicKey: getPublicKeyList,
|
// publicKey: getPublicKeyList,
|
||||||
privateKey: getPrivateKeyList
|
// privateKey: getPrivateKeyList
|
||||||
);
|
// );
|
||||||
} else if (connectionState == BluetoothConnectionState.disconnected) {
|
// } else if (connectionState == BluetoothConnectionState.disconnected) {
|
||||||
dismissEasyLoading();
|
// dismissEasyLoading();
|
||||||
cancelBlueConnetctToastTimer();
|
// cancelBlueConnetctToastTimer();
|
||||||
if(state.ifCurrentScreen.value == true){
|
// if(state.ifCurrentScreen.value == true){
|
||||||
showBlueConnetctToast();
|
// showBlueConnetctToast();
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
|
|
||||||
// 修改管理员密码(同添加自定义开锁密码,指纹/密码/卡片前5个是管理员)
|
// 修改管理员密码(同添加自定义开锁密码,指纹/密码/卡片前5个是管理员)
|
||||||
Future<void> changeAdministratorPasswordCommand() async {
|
Future<void> changeAdministratorPasswordCommand() async {
|
||||||
@ -199,27 +199,14 @@ class AdminOpenLockPasswordLogic extends BaseGetXController{
|
|||||||
var token = await Storage.getStringList(saveBlueToken);
|
var token = await Storage.getStringList(saveBlueToken);
|
||||||
List<int> getTokenList = changeStringListToIntList(token!);
|
List<int> getTokenList = changeStringListToIntList(token!);
|
||||||
|
|
||||||
// IoSenderManage.changeAdministratorPasswordCommand(
|
|
||||||
// keyID: "1",
|
|
||||||
// userID: await Storage.getUid(),
|
|
||||||
// pwdNo: 0,
|
|
||||||
// pwd:state.changePwdController.text,
|
|
||||||
// useCountLimit: 0xff,
|
|
||||||
// startTime: 0x11223344,
|
|
||||||
// endTime: 0x11223344,
|
|
||||||
// needAuthor: 1,
|
|
||||||
// signKey: signKeyDataList,
|
|
||||||
// privateKey: getPrivateKeyList,
|
|
||||||
// token: getTokenList);
|
|
||||||
|
|
||||||
IoSenderManage.changeAdministratorPasswordCommand(
|
IoSenderManage.changeAdministratorPasswordCommand(
|
||||||
keyID: state.lockSetInfoData.value.lockBasicInfo!.keyId.toString(),
|
keyID: state.lockSetInfoData.value.lockBasicInfo!.keyId.toString(),
|
||||||
userID: await Storage.getUid(),
|
userID: await Storage.getUid(),
|
||||||
pwdNo: 254,
|
pwdNo: state.lockBasicInfo.value.lockUserNo!,
|
||||||
pwd:state.changePwdController.text,
|
pwd:state.changePwdController.text,
|
||||||
useCountLimit: 0xff,
|
useCountLimit: 0xffff,
|
||||||
startTime: 0x11223344,
|
startTime: 0,
|
||||||
endTime: 0x11223344,
|
endTime: 0,
|
||||||
needAuthor: 1,
|
needAuthor: 1,
|
||||||
isBeforeAddUser: false,
|
isBeforeAddUser: false,
|
||||||
signKey: signKeyDataList,
|
signKey: signKeyDataList,
|
||||||
|
|||||||
@ -42,43 +42,43 @@ class _AdminOpenLockPasswordPageState extends State<AdminOpenLockPasswordPage> w
|
|||||||
action: () {
|
action: () {
|
||||||
showCupertinoAlertDialog();
|
showCupertinoAlertDialog();
|
||||||
})),
|
})),
|
||||||
Container(
|
// Container(
|
||||||
margin: EdgeInsets.all(30.w),
|
// margin: EdgeInsets.all(30.w),
|
||||||
child: Column(
|
// child: Column(
|
||||||
children: [
|
// children: [
|
||||||
Row(
|
// Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.start,
|
// mainAxisAlignment: MainAxisAlignment.start,
|
||||||
children: [
|
// children: [
|
||||||
Expanded(
|
// Expanded(
|
||||||
child: Text(
|
// child: Text(
|
||||||
TranslationLoader.lanKeys!.adminOpenLockPasswordTip!.tr,
|
// TranslationLoader.lanKeys!.adminOpenLockPasswordTip!.tr,
|
||||||
style: TextStyle(fontSize: 20.sp),
|
// style: TextStyle(fontSize: 20.sp),
|
||||||
)),
|
// )),
|
||||||
],
|
// ],
|
||||||
),
|
// ),
|
||||||
SizedBox(
|
// SizedBox(
|
||||||
height: 10.h,
|
// height: 10.h,
|
||||||
),
|
// ),
|
||||||
GestureDetector(
|
// GestureDetector(
|
||||||
onTap: () {
|
// onTap: () {
|
||||||
logic.readAdminPassword();
|
// logic.readAdminPassword();
|
||||||
},
|
// },
|
||||||
child: Row(
|
// child: Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.start,
|
// mainAxisAlignment: MainAxisAlignment.start,
|
||||||
children: [
|
// children: [
|
||||||
Expanded(
|
// Expanded(
|
||||||
child: Text(
|
// child: Text(
|
||||||
TranslationLoader
|
// TranslationLoader
|
||||||
.lanKeys!.updateLockAdminPassword!.tr,
|
// .lanKeys!.updateLockAdminPassword!.tr,
|
||||||
style: TextStyle(
|
// style: TextStyle(
|
||||||
color: AppColors.mainColor, fontSize: 20.sp),
|
// color: AppColors.mainColor, fontSize: 20.sp),
|
||||||
)),
|
// )),
|
||||||
],
|
// ],
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
],
|
// ],
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
],
|
],
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|||||||
@ -167,9 +167,9 @@ class _BasicInformationPageState extends State<BasicInformationPage> {
|
|||||||
allHeight: 80.h,
|
allHeight: 80.h,
|
||||||
isHaveLine: false,
|
isHaveLine: false,
|
||||||
isHaveRightWidget: true,
|
isHaveRightWidget: true,
|
||||||
rightWidget: Container(
|
rightWidget: SizedBox(
|
||||||
width: 300.w,
|
width: 300.w,
|
||||||
child: Text(state.lockBasicInfo.value.address ?? "-",
|
child: Text(state.lockBasicInfo.value.address ?? "无".tr,
|
||||||
maxLines: 2,
|
maxLines: 2,
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
textAlign: TextAlign.end,
|
textAlign: TextAlign.end,
|
||||||
|
|||||||
@ -258,8 +258,8 @@ class PasswordKeyDetailLogic extends BaseGetXController {
|
|||||||
state.isCirculation.value = true;
|
state.isCirculation.value = true;
|
||||||
break;
|
break;
|
||||||
case 14:
|
case 14:
|
||||||
//周天循环 14 每周日开始和结束时间指定时间段内有效
|
//周日循环 14 每周日开始和结束时间指定时间段内有效
|
||||||
useDateStr = '周天 $starHour:00-$endHour:00';
|
useDateStr = '周日 $starHour:00-$endHour:00';
|
||||||
state.isCirculation.value = true;
|
state.isCirculation.value = true;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@ -333,8 +333,8 @@ class PasswordKeyDetailLogic extends BaseGetXController {
|
|||||||
useDateStr = '类型:循环\n周六 $starHour:00-$endHour:00';
|
useDateStr = '类型:循环\n周六 $starHour:00-$endHour:00';
|
||||||
break;
|
break;
|
||||||
case 14:
|
case 14:
|
||||||
//周天循环 14 每周日开始和结束时间指定时间段内有效
|
//周日循环 14 每周日开始和结束时间指定时间段内有效
|
||||||
useDateStr = '类型:循环\n周天 $starHour:00-$endHour:00';
|
useDateStr = '类型:循环\n周日 $starHour:00-$endHour:00';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
|||||||
@ -13,7 +13,7 @@ class SeletKeyCyclicDateLogic extends BaseGetXController {
|
|||||||
var starTimeTimestamp = DateTool().dateToTimestamp(state.starTime.value, 0).toString();
|
var starTimeTimestamp = DateTool().dateToTimestamp(state.starTime.value, 0).toString();
|
||||||
var endTimeTimestamp = DateTool().dateToTimestamp(state.endTime.value, 0).toString();
|
var endTimeTimestamp = DateTool().dateToTimestamp(state.endTime.value, 0).toString();
|
||||||
|
|
||||||
if (int.parse(starDateTimestamp) >= int.parse(endDateTimestamp)) {
|
if (int.parse(starDateTimestamp) > int.parse(endDateTimestamp)) {
|
||||||
showToast("失效日期要大于生效日期".tr);
|
showToast("失效日期要大于生效日期".tr);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -39,8 +39,9 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
|
|||||||
# 1.0.29+2024042901 打包给欧阳测试
|
# 1.0.29+2024042901 打包给欧阳测试
|
||||||
# 1.0.30+2024043001 打包鑫锁提审ios
|
# 1.0.30+2024043001 打包鑫锁提审ios
|
||||||
# 1.0.31+2024050301 打包鑫锁提审华为
|
# 1.0.31+2024050301 打包鑫锁提审华为
|
||||||
|
# 1.0.32+2024051001:打包给欧阳回归测试
|
||||||
|
|
||||||
version: 1.0.31+2024050301
|
version: 1.0.32+2024051001
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
sdk: '>=2.12.0 <3.0.0'
|
sdk: '>=2.12.0 <3.0.0'
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user