zm_dev
liuliang 10 months ago
parent 63ae8376b5
commit dd50a64bb2

@ -10,29 +10,51 @@
</component>
<component name="ChangeListManager">
<list default="true" id="baeb3dfb-5097-46c5-933e-6d1dab18b815" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/biz/AbstractAdjustClockPointAction.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/cmd/GenerateScheduleCmd.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/prop/weaver.properties" beforeDir="false" afterPath="$PROJECT_DIR$/WEB-INF/prop/weaver.properties" 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" afterPath="$PROJECT_DIR$/log/sdk.log" afterDir="false" />
<change beforePath="$PROJECT_DIR$/WEB-INF/sqllog/2024-05-16 17-30-16.log" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/WEB-INF/sqllog/2024-05-24 16-54-40.log" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/WEB-INF/sqllog/2024-06-05 14-21-45.log" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/WEB-INF/sqllog/2024-06-05 14-32-39.log" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/WEB-INF/sqllog/2024-06-13 17-52-52.log" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/WEB-INF/sqllog/ecologysql" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/log/interceptSql/interceptSql.log" beforeDir="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/engine/attendance/attendanceanalysis/cmd/GetClockInTimeItemCmd.java" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.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/cmd/RecordDataCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/RecordDataCmd.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/AdjustClockPointAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/biz/AdjustClockPointActionInterface.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/GetClockInPointCmd.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/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/attendance/attendanceanalysis/cmd/getclockInpoint/MergeApairClockPoint.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/component/persongroup/service/impl/PersonGroupServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/service/impl/PersonGroupServiceImpl.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/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/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/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/component/persongroup/web/SchedulingResultsAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/component/persongroup/web/SchedulingResultsAction.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/askforleave/AskForLeaveWorkFlowSubmitAction.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/attendance/workflow/action/askforleave/AskForLeaveWorkFlowSubmitAction.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/getclockInpoint/MergeApairClockPoint.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/MergeApairClockPoint.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/workovertime/GetOvertimeDurationCmd.class" 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$/src/com/engine/common/util/ExtensionClassHolder.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/com/engine/common/util/ExtensionClassHolder.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/GetClockInPointCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/getclockInpoint/GetClockInPointCmd.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/recordDataCmd.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/cmd/recordDataCmd.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/component/persongroup/service/impl/PersonGroupServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/service/impl/PersonGroupServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/workflow/service/impl/AllowanceServiceImpl.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/workflow/service/impl/AllowanceServiceImpl.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/attendanceanalysis/wrapper/UpdateAttendanceResultWrapper$1.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/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/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/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/component/persongroup/web/SchedulingResultsAction.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/classes/com/engine/attendance/component/persongroup/web/SchedulingResultsAction.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/TestMethod.class" beforeDir="false" afterPath="$PROJECT_DIR$/target/test-classes/TestMethod.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$/test/Test.java" beforeDir="false" afterPath="$PROJECT_DIR$/test/Test.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/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" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -109,7 +131,15 @@
<command value="organzationList" />
</option>
</component>
<component name="RunManager" selected="JUnit.Test.testAnalysis">
<component name="RunManager" selected="JUnit.Test2.testAnalysis">
<configuration name="TestMethod" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="TestMethod" />
<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" />
@ -158,23 +188,6 @@
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="Test.testRealse" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<module name="hrm-attendance" />
<shortenClasspath name="MANIFEST" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="TestAttendanceAllowance.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<option name="PACKAGE_NAME" value="TestAttendanceAllowance" />
<option name="MAIN_CLASS_NAME" value="TestAttendanceAllowance.Test" />
<option name="METHOD_NAME" value="testRealse" />
<option name="TEST_OBJECT" value="method" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="Test.testRealse2" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<module name="hrm-attendance" />
<shortenClasspath name="MANIFEST" />
@ -218,11 +231,11 @@
</configuration>
<recent_temporary>
<list>
<item itemvalue="JUnit.Test.testAnalysis" />
<item itemvalue="JUnit.Test2.testAnalysis" />
<item itemvalue="JUnit.Test.testAnalysis" />
<item itemvalue="JUnit.Test.testRealse3" />
<item itemvalue="Application.TestMethod" />
<item itemvalue="JUnit.Test.testRealse2" />
<item itemvalue="JUnit.Test.testRealse" />
</list>
</recent_temporary>
</component>
@ -700,7 +713,15 @@
<workItem from="1718862135814" duration="9981000" />
<workItem from="1718887747776" duration="3297000" />
<workItem from="1718933530584" duration="6303000" />
<workItem from="1718948226212" duration="9034000" />
<workItem from="1718948226212" duration="13499000" />
<workItem from="1718976206184" duration="43000" />
<workItem from="1719125625916" duration="2116000" />
<workItem from="1719136711440" duration="6153000" />
<workItem from="1719193138220" duration="5436000" />
<workItem from="1719207063871" duration="10986000" />
<workItem from="1719239131303" duration="1452000" />
<workItem from="1719278990512" duration="4844000" />
<workItem from="1719293856593" duration="12645000" />
</task>
<servers />
</component>

@ -1,8 +1,23 @@
DriverClasses=oracle.jdbc.OracleDriver
#DriverClasses=oracle.jdbc.OracleDriver
#
#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
#ecology.maxusecount = 6000
#ecology.maxidletime = 600
#ecology.maxalivetime = 10
#ecology.checktime = 3600
DriverClasses = com.mysql.cj.jdbc.Driver
ecology.url = jdbc:oracle:thin:@192.168.0.106:1521:ecology
ecology.user = hrm_test
ecology.password = ecology
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.charset = ISO
ecology.maxconn = 300
ecology.minconn = 50
@ -11,21 +26,6 @@ ecology.maxidletime = 600
ecology.maxalivetime = 10
ecology.checktime = 3600
#DriverClasses = com.mysql.cj.jdbc.Driver
#
#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.charset = ISO
#ecology.maxconn = 300
#ecology.minconn = 50
#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
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 it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -0,0 +1,171 @@
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 1048576 bytes for AllocateHeap
# Possible reasons:
# The system is out of physical RAM or swap space
# In 32 bit mode, the process size limit was hit
# Possible solutions:
# Reduce memory load on the system
# Increase physical memory or swap space
# Check if swap backing store is full
# Use 64 bit Java on a 64 bit OS
# Decrease Java heap size (-Xmx/-Xms)
# Decrease number of Java threads
# Decrease Java thread stack sizes (-Xss)
# Set larger code cache with -XX:ReservedCodeCacheSize=
# This output file may be truncated or incomplete.
#
# Out of Memory Error (memory/allocation.inline.hpp:61), pid=16064, tid=5468
#
# JRE version: (8.0_40-b25) (build )
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.40-b25 mixed mode windows-amd64 compressed oops)
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
--------------- T H R E A D ---------------
Current thread (0x000000000118d800): JavaThread "Unknown thread" [_thread_in_vm, id=5468, stack(0x0000000002c90000,0x0000000002d90000)]
Stack: [0x0000000002c90000,0x0000000002d90000]
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [jvm.dll+0x32b47a]
V [jvm.dll+0x2797f3]
V [jvm.dll+0x27a489]
V [jvm.dll+0x2717a5]
V [jvm.dll+0x1606]
V [jvm.dll+0x3f7cf2]
V [jvm.dll+0x3f868f]
V [jvm.dll+0x3f875d]
V [jvm.dll+0x3f8926]
V [jvm.dll+0xf2c12]
V [jvm.dll+0x20f139]
V [jvm.dll+0x240d9a]
V [jvm.dll+0x15b941]
C [java.exe+0x216e]
C [java.exe+0xcce7]
C [java.exe+0xcd7b]
C [KERNEL32.DLL+0x17344]
C [ntdll.dll+0x4cc91]
--------------- P R O C E S S ---------------
Java Threads: ( => current thread )
Other Threads:
=>0x000000000118d800 (exited) JavaThread "Unknown thread" [_thread_in_vm, id=5468, stack(0x0000000002c90000,0x0000000002d90000)]
VM state:not at safepoint (normal execution)
VM Mutex/Monitor currently owned by a thread: None
Heap:
PSYoungGen total 75776K, used 1300K [0x000000076b800000, 0x0000000770c80000, 0x00000007c0000000)
eden space 65024K, 2% used [0x000000076b800000,0x000000076b9451f8,0x000000076f780000)
from space 10752K, 0% used [0x0000000770200000,0x0000000770200000,0x0000000770c80000)
to space 10752K, 0% used [0x000000076f780000,0x000000076f780000,0x0000000770200000)
ParOldGen total 173568K, used 0K [0x00000006c2800000, 0x00000006cd180000, 0x000000076b800000)
object space 173568K, 0% used [0x00000006c2800000,0x00000006c2800000,0x00000006cd180000)
Metaspace used 766K, capacity 4480K, committed 4480K, reserved 1056768K
class space used 75K, capacity 384K, committed 384K, reserved 1048576K
Card table byte_map: [0x0000000012410000,0x0000000012c00000] byte_map_base: 0x000000000edfc000
Marking Bits: (ParMarkBitMap*) 0x0000000071914040
Begin Bits: [0x0000000013750000, 0x00000000176b0000)
End Bits: [0x00000000176b0000, 0x000000001b610000)
Polling page: 0x0000000000b90000
CodeCache: size=245760Kb used=328Kb max_used=328Kb free=245431Kb
bounds [0x0000000003050000, 0x00000000032c0000, 0x0000000012050000]
total_blobs=57 nmethods=0 adapters=37
compilation: enabled
Compilation events (0 events):
No events
GC Heap History (0 events):
No events
Deoptimization events (0 events):
No events
Internal exceptions (0 events):
No events
Events (10 events):
Event: 0.028 loading class java/lang/Short
Event: 0.028 loading class java/lang/Short done
Event: 0.028 loading class java/lang/Integer
Event: 0.028 loading class java/lang/Integer done
Event: 0.028 loading class java/lang/Long
Event: 0.028 loading class java/lang/Long done
Event: 0.028 loading class java/lang/NullPointerException
Event: 0.029 loading class java/lang/NullPointerException done
Event: 0.029 loading class java/lang/ArithmeticException
Event: 0.029 loading class java/lang/ArithmeticException done
Dynamic libraries:
0x00007ff7bc530000 - 0x00007ff7bc567000 D:\soft\JDK8\bin\java.exe
0x00007ffd0c910000 - 0x00007ffd0cb08000 C:\WINDOWS\SYSTEM32\ntdll.dll
0x00007ffd0acf0000 - 0x00007ffd0adad000 C:\WINDOWS\System32\KERNEL32.DLL
0x00007ffd0a230000 - 0x00007ffd0a526000 C:\WINDOWS\System32\KERNELBASE.dll
0x00007ffd0adb0000 - 0x00007ffd0ae60000 C:\WINDOWS\System32\ADVAPI32.dll
0x00007ffd0a950000 - 0x00007ffd0a9ee000 C:\WINDOWS\System32\msvcrt.dll
0x00007ffd0aec0000 - 0x00007ffd0af60000 C:\WINDOWS\System32\sechost.dll
0x00007ffd0ba80000 - 0x00007ffd0bba3000 C:\WINDOWS\System32\RPCRT4.dll
0x00007ffd0a780000 - 0x00007ffd0a7a7000 C:\WINDOWS\System32\bcrypt.dll
0x00007ffd0b8e0000 - 0x00007ffd0ba7f000 C:\WINDOWS\System32\USER32.dll
0x00007ffd0a530000 - 0x00007ffd0a552000 C:\WINDOWS\System32\win32u.dll
0x00007ffd0aa50000 - 0x00007ffd0aa7b000 C:\WINDOWS\System32\GDI32.dll
0x00007ffd0a660000 - 0x00007ffd0a777000 C:\WINDOWS\System32\gdi32full.dll
0x00007ffd0a860000 - 0x00007ffd0a8fd000 C:\WINDOWS\System32\msvcp_win.dll
0x00007ffd0a560000 - 0x00007ffd0a660000 C:\WINDOWS\System32\ucrtbase.dll
0x00007ffcf48d0000 - 0x00007ffcf4b6a000 C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.4355_none_60b8b9eb71f62e16\COMCTL32.dll
0x00007ffd0c880000 - 0x00007ffd0c8af000 C:\WINDOWS\System32\IMM32.DLL
0x00000000719a0000 - 0x0000000071a72000 D:\soft\JDK8\jre\bin\msvcr100.dll
0x0000000071110000 - 0x0000000071993000 D:\soft\JDK8\jre\bin\server\jvm.dll
0x00007ffd0bbb0000 - 0x00007ffd0bbb8000 C:\WINDOWS\System32\PSAPI.DLL
0x00007ffced070000 - 0x00007ffced079000 C:\WINDOWS\SYSTEM32\WSOCK32.dll
0x00007ffd0c810000 - 0x00007ffd0c87b000 C:\WINDOWS\System32\WS2_32.dll
0x00007ffd04ee0000 - 0x00007ffd04eea000 C:\WINDOWS\SYSTEM32\VERSION.dll
0x00007ffcf98d0000 - 0x00007ffcf98f7000 C:\WINDOWS\SYSTEM32\WINMM.dll
0x0000000071100000 - 0x000000007110f000 D:\soft\JDK8\jre\bin\verify.dll
0x00000000710d0000 - 0x00000000710f9000 D:\soft\JDK8\jre\bin\java.dll
0x0000000071080000 - 0x00000000710a3000 D:\soft\JDK8\jre\bin\instrument.dll
0x00000000710b0000 - 0x00000000710c6000 D:\soft\JDK8\jre\bin\zip.dll
0x00007ffd07b90000 - 0x00007ffd07d74000 C:\WINDOWS\SYSTEM32\dbghelp.dll
0x00007ffd0a040000 - 0x00007ffd0a0c2000 C:\WINDOWS\System32\bcryptPrimitives.dll
VM Arguments:
jvm_args: -javaagent:D:\soft\IntelliJ IDEA 2021.2\lib\idea_rt.jar=50114:D:\soft\IntelliJ IDEA 2021.2\bin -Dfile.encoding=UTF-8
java_command: TestObj
java_class_path (initial): C:\Users\liuliang\AppData\Local\Temp\classpath1755129399.jar;D:\soft\IntelliJ IDEA 2021.2\lib\idea_rt.jar
Launcher Type: SUN_STANDARD
Environment Variables:
JAVA_HOME=D:\soft\JDK8
CLASSPATH=.;D:\soft\JDK8\lib\dt.jar;D:\soft\JDK8\lib\tools.jar;D:\Resin\lib\resin.jar;D:\WEAVER\Resin\lib\resin.jar
PATH=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;D:\soft\JDK8\jre\bin;D:\soft\apache-maven-3.5.0\bin;D:\soft\hadoop-2.7.7\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn\;C:\Program Files\Azure Data Studio\bin;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\;C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;D:\nodejs\;D:\Git\cmd;C:\Program Files\Bandizip\;C:\Program Files\TortoiseSVN\bin;C:\Users\liuliang\AppData\Local\Microsoft\WindowsApps;C:\Program Files\Azure Data Studio\bin;D:\Microsoft VS Code\bin;D:\nodejs\node_global;D:\soft\mysql-8.0.29-winx64\bin;
USERNAME=liuliang
OS=Windows_NT
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 158 Stepping 13, GenuineIntel
--------------- S Y S T E M ---------------
OS: Windows 10.0 , 64 bit Build 19041 (10.0.19041.3636)
CPU:total 6 (6 cores per cpu, 1 threads per core) family 6 model 158 stepping 13, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, erms, 3dnowpref, lzcnt, tsc, tscinvbit, bmi1, bmi2, adx
Memory: 4k page, physical 16611380k(3183404k free), swap 20805684k(6628k free)
vm_info: Java HotSpot(TM) 64-Bit Server VM (25.40-b25) for windows-amd64 JRE (1.8.0_40-b25), built on Feb 10 2015 21:53:57 by "java_re" with MS VC++ 10.0 (VS2010)
time: Fri Jun 21 17:46:11 2024
elapsed time: 0 seconds (0d 0h 0m 0s)

File diff suppressed because one or more lines are too long

@ -61,6 +61,9 @@ public class RecordDataCmd extends AbstractCommonCommand<Map<String,Object>> {
String sql = "select ygid,rq from uf_jcl_kq_cqjg where ygid=? and rq=?";
List<Map<String,Object>> dataList = DbTools.getSqlToList(sql,userId,analysisDate);
if (recordDataList.size()>8){
recordDataList = recordDataList.subList(0,8);
}
if (dataList.size() >0){
sql = "update uf_jcl_kq_cqjg set cqsc="+attendanceDuration+",cqzt="+cqzt+",fxrq='"+DateUtil.getCurrentTime()+"',rqlx="+rqlx+",sfxx="+sfxx;
if (classInfo.size() == 0 || classInfo.get(0).get("bcxx") == null || "".equals(classInfo.get(0).get("bcxx"))){

@ -411,11 +411,19 @@ public class GetClockInPointCmd extends AbstractCommonCommand<Map<String, Object
resetClcokDTO = beforeClcokDTO;
}
if (newClockTimeMap == null){
resetClcokDTO.setTimeType(ClockPointEnum.EMPTY);
}else {
resetClcokDTO.setTimeType(newtimeType);
}
resetClcokDTO.setClockTime(newClockTimeMap);
}
}else {
if (newClockTimeMap == null){
resetClcokDTO.setTimeType(ClockPointEnum.EMPTY);
}else {
resetClcokDTO.setTimeType(newtimeType);
}
resetClcokDTO.setClockTime(newClockTimeMap);
}
}else {
@ -948,4 +956,19 @@ public class GetClockInPointCmd extends AbstractCommonCommand<Map<String, Object
return false;
}
}
public ClockPointEnum getTimeType(ClockPointDTO clockPointDTO,Map<String,Object> clockInMap){
if (clockInMap == null){
return ClockPointEnum.EMPTY;
}
String clockInTime = clockInMap.get("signdate")+ " "+clockInMap.get("signtime");
int compare = DateUtil.getTime(clockInTime).compareTo(DateUtil.getTime(clockPointDTO.getClassTime()));
if (compare == 0){
return ClockPointEnum.EQUAL;
}else if (compare > 0){
return ClockPointEnum.AFTER;
}else {
return ClockPointEnum.BEFORE;
}
}
}

@ -1,5 +1,7 @@
package com.engine.attendance.attendanceanalysis.cmd.getclockInpoint;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz.AbstractAdjustClockPointAction;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz.AdjustClockPointActionInterface;
import com.engine.attendance.attendanceanalysis.dto.clockpoint.ClockPointDTO;
import com.engine.attendance.attendanceanalysis.dto.clockpoint.ClockPointInfo;
import com.engine.attendance.enums.ClockPointEnum;
@ -18,7 +20,7 @@ import java.util.stream.Collectors;
*
*/
@Slf4j
public class MergeApairClockPoint implements AdjustClockPointAction{
public class MergeApairClockPoint extends AbstractAdjustClockPointAction {
private String analysisDate;
@Override
public List<ClockPointDTO> execute(ClockPointInfo clockPointInfo) {

@ -0,0 +1,34 @@
package com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz;
import com.engine.attendance.attendanceanalysis.dto.clockpoint.ClockPointDTO;
import com.engine.attendance.attendanceanalysis.dto.clockpoint.ClockPointInfo;
import java.util.List;
import java.util.Map;
public abstract class AbstractAdjustClockPointAction implements AdjustClockPointActionInterface{
/**
*
*/
protected String applyClasses;
/**
*
*/
protected Map<String,String> params;
public String getApplyClasses() {
return applyClasses;
}
public void setApplyClasses(String applyClasses) {
this.applyClasses = applyClasses;
}
public Map<String, String> getParams() {
return params;
}
public void setParams(Map<String, String> params) {
this.params = params;
}
}

@ -1,4 +1,4 @@
package com.engine.attendance.attendanceanalysis.cmd.getclockInpoint;
package com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz;
import com.engine.attendance.attendanceanalysis.dto.clockpoint.ClockPointDTO;
@ -6,6 +6,7 @@ import com.engine.attendance.attendanceanalysis.dto.clockpoint.ClockPointInfo;
import java.util.List;
public interface AdjustClockPointAction {
public interface AdjustClockPointActionInterface {
List<ClockPointDTO> execute(ClockPointInfo clockPointInfo);
}

@ -2,7 +2,8 @@ package com.engine.attendance.attendanceanalysis.service.impl;
import com.engine.attendance.attendanceanalysis.cmd.*;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.AdjustByWorkOverTimeCmd;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.AdjustClockPointAction;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz.AbstractAdjustClockPointAction;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz.AdjustClockPointActionInterface;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.GetClockInPointCmd;
import com.engine.attendance.attendanceanalysis.dto.clockpoint.ClockPointDTO;
import com.engine.attendance.attendanceanalysis.dto.clockpoint.ClockPointInfo;
@ -11,10 +12,10 @@ import com.engine.attendance.component.persongroup.service.SchedulingResultsServ
import com.engine.attendance.component.persongroup.service.impl.SchedulingResultsServiceImpl;
import com.engine.attendance.enums.*;
import com.engine.common.util.DateUtil;
import com.engine.common.util.DbTools;
import com.engine.common.util.ExtensionClassHolder;
import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import weaver.general.Util;
@ -168,8 +169,17 @@ public class UtilServiceImpl extends Service implements UtilService {
ClockPointInfo clockPointInfo = ClockPointInfo.builder().analysisDate(Util.null2String(params.get("analysisDate"))).clcokInPointList(clcokInPointList)
.scheduleResult(newscheduleResult).askForLeaveAndEvctionScheduleList(askForLeaveAndEvctionScheduleList).clockInTimeList((List<Map<String, Object>>) params.get("clockInTimeList")).build();
List<AdjustClockPointAction> adjustClockPointActionList = ExtensionClassHolder.getAdjustClockPointAction();
for (AdjustClockPointAction action:adjustClockPointActionList){
List<AbstractAdjustClockPointAction> adjustClockPointActionList = ExtensionClassHolder.getAdjustClockPointAction();
for (AbstractAdjustClockPointAction action:adjustClockPointActionList){
//适用班次
String applyClass = action.getApplyClasses();
if (applyClass != null && !"".equals(applyClass) && scheduleResult.size() > 0){
String bcxx = Util.null2String(scheduleResult.get(0).get("bcxx"));
List<String> applyClassList = Lists.newArrayList(applyClass.split(","));
if (!applyClassList.contains(bcxx)){
continue;
}
}
List<ClockPointDTO> clockPointDTOS = action.execute(clockPointInfo);
clockPointInfo.setClcokInPointList(clockPointDTOS);
}

@ -44,9 +44,9 @@ public class AttendanceanalysisAction {
try {
Map<String,Object> paramMap = ParamUtil.request2Map(request);
// Map<String,Object> paramMap = Maps.newHashMap();
// paramMap.put("startDate","2024-04-10");
// paramMap.put("endDate","2024-04-10");
// paramMap.put("userIds","23");
// paramMap.put("startDate","2024-06-20");
// paramMap.put("endDate","2024-06-20");
// paramMap.put("userIds","81");
String startDate = Util.null2String(paramMap.get("startDate"));
String startBeforeDate = DateUtil.beforeDay(startDate,2);

@ -218,6 +218,8 @@ public class UpdateAttendanceResultWrapper extends Service {
double hsl = Double.valueOf(Util.null2String(askForLeaveItem.get("hsl")));
//核算单位
String hsdw = Util.null2String(askForLeaveItem.get("hsdw"));
//是否分组呈现
String sffzcx = Util.null2String(askForLeaveItem.get("sffzcx"));
Map<String,Object> param = Maps.newHashMap();
param.put("abnormalClockInList",abnormalClockInList);

@ -1,6 +1,7 @@
package com.engine.attendance.attendanceplan.cmd;
import com.engine.attendance.component.persongroup.commonutil.PersongroupCommonUtil;
import com.engine.attendance.enums.CheckBoxEnum;
import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext;
import com.engine.common.util.DbTools;
@ -111,9 +112,21 @@ public class GetAttendanceItemsByPersonDataCmd extends AbstractCommonCommand<Map
sql = "select b.id keyid,b.mc kqxm,c.mc famc,b.* from uf_jcl_kq_kqfa_dt1 a left join uf_jcl_kq_kqxm b on a.kqxm=b.id left join uf_jcl_kq_kqfa c on a.mainid=c.id where mainid in ("+String.join(",",dataIds)+") and (b.xmzt is null or b.xmzt <> '0')";
if (dataIds.size() > 0){
attendanceItems.addAll(DbTools.getSqlToList(sql));
}
List<String> fatherItems = attendanceItems.stream().filter(e->Util.null2String(e.get("sffzcx")).equals(CheckBoxEnum.CHECKED.getKey())).map(e->e.get("keyid").toString()).collect(Collectors.toList());
if (fatherItems.size() > 0){
sql = "select id keyid,mc kqxm,a.* from uf_jcl_kq_kqxm a where (xmzt is null or xmzt <> '0') and a.sjxm in ("+String.join(",",fatherItems)+")";
List<Map<String,Object>> sonItemList = DbTools.getSqlToList(sql);
Map<String,List<Map<String,Object>>> sonGroupMap = sonItemList.stream().collect(Collectors.groupingBy(e->e.get("sjxm").toString()));
for (Map<String,Object> attendanceItem :attendanceItems){
if (CheckBoxEnum.CHECKED.getKey().equals(attendanceItem.get("sffzcx"))){
attendanceItem.put("sonItems",sonGroupMap.get(attendanceItem.get("keyid")));
}
}
}
resultMap.put("data",attendanceItems);
resultMap.put("total",attendanceItems.size());

@ -0,0 +1,68 @@
package com.engine.attendance.component.persongroup.cmd;
import com.engine.attendance.component.persongroup.job.scheduling.tactics.RegularScheduling;
import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext;
import com.engine.common.util.DbTools;
import com.engine.common.util.Utils;
import com.engine.core.interceptor.CommandContext;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import weaver.common.DateUtil;
import weaver.general.Util;
import java.util.List;
import java.util.Map;
@Slf4j
public class GenerateScheduleCmd extends AbstractCommonCommand<Map<String,Object>> {
public GenerateScheduleCmd(Map<String,Object> params){
this.params=params;
}
private List<RegularScheduling> rulers;
{
rulers = new Utils<RegularScheduling>().getAllClassByInterface(RegularScheduling.class);
}
@Override
public BizLogContext getLogContext() {
return null;
}
@Override
public Map<String, Object> execute(CommandContext commandContext) {
String executeDate = Util.null2String(params.get("executeDate"));
String day = Util.null2String(params.get("day"));
Map<String,Object> resultMap = Maps.newHashMap();
if (executeDate == null || "".equals(executeDate)){
executeDate = DateUtil.getCurrentDate();
}
String sql = "select * from uf_jcl_kq_glpb where edate > ? and bdate<=?";
List<Map<String,Object>> dataList = DbTools.getSqlToList(sql,executeDate,executeDate);
Map<String,String> formmodeIdMap = Utils.getFormmodeIdMap();
//规律排班模块id
String modeId = formmodeIdMap.get("uf_jcl_kq_glpb");
//排班结果模块
String formmodeid = formmodeIdMap.get("uf_pbjg");
log.debug("dataList : [{}]",dataList);
String finalExecuteDate = executeDate;
dataList.forEach(e -> {
e.put("modeId",modeId);
e.put("day",day);
e.put("formmodeid",formmodeid);
e.put("executeDate", finalExecuteDate);
String zzqlx = Util.null2String(e.get("zzqlx"));
for (RegularScheduling workOverTimeComputeRuler :rulers){
if (workOverTimeComputeRuler.support(Integer.valueOf(zzqlx))){
workOverTimeComputeRuler.compute(e);
}
}
});
resultMap.put("message","生成成功");
return resultMap;
}
}

@ -24,4 +24,12 @@ public interface SchedulingResultsService {
* @return
*/
Map<String,Object> saveScheduleResult(Map<String,Object> params);
/**
*
* @param params
* @return
*/
Map<String,Object> generateSchedule(Map<String,Object> params);
}

@ -1,5 +1,6 @@
package com.engine.attendance.component.persongroup.service.impl;
import com.engine.attendance.component.persongroup.cmd.GenerateScheduleCmd;
import com.engine.attendance.component.persongroup.cmd.GetDatatableCmd;
import com.engine.attendance.component.persongroup.cmd.GetDatatableCountCmd;
import com.engine.attendance.component.persongroup.cmd.GetDatatableRecurrenceCmd;
@ -160,4 +161,9 @@ public class SchedulingResultsServiceImpl extends Service implements SchedulingR
return null;
}
@Override
public Map<String, Object> generateSchedule(Map<String, Object> params) {
return commandExecutor.execute(new GenerateScheduleCmd(params));
}
}

@ -52,4 +52,22 @@ public class SchedulingResultsAction {
return ApiReturnTools.error("500","saveApplicableOrganization error");
}
}
/**
*
* @return
*/
@POST
@Path("/generateSchedule")
@Produces({"text/plain"})
public String generateSchedule(@Context HttpServletRequest request, @Context HttpServletResponse response) {
try {
Map<String,Object> paramMap = ParamUtil.request2Map(request);
Map<String,Object> dataMap = basicsetService.generateSchedule(paramMap);
return ApiReturnTools.success(dataMap);
}catch (Exception e){
log.error("execute fail,catch error: [{}]",e);
return ApiReturnTools.error("500","generateSchedule error");
}
}
}

@ -205,7 +205,12 @@ public class AskForLeaveWorkFlowSubmitAction implements Action {
leaveDuration = leaveDuration * 8;
}
log.info("leaveDuration : [{}]", leaveDuration);
// List<Map<String, Object>> holidayBalancefilterList = holidayBalanceList.stream().filter(e -> DateUtil.getTime(e.get("yqsxrq").toString()).compareTo(DateUtil.getTime(ksrq)) >= 0).collect(Collectors.toList());
List<Map<String, Object>> holidayBalancefilterList = Lists.newArrayList();
for (Map<String, Object> map : holidayBalanceList){
if (DateUtil.getTime(map.get("yqsxrq").toString()).compareTo(DateUtil.getTime(ksrq)) >= 0){
holidayBalancefilterList.add(map);
}
}
for (Map<String, Object> holidayBalance : holidayBalanceList) {
//额定未休时长
double wxsc = Util.null2String(holidayBalance.get("wxsc")).equals("") ? 0 : Double.valueOf(holidayBalance.get("wxsc").toString());

@ -1,24 +1,20 @@
package com.engine.common.util;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.AdjustClockPointAction;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz.AbstractAdjustClockPointAction;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz.AdjustClockPointActionInterface;
import com.engine.attendance.component.persongroup.commonutil.PersongroupCommonUtil;
import com.engine.attendance.enums.ApplicableOrganizationEnum;
import com.engine.attendance.enums.CheckBoxEnum;
import com.engine.attendance.enums.PersonGroupListTypeEnum;
import com.engine.common.exception.AttendanceRunTimeException;
import com.google.common.collect.Maps;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import lombok.extern.slf4j.Slf4j;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.hrm.company.DepartmentComInfo;
import weaver.hrm.company.SubCompanyComInfo;
import weaver.soa.workflow.request.*;
import java.sql.Date;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.util.*;
import java.util.stream.Collectors;
@ -748,15 +744,27 @@ public class CommonUtil {
*
*/
public static void initExtensionClassHolder(){
String sql = "select jkdzlwj,jkdzsxlx,zt,zhsx from uf_jcl_kq_ywdmjc a left join uf_jcl_kq_ywdmjc_dt1 b on a.id=b.mainid where a.zt=0";
String sql = "select id,jkdzlwj,jkdzsxlx,zt,zhsx,jkdzdybc from uf_jcl_kq_ywdmjc where zt=0";
List<Map<String,Object>> dataList = DbTools.getSqlToList(sql);
sql = "select a.id,b.csmc,b.csz from uf_jcl_kq_ywdmjc a left join uf_jcl_kq_ywdmjc_dt1 b on a.id=b.mainid where a.zt=0";
Map<String,List<Map<String,Object>>> detailDataGroupMap = DbTools.getSqlToList(sql).stream().collect(Collectors.groupingBy(e->e.get("id").toString()));
try {
//打卡卡点扩展类
List<AdjustClockPointAction> adjustClockPointAction = Lists.newArrayList();
List<AbstractAdjustClockPointAction> adjustClockPointAction = Lists.newArrayList();
List<Map<String,Object>> adjustClockPointActionResultList = dataList.stream().filter(e->"0".equals(e.get("jkdzsxlx"))).sorted(Comparator.comparing(e->Integer.valueOf(e.get("zhsx").toString()))).collect(Collectors.toList());
for (Map<String,Object> adjustClockPointActionMap:adjustClockPointActionResultList){
String classPath = adjustClockPointActionMap.get("jkdzlwj").toString();
AdjustClockPointAction action = (AdjustClockPointAction)Class.forName(classPath).newInstance();
AbstractAdjustClockPointAction action = (AbstractAdjustClockPointAction)Class.forName(classPath).newInstance();
action.setApplyClasses(Util.null2String(adjustClockPointActionMap.get("jkdzdybc")));
List<Map<String,Object>> detailDataList = detailDataGroupMap.get(adjustClockPointActionMap.get("id"));
if (detailDataList != null && detailDataList.size() > 0){
Map<String,String> paramMap = Maps.newHashMap();
for (Map<String,Object> detailData:detailDataList){
paramMap.put(Util.null2String(detailData.get("csmc")),Util.null2String(detailData.get("csz")));
}
action.setParams(paramMap);
}
adjustClockPointAction.add(action);
}
ExtensionClassHolder.setAdjustClockPointAction(adjustClockPointAction);

@ -1,6 +1,7 @@
package com.engine.common.util;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.AdjustClockPointAction;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz.AbstractAdjustClockPointAction;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz.AdjustClockPointActionInterface;
import java.util.List;
@ -11,13 +12,13 @@ public class ExtensionClassHolder {
/**
*
*/
private static ThreadLocal<List<AdjustClockPointAction>> adjustClockPointActionThreadLocal = new ThreadLocal<>();
private static ThreadLocal<List<AbstractAdjustClockPointAction>> adjustClockPointActionThreadLocal = new ThreadLocal<>();
public static void setAdjustClockPointAction(List<AdjustClockPointAction> adjustClockPointActionList) {
public static void setAdjustClockPointAction(List<AbstractAdjustClockPointAction> adjustClockPointActionList) {
adjustClockPointActionThreadLocal.set(adjustClockPointActionList);
}
public static List<AdjustClockPointAction> getAdjustClockPointAction() {
public static List<AbstractAdjustClockPointAction> getAdjustClockPointAction() {
return adjustClockPointActionThreadLocal.get();
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -15,7 +15,7 @@ import java.util.stream.Collectors;
public class Test {
public static void main(String[] args) {
System.out.println(UUID.randomUUID().toString());
// List<Integer> list = Lists.newArrayList();
// aa(list);
// System.out.println(list);

@ -6,6 +6,7 @@ import com.engine.attendance.component.calendarscheduling.service.WorkRulesServi
import com.engine.attendance.component.calendarscheduling.service.impl.WorkRulesServiceImpl;
import com.engine.attendance.component.calendarscheduling.web.WorkRulesController;
import com.engine.common.util.DateUtil;
import com.engine.common.util.DbTools;
import com.engine.common.util.ServiceUtil;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
@ -14,6 +15,7 @@ import weaver.hrm.company.SubCompanyComInfo;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class
@ -63,11 +65,9 @@ Test extends beforlog{
}
@org.junit.Test
public void testRealse3() throws Exception{
for (int i=0;i<3;i++){
System.out.println(i);
List<Map<String,Object>> sonItemList = Lists.newArrayList();
Map<String,List<Map<String,Object>>> sonGroupMap = sonItemList.stream().collect(Collectors.groupingBy(e->e.get("sjxm").toString()));
i=i+1;
}
}
}

@ -1,13 +1,15 @@
package TestAttendanceAllowance;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.AdjustClockPointAction;
import com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.biz.AdjustClockPointActionInterface;
import com.google.common.collect.Lists;
import java.util.List;
public class Test2 {
@org.junit.Test
public void testAnalysis() throws Exception{
AdjustClockPointAction action = (AdjustClockPointAction)Class.forName("com.engine.attendance.attendanceanalysis.cmd.getclockInpoint.MergeApairClockPoint").newInstance();
action.execute(null);
String str = "11,22,33,44";
List<String> applyClassList = Lists.newArrayList(str.split(","));
System.out.println(applyClassList.contains("13"));
}
}

@ -1,9 +1,9 @@
import com.engine.common.util.DateUtil;
import com.engine.common.util.Utils;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import weaver.common.DateUtil;
import java.time.ZoneOffset;
import java.util.Comparator;
@ -14,35 +14,6 @@ import java.util.stream.Collectors;
public class TestMethod {
public static void main(String[] args) {
// List<Map<String,Object>> detailTableData = Lists.newArrayList();
// detailTableData.add(new HashMap(){{
// put("ksrq","2024-02-18");
// put("sysc","1");
// }});
// detailTableData.add(new HashMap(){{
// put("ksrq","2024-01-18");
// put("sysc","1");
// }});
//
// detailTableData = detailTableData.stream().sorted(Comparator.comparing(e-> DateUtil.getTime(e.get("ksrq").toString()).toInstant(ZoneOffset.of("+8")).toEpochMilli())).collect(Collectors.toList());
// System.out.println(detailTableData);
List<Map<String,Object>> list = Lists.newArrayList();
Map<String,Object> map1 = Maps.newHashMap();
map1.put("ksrq","2024-04-20");
Map<String,Object> map2 = Maps.newHashMap();
map2.put("ksrq","2024-04-21");
Map<String,Object> map3 = Maps.newHashMap();
map3.put("ksrq","2024-04-15");
Map<String,Object> map4 = Maps.newHashMap();
map4.put("ksrq","2024-04-14");
list.add(map1);
list.add(map2);
list.add(map3);
list.add(map4);
list = list.stream().sorted(Comparator.comparing(e->DateUtil.getTime(e.get("ksrq").toString()).toInstant(ZoneOffset.of("+8")).toEpochMilli())).collect(Collectors.toList());
// System.out.println(DateUtil.getTime("2024-04-14").toInstant(ZoneOffset.of("+8")).toEpochMilli());
System.out.println(list);
System.out.println(DateUtil.getDateTime());
}
}

@ -28,8 +28,12 @@ import java.util.stream.Collectors;
public class TestObj {
public static void main(String[] args) throws Exception{
System.out.println(aa());
List<String> list = Lists.newArrayList();
list.add("1");
list.add("2");
list.add("3");
list= list.subList(0,2);
System.out.println(list);
}

Loading…
Cancel
Save