@ -8,10 +8,7 @@ import com.engine.jucailinkq.attendance.attendanceplan.service.impl.AttendancePl
import com.engine.jucailinkq.attendance.workflow.service.AllowanceService ;
import com.engine.jucailinkq.attendance.workflow.service.impl.AllowanceServiceImpl ;
import com.engine.common.util.* ;
import com.engine.jucailinkq.common.util.ApiReturnTools ;
import com.engine.jucailinkq.common.util.CommonUtil ;
import com.engine.jucailinkq.common.util.DateUtil ;
import com.engine.jucailinkq.common.util.DbTools ;
import com.engine.jucailinkq.common.util.* ;
import com.google.common.collect.Lists ;
import com.google.common.collect.Maps ;
import lombok.extern.slf4j.Slf4j ;
@ -66,6 +63,9 @@ public class AttendanceanalysisAction {
//初始化扩展类
CommonUtil . initExtensionClassHolder ( ) ;
//入职离职当天是否需要进行考勤分析。0: 入职离职当天均分析、1: 入职离职当天不分析
String leaveAndEntry = Util . null2String ( ExtensionClassHolder . getGlobalSetMap ( ) . get ( "leaveAndEntry" ) ) ;
if ( "" . equals ( userIds ) ) {
String queryUserSql = "select id,companystartdate from hrmresource where status <> '5' and status <> '4' and status <> '7'" ;
List < Map < String , Object > > userList = DbTools . getSqlToList ( queryUserSql ) ;
@ -133,9 +133,16 @@ public class AttendanceanalysisAction {
for ( int i = 0 ; i < = betweenDays ; i + + ) {
String date = DateUtil . AfterDay ( startDate , i ) ;
if ( ( "" . equals ( companystartDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( companystartDate ) ) > = 0 )
& & ( "" . equals ( terminationDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( terminationDate ) ) < = 0 ) ) {
attendanceAnalysisService . attendanceAnalysisForApi ( userId , date , collect . get ( userId ) , attendanceItems , schedulMap , workHourItems , clockInTimeMap , attendaceResultMap . get ( date ) ) ;
if ( leaveAndEntry . equals ( "1" ) ) {
if ( ( "" . equals ( companystartDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( companystartDate ) ) > 0 )
& & ( "" . equals ( terminationDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( terminationDate ) ) < 0 ) ) {
attendanceAnalysisService . attendanceAnalysisForApi ( userId , date , collect . get ( userId ) , attendanceItems , schedulMap , workHourItems , clockInTimeMap , attendaceResultMap . get ( date ) ) ;
}
} else {
if ( ( "" . equals ( companystartDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( companystartDate ) ) > = 0 )
& & ( "" . equals ( terminationDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( terminationDate ) ) < = 0 ) ) {
attendanceAnalysisService . attendanceAnalysisForApi ( userId , date , collect . get ( userId ) , attendanceItems , schedulMap , workHourItems , clockInTimeMap , attendaceResultMap . get ( date ) ) ;
}
}
}
allowanceService . addAllowanceRecords ( paramMap ) ;
@ -210,11 +217,20 @@ public class AttendanceanalysisAction {
for ( int i = 0 ; i < = betweenDays ; i + + ) {
String date = DateUtil . AfterDay ( startDate , i ) ;
if ( ( "" . equals ( companystartDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( companystartDate ) ) > = 0 )
& & ( "" . equals ( terminationDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( terminationDate ) ) < = 0 ) ) {
log . info ( "***********analysis userId:{},analysisDate:{} start***********" , userId , date ) ;
attendanceAnalysisService . attendanceAnalysisForApi ( userId , date , collect . get ( userId ) , attendanceItems , schedulMap , workHourItems , clockInTimeMap , attendaceResultMap . get ( date ) ) ;
if ( leaveAndEntry . equals ( "1" ) ) {
if ( ( "" . equals ( companystartDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( companystartDate ) ) > 0 )
& & ( "" . equals ( terminationDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( terminationDate ) ) < 0 ) ) {
log . info ( "***********analysis userId:{},analysisDate:{} start***********" , userId , date ) ;
attendanceAnalysisService . attendanceAnalysisForApi ( userId , date , collect . get ( userId ) , attendanceItems , schedulMap , workHourItems , clockInTimeMap , attendaceResultMap . get ( date ) ) ;
}
} else {
if ( ( "" . equals ( companystartDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( companystartDate ) ) > = 0 )
& & ( "" . equals ( terminationDate ) | | DateUtil . getTime ( date ) . compareTo ( DateUtil . getTime ( terminationDate ) ) < = 0 ) ) {
log . info ( "***********analysis userId:{},analysisDate:{} start***********" , userId , date ) ;
attendanceAnalysisService . attendanceAnalysisForApi ( userId , date , collect . get ( userId ) , attendanceItems , schedulMap , workHourItems , clockInTimeMap , attendaceResultMap . get ( date ) ) ;
}
}
}
}