漏卡转旷工

zm_dev
liuliang 9 months ago
parent 88e44bc602
commit 7b5977b8ca

@ -1 +1 @@
аyГ~цЭ|дй~Й~хд|И}фЛ~ш}Т~М|юй~с}С}юЯ}У}Ь~к~Х}Н~г}ЭЖ|б}О}ЪрqчhаjЖkЛjВhТjгiлjфkзiУhЭlЩkуoжpжxЯuЭtЧvВvтwЛvа{иxяyТxЙvЮxЦvБyиxрzпwЧvзxаЫЧшСжМЧСъмЖСЪзнНШзЭдДоЩЪДвкдЩРыщчАяПЬэяЮчцПГЗУЪлощбЭхдЪтзЖТНБУщПсЩлэррЦькмИпЙПРжпАлиШФмюмШдшжиИЖъВнлОЙНиwбsСsЪvцsЕwаtПsщyАlГtДoфsшqлlЬqЦpЗrКlыsЖsвuрsХmхoьqЛrщlйjНZК\т^Й\ФZоVфZХXШ\РVИhбwчxкzБyп{Шzб|ш{оxОxЙ|фzд|яwи{ЗvБyК|ЦVеZюUаYфSТYхXе\цXэaцcвeщ_ЮWхWц^бTмRюTЫTПZсWж[ъTЕ]ы[ЪWТRДWгVоZГZЧUЮYСQсXЮWБYЦ[кZшgО~В~ыzю~л{РzвyК{Бxи~ц|М{ъ~тж|Ф}к~н}ычaчdВ]вhп]вaь^ГaК`гaй^ж_Ш]С]И]в^Т^в^и]Т]Х`ЯkКgшgюgЩgюhШcТ]жWЬkшiцqжhЧoяLбLшLюMБMГMКMКMНMсNХMКMНMГMХMЙMНMФMХMЯKДKЕKЙKюKаJцJЪJЕKЦKБKоLшKФKГKГKЕKИKЕKЕKИJюJФJсKЕKИKФKЕKФKДKГKГKпLДKЕKшKжJаJХJДKЕKХKЦKоLЦKДKЦKИKГKФKЕKюKдJЧIсKБKЦKХKГKЕKДKГKЕKГKрLФKГKКJЪIсJтKЕKФKГKДKоLФKФKФKДKЙKДKвKшJюJФJЧKДKДKДKДK
<EFBFBD><EFBFBD>Y<EFBFBD>Y<EFBFBD>Y<EFBFBD>r<EFBFBD>t<EFBFBD><EFBFBD><EFBFBD>~<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD>I

@ -10,241 +10,124 @@
</component>
<component name="ChangeListManager">
<list default="true" id="baeb3dfb-5097-46c5-933e-6d1dab18b815" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/biz/AdjustClockPointActionInterface.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/dataSources/ade958e9-d72b-48ba-8be1-0441de7da9a5/entities/entities.dat" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/dataSources/ade958e9-d72b-48ba-8be1-0441de7da9a5/entities/entities.dat" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/dataSources/ade958e9-d72b-48ba-8be1-0441de7da9a5/entities/entities.dat.values" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/dataSources/ade958e9-d72b-48ba-8be1-0441de7da9a5/entities/entities.dat.values" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/dataSources/ade958e9-d72b-48ba-8be1-0441de7da9a5/entities/entities.dat.values.at" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/dataSources/ade958e9-d72b-48ba-8be1-0441de7da9a5/entities/entities.dat.values.at" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/dataSources/ade958e9-d72b-48ba-8be1-0441de7da9a5/entities/entities.dat.values.s" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/dataSources/ade958e9-d72b-48ba-8be1-0441de7da9a5/entities/entities.dat.values.s" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/dataSources/ade958e9-d72b-48ba-8be1-0441de7da9a5/entities/entities.dat_i" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/dataSources/ade958e9-d72b-48ba-8be1-0441de7da9a5/entities/entities.dat_i" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/WEB-INF/sqllog/ecologysql" beforeDir="false" afterPath="$PROJECT_DIR$/WEB-INF/sqllog/ecologysql" afterDir="false" />
<change beforePath="$PROJECT_DIR$/log/sdk.log" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/out/artifacts/hrm_attendance/hrm-attendance.jar" beforeDir="false" afterPath="$PROJECT_DIR$/out/artifacts/hrm_attendance/hrm-attendance.jar" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/allowance/AllowanceActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/allowance/AllowanceActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/attendanceAnalysis/AttendanceanalysisActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/attendanceAnalysis/AttendanceanalysisActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/attendancePlan/AttendancePlanActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/attendancePlan/AttendancePlanActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/browser/service/impl/KqxmBrowserService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/browser/service/impl/KqxmBrowserService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/common/CommonActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/common/CommonActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/component/ImportAndExport/ExcelControllerApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/component/ImportAndExport/ExcelControllerApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/component/calendarscheduling/WorkRulesControllerApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/component/calendarscheduling/WorkRulesControllerApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/component/persongroup/PersonGroupActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/component/persongroup/PersonGroupActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/component/persongroup/SchedulingResultsActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/component/persongroup/SchedulingResultsActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/enterpriseCalendar/EnterpriseCalendarActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/enterpriseCalendar/EnterpriseCalendarActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/listener/InitListener.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/listener/InitListener.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/summary/AttendanceSummaryActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/summary/AttendanceSummaryActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/vocation/VocationActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/vocation/VocationActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/workflow/AskForLeaveActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/workflow/AskForLeaveActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/workflow/BusinessTripsApplyActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/workflow/BusinessTripsApplyActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/api/attendance/workflow/ProcessSubmitCheckActionApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/api/jucailinkq/attendance/workflow/ProcessSubmitCheckActionApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/README.md" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/ComputeAttendanceDurationCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/ComputeAttendanceDurationCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/GetAskForLeaveCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetAskForLeaveCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/GetClockInTimeListCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetClockInTimeListCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/GetEvectionCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetEvectionCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/GetScheduleResultListCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetScheduleResultListCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/RecordDataCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/RecordDataCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/AdjustByWorkOverTimeCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/AdjustByWorkOverTimeCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/GetClockInPointCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/GetClockInPointCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/MergeApairClockPoint.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/MergeApairClockPoint.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/biz/AbstractAdjustClockPointAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/biz/AbstractAdjustClockPointAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/biz/AdjustClockPointActionInterface.java" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/item/AbsenteeismItemCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/AbsenteeismItemCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/item/BeAwayItemCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/BeAwayItemCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/item/BeLateItemCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/BeLateItemCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/item/ForGetClockItemCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/ForGetClockItemCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/item/LeaveEarlyItemCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/LeaveEarlyItemCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/item/VacationItemCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/VacationItemCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/item/WorkOvertimeItemCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/WorkOvertimeItemCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/workovertime/SaveWorkOverTimeCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/workovertime/SaveWorkOverTimeCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/dto/clockpoint/ClockPointDTO.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/dto/clockpoint/ClockPointDTO.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/dto/clockpoint/ClockPointInfo.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/dto/clockpoint/ClockPointInfo.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/job/AttendanceAnalysisJob.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/job/AttendanceAnalysisJob.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/AbnormalAttendanceService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/AbnormalAttendanceService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/AllowanceService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/AllowanceService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/AskForLeaveService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/AskForLeaveService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/AttendanceSummaryService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/AttendanceSummaryService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/ComprehensiveWorkingHourService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/ComprehensiveWorkingHourService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/EvectionService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/EvectionService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/ForgetClockInService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/ForgetClockInService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/ShiftService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/ShiftService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/UtilService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/UtilService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/WorkOverTimeService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/WorkOverTimeService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/AbnormalAttendanceServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AbnormalAttendanceServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/AllowanceServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AllowanceServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/AskForLeaveServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AskForLeaveServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/AttendanceSummaryServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AttendanceSummaryServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/ComprehensiveWorkingHourServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ComprehensiveWorkingHourServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/EvectionServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/EvectionServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/ShiftServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ShiftServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/UtilServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/UtilServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/WorkOverTimeServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/WorkOverTimeServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/web/AttendanceJucailinButtonAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/web/AttendanceJucailinButtonAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/web/AttendanceSummaryApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/web/AttendanceSummaryApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/web/AttendanceanalysisAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/web/AttendanceanalysisAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/wrapper/AttendanceAnalysisWrapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/wrapper/AttendanceAnalysisWrapper.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceplan/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceplan/README.md" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceplan/cmd/GetAttendanceItemsByPersonDataCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceplan/cmd/GetAttendanceItemsByPersonDataCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceplan/cmd/GetWorkHoursItemByPersonCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceplan/cmd/GetWorkHoursItemByPersonCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceplan/service/AttendancePlanService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceplan/service/AttendancePlanService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceplan/service/impl/AttendancePlanServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceplan/service/impl/AttendancePlanServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceplan/web/AttendancePlanAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceplan/web/AttendancePlanAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/AttendanceItem/service/AttendanceItemService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/AttendanceItem/service/AttendanceItemService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/AttendanceItem/service/impl/AttendanceItemServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/AttendanceItem/service/impl/AttendanceItemServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/ImportAndExport/service/ExcelExportImportService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/ImportAndExport/service/ExcelExportImportService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/ImportAndExport/service/impl/ExcelExportImportServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/ImportAndExport/service/impl/ExcelExportImportServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/ImportAndExport/service/param/ImportParam.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/ImportAndExport/service/param/ImportParam.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/ImportAndExport/web/ExcelController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/ImportAndExport/web/ExcelController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/README.md" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/calendarscheduling/service/WorkRulesService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/calendarscheduling/service/WorkRulesService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/calendarscheduling/service/impl/WorkRulesServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/calendarscheduling/service/impl/WorkRulesServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/calendarscheduling/web/WorkRulesController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/calendarscheduling/web/WorkRulesController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/cmd/DeleteBatchScheduleCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/cmd/DeleteBatchScheduleCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/cmd/GenerateScheduleCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/cmd/GenerateScheduleCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/cmd/GetDatatableCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/cmd/GetDatatableCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/cmd/GetDatatableCountCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/cmd/GetDatatableCountCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/cmd/GetDatatableRecurrenceCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/cmd/GetDatatableRecurrenceCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/commonutil/PersongroupCommonUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/commonutil/PersongroupCommonUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/job/scheduling/SchedulingJob.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/SchedulingJob.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/job/scheduling/tactics/DayRegularScheduling.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/DayRegularScheduling.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/job/scheduling/tactics/MonthRegularScheduling.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/MonthRegularScheduling.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/job/scheduling/tactics/RegularScheduling.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/RegularScheduling.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/job/scheduling/tactics/WeekRegularScheduling.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/WeekRegularScheduling.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/job/scheduling/tactics/YearRegularScheduling.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/YearRegularScheduling.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/service/PersonGroupService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/service/PersonGroupService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/service/SchedulingResultsService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/service/SchedulingResultsService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/service/impl/PersonGroupServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/service/impl/PersonGroupServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/service/impl/SchedulingResultsServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/service/impl/SchedulingResultsServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/web/PersonGroupAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/web/PersonGroupAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/web/SchedulingResultsAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/component/persongroup/web/SchedulingResultsAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/AccountingUnitEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/AccountingUnitEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/AdjustStartingTimeEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/AdjustStartingTimeEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/ApplicableOrganizationEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/ApplicableOrganizationEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/AttendanceItemTypeEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/AttendanceItemTypeEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/BalanceHandleEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/BalanceHandleEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/CheckBoxEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/CheckBoxEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/ClassBelongToEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/ClassBelongToEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/ClassSegmentTypeEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/ClassSegmentTypeEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/ClockPointEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/ClockPointEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/DateTypeEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/DateTypeEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/DelayTypeEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/DelayTypeEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/HalfDayRuleREnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/HalfDayRuleREnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/PeriodOfTime.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/PeriodOfTime.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/PersonGroupListTypeEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/PersonGroupListTypeEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/QuotaChangeMethodEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/QuotaChangeMethodEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/RegularScheduleTypeEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/RegularScheduleTypeEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/RemainderHandleEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/RemainderHandleEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/SchedulingApproachEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/SchedulingApproachEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/StartingUnitEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/StartingUnitEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/SystemItemEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/SystemItemEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/WorkForTimeEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/enums/WorkForTimeEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/README.md" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/cmd/HandleOverdueVocationCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/cmd/HandleOverdueVocationCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/cmd/VocationCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/cmd/VocationCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/job/holidaygeneration/HolidayGenerationJob.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/job/holidaygeneration/HolidayGenerationJob.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/job/holidaygeneration/tactics/ByIntervalPayMentWay.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/job/holidaygeneration/tactics/ByIntervalPayMentWay.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/job/holidaygeneration/tactics/BySchedulePaymentWay.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/job/holidaygeneration/tactics/BySchedulePaymentWay.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/job/holidaygeneration/tactics/HolidayGenerationWay.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/job/holidaygeneration/tactics/HolidayGenerationWay.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/job/holidaygeneration/tactics/OneTimePayMentWay.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/job/holidaygeneration/tactics/OneTimePayMentWay.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/job/holidaygeneration/tactics/SinglePaymentInFullWay.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/job/holidaygeneration/tactics/SinglePaymentInFullWay.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/service/VocationService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/service/VocationService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/service/impl/VocationServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/service/impl/VocationServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/util/VocationCommonUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/util/VocationCommonUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/web/VocationAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/vacation/web/VocationAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/README.md" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/EliminationsAskForLeaveAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/EliminationsAskForLeaveAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/EliminationsEvctionCheckAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/EliminationsEvctionCheckAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/EvctionCheckAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/EvctionCheckAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/MakeUpClockImportAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/MakeUpClockImportAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/MakeUpClockInAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/MakeUpClockInAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/OvertimePlanCheckAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/OvertimePlanCheckAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/OvertimeResultCheckAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/OvertimeResultCheckAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/RevokeEliminationsAskForLeaveAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/RevokeEliminationsAskForLeaveAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/RevokeLeaveAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/RevokeLeaveAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/askforleave/AskForLeaveWorkFlowArchivingAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/askforleave/AskForLeaveWorkFlowArchivingAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/askforleave/AskForLeaveWorkFlowSubmitAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/askforleave/AskForLeaveWorkFlowSubmitAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/askforleave/BatchAskForLeaveWorkFlowArchivingAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/askforleave/BatchAskForLeaveWorkFlowArchivingAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/askforleave/BatchAskForLeaveWorkFlowSubmitAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/action/askforleave/BatchAskForLeaveWorkFlowSubmitAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/cmd/GetAskForLeaveRecordListCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/cmd/GetAskForLeaveRecordListCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/cmd/GetCqSummarySearchConditionCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/cmd/GetCqSummarySearchConditionCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/cmd/GetEliminationsEvctionListCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/cmd/GetEliminationsEvctionListCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/cmd/GetKqCycleTimeIntervalCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/cmd/GetKqCycleTimeIntervalCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/cmd/GetRestDayIntervalCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/cmd/GetRestDayIntervalCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/enums/AskAndEvctionWayEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/enums/AskAndEvctionWayEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/AllowanceService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/AllowanceService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/AskForLeaveService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/AskForLeaveService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/BusinessTripsApplyService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/BusinessTripsApplyService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/EnterpriseCalendarService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/EnterpriseCalendarService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/MakeUpClockInService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/MakeUpClockInService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/ProcessSubmitCheckService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/ProcessSubmitCheckService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/impl/AllowanceServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/impl/AllowanceServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/impl/AskForLeaveServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/impl/AskForLeaveServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/impl/BusinessTripsApplyServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/impl/BusinessTripsApplyServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/impl/EnterpriseCalendarServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/impl/EnterpriseCalendarServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/impl/MakeUpClockInServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/impl/MakeUpClockInServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/impl/ProcessSubmitCheckServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/service/impl/ProcessSubmitCheckServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/web/AllowanceApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/web/AllowanceApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/web/AskForLeaveAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/web/AskForLeaveAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/web/BusinessTripsApplyApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/web/BusinessTripsApplyApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/web/EnterpriseCalendarApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/web/EnterpriseCalendarApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/web/MakeUpClockInAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/web/MakeUpClockInAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/web/ProcessSubmitCheckApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/workflow/web/ProcessSubmitCheckApi.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/cmd/GetDateCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/cmd/GetDateCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/cmd/GetPersonDateBySuitOrganzation.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/cmd/GetPersonDateBySuitOrganzation.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/cmd/QueryCommonCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/cmd/QueryCommonCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/exception/AttendanceRunTimeException.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/exception/AttendanceRunTimeException.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/exception/ExceptionUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/exception/ExceptionUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/service/CommonService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/service/CommonService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/service/impl/CommonServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/service/impl/CommonServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/ApiReturnTools.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/ApiReturnTools.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/CommonUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/CommonUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/Constant.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/Constant.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/DateUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/DateUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/DbTools.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/DbTools.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/ExceptionUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/ExceptionUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/ExtensionClassHolder.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/ExtensionClassHolder.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/LunarCalendar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/LunarCalendar.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/ResponseResult.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/ResponseResult.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/SolarTermsUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/SolarTermsUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/Utils.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/Utils.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/excel/ExcelParseException.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/excel/ExcelParseException.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/excel/ExcelParseHelper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/excel/ExcelParseHelper.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/excel/ExcelProperty.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/excel/ExcelProperty.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/excel/ExcelSupport.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/excel/ExcelSupport.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/excel/ExcelUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/excel/ExcelUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/genid/DefaultWorker.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/genid/DefaultWorker.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/genid/IdGenerator.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/genid/IdGenerator.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/genid/SnowflakeId.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/genid/SnowflakeId.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/genid/Worker.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/util/genid/Worker.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/web/CommonAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/common/web/CommonAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/weaver/formmode/customjavacode/modeexpand/DeleteCheckCalendar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/weaver/formmode/customjavacode/modeexpand/DeleteCheckCalendar.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/ComputeAttendanceDurationCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/ComputeAttendanceDurationCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/workflow/service/impl/AskForLeaveServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/workflow/service/impl/AskForLeaveServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/ComprehensiveWorkingHourServiceImpl/Test1.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/ComprehensiveWorkingHourServiceImpl/Test1.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/ComputeAttendanceDurationCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/ComputeAttendanceDurationCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetAskForLeaveCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetAskForLeaveCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetEvectionCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetEvectionCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/AbsenteeismItemCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/AbsenteeismItemCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/ForgetClockInService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/ForgetClockInService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/web/AttendanceanalysisAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/web/AttendanceanalysisAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/ComputeAttendanceDurationCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/ComputeAttendanceDurationCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetAskForLeaveCmd$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetAskForLeaveCmd$1.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetAskForLeaveCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetAskForLeaveCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetClockInTimeListCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetClockInTimeListCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetEvectionCmd$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetEvectionCmd$1.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetEvectionCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetEvectionCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetScheduleResultListCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/GetScheduleResultListCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/AdjustByWorkOverTimeCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/AdjustByWorkOverTimeCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/GetClockInPointCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/GetClockInPointCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/MergeApairClockPoint.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/getclockInpoint/MergeApairClockPoint.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/AbsenteeismItemCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/AbsenteeismItemCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/BeAwayItemCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/BeAwayItemCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/BeLateItemCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/BeLateItemCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/ForGetClockItemCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/ForGetClockItemCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/LeaveEarlyItemCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/LeaveEarlyItemCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/VacationItemCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/VacationItemCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/WorkOvertimeItemCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/item/WorkOvertimeItemCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/workovertime/SaveWorkOverTimeCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/cmd/workovertime/SaveWorkOverTimeCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/job/AttendanceAnalysisJob.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/job/AttendanceAnalysisJob.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/ForgetClockInService.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/ForgetClockInService.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AbnormalAttendanceServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AbnormalAttendanceServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AllowanceServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AllowanceServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AskForLeaveServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AskForLeaveServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AttendanceSummaryServiceImpl$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AttendanceSummaryServiceImpl$1.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AttendanceSummaryServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/AttendanceSummaryServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ComprehensiveWorkingHourServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ComprehensiveWorkingHourServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/EvectionServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/EvectionServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ShiftServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ShiftServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/UtilServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/UtilServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/WorkOverTimeServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/WorkOverTimeServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/web/AttendanceanalysisAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/web/AttendanceanalysisAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/wrapper/AttendanceAnalysisWrapper.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/wrapper/AttendanceAnalysisWrapper.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper$1.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceplan/cmd/GetAttendanceItemsByPersonDataCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceplan/cmd/GetAttendanceItemsByPersonDataCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceplan/cmd/GetWorkHoursItemByPersonCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/attendanceplan/cmd/GetWorkHoursItemByPersonCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/ImportAndExport/service/impl/ExcelExportImportServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/ImportAndExport/service/impl/ExcelExportImportServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/ImportAndExport/web/ExcelController.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/ImportAndExport/web/ExcelController.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/calendarscheduling/service/impl/WorkRulesServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/calendarscheduling/service/impl/WorkRulesServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/cmd/GenerateScheduleCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/cmd/GenerateScheduleCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/cmd/GetDatatableRecurrenceCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/cmd/GetDatatableRecurrenceCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/commonutil/PersongroupCommonUtil.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/commonutil/PersongroupCommonUtil.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/SchedulingJob.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/SchedulingJob.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/DayRegularScheduling.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/DayRegularScheduling.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/MonthRegularScheduling.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/MonthRegularScheduling.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/WeekRegularScheduling.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/WeekRegularScheduling.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/YearRegularScheduling.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/job/scheduling/tactics/YearRegularScheduling.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/service/impl/PersonGroupServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/component/persongroup/service/impl/PersonGroupServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/vacation/cmd/HandleOverdueVocationCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/vacation/cmd/HandleOverdueVocationCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/vacation/cmd/VocationCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/vacation/cmd/VocationCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/vacation/job/holidaygeneration/tactics/OneTimePayMentWay.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/vacation/job/holidaygeneration/tactics/OneTimePayMentWay.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/vacation/service/impl/VocationServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/vacation/service/impl/VocationServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/vacation/util/VocationCommonUtil.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/vacation/util/VocationCommonUtil.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/EliminationsAskForLeaveAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/EliminationsAskForLeaveAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/EliminationsEvctionCheckAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/EliminationsEvctionCheckAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/EvctionCheckAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/EvctionCheckAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/MakeUpClockInAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/MakeUpClockInAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/OvertimePlanCheckAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/OvertimePlanCheckAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/OvertimeResultCheckAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/OvertimeResultCheckAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/RevokeEliminationsAskForLeaveAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/RevokeEliminationsAskForLeaveAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/RevokeLeaveAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/RevokeLeaveAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/askforleave/AskForLeaveWorkFlowArchivingAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/askforleave/AskForLeaveWorkFlowArchivingAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/askforleave/AskForLeaveWorkFlowSubmitAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/askforleave/AskForLeaveWorkFlowSubmitAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/askforleave/BatchAskForLeaveWorkFlowArchivingAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/askforleave/BatchAskForLeaveWorkFlowArchivingAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/askforleave/BatchAskForLeaveWorkFlowSubmitAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/action/askforleave/BatchAskForLeaveWorkFlowSubmitAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/cmd/GetEliminationsEvctionListCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/cmd/GetEliminationsEvctionListCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/cmd/GetKqCycleTimeIntervalCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/cmd/GetKqCycleTimeIntervalCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/cmd/GetRestDayIntervalCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/cmd/GetRestDayIntervalCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/service/impl/AllowanceServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/service/impl/AllowanceServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/service/impl/AskForLeaveServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/attendance/workflow/service/impl/AskForLeaveServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/common/cmd/GetPersonDateBySuitOrganzation.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/common/cmd/GetPersonDateBySuitOrganzation.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/common/util/CommonUtil.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/common/util/CommonUtil.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/common/util/DbTools.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/common/util/DbTools.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/common/util/Utils.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/jucailinkq/common/util/Utils.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$1.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$10.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$10.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$11.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$11.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$12.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$12.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$13.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$13.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$14.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$14.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$15.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$15.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$16.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$16.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$2.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$2.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$3.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$3.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$4.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$4.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$5.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$5.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$6.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$6.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$7.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$7.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$8.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$8.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test$9.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test$9.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Test.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Test.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/TestAttendanceAllowance/Test.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/TestAttendanceAllowance/Test.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/TestGetClockInPoint.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/TestGetClockInPoint.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/TestMergeAskForLeaveAndEvctionSchedule.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/TestMergeAskForLeaveAndEvctionSchedule.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/TestObj.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/TestObj.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/Tset_sy.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/Tset_sy.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/shuju/Test.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/shuju/Test.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/workflow/UpdateAttendanceResultWrapper.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/workflow/UpdateAttendanceResultWrapper.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/Test.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/Test.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestAskForLeaveByDurationTime.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestAskForLeaveByDurationTime.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestAttendanceAllowance/Test.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestAttendanceAllowance/Test.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestAttendanceAllowance/Test2.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestAttendanceAllowance/Test2.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestByIntervalPayMentWay.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestByIntervalPayMentWay.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestBySchedulePaymentWay.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestBySchedulePaymentWay.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestGetClockInPoint.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestGetClockInPoint.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestMergeAskForLeaveAndEvctionSchedule.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestMergeAskForLeaveAndEvctionSchedule.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestMethod.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestMethod.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestObj.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestObj.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestOneTimePayMentWay.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestOneTimePayMentWay.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestRecordData.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestRecordData.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestRemoveRestTime.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestRemoveRestTime.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/TestSinglePaymentFullWay.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestSinglePaymentFullWay.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/Tset_sy.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/Tset_sy.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/calendarscheduling/Test1.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/calendarscheduling/Test1.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/calendarscheduling/TestgetDepartSchedule.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/calendarscheduling/TestgetDepartSchedule.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/calendarscheduling/Testmain.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/calendarscheduling/Testmain.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/shuju/Test.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/shuju/Test.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/vocation/Test1.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/vocation/Test1.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/vocation/TestHandleOverdueVocation.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/vocation/TestHandleOverdueVocation.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/web/TestSchedulingResultsAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/web/TestSchedulingResultsAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/workflow/Test1.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/workflow/Test1.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/workflow/UpdateAttendanceResultWrapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/workflow/UpdateAttendanceResultWrapper.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -287,7 +170,7 @@
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="com.intellij.ide.scratch.ScratchImplUtil$2/New Scratch File" value="PLAIN_TEXT" />
<property name="last_directory_selection" value="$PROJECT_DIR$/src/com/engine/kq" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/../../../easyentry" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/test" />
<property name="nodejs_package_manager_path" value="npm" />
<property name="project.structure.last.edited" value="Artifacts" />
<property name="project.structure.proportion" value="0.15" />
@ -299,8 +182,8 @@
</component>
<component name="RecentsManager">
<key name="CopyFile.RECENT_KEYS">
<recent name="D:\项目备份\考勤\hrm-attendance\log\interceptSql" />
<recent name="D:\项目备份\考勤\hrm-attendance\test" />
<recent name="D:\项目备份\考勤\hrm-attendance\log\interceptSql" />
<recent name="D:\项目备份\考勤\hrm-attendance\src" />
<recent name="D:\项目备份\考勤\hrm-attendance" />
<recent name="D:\项目备份\考勤\hrm-attendance\workflow\request\hrmattendance" />
@ -322,33 +205,24 @@
</option>
</component>
<component name="RunManager" selected="JUnit.Test.testAnalysis">
<configuration name="TestObj" type="Application" factoryName="Application" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="TestObj" />
<configuration name="Test" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="Test" />
<module name="hrm-attendance" />
<shortenClasspath name="MANIFEST" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration default="true" type="Application" factoryName="Application">
<configuration name="TestObj" type="Application" factoryName="Application" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="TestObj" />
<module name="hrm-attendance" />
<shortenClasspath name="MANIFEST" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="Test1.test1" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<module name="hrm-attendance" />
<configuration default="true" type="Application" factoryName="Application">
<shortenClasspath name="MANIFEST" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="workflow.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<option name="PACKAGE_NAME" value="workflow" />
<option name="MAIN_CLASS_NAME" value="workflow.Test1" />
<option name="METHOD_NAME" value="test1" />
<option name="TEST_OBJECT" value="method" />
<method v="2">
<option name="Make" enabled="true" />
</method>
@ -431,10 +305,10 @@
<recent_temporary>
<list>
<item itemvalue="JUnit.Test.testAnalysis" />
<item itemvalue="Application.Test" />
<item itemvalue="JUnit.Test.testjob" />
<item itemvalue="JUnit.TestSchedulingResultsAction.testquery" />
<item itemvalue="JUnit.TestSchedulingResultsAction.test1" />
<item itemvalue="JUnit.Test1.test1" />
</list>
</recent_temporary>
</component>
@ -947,7 +821,14 @@
<workItem from="1720099326817" duration="2000" />
<workItem from="1720144120321" duration="6353000" />
<workItem from="1720157535171" duration="17214000" />
<workItem from="1720403279673" duration="4683000" />
<workItem from="1720403279673" duration="7092000" />
<workItem from="1720417693053" duration="16260000" />
<workItem from="1720488425308" duration="8105000" />
<workItem from="1720503789466" duration="17040000" />
<workItem from="1720527036200" duration="6471000" />
<workItem from="1720534639000" duration="336000" />
<workItem from="1720575209924" duration="8590000" />
<workItem from="1720590109223" duration="1383000" />
</task>
<servers />
</component>
@ -1006,6 +887,11 @@
<line>28</line>
<option name="timeStamp" value="186" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/com/engine/jucailinkq/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.java</url>
<line>62</line>
<option name="timeStamp" value="189" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
<watches-manager>
@ -1025,7 +911,7 @@
<SUITE FILE_PATH="coverage/hrm_attendance$TestgetDepartSchedule_test2.ic" NAME="TestgetDepartSchedule.test2 Coverage Results" MODIFIED="1718071420719" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false">
<FILTER>calendarscheduling.*</FILTER>
</SUITE>
<SUITE FILE_PATH="coverage/hrm_attendance$Test_testAnalysis.ic" NAME="Test.testAnalysis Coverage Results" MODIFIED="1720084643105" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false">
<SUITE FILE_PATH="coverage/hrm_attendance$Test_testAnalysis.ic" NAME="Test.testAnalysis Coverage Results" MODIFIED="1720580820899" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false">
<FILTER>TestAttendanceAllowance.*</FILTER>
</SUITE>
<SUITE FILE_PATH="coverage/hrm_attendance$Test_testjob.ic" NAME="Test.testjob Coverage Results" MODIFIED="1720164636425" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false">

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

@ -4,6 +4,7 @@ import com.engine.jucailinkq.attendance.attendanceanalysis.dto.clockpoint.ClockP
import com.engine.jucailinkq.attendance.enums.*;
import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext;
import com.engine.jucailinkq.common.util.DateUtil;
import com.engine.jucailinkq.common.util.Utils;
import com.engine.core.interceptor.CommandContext;
import com.google.common.collect.Lists;
@ -51,9 +52,6 @@ public class ComputeAttendanceDurationCmd extends AbstractCommonCommand<Map<Stri
String analysisDate = Util.null2String(params.get("analysisDate"));
//考勤项目
List<Map<String,Object>> attendanceItems = (List<Map<String,Object>>)params.get("attendanceItems");
//卡点
List<ClockPointDTO> clcokInTimeData = (List<ClockPointDTO>)params.get("clcokInTimeData");
//经过请假外出处理过的异常项目
List<Map<String,Object>> abnormalClockInList = (List<Map<String,Object>>)params.get("abnormalClockInList");
//单位小时
@ -62,41 +60,36 @@ public class ComputeAttendanceDurationCmd extends AbstractCommonCommand<Map<Stri
resultMap.put("attendanceDuration",edsc);
return resultMap;
}
//单位分钟
//漏打卡异常小时数
double misscardHour = 0;
//异常时间
double abnormalMinute = 0;
/**
*
*/
abnormalClockInList = abnormalClockInList.stream().filter(e->e.get("bdlx").equals(ClassSegmentTypeEnum.WORK_TIME.getKey()) || e.get("bdlx").equals(ClassSegmentTypeEnum.ASK_FOR_LEAVE.getKey()) || e.get("bdlx").equals(ClassSegmentTypeEnum.EVECTION.getKey())).collect(Collectors.toList());
//abnormalClockInList = abnormalClockInList.stream().filter(e->e.get("bdlx").equals(ClassSegmentTypeEnum.WORK_TIME.getKey())).collect(Collectors.toList());
Map<Object,List<Map<String,Object>>> abnormalClockInGroupMap = abnormalClockInList.stream().filter(e->(e.get("bdlx").equals(ClassSegmentTypeEnum.WORK_TIME.getKey()) || e.get("bdlx").equals(ClassSegmentTypeEnum.ASK_FOR_LEAVE.getKey()) || e.get("bdlx").equals(ClassSegmentTypeEnum.EVECTION.getKey())) && e.get("clcokInTimeData") != null)
.collect(Collectors.groupingBy(e->Util.null2String(e.get("clcokInTimeData"))));
List<Map<String,Object>> filterAbnormalList = Lists.newArrayList();
abnormalClockInGroupMap.entrySet().forEach(e->{
List<Map<String,Object>> list = e.getValue();
if (list.size() > 1){
list = list.stream().sorted(Comparator.comparing(f->(Integer)f.get("betweenMinutes"))).collect(Collectors.toList());
filterAbnormalList.add(list.get(list.size()-1));
list.get(list.size()-1).put("record",true);
}else if (list.size() == 1){
filterAbnormalList.add(list.get(0));
}
});
filterAbnormalList.addAll(abnormalClockInList.stream().filter(e->(e.get("bdlx").equals(ClassSegmentTypeEnum.WORK_TIME.getKey()) || e.get("bdlx").equals(ClassSegmentTypeEnum.ASK_FOR_LEAVE.getKey()) || e.get("bdlx").equals(ClassSegmentTypeEnum.EVECTION.getKey())) && e.get("clcokInTimeData") == null).collect(Collectors.toList()));
double abnormalTime = 0;
for (Map<String,Object> abnormalClockInMap : filterAbnormalList){
AttendanceItemTypeEnum itemType = (AttendanceItemTypeEnum)abnormalClockInMap.get("itemType");
String kczgsc = Util.null2String(abnormalClockInMap.get("kczgsc"));
if (itemType == AttendanceItemTypeEnum.MISSE_CARD){
//早上漏卡
abnormalTime = abnormalTime + edsc*60;
}
for (Map<String, Object> scheduleMap :scheduleResult){
if (ClassSegmentTypeEnum.WORK_TIME.getKey().equals(scheduleMap.get("bdlx"))){
String dtkssj = Utils.getkssjTime(scheduleMap,analysisDate);
String dtjssj = Utils.getjssjTime(scheduleMap,analysisDate);
List<Map<String,Object>> list = abnormalClockInList.stream().filter(e->DateUtil.getTime(dtkssj).compareTo(DateUtil.getTime(e.get("pointTime").toString())) <=0 && DateUtil.getTime(dtjssj).compareTo(DateUtil.getTime(e.get("pointTime").toString())) >=0).collect(Collectors.toList());
double totalTime=0;
for (Map<String,Object> abnormal:list){
AttendanceItemTypeEnum itemType = (AttendanceItemTypeEnum)abnormal.get("itemType");
String kczgsc = Util.null2String(abnormal.get("kczgsc"));
if (!CheckBoxEnum.CHECKED.getKey().equals(kczgsc)){
continue;
}
int betweenMinutes = Integer.valueOf(Util.null2String(abnormalClockInMap.get("betweenMinutes")==null?"0":abnormalClockInMap.get("betweenMinutes")));
String item = Util.null2String(abnormalClockInMap.get("item"));
if (itemType == AttendanceItemTypeEnum.MISSE_CARD){
misscardHour +=Double.valueOf(scheduleMap.get("edxss").toString());
totalTime = 0;
break;
}else {
int betweenMinutes = Integer.valueOf(Util.null2String(abnormal.get("betweenMinutes")==null?"0":abnormal.get("betweenMinutes")));
String item = Util.null2String(abnormal.get("item"));
List<Map<String,Object>> abnormalItemList = attendanceItems.stream().filter(e->e.get("key").equals(item)).collect(Collectors.toList());
if (abnormalItemList.size() > 0){
//起步扣除分钟数
@ -109,22 +102,26 @@ public class ComputeAttendanceDurationCmd extends AbstractCommonCommand<Map<Stri
int deductionDuration = betweenMinutes-qbkcsc;
betweenMinutes = Double.valueOf(Utils.getItemduration(cckcbc,AccountingUnitEnum.MINUTES.getKey(),deductionDuration,AccountingUnitEnum.MINUTES)).intValue()+qbkcsc;
}
totalTime+=betweenMinutes;
}
}
}
abnormalMinute+=totalTime;
}
abnormalTime = abnormalTime+betweenMinutes;
}
/**
*
*/
double askForLeaveTime = removeAskForLeave(analysisDate,scheduleResult,askForLeaveList,askForLeaveItems,offsetAskForLeaveAnomaly);
double askForLeaveTime = removeAskForLeave(analysisDate,scheduleResult,askForLeaveList,askForLeaveItems,offsetAskForLeaveAnomaly,abnormalClockInList);
/**
*
*/
double evectionTimeTime = removeEvection(analysisDate,scheduleResult,evectionList,evectionItems,offsetEvectionAnomaly);
double evectionTimeTime = removeEvection(analysisDate,scheduleResult,evectionList,evectionItems,offsetEvectionAnomaly,abnormalClockInList);
log.debug("abnormalTime : {},askForLeaveTime : {},evectionTimeTime:{}",abnormalTime,askForLeaveTime,evectionTimeTime);
double deductTime = Double.valueOf(String.format ("%.2f",(abnormalTime+askForLeaveTime+evectionTimeTime)/60));
edsc = edsc-deductTime;
log.info("misscardHour : {},abnormalMinute : {}, : {},evectionTimeTime:{}",misscardHour,abnormalMinute,askForLeaveTime,evectionTimeTime);
double deductTime = Double.valueOf(String.format ("%.2f",(abnormalMinute+askForLeaveTime+evectionTimeTime)/60));
edsc = edsc-misscardHour-deductTime;
if (edsc < 0){
edsc=0;
}
@ -134,10 +131,19 @@ public class ComputeAttendanceDurationCmd extends AbstractCommonCommand<Map<Stri
}
public double removeAskForLeave(String analysisDate,List<Map<String, Object>> scheduleResult,List<Map<String,Object>> askForLeaveList,
Map<String,Map<String,Object>> askForLeaveItems,List<Map<String, Object>> offsetAskForLeaveAnomaly){
Map<String,Map<String,Object>> askForLeaveItems,List<Map<String, Object>> offsetAskForLeaveAnomaly,List<Map<String, Object>> abnormalClockInList){
double employTime = 0;
double edsc = Double.valueOf(scheduleResult.get(0).get("edsc").toString());
Map<String,List<Map<String,Object>>> askForLeaveGroupMap = askForLeaveList.stream().filter(e->!"".equals(Util.null2String(e.get("kssj"))) && !"".equals(Util.null2String(e.get("jssj"))))
.collect(Collectors.groupingBy(e->Util.null2String(e.get("ksrq"))+Util.null2String(e.get("kssj"))+"&"+Util.null2String(e.get("jsrq"))+Util.null2String(e.get("jssj"))));
List<Map<String,Object>> filterAskForLeaveList = Lists.newArrayList();
askForLeaveGroupMap.entrySet().forEach(e->{
if (e.getValue().size() > 1){
filterAskForLeaveList.add(e.getValue().get(0));
}else if (e.getValue().size() == 1){
filterAskForLeaveList.addAll(e.getValue());
}
});
for (int i=0;i<askForLeaveList.size();i++){
//请假时长
@ -166,26 +172,50 @@ public class ComputeAttendanceDurationCmd extends AbstractCommonCommand<Map<Stri
employTime +=Double.valueOf(qjsc)*60;
}
}
}else {
}
}
for (int i=0;i<filterAskForLeaveList.size();i++){
//请假项目
Map<String,Object> askForLeaveItem = askForLeaveItems.get(filterAskForLeaveList.get(i).get("jqlx"));
//作用时段
String zysd = Util.null2String(askForLeaveItem.get("zysd"));
if (!zysd.contains(WorkForTimeEnum.WORK_TIME.getKey()) && !WorkForTimeEnum.ALL_TIME.getKey().equals(zysd)){
continue;
}
//按照开始时间,结束时间请假
for (Map<String, Object> scheduleMap:scheduleResult){
if (ClassSegmentTypeEnum.WORK_TIME.getKey().equals(scheduleMap.get("bdlx"))){
String dtkssj = Utils.getkssjTime(scheduleMap,analysisDate);
String dtjssj = Utils.getjssjTime(scheduleMap,analysisDate);
employTime +=Utils.getStartAndEndTime(dtkssj,dtjssj,askForLeaveList.get(i));
List<Map<String,Object>> list = abnormalClockInList.stream().filter(e->e.get("itemType")==AttendanceItemTypeEnum.MISSE_CARD &&(DateUtil.getTime(dtkssj).compareTo(DateUtil.getTime(e.get("pointTime").toString())) <=0 && DateUtil.getTime(dtjssj).compareTo(DateUtil.getTime(e.get("pointTime").toString())) >=0)).collect(Collectors.toList());
if (list.size() == 0){
//存在漏卡时不计入请假时长,防止重复累加
employTime +=Utils.getStartAndEndTime(dtkssj,dtjssj,filterAskForLeaveList.get(i));
}
}
}
}
return employTime;
}
public double removeEvection(String analysisDate,List<Map<String, Object>> scheduleResult,List<Map<String,Object>> evectionList,
Map<String,Map<String,Object>> evectionItems,List<Map<String, Object>> offsetEvectionAnomaly){
Map<String,Map<String,Object>> evectionItems,List<Map<String, Object>> offsetEvectionAnomaly,List<Map<String, Object>> abnormalClockInList){
double employTime = 0;
double edsc = Double.valueOf(scheduleResult.get(0).get("edsc").toString());
Map<String,List<Map<String,Object>>> evectionGroupMap = evectionList.stream().filter(e->!"".equals(Util.null2String(e.get("kssj"))) && !"".equals(Util.null2String(e.get("jssj"))))
.collect(Collectors.groupingBy(e->Util.null2String(e.get("ksrq"))+Util.null2String(e.get("kssj"))+"&"+Util.null2String(e.get("jsrq"))+Util.null2String(e.get("jssj"))));
List<Map<String,Object>> filterEvectionList = Lists.newArrayList();
evectionGroupMap.entrySet().forEach(e->{
if (e.getValue().size() > 1){
filterEvectionList.add(e.getValue().get(0));
}else if (e.getValue().size() == 1){
filterEvectionList.addAll(e.getValue());
}
});
for (int i=0;i<evectionList.size();i++){
//出差时长
String ccsc = Util.null2String(evectionList.get(i).get("ccsc"));
@ -215,21 +245,29 @@ public class ComputeAttendanceDurationCmd extends AbstractCommonCommand<Map<Stri
employTime += Double.valueOf(ccsc)*60;
}
}
}else {
}
}
for (int i=0;i<filterEvectionList.size();i++){
//出差项目
Map<String,Object> askForLeaveItem = evectionItems.get(filterEvectionList.get(i).get("cclx"));
//作用时段
String zysd = Util.null2String(askForLeaveItem.get("zysd"));
if (!zysd.contains(WorkForTimeEnum.WORK_TIME.getKey()) && !WorkForTimeEnum.ALL_TIME.getKey().equals(zysd)){
continue;
}
//按照开始时间,结束时间请假
int time = 0;
for (Map<String, Object> scheduleMap:scheduleResult){
String dtkssj = Utils.getkssjTime(scheduleMap,analysisDate);
String dtjssj = Utils.getjssjTime(scheduleMap,analysisDate);
if (ClassSegmentTypeEnum.WORK_TIME.getKey().equals(scheduleMap.get("bdlx"))){
time = time + Utils.getStartAndEndTime(dtkssj,dtjssj,evectionList.get(i));
}
List<Map<String,Object>> list = abnormalClockInList.stream().filter(e->e.get("itemType")==AttendanceItemTypeEnum.MISSE_CARD &&(DateUtil.getTime(dtkssj).compareTo(DateUtil.getTime(e.get("pointTime").toString())) <=0 && DateUtil.getTime(dtjssj).compareTo(DateUtil.getTime(e.get("pointTime").toString())) >=0)).collect(Collectors.toList());
if (list.size() == 0){
//存在漏卡时不计入出差时长,防止重复累加
employTime = employTime + Utils.getStartAndEndTime(dtkssj,dtjssj,filterEvectionList.get(i));
}
if (time > ccscMinute){
time = ccscMinute;
}
employTime = employTime+time;
}
}
return employTime;

@ -127,9 +127,44 @@ public class GetAskForLeaveCmd extends AbstractCommonCommand<Map<String,Object>>
resultMap.put("alldayVaction",resultList);
}
askForLeaveItems.put(askForLeaveData.get("jqlx").toString(),askForLeaveItem);
}
Map<String,List<Map<String,Object>>> askForLeaveGroupMap = haveAskForLeaveList.stream().filter(e->!"".equals(Util.null2String(e.get("kssj"))) && !"".equals(Util.null2String(e.get("jssj"))))
.collect(Collectors.groupingBy(e->Util.null2String(e.get("ksrq"))+Util.null2String(e.get("kssj"))+"&"+Util.null2String(e.get("jsrq"))+Util.null2String(e.get("jssj"))));
List<Map<String,Object>> filterAskForLeaveList = Lists.newArrayList();
askForLeaveGroupMap.entrySet().forEach(e->{
if (e.getValue().size()>1){
Map<String,Object> beforeAskForMap = e.getValue().get(0);
Map<String,Object> beforeAskForLeaveItem = collect.get(beforeAskForMap.get("jqlx")).get(0);
String beforeJcbyxsyqjb = Util.null2String(beforeAskForLeaveItem.get("jcbyxsyqjb"));
String beforeyxsydjb = Util.null2String(beforeAskForLeaveItem.get("yxsydjb"));
Map<String,Object> afterAskForMap = e.getValue().get(1);
Map<String,Object> afterAskForLeaveItem = collect.get(afterAskForMap.get("jqlx")).get(0);
String afterJcbyxsyqjb = Util.null2String(afterAskForLeaveItem.get("jcbyxsyqjb"));
String afteryxsydjb = Util.null2String(afterAskForLeaveItem.get("yxsydjb"));
if (CheckBoxEnum.CHECKED.getKey().equals(beforeJcbyxsyqjb)){
if (beforeyxsydjb.equals(afterAskForMap.get("jqlx"))){
filterAskForLeaveList.add(beforeAskForMap);
}
}else if (CheckBoxEnum.CHECKED.getKey().equals(afterJcbyxsyqjb)){
if (afteryxsydjb.equals(beforeAskForMap.get("jqlx"))){
filterAskForLeaveList.add(afterAskForMap);
}
}else {
filterAskForLeaveList.add(beforeAskForMap);
}
}else if (e.getValue().size() == 1){
filterAskForLeaveList.addAll(e.getValue());
}
});
for (Map<String,Object> askForLeaveData : filterAskForLeaveList){
Map<String,Object> askForLeaveItem = collect.get(askForLeaveData.get("jqlx")).get(0);
if (!"".equals(Util.null2String(askForLeaveData.get("kssj"))) && !"".equals(Util.null2String(askForLeaveData.get("jssj")))){
Map<String,Object> askForLeaveMap = new HashMap(){{
put("bcxx", scheduleResult.get(0).get("bcxx"));

@ -124,9 +124,43 @@ public class GetEvectionCmd extends AbstractCommonCommand<Map<String,Object>> {
resultMap.put("alldayEvection",resultList);
}
evectionItems.put(evectionData.get("cclx").toString(),evectionItem);
}
Map<String,List<Map<String,Object>>> evectionGroupMap = haveEvectionList.stream().filter(e->!"".equals(Util.null2String(e.get("kssj"))) && !"".equals(Util.null2String(e.get("jssj"))))
.collect(Collectors.groupingBy(e->Util.null2String(e.get("ksrq"))+Util.null2String(e.get("kssj"))+"&"+Util.null2String(e.get("jsrq"))+Util.null2String(e.get("jssj"))));
List<Map<String,Object>> filterEvectionList = Lists.newArrayList();
evectionGroupMap.entrySet().forEach(e->{
if (e.getValue().size()>1){
Map<String,Object> beforeEvectionMap = e.getValue().get(0);
Map<String,Object> beforeEvectionItem = collect.get(beforeEvectionMap.get("jqlx")).get(0);
String beforeJcbyxsyqjb = Util.null2String(beforeEvectionItem.get("jcbyxsyqjb"));
String beforeyxsydjb = Util.null2String(beforeEvectionItem.get("yxsydjb"));
Map<String,Object> afterEvectionMap = e.getValue().get(1);
Map<String,Object> afterEvectionItem = collect.get(afterEvectionMap.get("jqlx")).get(0);
String afterJcbyxsyqjb = Util.null2String(afterEvectionItem.get("jcbyxsyqjb"));
String afteryxsydjb = Util.null2String(afterEvectionItem.get("yxsydjb"));
if (CheckBoxEnum.CHECKED.getKey().equals(beforeJcbyxsyqjb)){
if (beforeyxsydjb.equals(afterEvectionMap.get("jqlx"))){
filterEvectionList.add(beforeEvectionMap);
}
}else if (CheckBoxEnum.CHECKED.getKey().equals(afterJcbyxsyqjb)){
if (afteryxsydjb.equals(beforeEvectionMap.get("jqlx"))){
filterEvectionList.add(afterEvectionMap);
}
}else {
filterEvectionList.add(beforeEvectionMap);
}
}else if (e.getValue().size() == 1){
filterEvectionList.addAll(e.getValue());
}
});
for (Map<String,Object> evectionData : filterEvectionList){
Map<String,Object> evectionItem = collect.get(evectionData.get("cclx")).get(0);
if (!"".equals(Util.null2String(evectionData.get("kssj"))) && !"".equals(Util.null2String(evectionData.get("jssj")))){
Map<String,Object> evectioneMap = new HashMap(){{
put("bcxx", scheduleResult.get(0).get("bcxx"));
@ -154,6 +188,7 @@ public class GetEvectionCmd extends AbstractCommonCommand<Map<String,Object>> {
}
}
return resultMap;
}
}

@ -1,6 +1,7 @@
package com.engine.jucailinkq.attendance.attendanceanalysis.cmd.item;
import com.engine.jucailinkq.attendance.enums.AttendanceItemTypeEnum;
import com.engine.jucailinkq.attendance.enums.CheckBoxEnum;
import com.engine.jucailinkq.attendance.enums.WorkForTimeEnum;
import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext;
@ -32,6 +33,8 @@ public class AbsenteeismItemCmd extends AbstractCommonCommand<Map<String,Object>
String workfor = Util.null2String(params.get("workfor"));
//旷工分钟数
int time = Util.null2String(params.get("time")).equals("")? 0:Util.getIntValue(Util.null2String(params.get("time")));
//漏打卡转旷工标识
String forgetConvertAbsenteeism = Util.null2String(params.get("workfor"));
Map<String, Object> resultMap = new HashMap<>();
List<Map<String,Object>> attendanceItems = (List<Map<String,Object>>)params.get("attendanceItems");
@ -40,11 +43,22 @@ public class AbsenteeismItemCmd extends AbstractCommonCommand<Map<String,Object>
String xmlx = Util.null2String(e.get("xmlx"));
//作用时段
String zysd = Util.null2String(e.get("zysd"));
//检查漏打卡情况
String ldkzkg = Util.null2String(e.get("ldkzkg"));
//最小核算分钟数(不包含)
int zxhsl = Util.null2String(e.get("zxhsl")).equals("")?0:Util.getIntValue(Util.null2String(e.get("zxhsl")));
//最大核算分钟数(包含)
int zdhsl = Util.null2String(e.get("zdhsl")).equals("")?0:Util.getIntValue(Util.null2String(e.get("zdhsl")));
if (CheckBoxEnum.CHECKED.getKey().equals(forgetConvertAbsenteeism)){
//漏打卡转旷工
if(ldkzkg.equals(CheckBoxEnum.CHECKED.getKey()) && AttendanceItemTypeEnum.ABSENTEESIM.getKey().equals(xmlx) && (zysd.contains(workfor) || zysd.contains(WorkForTimeEnum.ALL_TIME.getKey())) && time > zxhsl && time<=zdhsl) {
return true;
}else if (ldkzkg.equals(CheckBoxEnum.CHECKED.getKey()) && AttendanceItemTypeEnum.ABSENTEESIM.getKey().equals(xmlx) && (zysd.contains(workfor) || zysd.contains(WorkForTimeEnum.ALL_TIME.getKey())) && zxhsl==0 && zdhsl==0){
return true;
}else {
return false;
}
}else {
if(AttendanceItemTypeEnum.ABSENTEESIM.getKey().equals(xmlx) && (zysd.contains(workfor) || zysd.contains(WorkForTimeEnum.ALL_TIME.getKey())) && time > zxhsl && time<=zdhsl) {
return true;
}else if (AttendanceItemTypeEnum.ABSENTEESIM.getKey().equals(xmlx) && (zysd.contains(workfor) || zysd.contains(WorkForTimeEnum.ALL_TIME.getKey())) && zxhsl==0 && zdhsl==0){
@ -52,6 +66,7 @@ public class AbsenteeismItemCmd extends AbstractCommonCommand<Map<String,Object>
}else {
return false;
}
}
}).collect(Collectors.toList());
log.debug("absenteeismCmd attendanceItems : [{}]",attendanceItems);
resultMap.put("attendanceItems",attendanceItems);

@ -18,4 +18,11 @@ public interface ForgetClockInService {
* @return
*/
List<Map<String,Object>> forgetClockIn(Map<String,Object> params);
/**
*
* @param params
* @return
*/
List<Map<String,Object>> forgetConvertAbsenteeism(Map<String,Object> params);
}

@ -1,9 +1,13 @@
package com.engine.jucailinkq.attendance.attendanceanalysis.service.impl;
import com.engine.jucailinkq.attendance.attendanceanalysis.cmd.item.AbsenteeismItemCmd;
import com.engine.jucailinkq.attendance.attendanceanalysis.cmd.item.ForGetClockItemCmd;
import com.engine.jucailinkq.attendance.attendanceanalysis.service.ForgetClockInService;
import com.engine.jucailinkq.attendance.enums.AccountingUnitEnum;
import com.engine.jucailinkq.attendance.enums.AttendanceItemTypeEnum;
import com.engine.jucailinkq.attendance.enums.CheckBoxEnum;
import com.engine.jucailinkq.attendance.enums.SystemItemEnum;
import com.engine.jucailinkq.common.util.DateUtil;
import com.engine.jucailinkq.common.util.Utils;
import com.engine.core.impl.Service;
import com.google.common.collect.Lists;
@ -13,6 +17,7 @@ import weaver.general.Util;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Slf4j
public class ForgetClockInServiceImpl extends Service implements ForgetClockInService {
@ -46,8 +51,74 @@ public class ForgetClockInServiceImpl extends Service implements ForgetClockInSe
forgetParam.put("item", forgerAttendanceItems.get(0).get("key"));
forgetParam.put("itemduration", 1);
forgetParam.put("itemType", AttendanceItemTypeEnum.MISSE_CARD);
forgetParam.put("kczgsc", CheckBoxEnum.CHECKED.getKey());
resultList.add(forgetParam);
}
return resultList;
}
@Override
public List<Map<String, Object>> forgetConvertAbsenteeism(Map<String, Object> params) {
List<Map<String,Object>> abnormalList = (List<Map<String,Object>>)params.get("abnormalList");
List<Map<String, Object>> scheduleResult = (List<Map<String, Object>>)params.get("scheduleResult");
//考勤项目
List<Map<String,Object>> attendanceItems = (List<Map<String,Object>>)params.get("attendanceItems");
String analysisDate = Util.null2String(params.get("analysisDate"));
List<Map<String,Object>> needRecordMissCardList = abnormalList.stream().filter(e->(boolean)e.get("record") && e.get("itemType") == AttendanceItemTypeEnum.MISSE_CARD).collect(Collectors.toList());
if (needRecordMissCardList.size() == 0){
return abnormalList;
}
Map<String,Object> lateParam = Maps.newHashMap();
lateParam.put("attendanceItems",attendanceItems);
lateParam.put("forgetConvertAbsenteeism",CheckBoxEnum.CHECKED.getKey());
List<Map<String,Object>> absenteeismList = Lists.newArrayList();
for (Map<String, Object> scheduleMap:scheduleResult){
String bdlx = scheduleMap.get("bdlx").toString();
if (!Utils.ifRestClassSegment(bdlx) && !Utils.ifAskforOrEvctionClassSegment(bdlx)){
String dtkssj = Utils.getkssjTime(scheduleMap,analysisDate);
String dtjssj = Utils.getjssjTime(scheduleMap,analysisDate);
List<Map<String,Object>> missCardlist = needRecordMissCardList.stream().filter(e-> DateUtil.getTime(dtkssj).compareTo(DateUtil.getTime(e.get("pointTime").toString())) <=0 && DateUtil.getTime(dtjssj).compareTo(DateUtil.getTime(e.get("pointTime").toString())) >=0).collect(Collectors.toList());
List<Map<String,Object>> abnormal = abnormalList.stream().filter(e-> DateUtil.getTime(dtkssj).compareTo(DateUtil.getTime(e.get("pointTime").toString())) <=0 && DateUtil.getTime(dtjssj).compareTo(DateUtil.getTime(e.get("pointTime").toString())) >=0).collect(Collectors.toList());
if (missCardlist.size() > 0){
String edfzs = scheduleMap.get("edfzs").toString();
lateParam.put("time",edfzs);
lateParam.put("workfor",Utils.getWorkFor(bdlx));
List<Map<String,Object>> items = (List<Map<String,Object>>)commandExecutor.execute(new AbsenteeismItemCmd(lateParam)).get("attendanceItems");
if (items.size() > 0){
abnormalList = abnormalList.stream().filter(e->{
for (Map<String,Object> map:abnormal){
if (map.get("bdlx").equals(e.get("bdlx")) && map.get("pointTime").equals(e.get("pointTime"))){
return false;
}
}
return true;
}).collect(Collectors.toList());
Map<String,Object> forgotMap = Maps.newHashMap();
forgotMap.putAll(missCardlist.get(0));
forgotMap.put("item",items.get(0).get("key"));
String hsdw = Util.null2String(items.get(0).get("hsdw"));
if (hsdw.equals(AccountingUnitEnum.HOUR.getKey())){
forgotMap.put("itemduration",scheduleMap.get("edxss"));
}else if (hsdw.equals(AccountingUnitEnum.DAY.getKey())){
forgotMap.put("itemduration",scheduleMap.get("edts"));
}else if (hsdw.equals(AccountingUnitEnum.MINUTES.getKey())){
forgotMap.put("itemduration",edfzs);
}
forgotMap.put("hsdw",hsdw);
forgotMap.put("kczgsc",items.get(0).get("kczgsc"));
forgotMap.put("betweenMinutes",edfzs);
forgotMap.put("hsl",items.get(0).get("hsl"));
forgotMap.put("classStartTime",dtkssj);
forgotMap.put("classEndTime",dtjssj);
absenteeismList.add(forgotMap);
}
}
}
}
if (absenteeismList.size() > 0){
abnormalList.addAll(absenteeismList);
}
return abnormalList;
}
}

@ -48,8 +48,8 @@ public class AttendanceanalysisAction {
try {
Map<String,Object> paramMap = ParamUtil.request2Map(request);
// Map<String,Object> paramMap = Maps.newHashMap();
// paramMap.put("startDate","2024-07-03");
// paramMap.put("endDate","2024-07-03");
// paramMap.put("startDate","2024-07-04");
// paramMap.put("endDate","2024-07-04");
// paramMap.put("userIds","81");
String startDate = Util.null2String(paramMap.get("startDate"));

@ -157,10 +157,15 @@ public class UpdateAttendanceResultWrapper extends Service {
}
}
// if (iforgetClockIn || ifBeLate ||ifLeaveEarly){
// return true;
// }
if (resultList.size() > 0){
//漏打卡转旷工
Map<String,Object> forgetParam = Maps.newHashMap();
forgetParam.put("abnormalList",resultList);
forgetParam.put("scheduleResult",scheduleResult);
forgetParam.put("attendanceItems",attendanceItems);
forgetParam.put("analysisDate",analysisDate);
resultList = forgetClockInService.forgetConvertAbsenteeism(forgetParam);
}
log.debug("abnormalClockInList : [{}]",resultList);
return resultList;
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save