入离职工时加上考勤报表问题修复

dev
chenwei 1 year ago
parent 016daca4a4
commit c70f24a091

@ -1130,6 +1130,14 @@ public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
return lsChildColumns; return lsChildColumns;
} }
/**
*
* @param resourceId
* @param startDate
* @param endDate
* @param groupDate
* @return
*/
public int getAbsenceDays(String resourceId, String startDate, String endDate, String groupDate){ public int getAbsenceDays(String resourceId, String startDate, String endDate, String groupDate){
int days = 0; int days = 0;
@ -1151,7 +1159,7 @@ public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
KQGroupMemberComInfo kqGroupMemberComInfo = new KQGroupMemberComInfo(); KQGroupMemberComInfo kqGroupMemberComInfo = new KQGroupMemberComInfo();
String groupid = Util.null2String(kqGroupMemberComInfo.getKQGroupId(resourceId, groupDate)); String groupid = Util.null2String(kqGroupMemberComInfo.getKQGroupId(resourceId, groupDate));
String acqNumberSql = "select count(*) as number from KQ_HolidaySet where groupid = " + groupid +" changeType in (1,3) " + String acqNumberSql = "select count(*) as number from KQ_HolidaySet where groupid = " + groupid +" and changeType in (1,3) " +
"and holidayDate in ("+selDates+")"; "and holidayDate in ("+selDates+")";
bb.writeLog("acqNumberSql: " + acqNumberSql); bb.writeLog("acqNumberSql: " + acqNumberSql);
RecordSet rs = new RecordSet(); RecordSet rs = new RecordSet();
@ -1166,6 +1174,45 @@ public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
return days; return days;
} }
/**
*
* @return
*/
public Map<String, Object> getLeaveInfos(String startDate, String endDate){
Map<String, Object> result = new HashMap<>();
RecordSet rs = new RecordSet();
String acqLeaveSql = "select resourceid, sum(d_mins) as mins from kq_flow_split_leave " +
"where belongdate >='"+startDate+"' and belongdate <='"+endDate+"' " +
"group by resourceid " +
"order by resourceid ";
rs.executeQuery(acqLeaveSql);
while (rs.next()) {
String resourceid = Util.null2String(rs.getString("resourceid"));
String mins = Util.null2String(rs.getString("mins"));
result.put(resourceid, mins);
}
String acqLeaveBackSql = "select resourceid, sum(d_mins) as mins from kq_flow_split_leaveback " +
"where belongdate >='"+startDate+"' and belongdate <='"+endDate+"' " +
"group by resourceid " +
"order by resourceid ";
rs.executeQuery(acqLeaveBackSql);
while (rs.next()) {
String resourceid = Util.null2String(rs.getString("resourceid"));
int mins = Math.max(Util.getIntValue(Util.null2String(rs.getString("mins"))), 0);
if (mins > 0) {
int temp = Math.max(Util.getIntValue(Util.null2String(result.get(resourceid))), 0);
int remins = Math.max(temp - mins, 0);
result.put(resourceid, remins);
}
}
return result;
}
@Override @Override
public BizLogContext getLogContext() { public BizLogContext getLogContext() {
return null; return null;

Loading…
Cancel
Save