Merge branch 'release/2.15.1.2407.01' into feature/权限

This commit is contained in:
钱涛 2024-08-26 11:11:31 +08:00
commit a2db71d403
3 changed files with 81 additions and 392 deletions

View File

@ -48,7 +48,6 @@ public class SalaryAcctEmployeeQueryParam extends BaseQueryParam {
* 状态
* @see SalaryEmployeeStatusEnum
*/
private SalaryEmployeeStatusEnum status;
//状态(多选)
private List<String> statuses;

View File

@ -573,13 +573,34 @@
<if test="param.taxAgentId != null">
AND t.tax_agent_id = #{param.taxAgentId}
</if>
-- 分部
<if test="param.subcompanyIds != null and param.subcompanyIds.size()>0">
AND t.subcompany_id IN
<foreach collection="param.subcompanyIds" open="(" item="subcompanyId" separator="," close=")">
#{subcompanyId}
</foreach>
</if>
-- 部门
<if test="param.departmentIds != null and param.departmentIds.size()>0">
AND t.department_id IN
<foreach collection="param.departmentIds" open="(" item="departmentId" separator="," close=")">
#{departmentId}
</foreach>
</if>
<if test="param.positionIds != null and param.positionIds.size()>0">
AND t.jobtitle_id IN
<foreach collection="param.positionIds" open="(" item="positionId" separator="," close=")">
#{positionId}
</foreach>
</if>
<if test="param.statuses != null and param.statuses.size()>0">
AND t.status IN
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
#{userStatus}
</foreach>
</if>
<if test="(param.employeeName != null and param.employeeName != '')
or (param.workcode != null and param.workcode != '')
or (param.subcompanyIds != null and param.subcompanyIds.size()>0)
or (param.departmentIds != null and param.departmentIds.size()>0)
or (param.positionIds != null and param.positionIds.size()>0)
or (param.statuses != null and param.statuses.size()>0)
or (param.status != null and param.status.toString != 'ALL')">
or (param.workcode != null and param.workcode != '')">
AND t.employee_id IN
(
SELECT id FROM hrmresource em WHERE em.status not in (7)
@ -590,68 +611,6 @@
<if test="param.workcode != null and param.workcode != ''">
AND em.workcode like CONCAT('%',#{param.workcode},'%')
</if>
-- 分部
<if test="param.subcompanyIds != null and param.subcompanyIds.size()>0">
AND em.subcompanyid1 IN
<foreach collection="param.subcompanyIds" open="(" item="subcompanyId" separator="," close=")">
#{subcompanyId}
</foreach>
</if>
-- 部门
<if test="param.departmentIds != null and param.departmentIds.size()>0">
AND em.departmentid IN
<foreach collection="param.departmentIds" open="(" item="departmentId" separator="," close=")">
#{departmentId}
</foreach>
</if>
<if test="param.positionIds != null and param.positionIds.size()>0">
AND em.jobtitle IN
<foreach collection="param.positionIds" open="(" item="positionId" separator="," close=")">
#{positionId}
</foreach>
</if>
<if test="param.statuses != null and param.statuses.size()>0">
AND em.status IN
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
#{userStatus}
</foreach>
</if>
-- 在职
<if test="param.status != null and param.status.toString == 'NORMAL'">
AND em.status in (0,1,2,3)
</if>
-- 离职(解雇,离职,退休)
<if test="param.status != null and param.status.toString == 'UNAVAILABLE'">
AND em.status in (4,5,6)
</if>
-- 试用
<if test="param.status != null and param.status.toString == 'TRIAL'">
AND em.status in (0)
</if>
-- 正式
<if test="param.status != null and param.status.toString == 'FORMAL'">
AND em.status in (1)
</if>
-- 临时
<if test="param.status != null and param.status.toString == 'TEMPORARY'">
AND em.status in (2)
</if>
-- 试用延期
<if test="param.status != null and param.status.toString == 'DELAY'">
AND em.status in (3)
</if>
-- 解雇
<if test="param.status != null and param.status.toString == 'FIRE'">
AND em.status in (4)
</if>
-- 离职
<if test="param.status != null and param.status.toString == 'DEPARTURE'">
AND em.status in (5)
</if>
-- 退休
<if test="param.status != null and param.status.toString == 'RETIRED'">
AND em.status in (6)
</if>
union all
@ -662,68 +621,6 @@
<if test="param.workcode != null and param.workcode != ''">
AND extem.workcode like CONCAT('%',#{param.workcode},'%')
</if>
-- 分部
<if test="param.subcompanyIds != null and param.subcompanyIds.size()>0">
AND extem.subcompany_id IN
<foreach collection="param.subcompanyIds" open="(" item="subcompanyId" separator="," close=")">
#{subcompanyId}
</foreach>
</if>
-- 部门
<if test="param.departmentIds != null and param.departmentIds.size()>0">
AND extem.department_id IN
<foreach collection="param.departmentIds" open="(" item="departmentId" separator="," close=")">
#{departmentId}
</foreach>
</if>
<if test="param.positionIds != null and param.positionIds.size()>0">
AND extem.jobtitle_id IN
<foreach collection="param.positionIds" open="(" item="positionId" separator="," close=")">
#{positionId}
</foreach>
</if>
<if test="param.statuses != null and param.statuses.size()>0">
AND extem.status IN
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
#{userStatus}
</foreach>
</if>
-- 在职
<if test="param.status != null and param.status.toString == 'NORMAL'">
AND extem.status in (0,1,2,3)
</if>
-- 离职(解雇,离职,退休)
<if test="param.status != null and param.status.toString == 'UNAVAILABLE'">
AND extem.status in (4,5,6)
</if>
-- 试用
<if test="param.status != null and param.status.toString == 'TRIAL'">
AND extem.status in (0)
</if>
-- 正式
<if test="param.status != null and param.status.toString == 'FORMAL'">
AND extem.status in (1)
</if>
-- 临时
<if test="param.status != null and param.status.toString == 'TEMPORARY'">
AND extem.status in (2)
</if>
-- 试用延期
<if test="param.status != null and param.status.toString == 'DELAY'">
AND extem.status in (3)
</if>
-- 解雇
<if test="param.status != null and param.status.toString == 'FIRE'">
AND extem.status in (4)
</if>
-- 离职
<if test="param.status != null and param.status.toString == 'DEPARTURE'">
AND extem.status in (5)
</if>
-- 退休
<if test="param.status != null and param.status.toString == 'RETIRED'">
AND extem.status in (6)
</if>
)
</if>
</sql>
@ -737,13 +634,34 @@
<if test="param.taxAgentId != null">
AND t.tax_agent_id = #{param.taxAgentId}
</if>
-- 分部
<if test="param.subcompanyIds != null and param.subcompanyIds.size()>0">
AND t.subcompany_id IN
<foreach collection="param.subcompanyIds" open="(" item="subcompanyId" separator="," close=")">
#{subcompanyId}
</foreach>
</if>
-- 部门
<if test="param.departmentIds != null and param.departmentIds.size()>0">
AND t.department_id IN
<foreach collection="param.departmentIds" open="(" item="departmentId" separator="," close=")">
#{departmentId}
</foreach>
</if>
<if test="param.positionIds != null and param.positionIds.size()>0">
AND t.jobtitle_id IN
<foreach collection="param.positionIds" open="(" item="positionId" separator="," close=")">
#{positionId}
</foreach>
</if>
<if test="param.statuses != null and param.statuses.size()>0">
AND t.status IN
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
#{userStatus}
</foreach>
</if>
<if test="(param.employeeName != null and param.employeeName != '')
or (param.workcode != null and param.workcode != '')
or (param.subcompanyIds != null and param.subcompanyIds.size()>0)
or (param.departmentIds != null and param.departmentIds.size()>0)
or (param.positionIds != null and param.positionIds.size()>0)
or (param.statuses != null and param.statuses.size()>0)
or (param.status != null and param.status.toString != 'ALL')">
or (param.workcode != null and param.workcode != '')">
AND t.employee_id IN
(
SELECT id FROM hrmresource em WHERE em.status not in (7)
@ -754,69 +672,7 @@
<if test="param.workcode != null and param.workcode != ''">
AND em.workcode like '%'||#{param.workcode}||'%'
</if>
<if test="param.subcompanyIds != null and param.subcompanyIds.size()>0">
AND em.subcompanyid1 IN
<foreach collection="param.subcompanyIds" open="(" item="subcompanyId" separator="," close=")">
#{subcompanyId}
</foreach>
</if>
<if test="param.departmentIds != null and param.departmentIds.size()>0">
AND em.departmentid IN
<foreach collection="param.departmentIds" open="(" item="departmentId" separator="," close=")">
#{departmentId}
</foreach>
</if>
<if test="param.positionIds != null and param.positionIds.size()>0">
AND em.jobtitle IN
<foreach collection="param.positionIds" open="(" item="positionId" separator="," close=")">
#{positionId}
</foreach>
</if>
<if test="param.statuses != null and param.statuses.size()>0">
AND em.status IN
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
#{userStatus}
</foreach>
</if>
-- 在职
<if test="param.status != null and param.status.toString == 'NORMAL'">
AND em.status in (0,1,2,3)
</if>
-- 离职(解雇,离职,退休)
<if test="param.status != null and param.status.toString == 'UNAVAILABLE'">
AND em.status in (4,5,6)
</if>
-- 试用
<if test="param.status != null and param.status.toString == 'TRIAL'">
AND em.status in (0)
</if>
-- 正式
<if test="param.status != null and param.status.toString == 'FORMAL'">
AND em.status in (1)
</if>
-- 临时
<if test="param.status != null and param.status.toString == 'TEMPORARY'">
AND em.status in (2)
</if>
-- 试用延期
<if test="param.status != null and param.status.toString == 'DELAY'">
AND em.status in (3)
</if>
-- 解雇
<if test="param.status != null and param.status.toString == 'FIRE'">
AND em.status in (4)
</if>
-- 离职
<if test="param.status != null and param.status.toString == 'DEPARTURE'">
AND em.status in (5)
</if>
-- 退休
<if test="param.status != null and param.status.toString == 'RETIRED'">
AND em.status in (6)
</if>
union all
SELECT id FROM hrsa_external_employee extem WHERE extem.status not in (7)
<if test="param.employeeName != null and param.employeeName != ''">
AND extem.username LIKE '%'||#{param.employeeName}||'%'
@ -824,66 +680,6 @@
<if test="param.workcode != null and param.workcode != ''">
AND extem.workcode like '%'||#{param.workcode}||'%'
</if>
<if test="param.subcompanyIds != null and param.subcompanyIds.size()>0">
AND extem.subcompany_id IN
<foreach collection="param.subcompanyIds" open="(" item="subcompanyId" separator="," close=")">
#{subcompanyId}
</foreach>
</if>
<if test="param.departmentIds != null and param.departmentIds.size()>0">
AND extem.department_id IN
<foreach collection="param.departmentIds" open="(" item="departmentId" separator="," close=")">
#{departmentId}
</foreach>
</if>
<if test="param.positionIds != null and param.positionIds.size()>0">
AND extem.jobtitle_id IN
<foreach collection="param.positionIds" open="(" item="positionId" separator="," close=")">
#{positionId}
</foreach>
</if>
<if test="param.statuses != null and param.statuses.size()>0">
AND extem.status IN
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
#{userStatus}
</foreach>
</if>
-- 在职
<if test="param.status != null and param.status.toString == 'NORMAL'">
AND extem.status in (0,1,2,3)
</if>
-- 离职(解雇,离职,退休)
<if test="param.status != null and param.status.toString == 'UNAVAILABLE'">
AND extem.status in (4,5,6)
</if>
-- 试用
<if test="param.status != null and param.status.toString == 'TRIAL'">
AND extem.status in (0)
</if>
-- 正式
<if test="param.status != null and param.status.toString == 'FORMAL'">
AND extem.status in (1)
</if>
-- 临时
<if test="param.status != null and param.status.toString == 'TEMPORARY'">
AND extem.status in (2)
</if>
-- 试用延期
<if test="param.status != null and param.status.toString == 'DELAY'">
AND extem.status in (3)
</if>
-- 解雇
<if test="param.status != null and param.status.toString == 'FIRE'">
AND extem.status in (4)
</if>
-- 离职
<if test="param.status != null and param.status.toString == 'DEPARTURE'">
AND extem.status in (5)
</if>
-- 退休
<if test="param.status != null and param.status.toString == 'RETIRED'">
AND extem.status in (6)
</if>
)
</if>
</sql>
@ -897,13 +693,34 @@
<if test="param.taxAgentId != null">
AND t.tax_agent_id = #{param.taxAgentId}
</if>
-- 分部
<if test="param.subcompanyIds != null and param.subcompanyIds.size()>0">
AND t.subcompany_id IN
<foreach collection="param.subcompanyIds" open="(" item="subcompanyId" separator="," close=")">
#{subcompanyId}
</foreach>
</if>
-- 部门
<if test="param.departmentIds != null and param.departmentIds.size()>0">
AND t.department_id IN
<foreach collection="param.departmentIds" open="(" item="departmentId" separator="," close=")">
#{departmentId}
</foreach>
</if>
<if test="param.positionIds != null and param.positionIds.size()>0">
AND t.jobtitle_id IN
<foreach collection="param.positionIds" open="(" item="positionId" separator="," close=")">
#{positionId}
</foreach>
</if>
<if test="param.statuses != null and param.statuses.size()>0">
AND t.status IN
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
#{userStatus}
</foreach>
</if>
<if test="(param.employeeName != null and param.employeeName != '')
or (param.workcode != null and param.workcode != '')
or (param.subcompanyIds != null and param.subcompanyIds.size()>0)
or (param.departmentIds != null and param.departmentIds.size()>0)
or (param.positionIds != null and param.positionIds.size()>0)
or (param.statuses != null and param.statuses.size()>0)
or (param.status != null and param.status.toString != 'ALL')">
or (param.workcode != null and param.workcode != '')">
AND t.employee_id IN
(
SELECT id FROM hrmresource em WHERE em.status not in (7)
@ -914,68 +731,6 @@
<if test="param.workcode != null and param.workcode != ''">
AND em.workcode like '%'+#{param.workcode}+'%'
</if>
<if test="param.subcompanyIds != null and param.subcompanyIds.size()>0">
AND em.subcompanyid1 IN
<foreach collection="param.subcompanyIds" open="(" item="subcompanyId" separator="," close=")">
#{subcompanyId}
</foreach>
</if>
<if test="param.departmentIds != null and param.departmentIds.size()>0">
AND em.departmentid IN
<foreach collection="param.departmentIds" open="(" item="departmentId" separator="," close=")">
#{departmentId}
</foreach>
</if>
<if test="param.positionIds != null and param.positionIds.size()>0">
AND em.jobtitle IN
<foreach collection="param.positionIds" open="(" item="positionId" separator="," close=")">
#{positionId}
</foreach>
</if>
<if test="param.statuses != null and param.statuses.size()>0">
AND em.status IN
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
#{userStatus}
</foreach>
</if>
-- 在职
<if test="param.status != null and param.status.toString == 'NORMAL'">
AND em.status in (0,1,2,3)
</if>
-- 离职(解雇,离职,退休)
<if test="param.status != null and param.status.toString == 'UNAVAILABLE'">
AND em.status in (4,5,6)
</if>
-- 试用
<if test="param.status != null and param.status.toString == 'TRIAL'">
AND em.status in (0)
</if>
-- 正式
<if test="param.status != null and param.status.toString == 'FORMAL'">
AND em.status in (1)
</if>
-- 临时
<if test="param.status != null and param.status.toString == 'TEMPORARY'">
AND em.status in (2)
</if>
-- 试用延期
<if test="param.status != null and param.status.toString == 'POSTPONE'">
AND em.status in (3)
</if>
-- 解雇
<if test="param.status != null and param.status.toString == 'FIRE'">
AND em.status in (4)
</if>
-- 离职
<if test="param.status != null and param.status.toString == 'DEPARTURE'">
AND em.status in (5)
</if>
-- 退休
<if test="param.status != null and param.status.toString == 'RETIRED'">
AND em.status in (6)
</if>
union all
SELECT id FROM hrsa_external_employee extem WHERE extem.status not in (7)
@ -985,67 +740,6 @@
<if test="param.workcode != null and param.workcode != ''">
AND extem.workcode like '%'+#{param.workcode}+'%'
</if>
<if test="param.subcompanyIds != null and param.subcompanyIds.size()>0">
AND extem.subcompany_id IN
<foreach collection="param.subcompanyIds" open="(" item="subcompanyId" separator="," close=")">
#{subcompanyId}
</foreach>
</if>
<if test="param.departmentIds != null and param.departmentIds.size()>0">
AND extem.department_id IN
<foreach collection="param.departmentIds" open="(" item="departmentId" separator="," close=")">
#{departmentId}
</foreach>
</if>
<if test="param.positionIds != null and param.positionIds.size()>0">
AND extem.jobtitle_id IN
<foreach collection="param.positionIds" open="(" item="positionId" separator="," close=")">
#{positionId}
</foreach>
</if>
<if test="param.statuses != null and param.statuses.size()>0">
AND extem.status IN
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
#{userStatus}
</foreach>
</if>
-- 在职
<if test="param.status != null and param.status.toString == 'NORMAL'">
AND extem.status in (0,1,2,3)
</if>
-- 离职(解雇,离职,退休)
<if test="param.status != null and param.status.toString == 'UNAVAILABLE'">
AND extem.status in (4,5,6)
</if>
-- 试用
<if test="param.status != null and param.status.toString == 'TRIAL'">
AND extem.status in (0)
</if>
-- 正式
<if test="param.status != null and param.status.toString == 'FORMAL'">
AND extem.status in (1)
</if>
-- 临时
<if test="param.status != null and param.status.toString == 'TEMPORARY'">
AND extem.status in (2)
</if>
-- 试用延期
<if test="param.status != null and param.status.toString == 'POSTPONE'">
AND extem.status in (3)
</if>
-- 解雇
<if test="param.status != null and param.status.toString == 'FIRE'">
AND extem.status in (4)
</if>
-- 离职
<if test="param.status != null and param.status.toString == 'DEPARTURE'">
AND extem.status in (5)
</if>
-- 退休
<if test="param.status != null and param.status.toString == 'RETIRED'">
AND extem.status in (6)
</if>
)
</if>
</sql>

View File

@ -322,10 +322,6 @@ public class SalaryAcctController {
if (StringUtils.isNotBlank(positionIds)) {
param.setPositionIds(Arrays.stream(positionIds.split(",")).map(Long::valueOf).collect(Collectors.toList()));
}
String status = request.getParameter("status");
if (StringUtils.isNotBlank(status)) {
param.setStatus(SalaryEmployeeStatusEnum.parseByValue(Integer.parseInt(status)));
}
String statuses = request.getParameter("statuses");
if (StringUtils.isNotBlank(statuses)) {
param.setStatuses(Arrays.stream(statuses.split(",")).map(String::valueOf).collect(Collectors.toList()));