Commit cfc25531 authored by 廖旭伟's avatar 廖旭伟

Merge remote-tracking branch 'origin/master'

parents 74714cae cceacf8c
package com.mortals.xhx.module.attendance.service;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.attendance.dao.AttendanceRecordHikDao;
......@@ -57,6 +58,6 @@ public interface AttendanceRecordHikService extends ICRUDService<AttendanceRecor
void buildCustomHikRecord(AttendanceRecordHikQuery recordHikQuery,Context context);
void buildSourceHikRecord(AttendanceRecordHikQuery recordHikQuery,Context context);
Rest<Integer> buildSourceHikRecord(AttendanceRecordHikQuery recordHikQuery, Context context);
}
......@@ -260,7 +260,9 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
query.setStaffId(attendanceRecordEntity.getStaffId());
// query.setClassId(attendanceRecordEntity.getClassId());
// query.setAttendanceGroupId(attendanceRecordEntity.getAttendanceGroupId());
query.setAttendanceDate(attendanceRecordEntity.getAttendanceDate());
//query.setAttendanceDate(attendanceRecordEntity.getAttendanceDate());
query.setAttendanceDateStart(dateStr);
query.setAttendanceDateEnd(dateStr);
AttendanceRecordEntity recordEntity = attendanceRecordService.selectOne(query);
if (!ObjectUtils.isEmpty(recordEntity)) {
......@@ -726,7 +728,12 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
return weekClassId;
}
/**
* 计算考勤
*
* @param recordHikQuery
* @param context
*/
@Override
public void buildCustomHikRecord(AttendanceRecordHikQuery recordHikQuery, Context context) {
......@@ -794,7 +801,7 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
AttendanceRecordHikEntity hikEntity = this.selectOne(condition);
if (ObjectUtils.isEmpty(hikEntity)) {
this.getDao().insert(recordHikEntity);
}else {
} else {
log.info("当天已有考勤记录,无需添加!");
}
......@@ -810,10 +817,10 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
}
@Override
public void buildSourceHikRecord(AttendanceRecordHikQuery recordHikQuery, Context context) {
public Rest<Integer> buildSourceHikRecord(AttendanceRecordHikQuery recordHikQuery, Context context) {
syncDoorEvents(recordHikQuery);
deletFackRecord(recordHikQuery, context);
return Rest.ok();
}
private void deletFackRecord(AttendanceRecordHikQuery recordHikQuery, Context context) {
......@@ -821,8 +828,8 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
log.info("开始删除虚增的记录!");
recordHikQuery.setEventSource("当日未有记录虚增考勤记录!");
List<AttendanceRecordHikEntity> fackAttendlist = this.find(recordHikQuery);
if(!ObjectUtils.isEmpty(fackAttendlist)){
log.info("虚增的记录:{}",fackAttendlist.size());
if (!ObjectUtils.isEmpty(fackAttendlist)) {
log.info("虚增的记录:{}", fackAttendlist.size());
for (AttendanceRecordHikEntity recordHikEntity : fackAttendlist) {
//判断是否已经重新有新的当日数据,如果有 则删除当前虚增记录
AttendanceRecordHikQuery query = new AttendanceRecordHikQuery();
......@@ -831,7 +838,7 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
query.setAttendanceDateEnd(recordHikQuery.getAttendanceDateEnd());
query.setIdNotList(Arrays.asList(recordHikEntity.getId()));
int count = this.count(query, context);
if(count>0){
if (count > 0) {
//删除当前虚增的记录
this.remove(recordHikEntity.getId(), context);
}
......@@ -874,7 +881,7 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
doorEventsRest = hikDoorService.getDoorEvents(doorEventReq);
log.info("doorEventsRest:{} msg:{},page:{}", doorEventsRest.getCode(), doorEventsRest.getMsg(), doorEventReq.getPageNo());
getDoorEvents(doorEventsRest);
}catch (Exception e){
} catch (Exception e) {
log.error("分页获取考勤数据异常:{}", e.getMessage());
}
......
......@@ -197,21 +197,7 @@ public class AttendanceStatServiceImpl extends AbstractCRUDServiceImpl<Attendanc
//特定节假日
isReturn = true;
}
} else {
//判断是否为周末
// Calendar calendar = Calendar.getInstance();
// calendar.setTime(DateUtils.StrToDate(query.getSummaryTime()));
// int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
// if (dayOfWeek == Calendar.SATURDAY || dayOfWeek == Calendar.SUNDAY) {
// isReturn = true;
// }
}
// Date today = DateUtils.getCurrDate();
// if (DateUtils.StrToDate(query.getSummaryTime()).compareTo(today) >= 0) {
// //当天不统计
// isReturn = true;
// }
if (isReturn) {
return;
}
......@@ -362,18 +348,26 @@ public class AttendanceStatServiceImpl extends AbstractCRUDServiceImpl<Attendanc
if (!ObjectUtils.isEmpty(attendanceSummary)) {
//todo 保存详细json信息到remark
AttendanceRecordQuery detailQuery = new AttendanceRecordQuery();
detailQuery.setStaffId(staffStat.getStaffId());
//格式化年月日
String date = staffStat.getYear() + "-" + StrUtil.padPre(staffStat.getMonth() + "", 2, "0")+ "-" + StrUtil.padPre(staffStat.getDay() + "", 2, "0");
//log.info("staffId:{},date:{}",staffStat.getStaffId(),date);
detailQuery.setAttendanceDateStart(date);
detailQuery.setAttendanceDateEnd(date);
List<AttendanceRecordDetailEntity> detailEntities = attendanceRecordDetailService.getListByWhere(detailQuery);
if (!ObjectUtils.isEmpty(detailEntities)) {
//log.info("detailEntities size:{}",detailEntities.size());
staffStat.setRemark(JSON.toJSONString(detailEntities));
AttendanceRecordQuery attendanceRecordQuery = new AttendanceRecordQuery();
attendanceRecordQuery.setStaffId(staffStat.getStaffId());
attendanceRecordQuery.setAttendanceDateStart(date);
attendanceRecordQuery.setAttendanceDateEnd(date);
AttendanceRecordEntity recordEntity = recordService.selectOne(attendanceRecordQuery);
if(!ObjectUtils.isEmpty(recordEntity)){
AttendanceRecordQuery detailQuery = new AttendanceRecordQuery();
detailQuery.setStaffId(staffStat.getStaffId());
detailQuery.setId(recordEntity.getId());
//log.info("staffId:{},date:{}",staffStat.getStaffId(),date);
detailQuery.setAttendanceDateStart(date);
detailQuery.setAttendanceDateEnd(date);
List<AttendanceRecordDetailEntity> detailEntities = attendanceRecordDetailService.getListByWhere(detailQuery);
if (!ObjectUtils.isEmpty(detailEntities)) {
//log.info("detailEntities size:{}",detailEntities.size());
staffStat.setRemark(JSON.toJSONString(detailEntities));
}
}
}
staffStat.setStaffName(staffName);
......
......@@ -72,9 +72,6 @@ public class FixWorkAttendance extends AttendanceWorkAbstract {
}
//获取当前日期的详细班次
Long weekClassId = this.getWeekClassId(attendanceGroupFixedworkEntity, week);
//log.info("weekClassId:{}", weekClassId);
//weekClassId为-1 则不在考勤
Boolean checkWorkByHoliday = checkWorkByHoliday();
Boolean checkHolidayByWorkDay = checkHolidayByWorkDay();
......@@ -90,12 +87,6 @@ public class FixWorkAttendance extends AttendanceWorkAbstract {
return;
}
}
/* if (weekClassId == -1L) {
//跳过本次循环
return;
}*/
//特殊日期考勤配置
List<AttendanceGroupFixedworkSpecialEntity> specialEntities = specialService.find(new AttendanceGroupFixedworkSpecialQuery().fixedWorkId(attendanceGroupFixedworkEntity.getId()));
if (!ObjectUtils.isEmpty(specialEntities)) {
......@@ -155,7 +146,6 @@ public class FixWorkAttendance extends AttendanceWorkAbstract {
}
}
//获取班次信息
AttendanceClassEntity attendanceClassEntity = attendanceClassService.get(weekClassId);
if (ObjectUtils.isEmpty(attendanceClassEntity)) {
......
......@@ -207,8 +207,6 @@ public class AttendanceRecordHikController extends BaseCRUDJsonBodyMappingContro
}
@PostMapping(value = "/addAttendanceHikRecordCustom")
@UnAuth
public Rest<String> addAttendanceHikRecordCustom(@RequestBody AttendanceRecordHikQuery hikEntity) {
......
......@@ -21,7 +21,7 @@
a.offWorkResult,
a.orderNum
from mortals_xhx_attendance_record_detail as a,mortals_xhx_attendance_record r
where a.recordId = r.id
where a.recordId = #{id}
and r.staffId = #{staffId}
AND r.attendanceDate <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{attendanceDateStart},' 00:00:00'),19),'%Y-%m-%d
%k:%i:%s')
......
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