Commit 9298d6ee authored by 赵啸非's avatar 赵啸非

测试多线程优化考勤计算

parent 1ac2c160
......@@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.mortals.framework.common.Rest;
import com.mortals.framework.util.StringUtils;
import com.mortals.framework.util.ThreadPool;
import com.mortals.xhx.common.code.*;
import com.mortals.xhx.module.attendance.model.*;
import com.mortals.xhx.module.attendance.service.*;
......@@ -152,7 +153,12 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
*/
for (Map.Entry<Long, List<AttendanceRecordHikEntity>> itemEntry : listMap.entrySet()) {
//按人员
//按人员 todo 改为多线程并行计算
Runnable runnable = new Runnable() {
@Override
public void run() {
List<AttendanceRecordEntity> saveList = new ArrayList<>();
List<AttendanceRecordEntity> updateList = new ArrayList<>();
Long staffId = itemEntry.getKey();
......@@ -177,7 +183,7 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
attendanceRecordEntity.setWorkNum(item.getWorkNum());
attendanceRecordEntity.setAttendanceDate(item.getAttendanceDate());
attendanceRecordEntity.setCreateTime(item.getAttendanceDate());
attendanceRecordEntity.setCreateUserId(this.getContextUserId(context));
attendanceRecordEntity.setCreateUserId(attendanceRecordHikService.getContextUserId(context));
StaffEntity staffEntity = staffService.getExtCache(staffId.toString());
if (ObjectUtils.isEmpty(staffEntity)) {
......@@ -285,7 +291,7 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
if (!ObjectUtils.isEmpty(recordEntity)) {
attendanceRecordEntity.setId(recordEntity.getId());
attendanceRecordEntity.setUpdateTime(new Date());
attendanceRecordEntity.setUpdateUserId(this.getContextUserId(context));
attendanceRecordEntity.setUpdateUserId(attendanceRecordHikService.getContextUserId(context));
updateList.add(attendanceRecordEntity);
} else {
saveList.add(attendanceRecordEntity);
......@@ -305,9 +311,15 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
attendanceRecordService.update(attendanceRecordEntity, context);
}*/
}
}
};
ThreadPool.getInstance().execute(runnable);
}
}
......
......@@ -536,10 +536,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
AttendanceRecordErrorEntity attendanceRecordErrorEntity = errorService.selectOne(errorQuery, context);
if (ObjectUtils.isEmpty(attendanceRecordErrorEntity)) {
errorService.save(errorEntity, context);
} else {
/* errorEntity.setId(attendanceRecordErrorEntity.getId());
errorService.update(errorEntity,context);*/
log.info("已经存在相同的已处理异常记录,不保存!");
}
}
}
......
......@@ -37,8 +37,8 @@ POST {{baseUrl}}/attendance/record/hik/addAttendanceRecord
Content-Type: application/json
{
"attendanceDateStart": "2024-07-19",
"attendanceDateEnd": "2024-07-19"
"attendanceDateStart": "2024-07-01",
"attendanceDateEnd": "2024-08-15"
}
###海康考勤打卡记录计算1
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment