锁操作记录页面新增下拉刷新上拉加载数据处理
This commit is contained in:
parent
0c4129abea
commit
9d29bd5b6b
@ -135,25 +135,24 @@ class DoorLockLogLogic extends BaseGetXController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//请求操作记录列表(门锁日志)
|
//请求操作记录列表(门锁日志)
|
||||||
void mockNetworkDataRequest() async {
|
void mockNetworkDataRequest({required bool isRefresh}) async {
|
||||||
state.lockLogItemList.clear();
|
// 如果是下拉刷新,清空已有数据
|
||||||
|
if (isRefresh) {
|
||||||
|
state.lockLogItemList.clear();
|
||||||
|
pageNo = 1;
|
||||||
|
}
|
||||||
DoorLockLogEntity entity = await ApiRepository.to.lockEventList(
|
DoorLockLogEntity entity = await ApiRepository.to.lockEventList(
|
||||||
lockId: state.keyInfos.value.lockId!,
|
lockId: state.keyInfos.value.lockId!,
|
||||||
lockEventType: state.dropdownValue.value,
|
lockEventType: state.dropdownValue.value,
|
||||||
pageNo: 1,
|
pageNo: pageNo, // 根据是否是下拉刷新决定页码
|
||||||
pageSize: int.parse(pageSize),
|
pageSize: int.parse(pageSize),
|
||||||
startDate: state.startDate.value,
|
startDate: state.startDate.value,
|
||||||
endDate: state.endDate.value);
|
endDate: state.endDate.value);
|
||||||
if (entity.errorCode!.codeIsSuccessful) {
|
if (entity.errorCode!.codeIsSuccessful) {
|
||||||
if (pageNo == 1) {
|
// 更新数据列表
|
||||||
state.lockLogItemList.value = entity.data!.itemList!;
|
state.lockLogItemList.addAll(entity.data!.itemList!);
|
||||||
pageNo++;
|
// 更新页码
|
||||||
} else {
|
pageNo++;
|
||||||
if (entity.data!.itemList!.isNotEmpty) {
|
|
||||||
state.lockLogItemList.addAll(entity.data!.itemList!);
|
|
||||||
pageNo++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -178,7 +177,7 @@ class DoorLockLogLogic extends BaseGetXController {
|
|||||||
.millisecondsSinceEpoch;
|
.millisecondsSinceEpoch;
|
||||||
|
|
||||||
pageNo = 1;
|
pageNo = 1;
|
||||||
mockNetworkDataRequest();
|
mockNetworkDataRequest(isRefresh: true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -202,8 +201,7 @@ class DoorLockLogLogic extends BaseGetXController {
|
|||||||
if (state.ifHaveNext == true) {
|
if (state.ifHaveNext == true) {
|
||||||
getLockRecordLastUploadDataTime();
|
getLockRecordLastUploadDataTime();
|
||||||
} else {
|
} else {
|
||||||
pageNo = 1;
|
mockNetworkDataRequest(isRefresh: true);
|
||||||
mockNetworkDataRequest();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -216,7 +214,7 @@ class DoorLockLogLogic extends BaseGetXController {
|
|||||||
if (entity.errorCode!.codeIsSuccessful) {
|
if (entity.errorCode!.codeIsSuccessful) {
|
||||||
showToast("清除数据成功", something: () {
|
showToast("清除数据成功", something: () {
|
||||||
pageNo = 1;
|
pageNo = 1;
|
||||||
mockNetworkDataRequest();
|
mockNetworkDataRequest(isRefresh: true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -231,7 +229,7 @@ class DoorLockLogLogic extends BaseGetXController {
|
|||||||
if (isDemoMode == false) {
|
if (isDemoMode == false) {
|
||||||
// _initReplySubscription();
|
// _initReplySubscription();
|
||||||
|
|
||||||
mockNetworkDataRequest();
|
mockNetworkDataRequest(isRefresh: true);
|
||||||
_getDoorLockLogListRefreshUIAction();
|
_getDoorLockLogListRefreshUIAction();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -135,7 +135,7 @@ class _DoorLockLogPageState extends State<DoorLockLogPage> with RouteAware {
|
|||||||
value: state.dropdownTitle.value,
|
value: state.dropdownTitle.value,
|
||||||
valueChanged: (value) {
|
valueChanged: (value) {
|
||||||
state.dropdownValue.value = int.parse(value);
|
state.dropdownValue.value = int.parse(value);
|
||||||
logic.mockNetworkDataRequest();
|
logic.mockNetworkDataRequest(isRefresh: true);
|
||||||
})),
|
})),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
@ -150,24 +150,31 @@ class _DoorLockLogPageState extends State<DoorLockLogPage> with RouteAware {
|
|||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
borderRadius: BorderRadius.circular(16.w),
|
borderRadius: BorderRadius.circular(16.w),
|
||||||
),
|
),
|
||||||
child: Obx(() => state.lockLogItemList.isNotEmpty
|
child: Obx(() => EasyRefreshTool(
|
||||||
? Timeline.tileBuilder(
|
onRefresh: () async {
|
||||||
builder: _timelineBuilderWidget(),
|
logic.mockNetworkDataRequest(isRefresh: true);
|
||||||
theme: TimelineThemeData(
|
},
|
||||||
nodePosition: 0.04, //居左侧距离
|
onLoad: () async {
|
||||||
connectorTheme: const ConnectorThemeData(
|
logic.mockNetworkDataRequest(isRefresh: false);
|
||||||
thickness: 1.0,
|
},
|
||||||
color: AppColors.greyLineColor,
|
child: state.lockLogItemList.isNotEmpty
|
||||||
indent: 0.5,
|
? Timeline.tileBuilder(
|
||||||
),
|
builder: _timelineBuilderWidget(),
|
||||||
indicatorTheme: const IndicatorThemeData(
|
theme: TimelineThemeData(
|
||||||
size: 8.0,
|
nodePosition: 0.04, //居左侧距离
|
||||||
color: AppColors.greyLineColor,
|
connectorTheme: const ConnectorThemeData(
|
||||||
position: 0.4,
|
thickness: 1.0,
|
||||||
),
|
color: AppColors.greyLineColor,
|
||||||
),
|
indent: 0.5,
|
||||||
)
|
),
|
||||||
: NoData()),
|
indicatorTheme: const IndicatorThemeData(
|
||||||
|
size: 8.0,
|
||||||
|
color: AppColors.greyLineColor,
|
||||||
|
position: 0.4,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
: NoData())),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user