diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordErrorEntity.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordErrorEntity.java
index c5b0c416f3c6ca9c000e19fa6cb79d09f5303723..8286947aee28b5abc63df3960f9c2e69a7286a17 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordErrorEntity.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/AttendanceRecordErrorEntity.java
@@ -5,13 +5,19 @@ import java.util.ArrayList;
 import java.math.BigDecimal;
 import cn.hutool.core.date.DateUtil;
 import java.util.Date;
+import java.util.stream.Collectors;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.annotation.JSONField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.mortals.framework.annotation.Excel;
 import com.mortals.framework.model.BaseEntityLong;
+import com.mortals.xhx.common.utils.BeanUtil;
 import com.mortals.xhx.module.attendance.model.vo.AttendanceRecordErrorVo;
 import lombok.Data;
+import org.springframework.beans.BeanUtils;
+
 /**
  * 鑰冨嫟鎵撳崱璁板綍寮傚父淇℃伅瀹炰綋瀵硅薄
  *
@@ -126,16 +132,22 @@ public class AttendanceRecordErrorEntity extends AttendanceRecordErrorVo {
     private String salaName;
     @Override
     public int hashCode() {
-        return this.getId().hashCode();
+        return (this.getStaffId()+this.getProcessStatus()+this.getShiftsId()+this.getErrorDateTime().getTime()+"").hashCode();
     }
     @Override
     public boolean equals(Object obj) {
         if (obj == null) return false;
         if (obj instanceof AttendanceRecordErrorEntity) {
             AttendanceRecordErrorEntity tmp = (AttendanceRecordErrorEntity) obj;
-            if (this.getId() == tmp.getId()) {
+/*            if (this.getId() == tmp.getId()) {
+                return true;
+            }*/
+
+            if(this.getStaffId()==tmp.getStaffId()&&this.getProcessStatus()==tmp.getErrorStatus()
+            &&this.getShiftsId()==tmp.getShiftsId()&&this.getErrorDateTime().getTime()==tmp.getErrorDateTime().getTime()){
                 return true;
             }
+
         }
         return false;
     }
@@ -164,4 +176,36 @@ public class AttendanceRecordErrorEntity extends AttendanceRecordErrorVo {
         this.salaId = null;
         this.salaName = "";
     }
+
+
+    public static void main(String[] args) {
+        List<AttendanceRecordErrorEntity> list = new ArrayList<>();
+
+        AttendanceRecordErrorEntity entity = new AttendanceRecordErrorEntity();
+        entity.initAttrValue();
+
+        entity.setStaffId(47L);
+        entity.setProcessStatus(0);
+        entity.setShiftsId(20L);
+        entity.setErrorDateTime(DateUtil.parseDateTime("2024-07-12 12:00:00"));
+
+        list.add(entity);
+
+        AttendanceRecordErrorEntity  entity1 = new AttendanceRecordErrorEntity();
+        BeanUtils.copyProperties(entity,entity1);
+        entity1.setShiftsId(21L);
+       // entity1.setErrorDateTime(DateUtil.parseDateTime("2024-07-12 12:00:01"));
+
+        list.add(entity1);
+        System.out.println(JSONObject.toJSONString(list));
+
+        List<AttendanceRecordErrorEntity> collect = list.stream().distinct().collect(Collectors.toList());
+
+        System.out.println("鍘婚噸鍚�");
+        System.out.println(JSON.toJSONString(collect));
+
+
+    }
+
+
 }
\ No newline at end of file
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/vo/AttendanceRecordErrorVo.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/vo/AttendanceRecordErrorVo.java
index 402f6476fe66c1b71446f62c75ad9e128dc535cd..f9271d25557c126e57ef4ae2540d083b7560af96 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/vo/AttendanceRecordErrorVo.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/model/vo/AttendanceRecordErrorVo.java
@@ -35,5 +35,4 @@ public class AttendanceRecordErrorVo extends BaseEntityLong {
     private Integer duration;
 
 
-
 }
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/work/FixWorkOtherAttendance.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/work/FixWorkOtherAttendance.java
index 21e7e5b10a4de116a9b2e29b3fcb30051fd6f13b..f82a170127559cd58e72a823e7cb208e5613bcb4 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/work/FixWorkOtherAttendance.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/work/FixWorkOtherAttendance.java
@@ -508,6 +508,9 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
         AttendanceRecordErrorQuery errorQuery;
 
         if (!ObjectUtils.isEmpty(errorEntityList)) {
+            //杩囨护寮傚父鍒楄〃涓瓨鍦ㄧ浉鍚岀殑璁板綍
+            errorEntityList= errorEntityList.stream().distinct().collect(Collectors.toList());
+
             for (AttendanceRecordErrorEntity errorEntity : errorEntityList) {
                 //鏌ョ湅鏄惁瀛樺湪鐩稿悓鐨勫紓甯歌褰曪紝濡傛灉瀛樺湪 鍒欎笉娣诲姞
                 errorQuery = new AttendanceRecordErrorQuery();
diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/web/AttendanceRecordErrorController.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/web/AttendanceRecordErrorController.java
index 9298584af50728763167c4b4cb7d27442e40b4bc..fd6f4b9fd631489ab74711e0868a70ba611f2300 100644
--- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/web/AttendanceRecordErrorController.java
+++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/web/AttendanceRecordErrorController.java
@@ -57,25 +57,12 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
 
     @Autowired
     private ParamService paramService;
-
     @Autowired
     private AttendanceGroupService attendanceGroupService;
-
     @Autowired
     private DeptService deptService;
-
     @Autowired
     private AttendanceClassService attendanceClassService;
-
-    @Autowired
-    private AttendanceClassDetailService classDetailService;
-
-    @Autowired
-    private AttendanceRecordService attendanceRecordService;
-
-    @Autowired
-    private AttendanceRecordDetailService attendanceRecordDetailService;
-
     @Autowired
     private AttendanceRecordErrorService errorService;
 
@@ -105,51 +92,15 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
         query.setProcessStatus(0);
         query.setProcessResult("宸叉挙閿€澶勭悊");
         errorService.update(query);
-
-       /* DateUtils.convertTime2Str(query.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd);
-        AttendanceRecordQuery attendanceRecordQuery = new AttendanceRecordQuery();
-        attendanceRecordQuery.setStaffId(query.getStaffId());
-        attendanceRecordQuery.setAttendanceDateStart(DateUtils.convertTime2Str(query.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd));
-        attendanceRecordQuery.setAttendanceDateEnd(DateUtils.convertTime2Str(query.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd));
-        AttendanceRecordEntity attendanceRecordEntity = attendanceRecordService.selectOne(attendanceRecordQuery);
-        AttendanceRecordDetailQuery detailQuery = new AttendanceRecordDetailQuery();
-        detailQuery.setRecordId(attendanceRecordEntity.getId());
-        detailQuery.setShiftsId(query.getShiftsId());
-        List<AttendanceRecordDetailEntity> attendanceRecordDetailEntity = attendanceRecordDetailService.find(detailQuery);
-
-        for (AttendanceRecordDetailEntity recordDetailEntity : attendanceRecordDetailEntity) {
-            if (query.getGoOrOff().equals("涓婄彮")) {
-                if (query.getErrorStatus() == 0) {
-                    recordDetailEntity.setGoWorkResult(3);
-                }
-                if (query.getErrorStatus() == 2) {
-                    recordDetailEntity.setGoWorkResult(4);
-                }
-            }
-            if (query.getGoOrOff().equals("涓嬬彮")) {
-                if (query.getErrorStatus() == 0) {
-                    recordDetailEntity.setOffWorkResult(3);
-                }
-                if (query.getErrorStatus() == 1) {
-                    recordDetailEntity.setOffWorkResult(5);
-                }
-            }
-        }*/
-
         return Rest.ok();
     }
 
 
     @Override
     protected void saveBefore(AttendanceRecordErrorEntity entity, Map<String, Object> model, Context context) throws AppException {
-
         for (AttendanceRecordErrorEntity recordErrorEntity : entity.getRecordErrorEntities()) {
             AttendanceRecordErrorEntity updateEntity = new AttendanceRecordErrorEntity();
             updateEntity.setId(recordErrorEntity.getId());
-          /*  updateEntity.setAttendanceGroupId(recordErrorEntity.getAttendanceGroupId());
-            updateEntity.setAttendanceGroupName(recordErrorEntity.getAttendanceGroupName());
-            updateEntity.setErrorDateTime(recordErrorEntity.getErrorDateTime());
-            updateEntity.setGoOffDateTime(recordErrorEntity.getGoOffDateTime());*/
             updateEntity.setProcessStatus(entity.getProcessStatus());
             updateEntity.setProcessResult(entity.getProcessResult());
             updateEntity.setStaffId(recordErrorEntity.getStaffId());
@@ -163,69 +114,6 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
             this.service.update(updateEntity, getContext());
             entity.setId(recordErrorEntity.getId());
         }
-
-      /*  for (AttendanceRecordErrorEntity item : entity.getRecordErrorEntities()) {
-            DateUtils.convertTime2Str(item.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd);
-            AttendanceRecordQuery attendanceRecordQuery = new AttendanceRecordQuery();
-            attendanceRecordQuery.setStaffId(item.getStaffId());
-            attendanceRecordQuery.setAttendanceDateStart(DateUtils.convertTime2Str(item.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd));
-            attendanceRecordQuery.setAttendanceDateEnd(DateUtils.convertTime2Str(item.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd));
-            AttendanceRecordEntity attendanceRecordEntity = attendanceRecordService.selectOne(attendanceRecordQuery);
-            AttendanceRecordDetailQuery detailQuery = new AttendanceRecordDetailQuery();
-            detailQuery.setRecordId(attendanceRecordEntity.getId());
-            detailQuery.setShiftsId(item.getShiftsId());
-            List<AttendanceRecordDetailEntity> attendanceRecordDetailEntity = attendanceRecordDetailService.find(detailQuery);
-
-            for (AttendanceRecordDetailEntity recordDetailEntity : attendanceRecordDetailEntity) {
-                Date goWorkDate = recordDetailEntity.getGoWorkDate();
-                Date offWorkDate = recordDetailEntity.getOffWorkDate();
-                if (item.getProcessResult().contains("姝e父")) {
-                    if (!ObjectUtils.isEmpty(goWorkDate)) {
-                        if (goWorkDate.getTime() == item.getGoOffDateTime().getTime()) {
-                            recordDetailEntity.setGoWorkResult(1);
-                        }
-                    } else {
-                        if (item.getGoOrOff().equals("涓婄彮")) {
-                            recordDetailEntity.setGoWorkResult(1);
-                        }
-                    }
-                    if (!ObjectUtils.isEmpty(offWorkDate)) {
-                        if (offWorkDate.getTime() == item.getGoOffDateTime().getTime()) {
-                            recordDetailEntity.setOffWorkResult(1);
-                        }
-                    } else {
-                        if (item.getGoOrOff().equals("")) {
-                            recordDetailEntity.setOffWorkResult(1);
-                        }
-                    }
-
-                }
-                if (item.getProcessResult().contains("鏃╅€€")) {
-                    if (!ObjectUtils.isEmpty(offWorkDate)) {
-                        if (offWorkDate.getTime() == item.getGoOffDateTime().getTime()) {
-                            recordDetailEntity.setOffWorkResult(5);
-                        }
-                    } else {
-                        if (item.getGoOrOff().equals("涓嬬彮")) {
-                            recordDetailEntity.setOffWorkResult(5);
-                        }
-                    }
-
-                }
-                if (item.getProcessResult().contains("杩熷埌")) {
-                    if (!ObjectUtils.isEmpty(goWorkDate)) {
-                        if (goWorkDate.getTime() == item.getGoOffDateTime().getTime()) {
-                            recordDetailEntity.setGoWorkResult(4);
-                        }
-                    } else {
-                        if (item.getGoOrOff().equals("涓婄彮")) {
-                            recordDetailEntity.setGoWorkResult(4);
-                        }
-                    }
-                }
-                attendanceRecordDetailService.update(recordDetailEntity);
-            }
-        }*/
         super.saveBefore(entity, model, context);
     }
 
@@ -242,7 +130,7 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
             this.saveBefore(entity, model, context);
             if (entity.newEntity()) {
                 Class<AttendanceRecordErrorEntity> tClass = ReflectUtils.getClassGenricType(this.getClass(), 1);
-                AttendanceRecordErrorEntity initEntity = (AttendanceRecordErrorEntity) tClass.newInstance();
+                AttendanceRecordErrorEntity initEntity =  tClass.newInstance();
                 initEntity.initAttrValue();
                 BeanUtils.copyProperties(entity, initEntity, BeanUtil.getNullPropertyNames(entity));
                 entity = initEntity;
@@ -258,19 +146,6 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
                 }
 
                 this.service.save(initEntity, context);
-            } else {
-//                busiDesc = "淇敼" + this.getModuleDesc();
-//                entity.setUpdateTime(new Date());
-//                IUser user = this.getCurUser();
-//                if (user != null) {
-//                    entity.setUpdateUserId(user.getId());
-//                    entity.setUpdateUser(user.getLoginName());
-//                    entity.setUpdateUserName(user.getRealName());
-//                    entity.setUpdateUserDeptId(user.getDeptId());
-//                    entity.setUpdateUserDeptName(user.getDeptName());
-//                }
-
-                //this.service.update(entity, context);
             }
 
             model.put("id", entity.getId());
@@ -307,25 +182,12 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
             query.setOrderColList(Arrays.asList(new OrderCol("errorDateTime", OrderCol.DESCENDING), new OrderCol("staffName", OrderCol.DESCENDING)));
         } else {
             query.getOrderColList().add(new OrderCol("errorDateTime", OrderCol.DESCENDING));
-            // query.getOrderColList().add(new OrderCol("staffName", OrderCol.DESCENDING));
         }
 
     }
 
     @Override
     protected void doListAfter(AttendanceRecordErrorEntity query, List<AttendanceRecordErrorEntity> list, Context context) throws AppException {
-/*        for (AttendanceRecordErrorEntity errorEntity : list) {
-            Long shiftsId = errorEntity.getShiftsId();
-            AttendanceClassDetailEntity attendanceClassDetailEntity = classDetailService.selectOne(new AttendanceClassDetailQuery().id(shiftsId));
-            if (!ObjectUtils.isEmpty(attendanceClassDetailEntity)) {
-                if (errorEntity.getGoOffDateTime().getTime() == attendanceClassDetailEntity.getGoWorkDate().getTime()) {
-                    errorEntity.setGoOrOff("涓婄彮");
-                }
-                if (errorEntity.getGoOffDateTime().getTime() == attendanceClassDetailEntity.getOffWorkDate().getTime()) {
-                    errorEntity.setGoOrOff("涓嬬彮");
-                }
-            }
-        }*/
         super.doListAfter(query, list, context);
     }
 
diff --git a/attendance-performance-manager/src/test/java/com/mortals/httpclient/system.http b/attendance-performance-manager/src/test/java/com/mortals/httpclient/system.http
index bbe0be90c9bb6ca693b156bde3785085840b48fe..be0fd5c2fe95c00b24ad07b6ff81b19af811f429 100644
--- a/attendance-performance-manager/src/test/java/com/mortals/httpclient/system.http
+++ b/attendance-performance-manager/src/test/java/com/mortals/httpclient/system.http
@@ -37,8 +37,8 @@ POST {{baseUrl}}/attendance/record/hik/addAttendanceRecord
 Content-Type: application/json
 
 {
-  "attendanceDateStart": "2024-05-11",
-  "attendanceDateEnd": "2024-05-11"
+  "attendanceDateStart": "2024-07-19",
+  "attendanceDateEnd": "2024-07-19"
 }
 
 ###娴峰悍鑰冨嫟鎵撳崱璁板綍璁$畻1
@@ -46,8 +46,8 @@ POST {{baseUrl}}/attendance/record/hik/addAttendanceRecord
 Content-Type: application/json
 
 {
-  "attendanceDateStart": "2024-05-11",
-  "attendanceDateEnd": "2024-05-11",
+  "attendanceDateStart": "2024-07-19",
+  "attendanceDateEnd": "2024-07-19",
   "staffId": 322
 }