Przeglądaj źródła

fix attendance-review 批量操作后列表数据没有删除

glglove 3 dni temu
rodzic
commit
166bec4b54

+ 14 - 5
packages/cpt_uk/lib/modules/review/attendance_review_list/attendance_review_controller.dart

@@ -168,7 +168,7 @@ class AttendanceReviewController extends GetxController with DioCancelableMixin
       NotifyEngine.showSuccess("Successful".tr);
 
       //调用接口刷新指定的Staff的信息
-      _removeItemsByList(recordIds);
+      _removeItemsByIds(recordIds);
     } else {
       ToastEngine.show(result.errorMsg ?? "Network Load Error".tr);
       return;
@@ -189,7 +189,7 @@ class AttendanceReviewController extends GetxController with DioCancelableMixin
       NotifyEngine.showSuccess("Successful".tr);
 
       //调用接口刷新指定的Staff的信息
-      _removeItemsByList(recordIds);
+      _removeItemsByIds(recordIds);
     } else {
       ToastEngine.show(result.errorMsg ?? "Network Load Error".tr);
       return;
@@ -242,14 +242,23 @@ class AttendanceReviewController extends GetxController with DioCancelableMixin
   }
 
   /// 删除对应的recordId的Item数据
-  void _removeItemsByList(String recordIds) {
+  void _removeItemsByIds(String recordIds) {
+    // Log.d("需要移除的recordIds  ${recordIds}");
     // 将逗号分隔的字符串转换为数组
     List<String> recordIdList = recordIds.split(',');
-
     // 移除列表中符合条件的项
-    state.datas.removeWhere((e) => recordIdList.contains(e.recordId));
+    state.datas.removeWhere((e) {
+      final recordIdStr = e.recordId?.toString();
+      final shouldRemove = recordIdStr != null && recordIdList.contains(recordIdStr);
+      if (shouldRemove) {
+        Log.d("移除项目 recordId: ${recordIdStr}");
+      }
+      return shouldRemove;
+    });
 
+    Log.d("移除后的 state.datas   ${state.datas}");
     update();
+
   }
 
   /// 去用工审核流程页面

+ 3 - 3
packages/cpt_uk/lib/modules/review/labour_review_list/labour_review_controller.dart

@@ -219,7 +219,7 @@ class LabourReviewController extends GetxController with DioCancelableMixin {
       NotifyEngine.showSuccess("Successful".tr);
 
       //成功后 移除 指定的 recordIds的项
-      _removeItemsByList(recordIds);
+      _removeItemsByIds(recordIds);
     } else {
       ToastEngine.show(result.errorMsg ?? "Network Load Error".tr);
       return;
@@ -239,7 +239,7 @@ class LabourReviewController extends GetxController with DioCancelableMixin {
       NotifyEngine.showSuccess("Successful".tr);
 
       // 成功后 移除 指定的 recordIds的项
-      _removeItemsByList(recordIds);
+      _removeItemsByIds(recordIds);
     } else {
       ToastEngine.show(result.errorMsg ?? "Network Load Error".tr);
       return;
@@ -292,7 +292,7 @@ class LabourReviewController extends GetxController with DioCancelableMixin {
   }
 
   /// 删除对应的recordId的Item数据
-  void _removeItemsByList(String recordIds) {
+  void _removeItemsByIds(String recordIds) {
     // Log.d("需要移除的recordIds  ${recordIds}");
     // 将逗号分隔的字符串转换为数组
     List<String> recordIdList = recordIds.split(',');