浮动薪酬增加义务人

This commit is contained in:
Harryxzy 2024-08-12 17:21:11 +08:00
parent a0dff5780a
commit 2e7657eb23
1 changed files with 23 additions and 8 deletions

View File

@ -9,13 +9,11 @@ import com.engine.salary.entity.datacollection.param.VariableItemSaveParam;
import com.engine.salary.entity.datacollection.po.VariableItemPO;
import com.engine.salary.entity.salaryformula.po.FormulaPO;
import com.engine.salary.entity.salaryformula.po.FormulaVar;
import com.engine.salary.entity.taxagent.po.TaxAgentPO;
import com.engine.salary.enums.salaryitem.SalaryDataTypeEnum;
import com.engine.salary.exception.SalaryRunTimeException;
import com.engine.salary.mapper.datacollection.VariableItemMapper;
import com.engine.salary.service.SalaryFormulaService;
import com.engine.salary.service.SalaryItemService;
import com.engine.salary.service.VariableArchiveItemService;
import com.engine.salary.service.VariableItemService;
import com.engine.salary.service.*;
import com.engine.salary.util.SalaryEntityUtil;
import com.engine.salary.util.SalaryI18nUtil;
import com.engine.salary.util.db.MapperProxyFactory;
@ -24,16 +22,14 @@ import com.engine.salary.util.page.SalaryPageUtil;
import com.engine.salary.util.valid.RuntimeTypeEnum;
import com.engine.salary.util.valid.ValidUtil;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.BooleanUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.math.NumberUtils;
import org.springframework.beans.BeanUtils;
import weaver.conn.util.IdGenerator;
import weaver.hrm.User;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -60,6 +56,11 @@ public class VariableItemServiceImpl extends Service implements VariableItemServ
return ServiceUtil.getService(VariableArchiveItemServiceImpl.class, user);
}
private TaxAgentService getTaxAgentService(User user) {
return ServiceUtil.getService(TaxAgentServiceImpl.class, user);
}
@Override
public VariableItemPO getById(Long id) {
if (id == null) {
@ -94,6 +95,20 @@ public class VariableItemServiceImpl extends Service implements VariableItemServ
@Override
public PageInfo<VariableItemListDTO> listPage(VariableItemQueryParam queryParam) {
List<VariableItemPO> variableItemPOS = listAll();
Long employeeId = Long.valueOf(user.getUID());
// 判断是否是总管理员
Boolean isChief = getTaxAgentService(user).isChief(employeeId);
// 是否开启分权
Boolean openDevolution = getTaxAgentService(user).isOpenDevolution();
if (BooleanUtils.isTrue(openDevolution) && !isChief) {
Collection<TaxAgentPO> taxAgentPOS = getTaxAgentService(user).listAllTaxAgentsAsAdmin(employeeId);
List<Long> taxAgentIds = taxAgentPOS.stream().map(TaxAgentPO::getId).collect(Collectors.toList());
if (CollectionUtils.isEmpty(taxAgentIds)) {
// 无权限
return new PageInfo<>();
}
}
if (StringUtils.isNotBlank(queryParam.getItemName())) {
variableItemPOS = variableItemPOS.stream().filter(po -> po.getName().contains(queryParam.getItemName())).collect(Collectors.toList());
}