diff --git a/src/com/engine/salary/constant/des.json b/src/com/engine/salary/constant/des.json index f82a626bd..0b35d5f80 100644 --- a/src/com/engine/salary/constant/des.json +++ b/src/com/engine/salary/constant/des.json @@ -399,7 +399,7 @@ "name": "IDCARD", "chineseName": "身份证函数", "description": "从身份证号码中获取相关信息,比如:生日(BD)、年龄(AGE)、籍贯(NA)、性别(GENDER)。", - "example": "IDCARD( ‘43070319980706334X’ , ‘BD’ )", + "example": "IDCARD( ‘******19980706****’ , ‘BD’ )", "result": "'1998-07-06'", "paramDescs": [ "*身份证号码*(必选)", diff --git a/src/com/engine/salary/formlua/constant/FormluaConstant.java b/src/com/engine/salary/formlua/constant/FormluaConstant.java index 4cce5e978..c3d7f4cb7 100644 --- a/src/com/engine/salary/formlua/constant/FormluaConstant.java +++ b/src/com/engine/salary/formlua/constant/FormluaConstant.java @@ -404,7 +404,7 @@ public class FormluaConstant { " \"name\": \"IDCARD\",\n" + " \"chineseName\": \"身份证函数\",\n" + " \"description\": \"从身份证号码中获取相关信息,比如:生日(BD)、年龄(AGE)、籍贯(NA)、性别(GENDER)。\",\n" + - " \"example\": \"IDCARD( ‘43070319980706334X’ , ‘BD’ )\",\n" + + " \"example\": \"IDCARD( ‘******19980706****’ , ‘BD’ )\",\n" + " \"result\": \"'1998-07-06'\",\n" + " \"paramDescs\": [\n" + " \"*身份证号码*(必选)\",\n" + diff --git a/src/com/engine/salary/formlua/entity/parameter/FuncDescUtil.java b/src/com/engine/salary/formlua/entity/parameter/FuncDescUtil.java index 666135c26..83d0a2c81 100644 --- a/src/com/engine/salary/formlua/entity/parameter/FuncDescUtil.java +++ b/src/com/engine/salary/formlua/entity/parameter/FuncDescUtil.java @@ -3,7 +3,6 @@ package com.engine.salary.formlua.entity.parameter; import com.engine.salary.util.SalaryI18nUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Component; import java.util.HashMap; import java.util.Map; @@ -74,7 +73,7 @@ public class FuncDescUtil { funcMap.put("RIGHT", SalaryI18nUtil.getI18nLabel(97740, "从文本右侧开始,返回指定字符数的文字。示例:
RIGHT('大家好', 2) 结果: '家好'")); funcMap.put("MID", SalaryI18nUtil.getI18nLabel(97741, "从文本指定位置之后开始,返回指定字符数的文字。示例:
MID('大家好', 2, 1) 结果: '家'")); funcMap.put("ISEMPTY", SalaryI18nUtil.getI18nLabel(97742, "变量为空或未填写,则返回真。示例:
ISEMPTY({员工表.电话})")); - funcMap.put("IDCARD", SalaryI18nUtil.getI18nLabel(97743, "从身份证号码中获取相关信息,比如:生日(BD)、年龄(AGE)、籍贯(NA)、性别(GENDER)。示例:
IDCARD( ‘43070319980706334X’ , ‘BD’ ) 结果: '1998-07-06'")); + funcMap.put("IDCARD", SalaryI18nUtil.getI18nLabel(97743, "从身份证号码中获取相关信息,比如:生日(BD)、年龄(AGE)、籍贯(NA)、性别(GENDER)。示例:
IDCARD( ‘******19980706****’ , ‘BD’ ) 结果: '1998-07-06'")); funcMap.put("SCORE", SalaryI18nUtil.getI18nLabel(97744, "获取选项型控件(单选框、复选框、下拉菜单)分数。示例:SCORE({当前数据.单选框}) 结果:选项分数
注:未设置选项分数时,结果为0")); funcMap.put("SUBSTRING", SalaryI18nUtil.getI18nLabel(97745, "字符截取函数,用于按起始位置截取字符。
示例:SUBSTRING('abcdefg',2,3)
结果:bc")); funcMap.put("SUBSTITUE", SalaryI18nUtil.getI18nLabel(97746, "字符查找替换函数,替换字符中的所有关键词为新字符。
示例:SUBSTITUE('泛微移动办公','泛微','eteams')
结果:eteams移动办公")); diff --git a/src/com/engine/salary/service/impl/TaxAgentServiceImpl.java b/src/com/engine/salary/service/impl/TaxAgentServiceImpl.java index 2bcc88ee3..82df30446 100644 --- a/src/com/engine/salary/service/impl/TaxAgentServiceImpl.java +++ b/src/com/engine/salary/service/impl/TaxAgentServiceImpl.java @@ -669,8 +669,6 @@ public class TaxAgentServiceImpl extends Service implements TaxAgentService { } List taxAgentIds = allTaxAgents.stream().map(TaxAgentPO::getId).collect(Collectors.toList()); - List employees = getSalaryEmployeeService(user).listEmployee(); - List allEmployees = convert2TaxAgentEmployeePO(employees); if (employeeStatus != null) { List personnelStatusList; // 查询人员状态 @@ -683,7 +681,7 @@ public class TaxAgentServiceImpl extends Service implements TaxAgentService { // 是否开启分权 if (!isOpenDevolution() || isChief(employeeId)) { - return getTaxAgentEmp(allTaxAgents, taxAgentIds, allEmployees); + return getTaxAgentEmp(allTaxAgents, taxAgentIds); } // 1.判断自己是否是管理员, 如果是管理员,就是能够操作所属个税扣缴义务人下的所有人的数据 @@ -692,7 +690,7 @@ public class TaxAgentServiceImpl extends Service implements TaxAgentService { List adminTaxAgentIds = taxAgentAdminList.stream().map(TaxAgentAdminPO::getTaxAgentId).collect(Collectors.toList()); if (CollectionUtils.isNotEmpty(adminTaxAgentIds)) { - taxAgentManageRangeEmployeeList.addAll(getTaxAgentEmp(allTaxAgents, adminTaxAgentIds, allEmployees)); + taxAgentManageRangeEmployeeList.addAll(getTaxAgentEmp(allTaxAgents, adminTaxAgentIds)); } return taxAgentManageRangeEmployeeList; @@ -708,9 +706,7 @@ public class TaxAgentServiceImpl extends Service implements TaxAgentService { return taxAgentManageRangeEmployeeList; } List taxAgentIds = allTaxAgents.stream().map(TaxAgentPO::getId).collect(Collectors.toList()); - List employees = getSalaryEmployeeService(user).listEmployee(); - List allEmployees = convert2TaxAgentEmployeePO(employees); - taxAgentManageRangeEmployeeList.addAll(getTaxAgentEmp(allTaxAgents, taxAgentIds, allEmployees)); + taxAgentManageRangeEmployeeList.addAll(getTaxAgentEmp(allTaxAgents, taxAgentIds)); return taxAgentManageRangeEmployeeList; } @@ -724,54 +720,17 @@ public class TaxAgentServiceImpl extends Service implements TaxAgentService { } List taxAgentIds = allTaxAgents.stream().map(TaxAgentPO::getId).collect(Collectors.toList()); - List employees = getSalaryEmployeeService(user).listEmployee(); - List allEmployees = convert2TaxAgentEmployeePO(employees); // 1.判断自己是否是管理员, 如果是管理员,就是能够操作所属个税扣缴义务人下的所有人的数据 List taxAgentAdminList = getTaxAgentAdminService(user).listByTaxAgentIdsAndEmployeeId(taxAgentIds, (long) user.getUID()); // 是管理员的列表 List adminTaxAgentIds = taxAgentAdminList.stream().map(TaxAgentAdminPO::getTaxAgentId).collect(Collectors.toList()); - taxAgentManageRangeEmployeeList.addAll(getTaxAgentEmp(allTaxAgents, adminTaxAgentIds, allEmployees)); + taxAgentManageRangeEmployeeList.addAll(getTaxAgentEmp(allTaxAgents, adminTaxAgentIds)); taxAgentManageRangeEmployeeList = taxAgentManageRangeEmployeeList.stream().distinct().collect(Collectors.toList()); return taxAgentManageRangeEmployeeList; } - /** - * 获取分管理员的关联人员 - * - * @param allTaxAgents - * @param noAdminTaxAgentIds - * @param allEmployees - * @return - */ - private List getTaxAgentSubAdminEmp(List allTaxAgents, List noAdminTaxAgentIds, List allEmployees) { - List taxAgentManageRangeEmployeeList = Lists.newArrayList(); - List taxAgentEmps = taxAgentSubAdminEmpService.listByTaxAgentIds(noAdminTaxAgentIds); - - taxAgentEmps = taxAgentEmps.stream().filter(f -> allEmployees.stream().anyMatch(e -> e.getEmployeeId().equals(f.getEmployeeId()))).collect(Collectors.toList()); - - List finalTaxAgentEmps = taxAgentEmps; - noAdminTaxAgentIds.forEach(e -> { - Optional optionalTaxAgent = allTaxAgents.stream().filter(t -> t.getId().equals(e)).findFirst(); - String taxAgentName = (optionalTaxAgent.isPresent() ? optionalTaxAgent.get().getName() : ""); - List taxAgentEmployees = finalTaxAgentEmps.stream().filter(f -> f.getTaxAgentId().equals(e)).map(m -> { - TaxAgentManageRangeEmployeeDTO.TaxAgentEmployee taxAgentEmployee = new TaxAgentManageRangeEmployeeDTO.TaxAgentEmployee(); - taxAgentEmployee.setEmployeeId(m.getEmployeeId()); - taxAgentEmployee.setUsername(m.getEmployeeName()); - return taxAgentEmployee; - }).collect(Collectors.toList()); - taxAgentManageRangeEmployeeList.add( - TaxAgentManageRangeEmployeeDTO.builder() - .taxAgentId(e) - .taxAgentName(taxAgentName) - .employeeList(taxAgentEmployees) - .build() - ); - }); - return taxAgentManageRangeEmployeeList; - } - /** * 获取个税口角义务人的关联人员 * @@ -779,17 +738,13 @@ public class TaxAgentServiceImpl extends Service implements TaxAgentService { * @param taxAgentIds * @return */ - private List getTaxAgentEmp(List allTaxAgents, List taxAgentIds, List allEmployees) { + private List getTaxAgentEmp(List allTaxAgents, List taxAgentIds) { List taxAgentManageRangeEmployeeList = Lists.newArrayList(); List taxAgentEmps = getTaxAgentEmpService(user).listByTaxAgentIds(taxAgentIds, UseEmployeeTypeEnum.ALL); - - taxAgentEmps = taxAgentEmps.stream().filter(f -> allEmployees.stream().anyMatch(e -> e.getEmployeeId().equals(f.getEmployeeId()))).collect(Collectors.toList()); - - List finalTaxAgentEmps = taxAgentEmps; taxAgentIds.forEach(e -> { Optional optionalTaxAgent = allTaxAgents.stream().filter(t -> t.getId().equals(e)).findFirst(); String taxAgentName = (optionalTaxAgent.isPresent() ? optionalTaxAgent.get().getName() : ""); - List taxAgentEmployees = finalTaxAgentEmps.stream().filter(f -> f.getTaxAgentId().equals(e)).map(m -> { + List taxAgentEmployees = taxAgentEmps.stream().filter(f -> f.getTaxAgentId().equals(e)).map(m -> { TaxAgentManageRangeEmployeeDTO.TaxAgentEmployee taxAgentEmployee = new TaxAgentManageRangeEmployeeDTO.TaxAgentEmployee(); taxAgentEmployee.setEmployeeId(m.getEmployeeId()); taxAgentEmployee.setUsername(m.getEmployeeName());