Merge remote-tracking branch 'origin/main'

zm_dev
sy 12 months ago
commit cf271ea653

@ -1 +1 @@
<EFBFBD>[<EFBFBD><EFBFBD>鵿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>}<EFBFBD><EFBFBD><EFBFBD>p<EFBFBD>Z譿<EFBFBD>y<EFBFBD>Q<EFBFBD><EFBFBD>

@ -10,7 +10,8 @@
</component>
<component name="ChangeListManager">
<list default="true" id="baeb3dfb-5097-46c5-933e-6d1dab18b815" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/src/com/engine/attendance/enums/SchedulingApproachEnum.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test/vocation/Test1.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/test/vocation/beforlog.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" />
@ -21,54 +22,25 @@
<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" afterPath="$PROJECT_DIR$/log/sdk.log" afterDir="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/engine/attendance/attendanceanalysis/cmd/GetClockInPointCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/GetClockInPointCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/GetClockInTimeListCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/GetClockInTimeListCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/job/AttendanceAnalysisJob.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/job/AttendanceAnalysisJob.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/AbnormalAttendanceServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/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/attendance/attendanceanalysis/service/impl/AllowanceServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/ComprehensiveWorkingHourServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/ComprehensiveWorkingHourServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/UtilServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/service/impl/UtilServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/web/AttendanceanalysisAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/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/attendance/attendanceanalysis/wrapper/AttendanceAnalysisWrapper.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceplan/cmd/GetAttendanceItemsByPersonDataCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceplan/cmd/GetAttendanceItemsByPersonDataCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/cmd/GetDatatableCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/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/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/attendance/component/persongroup/cmd/GetDatatableRecurrenceCmd.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/attendance/component/persongroup/job/scheduling/tactics/DayRegularScheduling.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/service/SchedulingResultsService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/service/SchedulingResultsService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper.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/attendance/component/persongroup/service/impl/SchedulingResultsServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/enums/SystemItemEnum.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/enums/SystemItemEnum.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/DbTools.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/common/util/DbTools.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/Utils.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/common/util/Utils.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/GetClockInPointCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/GetClockInPointCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/vacation/util/VocationCommonUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/vacation/util/VocationCommonUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/impl/AskForLeaveServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/workflow/service/impl/AskForLeaveServiceImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/common/util/CommonUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/common/util/CommonUtil.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/GetClockInTimeListCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/GetClockInTimeListCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/job/AttendanceAnalysisJob.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/job/AttendanceAnalysisJob.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/service/impl/AbnormalAttendanceServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/service/impl/AbnormalAttendanceServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/service/impl/AllowanceServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/service/impl/AllowanceServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/service/impl/ComprehensiveWorkingHourServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/service/impl/ComprehensiveWorkingHourServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/service/impl/ForgetClockInServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/service/impl/UtilServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/service/impl/UtilServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/web/AttendanceanalysisAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/web/AttendanceanalysisAction.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/wrapper/AttendanceAnalysisWrapper.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/wrapper/AttendanceAnalysisWrapper.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceplan/cmd/GetAttendanceItemsByPersonDataCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceplan/cmd/GetAttendanceItemsByPersonDataCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/cmd/GetDatatableCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/cmd/GetDatatableCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/cmd/GetDatatableCountCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/cmd/GetDatatableCountCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/cmd/GetDatatableRecurrenceCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/cmd/GetDatatableRecurrenceCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/job/scheduling/tactics/DayRegularScheduling.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/job/scheduling/tactics/DayRegularScheduling.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/service/SchedulingResultsService.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/service/SchedulingResultsService.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/service/impl/SchedulingResultsServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/service/impl/SchedulingResultsServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/enums/SystemItemEnum.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/enums/SystemItemEnum.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/workflow/service/impl/AttendanceSummaryServiceImpl$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/workflow/service/impl/AttendanceSummaryServiceImpl$1.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/workflow/service/impl/AttendanceSummaryServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/workflow/service/impl/AttendanceSummaryServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/common/util/DbTools.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/common/util/DbTools.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/common/util/Utils.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/common/util/Utils.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/TestMethod.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/TestMethod.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/test-classes/shuju/K3CloudApiClientSon.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/shuju/K3CloudApiClientSon.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$/test/TestMethod.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/TestMethod.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/shuju/K3CloudApiClientSon.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/shuju/K3CloudApiClientSon.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$/target/classes/com/engine/attendance/vacation/util/VocationCommonUtil.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/vacation/util/VocationCommonUtil.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/common/util/CommonUtil.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/common/util/CommonUtil.class" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -133,11 +105,11 @@
<recent name="D:\项目备份\考勤\hrm-attendance\src\com\engine\jucailin\cmd\calendar" />
</key>
<key name="CopyClassDialog.RECENTS_KEY">
<recent name="vocation" />
<recent name="com.engine.attendance.attendanceanalysis.cmd" />
<recent name="TestAttendanceAllowance" />
<recent name="ComprehensiveWorkingHourServiceImpl" />
<recent name="" />
<recent name="shuju" />
</key>
</component>
<component name="RunAnythingCache">
@ -160,10 +132,16 @@
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="TestGetClockInPoint" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="TestGetClockInPoint" />
<configuration name="Test1" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="vocation.Test1" />
<module name="hrm-attendance" />
<shortenClasspath name="MANIFEST" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="vocation.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<method v="2">
<option name="Make" enabled="true" />
</method>
@ -182,24 +160,33 @@
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="TestMethod" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="TestMethod" />
<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="TestObj" type="Application" factoryName="Application" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="TestObj" />
<module name="hrm-attendance" />
<configuration default="true" type="Application" factoryName="Application">
<shortenClasspath name="MANIFEST" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration default="true" type="Application" factoryName="Application">
<configuration name="Test1.test1" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<module name="hrm-attendance" />
<shortenClasspath name="MANIFEST" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="vocation.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<option name="PACKAGE_NAME" value="vocation" />
<option name="MAIN_CLASS_NAME" value="vocation.Test1" />
<option name="METHOD_NAME" value="test1" />
<option name="TEST_OBJECT" value="method" />
<method v="2">
<option name="Make" enabled="true" />
</method>
@ -231,10 +218,10 @@
<recent_temporary>
<list>
<item itemvalue="JUnit.Test.testAnalysis" />
<item itemvalue="JUnit.Test1.test1" />
<item itemvalue="Application.Test1" />
<item itemvalue="Application.TestMain" />
<item itemvalue="Application.Test (1)" />
<item itemvalue="Application.TestMethod" />
<item itemvalue="Application.TestGetClockInPoint" />
</list>
</recent_temporary>
</component>
@ -619,6 +606,9 @@
<workItem from="1714222157697" duration="23000" />
<workItem from="1714222603317" duration="2289000" />
<workItem from="1714360825186" duration="2936000" />
<workItem from="1714368882623" duration="12755000" />
<workItem from="1714442011339" duration="4482000" />
<workItem from="1714455164627" duration="3821000" />
</task>
<servers />
</component>
@ -657,6 +647,21 @@
<line>104</line>
<option name="timeStamp" value="71" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/com/engine/common/util/CommonUtil.java</url>
<line>50</line>
<option name="timeStamp" value="74" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/item/LeaveEarlyItemCmd.java</url>
<line>37</line>
<option name="timeStamp" value="83" />
</line-breakpoint>
<line-breakpoint enabled="true" type="java-line">
<url>file://$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/item/LeaveEarlyItemCmd.java</url>
<line>54</line>
<option name="timeStamp" value="84" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
<pin-to-top-manager>
@ -678,8 +683,11 @@
</watches-manager>
</component>
<component name="com.intellij.coverage.CoverageDataManagerImpl">
<SUITE FILE_PATH="coverage/hrm_attendance$Test_testAnalysis.ic" NAME="Test.testAnalysis Coverage Results" MODIFIED="1714361397641" 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="1714448541923" 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$Test1_test1.ic" NAME="Test1.test1 Coverage Results" MODIFIED="1714384548356" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false">
<FILTER>vocation.*</FILTER>
</SUITE>
</component>
</project>

@ -1,8 +1,8 @@
DriverClasses = com.mysql.cj.jdbc.Driver
DriverClasses=oracle.jdbc.OracleDriver
ecology.url = jdbc:mysql://221.226.25.34:8286/ecologyjcl?characterEncoding=utf8&useSSL=false&autoReconnect=true&failOverReadOnly=false&serverTimezone=Asia/Shanghai
ecology.user = fanwei
ecology.password = alpwsl92
ecology.url = jdbc:oracle:thin:@192.168.0.106:1521:ecology
ecology.user = hrm_test
ecology.password = ecology
ecology.charset = ISO
ecology.maxconn = 300
ecology.minconn = 50
@ -10,7 +10,3 @@ ecology.maxusecount = 6000
ecology.maxidletime = 600
ecology.maxalivetime = 10
ecology.checktime = 3600
ecology.isgoveproj = 0
LOG_FORMAT = yyyy.MM.dd'-'hh:mm:ss
DEBUG_MODE = false

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

@ -47,6 +47,14 @@ public class GetClockInTimeListCmd extends AbstractCommonCommand<Map<String,Obje
//分析人员
String userId = Util.null2String(params.get("userId"));
//没有打卡记录
if (clockInTimeList == null ||clockInTimeList.size() == 0){
Map<String,Object> resultMap = Maps.newHashMap();
resultMap.put("resultList",Lists.newArrayList());
return resultMap;
}
if (needGetDateScheduling == null || needGetDateScheduling.size() == 0){
//没有排班,默认取当天和第二天的打卡数据
List<Map<String,Object>> effectiveclockInTimeList = Lists.newArrayList();
@ -62,6 +70,7 @@ public class GetClockInTimeListCmd extends AbstractCommonCommand<Map<String,Obje
return resultMap;
}
List<Map<String, Object>> scheduleList = needGetDateScheduling.stream().filter(e -> {
if (!ClassSegmentTypeEnum.REST_AND_DINE.getKey().equals(e.get("bdlx")) && !ClassSegmentTypeEnum.REST_PERIOD.getKey().equals(e.get("bdlx")) &&
!ClassSegmentTypeEnum.DINING_PERIOD.getKey().equals(e.get("bdlx")) && (CheckBoxEnum.CHECKED.getKey().equals(e.get("ksdk")) || CheckBoxEnum.CHECKED.getKey().equals(e.get("jsdk")))){
@ -166,14 +175,14 @@ public class GetClockInTimeListCmd extends AbstractCommonCommand<Map<String,Obje
}
}else if (!"".equals(Util.null2String(finalEarliestTime)) && "".equals(Util.null2String(finalLastestTime))){
if (DateUtil.getTime(signDate).compareTo(DateUtil.getTime(finalEarliestTime)) >0){
if (DateUtil.getTime(signDate).compareTo(DateUtil.getTime(finalEarliestTime)) >=0){
return true;
}else {
return false;
}
}else{
if (DateUtil.getTime(signDate).compareTo(DateUtil.getTime(finalEarliestTime)) >0 && DateUtil.getTime(signDate).compareTo(DateUtil.getTime(finalLastestTime)) <=0){
if (DateUtil.getTime(signDate).compareTo(DateUtil.getTime(finalEarliestTime)) >=0 && DateUtil.getTime(signDate).compareTo(DateUtil.getTime(finalLastestTime)) <=0){
return true;
}else {
return false;

@ -4,6 +4,8 @@ package com.engine.attendance.attendanceanalysis.job;
import com.engine.attendance.attendanceanalysis.wrapper.AttendanceAnalysisWrapper;
import com.engine.attendance.attendanceplan.service.AttendancePlanService;
import com.engine.attendance.attendanceplan.service.impl.AttendancePlanServiceImpl;
import com.engine.attendance.workflow.service.AllowanceService;
import com.engine.attendance.workflow.service.impl.AllowanceServiceImpl;
import com.engine.common.util.DateUtil;
import com.engine.common.util.DbTools;
import com.engine.common.util.ServiceUtil;
@ -22,6 +24,8 @@ public class AttendanceAnalysisJob extends BaseCronJob {
private AttendanceAnalysisWrapper attendanceAnalysisService = ServiceUtil.getService(AttendanceAnalysisWrapper.class);
private AllowanceService allowanceService = ServiceUtil.getService(AllowanceServiceImpl.class);
private String executeDate;
@Override
public void execute() {
@ -63,6 +67,7 @@ public class AttendanceAnalysisJob extends BaseCronJob {
Map<String,Object> param = Maps.newHashMap();
param.put("startDate",DateUtil.beforeDay(nowDate,1));
param.put("endDate",nowDate);
allowanceService.addAllowanceRecords(param);
log.info("********AttendanceAnalysisJob end********");
}
}

@ -68,6 +68,7 @@ public class ComprehensiveWorkingHourServiceImpl extends Service implements Comp
if (!CommonUtil.ifContainStr(hsgsdrqlx,rqlx,",")){
log.info("userId :[{}],analysisDate :[{}] 综合工时执行的日期不在设置的日期类型内",userId,analysisDate);
resultMap.put("message","综合工时执行的日期不在设置的日期类型内");
resultMap.put("excute",false);
return resultMap;
}
@ -77,20 +78,31 @@ public class ComprehensiveWorkingHourServiceImpl extends Service implements Comp
clockInTimeList = getClockInDataByRule(param);
int betweenMinute = getDurationMinute(clockInTimeList);
if (betweenMinute == 0 || clockInTimeList.size()==0){
if (betweenMinute == 0 || clockInTimeList.size()==0 || clockInTimeList.size()==1){
if (rgzscbzhsyc.equals(CheckBoxEnum.CHECKED.getKey())){
//记漏打卡项目
Map<String, Object> itemMap = Maps.newHashMap();
itemMap.put("item", SystemItemEnum.MISSING_CLOCK_IN.getKey());
itemMap.put("itemduration","1");
recordDataList.add(itemMap);
if (clockInTimeList.size()==0){
Map<String, Object> itemMap1 = Maps.newHashMap();
itemMap1.put("item", SystemItemEnum.MISSING_CLOCK_IN.getKey());
itemMap1.put("itemduration","1");
Map<String, Object> itemMap2 = Maps.newHashMap();
itemMap2.put("item", SystemItemEnum.MISSING_CLOCK_IN.getKey());
itemMap2.put("itemduration","1");
recordDataList.add(itemMap1);
recordDataList.add(itemMap2);
}else {
Map<String, Object> itemMap = Maps.newHashMap();
itemMap.put("item", SystemItemEnum.MISSING_CLOCK_IN.getKey());
itemMap.put("itemduration","1");
recordDataList.add(itemMap);
}
}
}
double adjustBetWeenMinute = Utils.getItemdurationDown(ljcqscdhsfzs, AccountingUnitEnum.MINUTES.getKey(),betweenMinute,AccountingUnitEnum.MINUTES);
double adjustBetweenHour = new BigDecimal(adjustBetWeenMinute).divide(new BigDecimal(60),2, RoundingMode.HALF_UP).doubleValue();
log.info("betweenMinute : [{}],adjustBetWeenMinute: [{}],betweenHour:[{}]",betweenMinute,adjustBetWeenMinute,adjustBetweenHour);
if (clockInTimeList.size() > 0){
if (clockInTimeList.size() > 1){
String reportTime = clockInTimeList.get(0).get("signdate")+" "+clockInTimeList.get(0).get("signtime");
int lateDurationTime = 0;
int earlyLeaveMinute = 0;
@ -134,7 +146,7 @@ public class ComprehensiveWorkingHourServiceImpl extends Service implements Comp
}
if (earlyLeaveMinute > 0){
//计早退项目
abnormalParams.put("time",lateDurationTime);
abnormalParams.put("time",earlyLeaveMinute);
Map<String,Object> result = commandExecutor.execute(new LeaveEarlyItemCmd(abnormalParams));
List<Map<String,Object>> workTimeBeLateItems = (List<Map<String,Object>>)result.get("attendanceItems");
if (workTimeBeLateItems.size() == 0){
@ -184,6 +196,7 @@ public class ComprehensiveWorkingHourServiceImpl extends Service implements Comp
resultMap.put("recordParam",recordParam);
utilService.recordItem(recordParam);
resultMap.put("excute",true);
return resultMap;
}
@ -204,7 +217,7 @@ public class ComprehensiveWorkingHourServiceImpl extends Service implements Comp
String zzdksbdkssj = Util.null2String(workHourItem.get("zzdksbdkssj"));
//最晚打卡下班的开始时间
String zwdkxbdkssj = Util.null2String(workHourItem.get("zwdkxbdkssj"));
//日工作时长计算规则
//日工作时长计算规则 0:最早最晚打卡间隔时长,1:依次累加成对打卡间隔时长
String rgzscjsgz = Util.null2String(workHourItem.get("rgzscjsgz"));
//调整上班开始到
String dzsbksd = Util.null2String(workHourItem.get("dzsbksd"));
@ -236,7 +249,7 @@ public class ComprehensiveWorkingHourServiceImpl extends Service implements Comp
clockInTimeList = clockInTimeList.stream().sorted(Comparator.comparing(e->DateUtil.getTime(e.get("signdate")+" "+e.get("signtime")).toInstant(ZoneOffset.of("+8")).toEpochMilli())).collect(Collectors.toList());
if (clockInTimeList.size() == 0){
if (clockInTimeList.size() == 0 || clockInTimeList.size() ==1){
return clockInTimeList;
}
@ -354,7 +367,10 @@ public class ComprehensiveWorkingHourServiceImpl extends Service implements Comp
*/
public Map<String,Object> getRecordDataTime(List<Map<String,Object>> clockInTimeList){
Map<String,Object> resultMap = Maps.newHashMap();
if (clockInTimeList.size() == 0){
if (clockInTimeList.size() == 0 ){
return resultMap;
}else if (clockInTimeList.size() == 1){
resultMap.put("j1",clockInTimeList.get(0).get("signdate")+" "+clockInTimeList.get(0).get("signtime"));
return resultMap;
}
int logarithm = clockInTimeList.size()/2;

@ -39,11 +39,11 @@ public class AttendanceanalysisAction {
@Produces({"text/plain"})
public String getSchedulingData(@Context HttpServletRequest request, @Context HttpServletResponse response) {
try {
//Map<String,Object> paramMap = ParamUtil.request2Map(request);
Map<String,Object> paramMap = Maps.newHashMap();
paramMap.put("startDate","2024-04-11");
paramMap.put("endDate","2024-04-11");
paramMap.put("userIds","31");
Map<String,Object> paramMap = ParamUtil.request2Map(request);
// Map<String,Object> paramMap = Maps.newHashMap();
// paramMap.put("startDate","2024-04-17");
// paramMap.put("endDate","2024-04-17");
// paramMap.put("userIds","295");
String startDate = Util.null2String(paramMap.get("startDate"));
@ -143,7 +143,7 @@ public class AttendanceanalysisAction {
return null;
}catch (Exception e){
log.error("execute fail,catch error: [{}]",e);
return ApiReturnTools.error("500","saveApplicableOrganization error");
return ApiReturnTools.error("500","attendanceAnalysisByHrmAndDate error");
}
}

@ -1,15 +1,12 @@
package com.engine.attendance.attendanceanalysis.wrapper;
import com.engine.attendance.attendanceanalysis.service.ComprehensiveWorkingHourService;
import com.engine.attendance.attendanceanalysis.service.ForgetClockInService;
import com.engine.attendance.attendanceanalysis.service.UtilService;
import com.engine.attendance.attendanceanalysis.service.impl.ComprehensiveWorkingHourServiceImpl;
import com.engine.attendance.attendanceanalysis.service.impl.ForgetClockInServiceImpl;
import com.engine.attendance.attendanceanalysis.service.impl.UtilServiceImpl;
import com.engine.attendance.enums.CheckBoxEnum;
import com.engine.attendance.enums.ClassSegmentTypeEnum;
import com.engine.common.util.CommonUtil;
import com.engine.common.util.DateUtil;
import com.engine.common.util.DbTools;
import com.engine.common.util.ServiceUtil;
import com.engine.common.util.Utils;
import com.engine.core.impl.Service;
@ -82,14 +79,14 @@ public class AttendanceAnalysisWrapper extends Service {
List<Map<String, Object>> beforeOneDayClockInTimeList = utilService.getClockInTime(getClockTimeParam);
log.info("beforeOneDayClockInTimeList : [{}]",beforeOneDayClockInTimeList);
//分析前一天考勤
Map<String,Object> recordDataTime1 = analysis(userId,beforeOneDayDate,beforeOneDayClockInTimeList,schedulingResultsMap.get(beforeOneDayDate),attendanceItems,schedulingMapBydate.get(beforeOneDayDate),workHourItems,dataList);
Map<String,Object> recordDataTime1 = analysis(userId,beforeOneDayDate,beforeOneDayClockInTimeList,schedulingResultsMap.get(beforeOneDayDate),attendanceItems,schedulingMapBydate.get(beforeOneDayDate),workHourItems);
clockInTimeMap.put(beforeOneDayDate,recordDataTime1);
getClockTimeParam.put("date",beforeTwoDayDate);
//前第二天打卡数据
List<Map<String, Object>> beforeTwoDayClockInTimeList = utilService.getClockInTime(getClockTimeParam);
log.info("beforeTwoDayClockInTimeList : [{}]",beforeTwoDayClockInTimeList);
//分析前第二天考勤
Map<String,Object> recordDataTime2 = analysis(userId,beforeTwoDayDate,beforeTwoDayClockInTimeList,schedulingResultsMap.get(beforeTwoDayDate),attendanceItems,schedulingMapBydate.get(beforeTwoDayDate),workHourItems,dataList);
Map<String,Object> recordDataTime2 = analysis(userId,beforeTwoDayDate,beforeTwoDayClockInTimeList,schedulingResultsMap.get(beforeTwoDayDate),attendanceItems,schedulingMapBydate.get(beforeTwoDayDate),workHourItems);
clockInTimeMap.put(beforeTwoDayDate,recordDataTime2);
}
@ -121,7 +118,7 @@ public class AttendanceAnalysisWrapper extends Service {
//打卡数据
log.info("getClockTimeParam : [{}]",getClockTimeParam);
List<Map<String, Object>> clockInTimeList = utilService.getClockInTime(getClockTimeParam);
Map<String,Object> recordDataTime = analysis(userId,analysisDate,clockInTimeList,schedulingResultsMap.get(analysisDate),attendanceItems,schedulingMapBydate.get(analysisDate),workHourItems,dataList);
Map<String,Object> recordDataTime = analysis(userId,analysisDate,clockInTimeList,schedulingResultsMap.get(analysisDate),attendanceItems,schedulingMapBydate.get(analysisDate),workHourItems);
clockInTimeMap.put(analysisDate,recordDataTime);
}
/**
@ -132,7 +129,7 @@ public class AttendanceAnalysisWrapper extends Service {
* @param scheduleResult
* @param attendanceItems
*/
public Map<String,Object> analysis(String userId,String analysisDate,List<Map<String, Object>> clockInTimeList,List<Map<String, Object>> scheduleResult,List<Map<String,Object>> attendanceItems,List<Map<String, Object>> scheduleList,List<Map<String,Object>> workHourItems,List<Map<String,Object>> clockList){
public Map<String,Object> analysis(String userId,String analysisDate,List<Map<String, Object>> clockInTimeList,List<Map<String, Object>> scheduleResult,List<Map<String,Object>> attendanceItems,List<Map<String, Object>> scheduleList,List<Map<String,Object>> workHourItems){
Map<String,Object> recordParam = Maps.newHashMap();
Map<String,String> formModeIdMap = Utils.getFormmodeIdMap();
recordParam.put("userId",userId);
@ -144,7 +141,7 @@ public class AttendanceAnalysisWrapper extends Service {
recordParam.put("modeId",formModeIdMap.get("uf_jcl_kq_cqjg"));
Map<String,Object> workingHourparam = Maps.newHashMap();
workingHourparam.put("clockInTimeCollect",clockList);
workingHourparam.put("clockInTimeCollect",clockInTimeList);
workingHourparam.put("analysisDate",analysisDate);
workingHourparam.put("userId",userId);
workingHourparam.put("attendanceItems",attendanceItems);
@ -158,7 +155,11 @@ public class AttendanceAnalysisWrapper extends Service {
if (workHourItems !=null && workHourItems.size() >0){
workingHourparam.put("workHourItem",workHourItems.get(0));
String ifPriority = Util.null2String(workHourItems.get(0).get("hlpbyxsyzhgs"));
if (CheckBoxEnum.CHECKED.getKey().equals(ifPriority)){
//核算工时的日期类型
String hsgsdrqlx = Util.null2String(workHourItems.get(0).get("hsgsdrqlx"));
String rqlx = Utils.getDateType(analysisDate,Util.null2String(workHourItems.get(0).get("qyrl")));
if (CheckBoxEnum.CHECKED.getKey().equals(ifPriority) && CommonUtil.ifContainStr(hsgsdrqlx,rqlx,",")){
comprehensiveWorkingHourService.excuteByWorkHour(workingHourparam);
return null;
}
@ -169,7 +170,7 @@ public class AttendanceAnalysisWrapper extends Service {
Map<String,Object> params = Maps.newHashMap();
params.put("userId",userId);
params.put("analysisDate",analysisDate);
params.put("clockInTimeCollect",clockList);
params.put("clockInTimeCollect",clockInTimeList);
params.put("modeId",formModeIdMap.get("uf_jcl_kq_cqjg"));
params.put("scheduleList",scheduleList);
params.put("workHourItems",workHourItems);

@ -6,6 +6,7 @@ import com.engine.attendance.attendanceanalysis.cmd.item.WorkOvertimeItemCmd;
import com.engine.attendance.attendanceanalysis.service.*;
import com.engine.attendance.attendanceanalysis.service.impl.*;
import com.engine.attendance.enums.*;
import com.engine.common.util.CommonUtil;
import com.engine.common.util.DateUtil;
import com.engine.common.util.ServiceUtil;
import com.engine.common.util.Utils;
@ -437,9 +438,20 @@ public class UpdateAttendanceResultWrapper extends Service {
return false;
}
if (workHourItems.size() >0){
if (workHourItems != null && workHourItems.size() >0 ){
//核算工时的日期类型
String hsgsdrqlx = Util.null2String(workHourItems.get(0).get("hsgsdrqlx"));
String rqlx = Utils.getDateType(analysisDate,Util.null2String(workHourItems.get(0).get("qyrl")));
params.put("workHourItem",workHourItems.get(0));
comprehensiveWorkingHourService.excuteByWorkHour(params);
if (CommonUtil.ifContainStr(hsgsdrqlx,rqlx,",")){
comprehensiveWorkingHourService.excuteByWorkHour(params);
}else {
commandExecutor.execute(new UpdateAttendanceResultsCmd(normalParams));
}
}else {
commandExecutor.execute(new UpdateAttendanceResultsCmd(normalParams));
}

@ -127,24 +127,8 @@ public class SchedulingResultsServiceImpl extends Service implements SchedulingR
Map<String, Object> resultMap = Maps.newHashMap();
List<Map<String, Object>> dataTableList = (List<Map<String, Object>>)paramMap.get("data");
List<Map<String, Object>> resultList = Lists.newArrayList();
Map<String,List<Map<String, Object>>> dataCollect = dataTableList.stream().collect(Collectors.groupingBy(e->e.get("bcrq").toString()));
dataCollect.entrySet().forEach(e ->{
String bcrq = e.getKey();
List<Map<String, Object>> dataList = e.getValue();
if (dataList.size() > 1){
dataList = dataList.stream().sorted(Comparator.comparing(f-> DateUtil.getTime(f.get("pbrq")+" "+f.get("pbsj")).toInstant(ZoneOffset.of("+8")).toEpochMilli())).collect(Collectors.toList());
if (SchedulingApproachEnum.RULE.getKey().equals(dataList.get(dataList.size()-1).get("pbtj"))){
resultList.add(dataList.get(dataList.size()-2));
}else {
resultList.add(dataList.get(dataList.size()-1));
}
}else if (dataList.size() == 1){
resultList.addAll(dataList);
}
});
resultMap.put("data",resultList);
resultMap.put("data",Utils.getSchedulingList(dataTableList));
log.info("queryDataTableActualUse schedule : [{}]",resultList);
return resultMap;
}
}

@ -447,6 +447,10 @@ public class VocationCommonUtil {
String jqid = Util.null2String(dataMap.get("jqid"));
String sxrq = Util.null2String(dataMap.get("sxrq"));
String jzrq = Util.null2String(dataMap.get("jzrq"));
dataMap.put("yxsc",0);
dataMap.put("ztsc",0);
dataMap.put("wxsc",dataMap.get("ktsc"));
dataMap.put("yqsxrq",dataMap.get("jzrq"));
if (dataList.size()>0){
Map<String,Object> condition = Maps.newHashMap();

@ -29,8 +29,14 @@ public class AskForLeaveServiceImpl extends Service implements AskForLeaveServic
Map<String,String> mainTableData = (Map<String,String>)params.get("mainTableData");
// 流程表单明细表1数据
List<Map<String, String>> detailTableData = (List<Map<String, String>>)params.get("detailTableData");
if (detailTableData != null || detailTableData.size() == 0){
return Maps.newHashMap();
}
detailTableData = detailTableData.stream().sorted(Comparator.comparing(e->DateUtil.getTime(e.get("ksrq")).toInstant(ZoneOffset.of("+8")).toEpochMilli())).collect(Collectors.toList());
//第一笔开始时间
String firstStartDate = detailTableData.get(0).get("ksrq");

@ -34,13 +34,13 @@ public class CommonUtil {
if (e.getValue() != null && !"".equals(e.getValue())){
key = key + e.getKey() +",";
value = value + "?" +",";
if (e.getKey().endsWith("date")){
LocalDateTime localDateTime = DateUtil.getTime(String.valueOf(e.getValue()));
long datelong = localDateTime.toInstant(ZoneOffset.of("+8")).toEpochMilli();
dataList.add(new Date(datelong));
}else {
// if (e.getKey().endsWith("date")){
// LocalDateTime localDateTime = DateUtil.getTime(String.valueOf(e.getValue()));
// long datelong = localDateTime.toInstant(ZoneOffset.of("+8")).toEpochMilli();
// dataList.add(new Date(datelong));
// }else {
dataList.add(e.getValue());
}
// }
}
}
key = key.substring(0,key.length()-1) + ")";

@ -0,0 +1,27 @@
package vocation;
import com.engine.attendance.vacation.job.holidaygeneration.HolidayGenerationJob;
import com.engine.attendance.vacation.service.VocationService;
import com.engine.attendance.vacation.service.impl.VocationServiceImpl;
import com.engine.common.util.ServiceUtil;
import com.engine.common.util.Utils;
import com.google.common.collect.Maps;
import org.junit.Test;
import java.util.Map;
public class Test1 extends beforlog{
VocationService basicsetService = ServiceUtil.getService(VocationServiceImpl.class);
@Test
public void test1() {
Map<String,String> formmodeIdMap = Utils.getFormmodeIdMap();
//假期额度模块id
String modeId = formmodeIdMap.get("uf_jcl_kq_jqed");
Map<String, Object> params = Maps.newHashMap();
params.put("modeId",modeId);
params.put("releaseDate","");
params.put("cover",1);
basicsetService.generateVocation(params);
}
}

@ -0,0 +1,142 @@
package vocation;
import org.easymock.EasyMock;
import org.junit.After;
import org.junit.Before;
import weaver.general.GCONST;
import weaver.hrm.User;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
public class beforlog {
@Before
public void init(){
GCONST.setRootPath("");
GCONST.setServerName("ecology");
System.out.println("----------------开始----------------");
}
@After
public void demoAfter() throws Exception{
System.out.println("-----------------结束---------------");
}
public HttpServletRequest CreateHttpServletOrmap(Map<String,Object> map){
HttpServletRequest httpServletRequest = (HttpServletRequest) EasyMock.createMock(HttpServletRequest.class);
// Map<String, String> map2 = new HashMap<>();
for (String key:map.keySet() ) {
// String[] values=
// map2.put(key,map.get(key).toString());
EasyMock.expect(httpServletRequest.getParameter(key)).andReturn(map.get(key).toString());
}
// EasyMock.expect(httpServletRequest.getParameterMap()).andReturn(map2);
EasyMock.expect(httpServletRequest.getParameter("2123")).andReturn("123");
HttpSession session = EasyMock.createStrictMock(HttpSession.class);
//session管理
EasyMock.expect(httpServletRequest.getParameter("f_weaver_belongto_userid")).andReturn("1");
EasyMock.expect(httpServletRequest.getParameter("f_weaver_belongto_usertype")).andReturn("0");
EasyMock.expect(session.getAttribute("weaver_user@bean")).andReturn(new User(290464));
EasyMock.expect(httpServletRequest.getSession(true)).andStubReturn(session);
EasyMock.replay(httpServletRequest, session);
return httpServletRequest;
}
public HttpServletRequest CreateHttpServletOr(Map<String,Object> map){
HttpServletRequest httpServletRequest = (HttpServletRequest) EasyMock.createMock(HttpServletRequest.class);
Map<String, String[]> map2 = new HashMap<>();
for (String key:map.keySet() ) {
// String[] values=
map2.put(key,map.get(key).toString().split(""));
EasyMock.expect(httpServletRequest.getParameter(key)).andReturn(map.get(key).toString());
}
// EasyMock.expect(httpServletRequest.getParameterMap()).andReturn(map2);
EasyMock.expect(httpServletRequest.getParameter("2123")).andReturn("123");
HttpSession session = EasyMock.createStrictMock(HttpSession.class);
//session管理
EasyMock.expect(httpServletRequest.getParameter("f_weaver_belongto_userid")).andReturn("26347");
EasyMock.expect(httpServletRequest.getParameter("f_weaver_belongto_usertype")).andReturn("0");
EasyMock.expect(session.getAttribute("weaver_user@bean")).andReturn(new User(26347));
EasyMock.expect(httpServletRequest.getSession(true)).andStubReturn(session);
EasyMock.replay(httpServletRequest, session);
return httpServletRequest;
}
public HttpServletRequest CreateHttpServletworkflowtodu(Map<String,Object> map,Map<String,String> headmap){
HttpServletRequest httpServletRequest = (HttpServletRequest) EasyMock.createMock(HttpServletRequest.class);
Map<String, String> map2 = new HashMap<>();
for (String key:map.keySet() ) {
// String[] values=
EasyMock.expect(httpServletRequest.getParameter(key)).andReturn(map.get(key).toString());
}
for (String key:headmap.keySet() ) {
// String[] values=
EasyMock.expect(httpServletRequest.getHeader(key)).andReturn(headmap.get(key).toString());
}
EasyMock.expect(httpServletRequest.getParameter("2123")).andReturn("123");
HttpSession session = EasyMock.createStrictMock(HttpSession.class);
//session管理
EasyMock.expect(httpServletRequest.getParameter("f_weaver_belongto_userid")).andReturn("26347");
EasyMock.expect(httpServletRequest.getParameter("f_weaver_belongto_usertype")).andReturn("0");
EasyMock.expect(session.getAttribute("weaver_user@bean")).andReturn(new User(26347));
EasyMock.expect(httpServletRequest.getSession(true)).andStubReturn(session);
EasyMock.replay(httpServletRequest, session);
return httpServletRequest;
}
public String getUrl(){
String value= this.getClass().getResource("/").getPath();
if(value.length()>1){
return value.substring(1,value.length()-1);
}
return value;
}
public String loadjson(String path) {
path=getUrl()+path;
String str = "";
try {
File file = new File(path);// 定义一个file对象用来初始化FileReader
FileReader reader = new FileReader(file);// 定义一个fileReader对象用来初始化BufferedReader
BufferedReader bReader = new BufferedReader(reader);// new一个BufferedReader对象将文件内容读取到缓存
StringBuilder sb = new StringBuilder();// 定义一个字符串缓存,将字符串存放缓存中
String s = "";
while ((s = bReader.readLine()) != null) {// 逐行读取文件内容,不读取换行符和末尾的空格
sb.append(s + "\n");// 将读取的字符串添加换行符后累加存放在缓存中
System.out.println(s);
}
bReader.close();
str = sb.toString();
return str;
} catch (IOException e) {
e.printStackTrace();
}
return str;
}
}
Loading…
Cancel
Save