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

dev
chenwei 1 year ago
parent 016daca4a4
commit c70f24a091

@ -1130,6 +1130,14 @@ public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
return lsChildColumns;
}
/**
*
* @param resourceId
* @param startDate
* @param endDate
* @param groupDate
* @return
*/
public int getAbsenceDays(String resourceId, String startDate, String endDate, String groupDate){
int days = 0;
@ -1151,7 +1159,7 @@ public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
KQGroupMemberComInfo kqGroupMemberComInfo = new KQGroupMemberComInfo();
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+")";
bb.writeLog("acqNumberSql: " + acqNumberSql);
RecordSet rs = new RecordSet();
@ -1166,6 +1174,45 @@ public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
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
public BizLogContext getLogContext() {
return null;

Loading…
Cancel
Save