提交 205051d4 编写于 作者: F fancy

钉钉考勤打卡统计对象

上级 e87d5468
...@@ -73,6 +73,8 @@ public class DingdingPersonStatisticQueue extends AbstractQueue<Date> { ...@@ -73,6 +73,8 @@ public class DingdingPersonStatisticQueue extends AbstractQueue<Date> {
personForMonth.setOnDutyTimes(onduty); personForMonth.setOnDutyTimes(onduty);
personForMonth.setOffDutyTimes(business.dingdingAttendanceFactory().dingdingPersonForMonthDutyTimesCount(year, month, personForMonth.setOffDutyTimes(business.dingdingAttendanceFactory().dingdingPersonForMonthDutyTimesCount(year, month,
person.getDistinguishedName(), AttendanceDingtalkDetail.OffDuty)); person.getDistinguishedName(), AttendanceDingtalkDetail.OffDuty));
personForMonth.setResultNormal(business.dingdingAttendanceFactory().dingdingPersonForMonthTimeResultCount(year, month,
person.getDistinguishedName(), AttendanceDingtalkDetail.TIMERESULT_NORMAL));
personForMonth.setLateTimes(business.dingdingAttendanceFactory().dingdingPersonForMonthTimeResultCount(year, month, personForMonth.setLateTimes(business.dingdingAttendanceFactory().dingdingPersonForMonthTimeResultCount(year, month,
person.getDistinguishedName(), AttendanceDingtalkDetail.TIMERESULT_Late)); person.getDistinguishedName(), AttendanceDingtalkDetail.TIMERESULT_Late));
personForMonth.setLeaveEarlyTimes(business.dingdingAttendanceFactory().dingdingPersonForMonthTimeResultCount(year, month, personForMonth.setLeaveEarlyTimes(business.dingdingAttendanceFactory().dingdingPersonForMonthTimeResultCount(year, month,
......
...@@ -69,6 +69,8 @@ public class DingdingUnitStatisticQueue extends AbstractQueue<Date> { ...@@ -69,6 +69,8 @@ public class DingdingUnitStatisticQueue extends AbstractQueue<Date> {
unitForDay.setOnDutyTimes(on); unitForDay.setOnDutyTimes(on);
unitForDay.setOffDutyTimes(business.dingdingAttendanceFactory(). unitForDay.setOffDutyTimes(business.dingdingAttendanceFactory().
dingdingUnitForDayDutyTimesCount(dateString, unit, AttendanceDingtalkDetail.OffDuty)); dingdingUnitForDayDutyTimesCount(dateString, unit, AttendanceDingtalkDetail.OffDuty));
unitForDay.setResultNormal(business.dingdingAttendanceFactory().dingdingUnitForDayTimeResultCount(dateString, unit,
AttendanceDingtalkDetail.TIMERESULT_NORMAL));
unitForDay.setLateTimes(business.dingdingAttendanceFactory().dingdingUnitForDayTimeResultCount(dateString, unit, unitForDay.setLateTimes(business.dingdingAttendanceFactory().dingdingUnitForDayTimeResultCount(dateString, unit,
AttendanceDingtalkDetail.TIMERESULT_Late)); AttendanceDingtalkDetail.TIMERESULT_Late));
unitForDay.setLeaveEarlyTimes(business.dingdingAttendanceFactory().dingdingUnitForDayTimeResultCount(dateString, unit, unitForDay.setLeaveEarlyTimes(business.dingdingAttendanceFactory().dingdingUnitForDayTimeResultCount(dateString, unit,
...@@ -108,6 +110,7 @@ public class DingdingUnitStatisticQueue extends AbstractQueue<Date> { ...@@ -108,6 +110,7 @@ public class DingdingUnitStatisticQueue extends AbstractQueue<Date> {
Long workDay = business.dingdingAttendanceFactory().sumWorkDayUnitForDayWithMonth(year, month, unit); Long workDay = business.dingdingAttendanceFactory().sumWorkDayUnitForDayWithMonth(year, month, unit);
Long onduty = business.dingdingAttendanceFactory().sumOnDutyUnitForDayWithMonth(year, month, unit); Long onduty = business.dingdingAttendanceFactory().sumOnDutyUnitForDayWithMonth(year, month, unit);
Long offDuty = business.dingdingAttendanceFactory().sumOffDutyUnitForDayWithMonth(year, month, unit); Long offDuty = business.dingdingAttendanceFactory().sumOffDutyUnitForDayWithMonth(year, month, unit);
Long normal = business.dingdingAttendanceFactory().sumNormalUnitForDayWithMonth(year, month, unit);
Long late = business.dingdingAttendanceFactory().sumLateTimesUnitForDayWithMonth(year, month, unit); Long late = business.dingdingAttendanceFactory().sumLateTimesUnitForDayWithMonth(year, month, unit);
Long leaveearly = business.dingdingAttendanceFactory().sumLeaveEarlyUnitForDayWithMonth(year, month, unit); Long leaveearly = business.dingdingAttendanceFactory().sumLeaveEarlyUnitForDayWithMonth(year, month, unit);
Long notSign = business.dingdingAttendanceFactory().sumNotSignedUnitForDayWithMonth(year, month, unit); Long notSign = business.dingdingAttendanceFactory().sumNotSignedUnitForDayWithMonth(year, month, unit);
...@@ -128,6 +131,7 @@ public class DingdingUnitStatisticQueue extends AbstractQueue<Date> { ...@@ -128,6 +131,7 @@ public class DingdingUnitStatisticQueue extends AbstractQueue<Date> {
unitForMonth.setWorkDayCount(workDay); unitForMonth.setWorkDayCount(workDay);
unitForMonth.setOnDutyTimes(onduty); unitForMonth.setOnDutyTimes(onduty);
unitForMonth.setOffDutyTimes(offDuty); unitForMonth.setOffDutyTimes(offDuty);
unitForMonth.setResultNormal(normal);
unitForMonth.setLateTimes(late); unitForMonth.setLateTimes(late);
unitForMonth.setLeaveEarlyTimes(leaveearly); unitForMonth.setLeaveEarlyTimes(leaveearly);
unitForMonth.setNotSignedCount(notSign); unitForMonth.setNotSignedCount(notSign);
......
...@@ -393,6 +393,18 @@ public class DingdingAttendanceFactory extends AbstractFactory { ...@@ -393,6 +393,18 @@ public class DingdingAttendanceFactory extends AbstractFactory {
query.select(cb.sum(root.get(StatisticDingdingUnitForDay_.offDutyTimes))).where(p); query.select(cb.sum(root.get(StatisticDingdingUnitForDay_.offDutyTimes))).where(p);
return em.createQuery(query).getSingleResult(); return em.createQuery(query).getSingleResult();
} }
public Long sumNormalUnitForDayWithMonth(String year, String month, String unit) throws Exception {
EntityManager em = this.entityManagerContainer().get(StatisticDingdingUnitForDay.class);
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Long> query = cb.createQuery(Long.class);
Root<StatisticDingdingUnitForDay> root = query.from(StatisticDingdingUnitForDay.class);
Predicate p = cb.equal(root.get(StatisticDingdingUnitForDay_.statisticYear), year);
p = cb.and(p, cb.equal(root.get(StatisticDingdingUnitForDay_.statisticMonth), month));
p = cb.and(p, cb.equal(root.get(StatisticDingdingUnitForDay_.o2Unit), unit));
query.select(cb.sum(root.get(StatisticDingdingUnitForDay_.resultNormal))).where(p);
return em.createQuery(query).getSingleResult();
}
public Long sumLateTimesUnitForDayWithMonth(String year, String month, String unit) throws Exception { public Long sumLateTimesUnitForDayWithMonth(String year, String month, String unit) throws Exception {
EntityManager em = this.entityManagerContainer().get(StatisticDingdingUnitForDay.class); EntityManager em = this.entityManagerContainer().get(StatisticDingdingUnitForDay.class);
CriteriaBuilder cb = em.getCriteriaBuilder(); CriteriaBuilder cb = em.getCriteriaBuilder();
......
...@@ -83,6 +83,10 @@ public class StatisticDingdingPersonForMonth extends SliceJpaObject { ...@@ -83,6 +83,10 @@ public class StatisticDingdingPersonForMonth extends SliceJpaObject {
@Column(name = "xoffDutyTimes") @Column(name = "xoffDutyTimes")
private Long offDutyTimes; private Long offDutyTimes;
@FieldDescribe("正常签到次数")
@Column(name = "xresultNormal")
private Long resultNormal;
@FieldDescribe("迟到次数") @FieldDescribe("迟到次数")
@Column(name = "xlateTimes") @Column(name = "xlateTimes")
private Long lateTimes; private Long lateTimes;
...@@ -104,6 +108,14 @@ public class StatisticDingdingPersonForMonth extends SliceJpaObject { ...@@ -104,6 +108,14 @@ public class StatisticDingdingPersonForMonth extends SliceJpaObject {
private Long notSignedCount; private Long notSignedCount;
public Long getResultNormal() {
return resultNormal;
}
public void setResultNormal(Long resultNormal) {
this.resultNormal = resultNormal;
}
public String getO2User() { public String getO2User() {
return o2User; return o2User;
} }
......
...@@ -83,6 +83,11 @@ public class StatisticDingdingUnitForDay extends SliceJpaObject { ...@@ -83,6 +83,11 @@ public class StatisticDingdingUnitForDay extends SliceJpaObject {
@Column(name = "xoffDutyTimes") @Column(name = "xoffDutyTimes")
private Long offDutyTimes; private Long offDutyTimes;
@FieldDescribe("正常签到次数")
@Column(name = "xresultNormal")
private Long resultNormal;
@FieldDescribe("迟到人数") @FieldDescribe("迟到人数")
@Column(name = "xlateTimes") @Column(name = "xlateTimes")
private Long lateTimes; private Long lateTimes;
...@@ -104,6 +109,14 @@ public class StatisticDingdingUnitForDay extends SliceJpaObject { ...@@ -104,6 +109,14 @@ public class StatisticDingdingUnitForDay extends SliceJpaObject {
private Long notSignedCount; private Long notSignedCount;
public Long getResultNormal() {
return resultNormal;
}
public void setResultNormal(Long resultNormal) {
this.resultNormal = resultNormal;
}
public String getStatisticDate() { public String getStatisticDate() {
return statisticDate; return statisticDate;
} }
......
...@@ -79,6 +79,10 @@ public class StatisticDingdingUnitForMonth extends SliceJpaObject { ...@@ -79,6 +79,10 @@ public class StatisticDingdingUnitForMonth extends SliceJpaObject {
@Column(name = "xoffDutyTimes") @Column(name = "xoffDutyTimes")
private Long offDutyTimes; private Long offDutyTimes;
@FieldDescribe("正常签到次数")
@Column(name = "xresultNormal")
private Long resultNormal;
@FieldDescribe("迟到人数") @FieldDescribe("迟到人数")
@Column(name = "xlateTimes") @Column(name = "xlateTimes")
private Long lateTimes; private Long lateTimes;
...@@ -99,6 +103,13 @@ public class StatisticDingdingUnitForMonth extends SliceJpaObject { ...@@ -99,6 +103,13 @@ public class StatisticDingdingUnitForMonth extends SliceJpaObject {
@Column(name = "xNotSignedCount") @Column(name = "xNotSignedCount")
private Long notSignedCount; private Long notSignedCount;
public Long getResultNormal() {
return resultNormal;
}
public void setResultNormal(Long resultNormal) {
this.resultNormal = resultNormal;
}
public String getO2Unit() { public String getO2Unit() {
return o2Unit; return o2Unit;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册