Commit 9f7cb378 authored by 赵啸非's avatar 赵啸非

整理代码

parent bb22c6c4
...@@ -68,9 +68,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -68,9 +68,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
private AttendanceClassService attendanceClassService; private AttendanceClassService attendanceClassService;
@Autowired @Autowired
private AttendanceGroupFixedworkSpecialService specialService; private AttendanceGroupFixedworkSpecialService specialService;
@Autowired
private AttendanceLeaveRecordService attendanceLeaveRecordService;
@Override @Override
public void addAttendanceRecord(AttendanceRecordHikEntity hikEntity, Context context) throws Exception { public void addAttendanceRecord(AttendanceRecordHikEntity hikEntity, Context context) throws Exception {
...@@ -102,38 +99,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -102,38 +99,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
addAttendanceOtherRecordList(hikEntityList, attendanceRecordHikQuery, context); addAttendanceOtherRecordList(hikEntityList, attendanceRecordHikQuery, context);
} }
private Boolean checkWorkByHoliday(String dateStr) {
Boolean bool = false;
HolidayQuery holidayQuery = new HolidayQuery();
holidayQuery.setStartTimeStart(dateStr);
holidayQuery.setStartTimeEnd(dateStr);
HolidayEntity holidayEntity = holidayService.selectOne(holidayQuery);
if (!ObjectUtils.isEmpty(holidayEntity)) {
Integer workorholiday = holidayEntity.getWorkorholiday();
if (workorholiday == YesNoEnum.YES.getValue()) {
bool = true;
}
}
return bool;
}
private Boolean checkHolidayByWorkDay(String dateStr) {
Boolean bool = false;
HolidayQuery holidayQuery = new HolidayQuery();
holidayQuery.setStartTimeStart(dateStr);
holidayQuery.setStartTimeEnd(dateStr);
HolidayEntity holidayEntity = holidayService.selectOne(holidayQuery);
if (!ObjectUtils.isEmpty(holidayEntity)) {
Integer workorholiday = holidayEntity.getWorkorholiday();
if (workorholiday == YesNoEnum.NO.getValue()) {
bool = true;
}
}
return bool;
}
public void addAttendanceOtherRecordList(List<AttendanceRecordHikEntity> hikEntityList, AttendanceRecordHikEntity attendanceRecordHikQuery, Context context) throws Exception { public void addAttendanceOtherRecordList(List<AttendanceRecordHikEntity> hikEntityList, AttendanceRecordHikEntity attendanceRecordHikQuery, Context context) throws Exception {
List<AttendanceRecordHikEntity> collect = hikEntityList.stream().sorted(Comparator.comparing(AttendanceRecordHikEntity::getAttendanceDate)).collect(Collectors.toList()); List<AttendanceRecordHikEntity> collect = hikEntityList.stream().sorted(Comparator.comparing(AttendanceRecordHikEntity::getAttendanceDate)).collect(Collectors.toList());
...@@ -151,20 +116,9 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -151,20 +116,9 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
query.setAttendanceDateStart(attendanceDateStart); query.setAttendanceDateStart(attendanceDateStart);
query.setAttendanceDateEnd(attendanceDateEnd); query.setAttendanceDateEnd(attendanceDateEnd);
Map<Long, AttendanceRecordEntity> staffRecordMap = attendanceRecordService.find(query).parallelStream().collect(Collectors.toMap(x -> x.getStaffId(), y -> y, (o, n) -> n)); Map<Long, AttendanceRecordEntity> staffRecordMap = attendanceRecordService.find(query).parallelStream().collect(Collectors.toMap(x -> x.getStaffId(), y -> y, (o, n) -> n));
/* AttendanceRecordErrorQuery attendanceRecordErrorQuery = new AttendanceRecordErrorQuery();
attendanceRecordErrorQuery.setProcessStatus(ProcessStatusEnum.已处理.getValue());
AttendanceLeaveRecordQuery leaveRecordQuery = new AttendanceLeaveRecordQuery();
leaveRecordQuery.setAuditResultList(Arrays.asList(1, 4));
Map<Long, List<AttendanceLeaveRecordEntity>> leaveRecordGroupMap = attendanceLeaveRecordService.find(leaveRecordQuery).parallelStream().collect(Collectors.groupingBy(x -> x.getLeavePersonId()));
*/
//获取日期 //获取日期
List<AttendanceRecordEntity> saveList = new ArrayList<>(); List<AttendanceRecordEntity> saveList = new ArrayList<>();
List<AttendanceRecordEntity> updateList = new ArrayList<>(); List<AttendanceRecordEntity> updateList = new ArrayList<>();
listMap.entrySet().stream().forEach(itemEntry -> { listMap.entrySet().stream().forEach(itemEntry -> {
// }); // });
// for (Map.Entry<Long, List<AttendanceRecordHikEntity>> itemEntry : listMap.entrySet()) { // for (Map.Entry<Long, List<AttendanceRecordHikEntity>> itemEntry : listMap.entrySet()) {
...@@ -201,17 +155,13 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -201,17 +155,13 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
attendanceRecordEntity.setSalaId(staffEntity.getSalaId()); attendanceRecordEntity.setSalaId(staffEntity.getSalaId());
attendanceRecordEntity.setSalaName(staffEntity.getSalaName()); attendanceRecordEntity.setSalaName(staffEntity.getSalaName());
//通过员工id查询考勤组人员信息 //通过员工id查询考勤组人员信息
// List<AttendanceGroupStaffEntity> attendanceGroupStaffEntities = attendanceGroupStaffService.find(new AttendanceGroupStaffQuery().staffId(staffId));
List<AttendanceGroupStaffEntity> attendanceGroupStaffEntities = groupStaffMap.getOrDefault(staffId, new ArrayList<>(0)); List<AttendanceGroupStaffEntity> attendanceGroupStaffEntities = groupStaffMap.getOrDefault(staffId, new ArrayList<>(0));
//过滤重复考勤组与人员 //过滤重复考勤组与人员
attendanceGroupStaffEntities = attendanceGroupStaffEntities.stream().collect(Collectors.toMap(x -> x.getGroupId() + "#" + x.getStaffId(), y -> y, (o, n) -> n)).values().stream().collect(Collectors.toList()); attendanceGroupStaffEntities = attendanceGroupStaffEntities.stream().collect(Collectors.toMap(x -> x.getGroupId() + "#" + x.getStaffId(), y -> y, (o, n) -> n)).values().stream().collect(Collectors.toList());
List<AttendanceRecordDetailEntity> detailEntityList = new ArrayList<>(); List<AttendanceRecordDetailEntity> detailEntityList = new ArrayList<>();
if (!ObjectUtils.isEmpty(attendanceGroupStaffEntities) && attendanceGroupStaffEntities.size() == 1) { if (!ObjectUtils.isEmpty(attendanceGroupStaffEntities) && attendanceGroupStaffEntities.size() == 1) {
//查询考勤组 //查询考勤组
//AttendanceGroupEntity attendanceGroupEntity = attendanceGroupService.get(attendanceGroupStaffEntities.get(0).getGroupId(), context);
AttendanceGroupEntity attendanceGroupEntity = groupMap.get(attendanceGroupStaffEntities.get(0).getGroupId()); AttendanceGroupEntity attendanceGroupEntity = groupMap.get(attendanceGroupStaffEntities.get(0).getGroupId());
attendanceRecordEntity.setAttendanceGroupId(attendanceGroupEntity == null ? 0L : attendanceGroupEntity.getId()); attendanceRecordEntity.setAttendanceGroupId(attendanceGroupEntity == null ? 0L : attendanceGroupEntity.getId());
attendanceRecordEntity.setAttendanceGroupName(attendanceGroupEntity == null ? "" : attendanceGroupEntity.getGroupName()); attendanceRecordEntity.setAttendanceGroupName(attendanceGroupEntity == null ? "" : attendanceGroupEntity.getGroupName());
...@@ -229,20 +179,15 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -229,20 +179,15 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
commonData.setRecordHikEntities(recordHikEntities); commonData.setRecordHikEntities(recordHikEntities);
commonData.setFixedSpecialGroupMap(fixedSpecialGroupMap); commonData.setFixedSpecialGroupMap(fixedSpecialGroupMap);
commonData.setClassDetailEntityMap(classDetailEntityMap); commonData.setClassDetailEntityMap(classDetailEntityMap);
// commonData.setLeaveRecordGroupMap(leaveRecordGroupMap);
workAbstract.doHandleWork(commonData); workAbstract.doHandleWork(commonData);
} }
//如果考勤人员信息list长度大于1 则该考勤人员有多个考勤组. //如果考勤人员信息list长度大于1 则该考勤人员有多个考勤组.
if (StringUtils.isNotNull(attendanceGroupStaffEntities) && attendanceGroupStaffEntities.size() > 1) { if (StringUtils.isNotNull(attendanceGroupStaffEntities) && attendanceGroupStaffEntities.size() > 1) {
for (AttendanceGroupStaffEntity groupStaffEntity : attendanceGroupStaffEntities) { for (AttendanceGroupStaffEntity groupStaffEntity : attendanceGroupStaffEntities) {
detailEntityList = new ArrayList<>(); detailEntityList = new ArrayList<>();
//多考勤组 todo 暂时和单一覆盖 //多考勤组 todo 暂时和单一覆盖
//checkAttendGroupByOne(attendanceRecordEntity, detailEntityList, attendanceDate, groupStaffEntity, context); //查询考勤组
//查询考勤组 AttendanceGroupEntity attendanceGroupEntity = groupMap.get(groupStaffEntity.getGroupId());
// AttendanceGroupEntity attendanceGroupEntity = attendanceGroupService.get(groupStaffEntity.getGroupId(), context);
AttendanceGroupEntity attendanceGroupEntity = groupMap.get(groupStaffEntity.getGroupId());
attendanceRecordEntity.setAttendanceGroupId(attendanceGroupEntity == null ? 0L : attendanceGroupEntity.getId()); attendanceRecordEntity.setAttendanceGroupId(attendanceGroupEntity == null ? 0L : attendanceGroupEntity.getId());
attendanceRecordEntity.setAttendanceGroupName(attendanceGroupEntity == null ? "" : attendanceGroupEntity.getGroupName()); attendanceRecordEntity.setAttendanceGroupName(attendanceGroupEntity == null ? "" : attendanceGroupEntity.getGroupName());
//查询考勤组详细信息获取班次 todo 默认固定班次 还有自由 与排班制 //查询考勤组详细信息获取班次 todo 默认固定班次 还有自由 与排班制
...@@ -259,7 +204,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -259,7 +204,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
commonData.setRecordHikEntities(recordHikEntities); commonData.setRecordHikEntities(recordHikEntities);
commonData.setFixedSpecialGroupMap(fixedSpecialGroupMap); commonData.setFixedSpecialGroupMap(fixedSpecialGroupMap);
commonData.setClassDetailEntityMap(classDetailEntityMap); commonData.setClassDetailEntityMap(classDetailEntityMap);
// commonData.setLeaveRecordGroupMap(leaveRecordGroupMap);
workAbstract.doHandleWork(commonData); workAbstract.doHandleWork(commonData);
} }
} }
...@@ -290,12 +234,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -290,12 +234,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
attendanceRecordEntity.setAttendType("现场打卡"); attendanceRecordEntity.setAttendType("现场打卡");
//判断是否存在记录 如果存在 则更新 维度 staffId attendanceDate shiftsId attendanceGroupId //判断是否存在记录 如果存在 则更新 维度 staffId attendanceDate shiftsId attendanceGroupId
/* AttendanceRecordQuery query = new AttendanceRecordQuery();
query.setStaffId(attendanceRecordEntity.getStaffId());
query.setAttendanceDateStart(dateStr);
query.setAttendanceDateEnd(dateStr);
AttendanceRecordEntity recordEntity = attendanceRecordService.selectOne(query);*/
AttendanceRecordEntity recordEntity = staffRecordMap.get(attendanceRecordEntity.getStaffId()); AttendanceRecordEntity recordEntity = staffRecordMap.get(attendanceRecordEntity.getStaffId());
if (!ObjectUtils.isEmpty(recordEntity)) { if (!ObjectUtils.isEmpty(recordEntity)) {
attendanceRecordEntity.setId(recordEntity.getId()); attendanceRecordEntity.setId(recordEntity.getId());
...@@ -312,22 +250,14 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -312,22 +250,14 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
if (!ObjectUtils.isEmpty(saveList)) { if (!ObjectUtils.isEmpty(saveList)) {
log.info("新增考勤记录数:" + saveList.size()); log.info("新增考勤记录数:" + saveList.size());
attendanceRecordService.save(saveList); attendanceRecordService.save(saveList);
/* for (AttendanceRecordEntity attendanceRecordEntity : saveList) {
attendanceRecordService.save(attendanceRecordEntity, context);
}*/
} }
if (!ObjectUtils.isEmpty(updateList)) { if (!ObjectUtils.isEmpty(updateList)) {
log.info("更新考勤记录数:" + updateList.size()); log.info("更新考勤记录数:" + updateList.size());
attendanceRecordService.update(updateList); attendanceRecordService.update(updateList);
/* for (AttendanceRecordEntity attendanceRecordEntity : updateList) {
attendanceRecordService.update(attendanceRecordEntity, context);
}*/
} }
} }
public void addAttendanceRecordList(List<AttendanceRecordHikEntity> hikEntityList, Context context) throws Exception { public void addAttendanceRecordList(List<AttendanceRecordHikEntity> hikEntityList, Context context) throws Exception {
//对考勤数据根据考勤时间进行排序 //对考勤数据根据考勤时间进行排序
List<AttendanceRecordHikEntity> collect = hikEntityList.stream().sorted(Comparator.comparing(AttendanceRecordHikEntity::getAttendanceDate)).collect(Collectors.toList()); List<AttendanceRecordHikEntity> collect = hikEntityList.stream().sorted(Comparator.comparing(AttendanceRecordHikEntity::getAttendanceDate)).collect(Collectors.toList());
...@@ -373,7 +303,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -373,7 +303,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
List<AttendanceGroupStaffEntity> attendanceGroupStaffEntities = attendanceGroupStaffService.find(new AttendanceGroupStaffQuery().staffId(staffEntity.getId())); List<AttendanceGroupStaffEntity> attendanceGroupStaffEntities = attendanceGroupStaffService.find(new AttendanceGroupStaffQuery().staffId(staffEntity.getId()));
//查询该考勤人员,如果查出来的考勤人员信息list长度为1 则该考勤人员只有一个考勤组 //查询该考勤人员,如果查出来的考勤人员信息list长度为1 则该考勤人员只有一个考勤组
if (!ObjectUtils.isEmpty(attendanceGroupStaffEntities) && attendanceGroupStaffEntities.size() == 1) { if (!ObjectUtils.isEmpty(attendanceGroupStaffEntities) && attendanceGroupStaffEntities.size() == 1) {
//checkAttendGroupByOne(attendanceRecordEntity, detailEntityList, attendanceDate, attendanceGroupStaffEntities.get(0), context);
//查询考勤组 //查询考勤组
AttendanceGroupEntity attendanceGroupEntity = attendanceGroupService.get(attendanceGroupStaffEntities.get(0).getGroupId(), context); AttendanceGroupEntity attendanceGroupEntity = attendanceGroupService.get(attendanceGroupStaffEntities.get(0).getGroupId(), context);
attendanceRecordEntity.setAttendanceGroupId(attendanceGroupEntity == null ? 0L : attendanceGroupEntity.getId()); attendanceRecordEntity.setAttendanceGroupId(attendanceGroupEntity == null ? 0L : attendanceGroupEntity.getId());
...@@ -434,19 +363,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -434,19 +363,6 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
break; break;
} }
} }
/* for (AttendanceRecordDetailEntity detailEntity : detailEntityList) {
if (OffWorkResultEnum.缺卡.getValue() == detailEntity.getOffWorkResult()) {
attendanceRecordEntity.setPunchResult(YesNoEnum.NO.getValue());
break;
}
if (OffWorkResultEnum.缺卡.getValue() == detailEntity.getOffWorkResult()) {
attendanceRecordEntity.setPunchResult(YesNoEnum.NO.getValue());
break;
}
}*/
if (YesNoEnum.YES.getValue() == attendanceRecordEntity.getSignInResult() && YesNoEnum.YES.getValue() == attendanceRecordEntity.getSignOutResult()) { if (YesNoEnum.YES.getValue() == attendanceRecordEntity.getSignInResult() && YesNoEnum.YES.getValue() == attendanceRecordEntity.getSignOutResult()) {
attendanceRecordEntity.setPunchResult(YesNoEnum.YES.getValue()); attendanceRecordEntity.setPunchResult(YesNoEnum.YES.getValue());
} else { } else {
...@@ -537,9 +453,7 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -537,9 +453,7 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
} }
errorEntityList.add(errorEntity); errorEntityList.add(errorEntity);
} }
} }
if (!ObjectUtils.isEmpty(errorEntityList)) { if (!ObjectUtils.isEmpty(errorEntityList)) {
errorService.save(errorEntityList, context); errorService.save(errorEntityList, context);
} }
...@@ -869,4 +783,36 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -869,4 +783,36 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
log.info("saveRecordList size:{}", saveRecordList.size()); log.info("saveRecordList size:{}", saveRecordList.size());
} }
private Boolean checkWorkByHoliday(String dateStr) {
Boolean bool = false;
HolidayQuery holidayQuery = new HolidayQuery();
holidayQuery.setStartTimeStart(dateStr);
holidayQuery.setStartTimeEnd(dateStr);
HolidayEntity holidayEntity = holidayService.selectOne(holidayQuery);
if (!ObjectUtils.isEmpty(holidayEntity)) {
Integer workorholiday = holidayEntity.getWorkorholiday();
if (workorholiday == YesNoEnum.YES.getValue()) {
bool = true;
}
}
return bool;
}
private Boolean checkHolidayByWorkDay(String dateStr) {
Boolean bool = false;
HolidayQuery holidayQuery = new HolidayQuery();
holidayQuery.setStartTimeStart(dateStr);
holidayQuery.setStartTimeEnd(dateStr);
HolidayEntity holidayEntity = holidayService.selectOne(holidayQuery);
if (!ObjectUtils.isEmpty(holidayEntity)) {
Integer workorholiday = holidayEntity.getWorkorholiday();
if (workorholiday == YesNoEnum.NO.getValue()) {
bool = true;
}
}
return bool;
}
} }
...@@ -186,7 +186,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -186,7 +186,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
} }
//获取班次信息 //获取班次信息
// AttendanceClassEntity attendanceClassEntity = attendanceClassService.get(weekClassId);
AttendanceClassEntity attendanceClassEntity = classEntityMap.get(weekClassId); AttendanceClassEntity attendanceClassEntity = classEntityMap.get(weekClassId);
if (ObjectUtils.isEmpty(attendanceClassEntity)) { if (ObjectUtils.isEmpty(attendanceClassEntity)) {
log.info("attendanceClassEntity is null ,weekClassId:{}", weekClassId); log.info("attendanceClassEntity is null ,weekClassId:{}", weekClassId);
...@@ -201,7 +200,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -201,7 +200,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
AttendanceRecordDetailEntity recordDetailEntity = new AttendanceRecordDetailEntity(); AttendanceRecordDetailEntity recordDetailEntity = new AttendanceRecordDetailEntity();
recordDetailEntity.setShiftsId(classDetailEntity.getId()); recordDetailEntity.setShiftsId(classDetailEntity.getId());
recordDetailEntity.setShiftsName(classDetailEntity.getClassName()); recordDetailEntity.setShiftsName(classDetailEntity.getClassName());
recordDetailEntity.setGoWorkResult(GoWorkResultEnum.缺卡.getValue()); recordDetailEntity.setGoWorkResult(GoWorkResultEnum.缺卡.getValue());
recordDetailEntity.setOffWorkResult(GoWorkResultEnum.缺卡.getValue()); recordDetailEntity.setOffWorkResult(GoWorkResultEnum.缺卡.getValue());
recordDetailEntity.setOrderNum(orderNum); recordDetailEntity.setOrderNum(orderNum);
...@@ -287,12 +285,10 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -287,12 +285,10 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
if (next.getOffWorkResult() == OffWorkResultEnum.缺卡.getValue()) { if (next.getOffWorkResult() == OffWorkResultEnum.缺卡.getValue()) {
if (DateUtil.compare(new Date(), next.getOffWorkDate()) < 0) { if (DateUtil.compare(new Date(), next.getOffWorkDate()) < 0) {
next.setOffWorkDate(null); next.setOffWorkDate(null);
// next.setOffWorkResult(OffWorkResultEnum.正常.getValue());
next.setOffWorkResult(null); next.setOffWorkResult(null);
} }
} }
} }
AttendanceClassDetailEntity attendanceClassDetailEntity = classDetailEntityMap.get(commonData.getDetailEntityList().get(0).getShiftsId()); AttendanceClassDetailEntity attendanceClassDetailEntity = classDetailEntityMap.get(commonData.getDetailEntityList().get(0).getShiftsId());
commonData.getAttendanceRecordEntity().setClassId(attendanceClassDetailEntity == null ? 0L : attendanceClassDetailEntity.getClassId()); commonData.getAttendanceRecordEntity().setClassId(attendanceClassDetailEntity == null ? 0L : attendanceClassDetailEntity.getClassId());
commonData.getAttendanceRecordEntity().setClassName(attendanceClassDetailEntity == null ? "" : attendanceClassDetailEntity.getClassName()); commonData.getAttendanceRecordEntity().setClassName(attendanceClassDetailEntity == null ? "" : attendanceClassDetailEntity.getClassName());
...@@ -519,7 +515,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -519,7 +515,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
bool = true; bool = true;
} }
} }
return bool; return bool;
} }
...@@ -541,7 +536,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -541,7 +536,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
public static void main(String[] args) { public static void main(String[] args) {
/* String date = "2021-05-01 09:00:00"; /* String date = "2021-05-01 09:00:00";
String endDate = "2021-05-02 18:00:00"; String endDate = "2021-05-02 18:00:00";
...@@ -554,10 +548,7 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -554,10 +548,7 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
DateTime end = DateUtil.parseDate("2024-01-05 08:45:15"); DateTime end = DateUtil.parseDate("2024-01-05 08:45:15");
boolean in = DateUtil.isIn(dateTime, start, end); boolean in = DateUtil.isIn(dateTime, start, end);
System.out.println(in);*/ System.out.println(in);*/
System.out.println(GoWorkResultEnum.getEnumMap().keySet()); System.out.println(GoWorkResultEnum.getEnumMap().keySet());
......
...@@ -68,13 +68,10 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle ...@@ -68,13 +68,10 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle
@Autowired @Autowired
private UploadService uploadService; private UploadService uploadService;
@Autowired @Autowired
private AttendanceGroupService attendanceGroupService; private AttendanceGroupService attendanceGroupService;
@Autowired @Autowired
private DeptService deptService; private DeptService deptService;
@Autowired @Autowired
private AttendanceClassService attendanceClassService; private AttendanceClassService attendanceClassService;
@Autowired @Autowired
...@@ -85,7 +82,6 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle ...@@ -85,7 +82,6 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle
private AttendanceClassService classService; private AttendanceClassService classService;
@Autowired @Autowired
private AttendanceClassDetailService classDetailService; private AttendanceClassDetailService classDetailService;
@Autowired @Autowired
private ICacheService cacheService; private ICacheService cacheService;
...@@ -132,20 +128,7 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle ...@@ -132,20 +128,7 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle
query.getOrderColList().add(new OrderCol("attendanceDate", OrderCol.DESCENDING)); query.getOrderColList().add(new OrderCol("attendanceDate", OrderCol.DESCENDING));
// query.getOrderColList().add(new OrderCol("staffName", OrderCol.DESCENDING)); // query.getOrderColList().add(new OrderCol("staffName", OrderCol.DESCENDING));
} }
if (!ObjectUtils.isEmpty(query.getProperties())) { if (!ObjectUtils.isEmpty(query.getProperties())) {
/* //通过属性转换为注解
List<Field> tempFields = new ArrayList<>();
tempFields.addAll(Arrays.asList(ReflectUtil.getFields(AttendanceRecordEntity.class)));
for (Field field : tempFields) {
if (field.isAnnotationPresent(Excel.class)) {
Excel column = field.getAnnotation(Excel.class);
if (column != null && query.getProperties().contains(field.getName())) {
properties.add(column.name());
}
}
}*/
properties.addAll(query.getProperties()); properties.addAll(query.getProperties());
} }
String bool = cacheService.get(RedisCacheKeys.getRecordExportLockKey()); String bool = cacheService.get(RedisCacheKeys.getRecordExportLockKey());
...@@ -157,30 +140,6 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle ...@@ -157,30 +140,6 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle
@Override @Override
public void doExportAfter(Context context, List<AttendanceRecordEntity> list) throws AppException { public void doExportAfter(Context context, List<AttendanceRecordEntity> list) throws AppException {
/* ArrayList<AttendanceRecordEntity> attendanceRecordEntities = new ArrayList<>();
for (AttendanceRecordEntity recordEntity : list) {
List<AttendanceRecordDetailEntity> attendanceRecordDetailList = recordEntity.getAttendanceRecordDetailList();
if (!ObjectUtils.isEmpty(attendanceRecordDetailList)) {
for (AttendanceRecordDetailEntity detailEntity : attendanceRecordDetailList) {
AttendanceRecordEntity attendanceRecord = new AttendanceRecordEntity();
attendanceRecord.initAttrValue();
BeanUtils.copyProperties(recordEntity, attendanceRecord);
attendanceRecord.setAttendanceRecordDetailEntity(detailEntity);
attendanceRecordEntities.add(attendanceRecord);
}
} else {
AttendanceRecordEntity attendanceRecord = new AttendanceRecordEntity();
attendanceRecord.initAttrValue();
BeanUtils.copyProperties(recordEntity, attendanceRecord);
attendanceRecordEntities.add(attendanceRecord);
}
}
if (!ObjectUtils.isEmpty(attendanceRecordEntities)) {
list.clear();
list.addAll(attendanceRecordEntities);
}*/
} }
@Override @Override
...@@ -319,9 +278,7 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle ...@@ -319,9 +278,7 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle
attendanceExportRecordEntity.setType(2); attendanceExportRecordEntity.setType(2);
attendanceExportRecordEntity.setExportOrImport(1); attendanceExportRecordEntity.setExportOrImport(1);
attendanceExportRecordService.save(attendanceExportRecordEntity); attendanceExportRecordService.save(attendanceExportRecordEntity);
cacheService.del(RedisCacheKeys.getRecordExportLockKey()); cacheService.del(RedisCacheKeys.getRecordExportLockKey());
} }
...@@ -343,17 +300,14 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle ...@@ -343,17 +300,14 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle
query.setOrderColList(Arrays.asList(new OrderCol("attendanceDate", OrderCol.DESCENDING), new OrderCol("staffName", OrderCol.DESCENDING))); query.setOrderColList(Arrays.asList(new OrderCol("attendanceDate", OrderCol.DESCENDING), new OrderCol("staffName", OrderCol.DESCENDING)));
} else { } else {
query.getOrderColList().add(new OrderCol("attendanceDate", OrderCol.DESCENDING)); query.getOrderColList().add(new OrderCol("attendanceDate", OrderCol.DESCENDING));
// query.getOrderColList().add(new OrderCol("staffName", OrderCol.DESCENDING));
} }
super.doListBefore(query, model, context); super.doListBefore(query, model, context);
} }
static <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) { static <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) {
Map<Object, Boolean> seen = new ConcurrentHashMap<>(); Map<Object, Boolean> seen = new ConcurrentHashMap<>();
//putIfAbsent方法添加键值对,如果map集合中没有该key对应的值,则直接添加,并返回null,如果已经存在对应的值,则依旧为原来的值。 //如果返回null表示添加数据成功(不重复),不重复(null==null :TRUE)
//如果返回null表示添加数据成功(不重复),不重复(null==null :TRUE)
return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null; return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null;
} }
...@@ -433,12 +387,6 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle ...@@ -433,12 +387,6 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
String busiDesc = this.getModuleDesc() + "统计"; String busiDesc = this.getModuleDesc() + "统计";
try { try {
// Rest<AttendStatInfo> rest = this.service.statByDay(getContext());
// if (rest.getCode() == YesNoEnum.NO.getValue()) {
// throw new AppException("统计异常!");
// } else {
// jsonObject.put(KEY_RESULT_DATA, rest.getData());
// }
recordSysLog(request, busiDesc + " 【成功】"); recordSysLog(request, busiDesc + " 【成功】");
jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS); jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS);
} catch (Exception e) { } catch (Exception e) {
......
...@@ -98,16 +98,13 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro ...@@ -98,16 +98,13 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro
super.init(model, context); super.init(model, context);
} }
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void doImportDataBefore(List<AttendanceRecordHikEntity> list, boolean updateSupport, Context context) throws AppException { public void doImportDataBefore(List<AttendanceRecordHikEntity> list, boolean updateSupport, Context context) throws AppException {
list.forEach(item -> { list.forEach(item -> {
String orgName = item.getOrgName(); String orgName = item.getOrgName();
//todo split orgName to deptId and deptName //todo split orgName to deptId and deptName
String[] split = orgName.split("/"); String[] split = orgName.split("/");
String deptName = split[split.length - 1]; String deptName = split[split.length - 1];
DeptQuery deptQuery = new DeptQuery(); DeptQuery deptQuery = new DeptQuery();
deptQuery.setDeptName(deptName); deptQuery.setDeptName(deptName);
...@@ -119,10 +116,8 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro ...@@ -119,10 +116,8 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro
deptId = deptEntities.get(0).getId(); deptId = deptEntities.get(0).getId();
} else { } else {
String parentDeptName = split[split.length - 2]; String parentDeptName = split[split.length - 2];
deptQuery.setDeptName(parentDeptName); deptQuery.setDeptName(parentDeptName);
DeptEntity deptEntity = deptService.selectOne(deptQuery); DeptEntity deptEntity = deptService.selectOne(deptQuery);
deptQuery.setDeptName(deptName); deptQuery.setDeptName(deptName);
deptQuery.setParentId(deptEntity.getParentId()); deptQuery.setParentId(deptEntity.getParentId());
DeptEntity dept = deptService.selectOne(deptQuery); DeptEntity dept = deptService.selectOne(deptQuery);
...@@ -164,13 +159,6 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro ...@@ -164,13 +159,6 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro
} }
AddAttendThread addAttendThread = new AddAttendThread(hikService, hikEntity, getContext()); AddAttendThread addAttendThread = new AddAttendThread(hikService, hikEntity, getContext());
ThreadPool.getInstance().execute(addAttendThread); ThreadPool.getInstance().execute(addAttendThread);
/* String expire = cacheService.get(KEY_ATTENDANCE_STAT_LOCK_CACHE);
if(ObjectUtils.isEmpty(expire)){
cacheService.set(KEY_ATTENDANCE_STAT_LOCK_CACHE, "1", 60 * 60);
}else{
throw new AppException("有统计任务在运行,请稍后再试");
}*/
model.put("message_info", busiDesc + "成功"); model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】"); this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception e) { } catch (Exception e) {
...@@ -223,7 +211,6 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro ...@@ -223,7 +211,6 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro
ret.setCode(code); ret.setCode(code);
ret.setMsg(model.get("message_info") == null ? "" : model.remove("message_info").toString()); ret.setMsg(model.get("message_info") == null ? "" : model.remove("message_info").toString());
return ret; return ret;
} }
...@@ -287,13 +274,11 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro ...@@ -287,13 +274,11 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro
String staffName = "%" + query.getStaffName() + "%"; String staffName = "%" + query.getStaffName() + "%";
query.setStaffName(staffName); query.setStaffName(staffName);
} }
if (ObjectUtils.isEmpty(query.getOrderColList())) { if (ObjectUtils.isEmpty(query.getOrderColList())) {
query.setOrderColList(Arrays.asList(new OrderCol("attendanceDate", OrderCol.DESCENDING))); query.setOrderColList(Arrays.asList(new OrderCol("attendanceDate", OrderCol.DESCENDING)));
} else { } else {
query.getOrderColList().add(new OrderCol("attendanceDate", OrderCol.DESCENDING)); query.getOrderColList().add(new OrderCol("attendanceDate", OrderCol.DESCENDING));
} }
super.doListBefore(query, model, context); super.doListBefore(query, model, context);
} }
...@@ -310,14 +295,11 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro ...@@ -310,14 +295,11 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro
} else { } else {
query.getOrderColList().add(new OrderCol("attendanceDate", OrderCol.DESCENDING)); query.getOrderColList().add(new OrderCol("attendanceDate", OrderCol.DESCENDING));
} }
String bool = cacheService.get(RedisCacheKeys.getHikExportLockKey()); String bool = cacheService.get(RedisCacheKeys.getHikExportLockKey());
if(!ObjectUtils.isEmpty(bool)){ if(!ObjectUtils.isEmpty(bool)){
throw new AppException("考勤数据正在导出中,请稍后再试!"); throw new AppException("考勤数据正在导出中,请稍后再试!");
} }
cacheService.set(RedisCacheKeys.getHikExportLockKey(), "111", 120L); cacheService.set(RedisCacheKeys.getHikExportLockKey(), "111", 120L);
} }
@Override @Override
...@@ -357,8 +339,7 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro ...@@ -357,8 +339,7 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro
attendanceExportRecordEntity.setType(1); attendanceExportRecordEntity.setType(1);
attendanceExportRecordEntity.setExportOrImport(1); attendanceExportRecordEntity.setExportOrImport(1);
attendanceExportRecordService.save(attendanceExportRecordEntity); attendanceExportRecordService.save(attendanceExportRecordEntity);
cacheService.del(RedisCacheKeys.getHikExportLockKey());
cacheService.del(RedisCacheKeys.getHikExportLockKey());
} }
......
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