|
|
|
|
@ -3,6 +3,7 @@ package com.engine.salary.report.service.impl;
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
|
|
import com.engine.common.util.ServiceUtil;
|
|
|
|
|
import com.engine.core.impl.Service;
|
|
|
|
|
import com.engine.salary.cache.SalaryCacheKey;
|
|
|
|
|
import com.engine.salary.constant.SalaryDefaultTenantConstant;
|
|
|
|
|
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
|
|
|
|
|
import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
|
|
|
|
|
@ -41,6 +42,7 @@ import org.slf4j.LoggerFactory;
|
|
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
|
|
import weaver.general.Util;
|
|
|
|
|
import weaver.hrm.User;
|
|
|
|
|
import weaver.wechat.util.Utils;
|
|
|
|
|
|
|
|
|
|
import java.util.*;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
@ -95,6 +97,10 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
return ServiceUtil.getService(SalaryAcctRecordServiceImpl.class, user);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private SalaryCacheService getSalaryCacheService(User user) {
|
|
|
|
|
return ServiceUtil.getService(SalaryCacheServiceImpl.class, user);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// private ExtEmployeeService extEmployeeService;
|
|
|
|
|
//
|
|
|
|
|
// private HrmCommonEmployeeService hrmCommonEmployeeService;
|
|
|
|
|
@ -175,18 +181,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(98080, "名称不允许重复"));
|
|
|
|
|
}
|
|
|
|
|
Long id = IdGenerator.generate();
|
|
|
|
|
SalaryStatisticsReportPO poNew = SalaryStatisticsReportPO.builder()
|
|
|
|
|
.id(id)
|
|
|
|
|
.reportName(saveParam.getReportName())
|
|
|
|
|
.dimension(StringUtils.join(saveParam.getDimensionIds(), ","))
|
|
|
|
|
.createTime(now)
|
|
|
|
|
.creator((long) user.getUID())
|
|
|
|
|
.updateTime(now)
|
|
|
|
|
.deleteType(0)
|
|
|
|
|
.tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
|
|
|
|
|
.salaryStartMonth(SalaryDateUtil.getFirstDayDateOfYear(new Date()))
|
|
|
|
|
.salaryEndMonth(SalaryDateUtil.getLastDayOfYear(new Date()))
|
|
|
|
|
.build();
|
|
|
|
|
SalaryStatisticsReportPO poNew = SalaryStatisticsReportPO.builder().id(id).reportName(saveParam.getReportName()).dimension(StringUtils.join(saveParam.getDimensionIds(), ",")).createTime(now).creator((long) user.getUID()).updateTime(now).deleteType(0).tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY).salaryStartMonth(SalaryDateUtil.getFirstDayDateOfYear(new Date())).salaryEndMonth(SalaryDateUtil.getLastDayOfYear(new Date())).build();
|
|
|
|
|
getSalaryStatisticsReportMapper().insertIgnoreNull(poNew);
|
|
|
|
|
|
|
|
|
|
// 记录日志
|
|
|
|
|
@ -207,14 +202,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
if (Objects.isNull(param.getSalaryStartMonth()) || Objects.isNull(param.getSalaryEndMonth())) {
|
|
|
|
|
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100294, "薪资所属月必传"));
|
|
|
|
|
}
|
|
|
|
|
if ((CollectionUtils.isNotEmpty(param.getTaxAgent()) && param.getTaxAgent().size() > 10)
|
|
|
|
|
|| (CollectionUtils.isNotEmpty(param.getIncomeCategory()) && param.getIncomeCategory().size() > 10)
|
|
|
|
|
|| (CollectionUtils.isNotEmpty(param.getSubCompany()) && param.getSubCompany().size() > 10)
|
|
|
|
|
|| (CollectionUtils.isNotEmpty(param.getGrade()) && param.getGrade().size() > 10)
|
|
|
|
|
|| (CollectionUtils.isNotEmpty(param.getPosition()) && param.getPosition().size() > 10)
|
|
|
|
|
|| (CollectionUtils.isNotEmpty(param.getStatus()) && param.getStatus().size() > 10)
|
|
|
|
|
|| (CollectionUtils.isNotEmpty(param.getEmployee()) && param.getEmployee().size() > 10)
|
|
|
|
|
) {
|
|
|
|
|
if ((CollectionUtils.isNotEmpty(param.getTaxAgent()) && param.getTaxAgent().size() > 10) || (CollectionUtils.isNotEmpty(param.getIncomeCategory()) && param.getIncomeCategory().size() > 10) || (CollectionUtils.isNotEmpty(param.getSubCompany()) && param.getSubCompany().size() > 10) || (CollectionUtils.isNotEmpty(param.getGrade()) && param.getGrade().size() > 10) || (CollectionUtils.isNotEmpty(param.getPosition()) && param.getPosition().size() > 10) || (CollectionUtils.isNotEmpty(param.getStatus()) && param.getStatus().size() > 10) || (CollectionUtils.isNotEmpty(param.getEmployee()) && param.getEmployee().size() > 10)) {
|
|
|
|
|
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(182014, "统计数据范围条件数量过多"));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -312,8 +300,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
String resultType = "success";
|
|
|
|
|
// 单个设为定薪提示
|
|
|
|
|
if (total > 1) {
|
|
|
|
|
resultMsg = SalaryI18nUtil.getI18nLabel(134807, "成功条数") + ": " + (success) + "; "
|
|
|
|
|
+ SalaryI18nUtil.getI18nLabel(134808, "失败条数") + ": " + (total - success);
|
|
|
|
|
resultMsg = SalaryI18nUtil.getI18nLabel(134807, "成功条数") + ": " + (success) + "; " + SalaryI18nUtil.getI18nLabel(134808, "失败条数") + ": " + (total - success);
|
|
|
|
|
if ((total - success) > 0) {
|
|
|
|
|
resultType = "info";
|
|
|
|
|
}
|
|
|
|
|
@ -326,14 +313,13 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public PageInfo<Map<String, Object>> buildReportRecords(SalaryStatisticsDimensionPO dimension, SalaryStatisticsReportDataQueryParam param, SalaryStatisticsReportPO po, List<SalaryStatisticsItemPO> salaryStatisticsItemList) {
|
|
|
|
|
public PageInfo<Map<String, Object>> buildReportRecords(SalaryStatisticsDimensionPO dimension, SalaryStatisticsReportDataQueryParam param, List<SalaryStatisticsItemPO> salaryStatisticsItemList) {
|
|
|
|
|
Map<String, Boolean> checkMap = SalaryStatisticsReportBO.checkLoad(salaryStatisticsItemList);
|
|
|
|
|
// 如果一个都没有,直接返回
|
|
|
|
|
if (!checkMap.get("isNow")) {
|
|
|
|
|
return new PageInfo<Map<String, Object>>();
|
|
|
|
|
}
|
|
|
|
|
// 参数转换
|
|
|
|
|
SalaryStatisticsReportBO.poToQueryParam(param, po);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 获取本期报表分权后的核算人员
|
|
|
|
|
List<SalaryAcctEmployeePO> list = getSalaryAcctEmployeeService(user).listBySalaryStatisticsReportParam(param);
|
|
|
|
|
@ -344,14 +330,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
// 获取去年同期报表分权后的核算人员
|
|
|
|
|
List<SalaryAcctEmployeePO> sameList = checkMap.get("isSame") ? getSalaryAcctEmployeeService(user).listBySalaryStatisticsReportParam(sameParam) : Lists.newArrayList();
|
|
|
|
|
|
|
|
|
|
SalaryStatisticsReportDataDTO salaryStatisticsReportData = SalaryStatisticsReportDataDTO.builder()
|
|
|
|
|
.list(list)
|
|
|
|
|
.lastList(lastList)
|
|
|
|
|
.sameList(sameList)
|
|
|
|
|
.salaryStatisticsItemList(salaryStatisticsItemList)
|
|
|
|
|
.employeeId((long) user.getUID())
|
|
|
|
|
.tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
|
|
|
|
|
.build();
|
|
|
|
|
SalaryStatisticsReportDataDTO salaryStatisticsReportData = SalaryStatisticsReportDataDTO.builder().list(list).lastList(lastList).sameList(sameList).salaryStatisticsItemList(salaryStatisticsItemList).employeeId((long) user.getUID()).tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY).build();
|
|
|
|
|
|
|
|
|
|
List<SalaryAcctEmployeePO> allList = Lists.newArrayList();
|
|
|
|
|
allList.addAll(list);
|
|
|
|
|
@ -374,8 +353,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
@Override
|
|
|
|
|
public PageInfo<Map<String, Object>> buildDataPerspectiveRecords(SalaryStatisticsDataPerspectiveQueryParam param, SalaryStatisticsReportPO reportPO, SalaryStatisticsDimensionPO dimension, List<SalaryStatisticsItemPO> salaryStatisticsItemPOS) {
|
|
|
|
|
// 获取报表统计薪资项目
|
|
|
|
|
List<Long> salaryItemIds = salaryStatisticsItemPOS.stream().filter(item -> StringUtils.isNotBlank(item.getItemValue())).map(p -> p.getItemValue().split(","))
|
|
|
|
|
.flatMap(Arrays::stream).map(Long::valueOf).collect(Collectors.toList());
|
|
|
|
|
List<Long> salaryItemIds = salaryStatisticsItemPOS.stream().filter(item -> StringUtils.isNotBlank(item.getItemValue())).map(p -> p.getItemValue().split(",")).flatMap(Arrays::stream).map(Long::valueOf).collect(Collectors.toList());
|
|
|
|
|
// 参数转换
|
|
|
|
|
param.setSalaryStartMonth(SalaryDateUtil.getFormatYearMonth(reportPO.getSalaryStartMonth()));
|
|
|
|
|
param.setSalaryEndMonth(SalaryDateUtil.getFormatYearMonth(reportPO.getSalaryEndMonth()));
|
|
|
|
|
@ -386,25 +364,17 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
param.setEmployee(((List<Map>) JSON.parseArray(reportPO.getEmployeeSetting(), Map.class)).stream().map(m -> Long.valueOf(m.get(key).toString())).collect(Collectors.toList()));
|
|
|
|
|
param.setHiredate(JSON.parseArray(reportPO.getHiredateSetting(), Date.class));
|
|
|
|
|
SalaryStatisticsReportDataQueryParam queryParam = new SalaryStatisticsReportDataQueryParam();
|
|
|
|
|
com.mzlion.core.utils.BeanUtils.copyProperties(param,queryParam);
|
|
|
|
|
com.mzlion.core.utils.BeanUtils.copyProperties(param, queryParam);
|
|
|
|
|
// 获取本期报表分权后的核算人员
|
|
|
|
|
List<SalaryAcctEmployeePO> salaryAcctEmployeeList = getSalaryAcctEmployeeService(user).listBySalaryStatisticsReportParam(queryParam);
|
|
|
|
|
|
|
|
|
|
// 设置dimensionValue为维度值
|
|
|
|
|
SalaryStatisticsReportDataDTO salaryStatisticsReportData = SalaryStatisticsReportDataDTO.builder()
|
|
|
|
|
.list(salaryAcctEmployeeList)
|
|
|
|
|
.lastList(Collections.emptyList())
|
|
|
|
|
.sameList(Collections.emptyList())
|
|
|
|
|
.salaryStatisticsItemList(salaryStatisticsItemPOS)
|
|
|
|
|
.employeeId((long) user.getUID())
|
|
|
|
|
.tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
|
|
|
|
|
.dimensionValue(param.getDimensionValue())
|
|
|
|
|
.build();
|
|
|
|
|
SalaryStatisticsReportDataDTO salaryStatisticsReportData = SalaryStatisticsReportDataDTO.builder().list(salaryAcctEmployeeList).lastList(Collections.emptyList()).sameList(Collections.emptyList()).salaryStatisticsItemList(salaryStatisticsItemPOS).employeeId((long) user.getUID()).tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY).dimensionValue(param.getDimensionValue()).build();
|
|
|
|
|
|
|
|
|
|
// 获取根据维度值过滤出的本次核算人员信息
|
|
|
|
|
calculateReportRecordsByDimension(dimension, SalaryStatisticsReportDataQueryParam.builder().build(), salaryStatisticsReportData, Collections.EMPTY_MAP);
|
|
|
|
|
List<SalaryAcctEmployeePO> listByDimensionValue = salaryStatisticsReportData.getListByDimensionValue();
|
|
|
|
|
if(CollectionUtils.isEmpty(listByDimensionValue)){
|
|
|
|
|
if (CollectionUtils.isEmpty(listByDimensionValue)) {
|
|
|
|
|
throw new SalaryRunTimeException("该维度值中无数据!");
|
|
|
|
|
}
|
|
|
|
|
// 同一个人放在一起
|
|
|
|
|
@ -431,10 +401,69 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
return pageInfo;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void removeReportCache() {
|
|
|
|
|
//获取所有缓存报表的id
|
|
|
|
|
String salaryReportIds = Utils.null2String(getSalaryCacheService(user).get(SalaryCacheKey.SALARY_REPORT_IDS));
|
|
|
|
|
if (StringUtils.isNotBlank(salaryReportIds)) {
|
|
|
|
|
Arrays.asList(salaryReportIds.split(",")).forEach(id -> {
|
|
|
|
|
if (StringUtils.isNotBlank(id)) {
|
|
|
|
|
//报表下条件id
|
|
|
|
|
String salaryReportConditions = getSalaryCacheService(user).get(SalaryCacheKey.SALARY_REPORT_CONDITIONS + id);
|
|
|
|
|
if (StringUtils.isNotBlank(salaryReportConditions)) {
|
|
|
|
|
Arrays.asList(salaryReportConditions.split(",")).forEach(paramMd5 -> {
|
|
|
|
|
if (StringUtils.isNotBlank(paramMd5)) {
|
|
|
|
|
//条件对应的结果
|
|
|
|
|
getSalaryCacheService(user).remove(SalaryCacheKey.SALARY_REPORT_DATA + paramMd5);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
getSalaryCacheService(user).remove(SalaryCacheKey.SALARY_REPORT_CONDITIONS + id);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
getSalaryCacheService(user).remove(SalaryCacheKey.SALARY_REPORT_IDS);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public List getReportCache() {
|
|
|
|
|
List report = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
//获取所有缓存报表的id
|
|
|
|
|
String salaryReportIds = Utils.null2String(getSalaryCacheService(user).get(SalaryCacheKey.SALARY_REPORT_IDS));
|
|
|
|
|
if (StringUtils.isNotBlank(salaryReportIds)) {
|
|
|
|
|
Arrays.asList(salaryReportIds.split(",")).forEach(id -> {
|
|
|
|
|
if (StringUtils.isNotBlank(id)) {
|
|
|
|
|
//报表下条件id
|
|
|
|
|
String salaryReportConditions = getSalaryCacheService(user).get(SalaryCacheKey.SALARY_REPORT_CONDITIONS + id);
|
|
|
|
|
List c= new ArrayList<>();
|
|
|
|
|
if (StringUtils.isNotBlank(salaryReportConditions)) {
|
|
|
|
|
Arrays.asList(salaryReportConditions.split(",")).forEach(paramMd5 -> {
|
|
|
|
|
if (StringUtils.isNotBlank(paramMd5)) {
|
|
|
|
|
Map<String, Object> data = getSalaryCacheService(user).get(SalaryCacheKey.SALARY_REPORT_DATA + paramMd5);
|
|
|
|
|
Map kv= new HashMap<>();
|
|
|
|
|
kv.put(paramMd5,data);
|
|
|
|
|
c.add(kv);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
report.add(c);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return report;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取根据维度值过滤出的本次核算人员信息
|
|
|
|
|
*
|
|
|
|
|
* @param listByDimensionValue 根据维度筛选后的薪资核算人员
|
|
|
|
|
* @param map 薪资核算结果
|
|
|
|
|
* @param map 薪资核算结果
|
|
|
|
|
*/
|
|
|
|
|
private List<Map<String, Object>> buildResultRecords(List<SalaryAcctEmployeePO> listByDimensionValue, Map<Long, Map<String, String>> map) {
|
|
|
|
|
// 获取人员信息
|
|
|
|
|
@ -465,7 +494,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
resultMap.put("departmentName", emp == null ? "" : emp.getDepartmentName());
|
|
|
|
|
resultMap.put("salaryMonth", SalaryDateUtil.getFormatYearMonth(se.getSalaryMonth()));
|
|
|
|
|
resultMap.put("taxAgent", taxAgentMap.get(se.getTaxAgentId()));
|
|
|
|
|
resultMap.put("salarySob",SalarySobMap.get(se.getSalarySobId()));
|
|
|
|
|
resultMap.put("salarySob", SalarySobMap.get(se.getSalarySobId()));
|
|
|
|
|
resultMap.put("acctTimes", salaryAcctRecordMap.get(se.getSalaryAcctRecordId()));
|
|
|
|
|
resultList.add(resultMap);
|
|
|
|
|
}
|
|
|
|
|
@ -548,12 +577,12 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
List<Date> salaryMonthList = listMap.keySet().stream().sorted().collect(Collectors.toList());
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
salaryMonthList.forEach(k -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
Map<String, Object> temp = new HashMap<>();
|
|
|
|
|
temp.put(DM, SalaryDateUtil.getFormatYearMonth(k));
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(listMap.get(k), lastListMap.get(ReportTimeUtil.getLastYearMonth(k)), sameListMap.get(ReportTimeUtil.getSameYearMonth(k)), salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue,SalaryDateUtil.getFormatYearMonth(k)) ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, SalaryDateUtil.getFormatYearMonth(k))) {
|
|
|
|
|
data.setListByDimensionValue(listMap.get(k));
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
@ -573,12 +602,12 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
Map<Long, String> taxAgentMap = SalaryEntityUtil.convert2Map(taxAgentList, TaxAgentPO::getId, TaxAgentPO::getName);
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
listMap.forEach((k, v) -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
Map<String, Object> temp = new HashMap<>();
|
|
|
|
|
temp.put(DM, taxAgentMap.get(k));
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(v, lastListMap.get(k), sameListMap.get(k), salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if(StringUtils.equals(dimensionValue, taxAgentMap.get(k))){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, taxAgentMap.get(k))) {
|
|
|
|
|
data.setListByDimensionValue(v);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
@ -645,7 +674,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
subComIds.forEach(subComId -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> subComEmployeePOS = data.getList().stream().filter(po -> Objects.equals(empIdSubComMap.get(po.getEmployeeId()), subComId)).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastSubComEmployeePOS = data.getLastList().stream().filter(po -> Objects.equals(lastEmpIdSubComMap.get(po.getEmployeeId()), subComId)).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameSubComEmployeePOS = data.getSameList().stream().filter(po -> Objects.equals(sameEmpIdSubComMap.get(po.getEmployeeId()), subComId)).collect(Collectors.toList());
|
|
|
|
|
@ -653,13 +682,13 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
temp.put(DM, subComIdNameMap.get(subComId));
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(subComEmployeePOS, lastSubComEmployeePOS, sameSubComEmployeePOS, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, subComIdNameMap.get(subComId)) ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, subComIdNameMap.get(subComId))) {
|
|
|
|
|
List<SalaryAcctEmployeePO> subComEmployeePOS = data.getList().stream().filter(po -> Objects.equals(empIdSubComMap.get(po.getEmployeeId()), subComId)).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(subComEmployeePOS);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
if(dimensionValue == null){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> noGroupingList = data.getList().stream().filter(po -> empIdSubComMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastNoGroupingList = data.getLastList().stream().filter(po -> lastEmpIdSubComMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameNoGroupingList = data.getSameList().stream().filter(po -> sameEmpIdSubComMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
@ -669,7 +698,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
noGrouping.putAll(SalaryStatisticsReportBO.calculateItem(noGroupingList, lastNoGroupingList, sameNoGroupingList, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(noGrouping);
|
|
|
|
|
}
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, "无分组") ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, "无分组")) {
|
|
|
|
|
List<SalaryAcctEmployeePO> noGroupingList = data.getList().stream().filter(po -> empIdSubComMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(noGroupingList);
|
|
|
|
|
}
|
|
|
|
|
@ -714,7 +743,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
departIds.forEach(departId -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> departEmployeePOS = data.getList().stream().filter(po -> Objects.equals(empIdDepartIdMap.get(po.getEmployeeId()), departId)).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastDepartEmployeePOS = data.getLastList().stream().filter(po -> Objects.equals(lastEmpIdDepartIdMap.get(po.getEmployeeId()), departId)).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameDepartEmployeePOS = data.getSameList().stream().filter(po -> Objects.equals(sameEmpIdDepartIdMap.get(po.getEmployeeId()), departId)).collect(Collectors.toList());
|
|
|
|
|
@ -722,13 +751,13 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
temp.put(DM, departIdNameMap.get(departId));
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(departEmployeePOS, lastDepartEmployeePOS, sameDepartEmployeePOS, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, departIdNameMap.get(departId)) ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, departIdNameMap.get(departId))) {
|
|
|
|
|
List<SalaryAcctEmployeePO> departEmployeePOS = data.getList().stream().filter(po -> Objects.equals(empIdDepartIdMap.get(po.getEmployeeId()), departId)).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(departEmployeePOS);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> noGroupingList = data.getList().stream().filter(po -> empIdDepartIdMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastNoGroupingList = data.getLastList().stream().filter(po -> lastEmpIdDepartIdMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameNoGroupingList = data.getSameList().stream().filter(po -> lastEmpIdDepartIdMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
@ -738,7 +767,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
noGrouping.putAll(SalaryStatisticsReportBO.calculateItem(noGroupingList, lastNoGroupingList, sameNoGroupingList, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(noGrouping);
|
|
|
|
|
}
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, "无分组") ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, "无分组")) {
|
|
|
|
|
List<SalaryAcctEmployeePO> noGroupingList = data.getList().stream().filter(po -> empIdDepartIdMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(noGroupingList);
|
|
|
|
|
}
|
|
|
|
|
@ -956,13 +985,13 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
employeeListMap.forEach((k, v) -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
Map<String, Object> temp = new HashMap<>();
|
|
|
|
|
// temp.put(DM, Objects.nonNull(employeeByIdMap.get(k)) ? employeeByIdMap.get(k) : employeeExtByIdMap.get(k));
|
|
|
|
|
temp.put(DM, employeeByIdMap.get(k));
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(v, lastEmployeeListMap.get(k), sameEmployeeListMap.get(k), salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, employeeByIdMap.get(k)) ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, employeeByIdMap.get(k))) {
|
|
|
|
|
data.setListByDimensionValue(v);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
@ -983,7 +1012,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
quarters.forEach(k -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> listYear = data.getList().stream().filter(sa -> Objects.equals(k, ReportTimeUtil.getQuarter(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth())))).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastListYear = data.getLastList().stream().filter(sa -> Objects.equals(k, ReportTimeUtil.getQuarter(ReportTimeUtil.getPlusYearMonth(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth()), 3)))).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameListYear = data.getSameList().stream().filter(sa -> Objects.equals(k, ReportTimeUtil.getQuarter(ReportTimeUtil.getPlusYearMonth(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth()), 12)))).collect(Collectors.toList());
|
|
|
|
|
@ -991,7 +1020,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
temp.put(DM, k);
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(listYear, lastListYear, sameListYear, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if(StringUtils.equals(dimensionValue, k)){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, k)) {
|
|
|
|
|
List<SalaryAcctEmployeePO> listYear = data.getList().stream().filter(sa -> Objects.equals(k, ReportTimeUtil.getQuarter(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth())))).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(listYear);
|
|
|
|
|
}
|
|
|
|
|
@ -1012,7 +1041,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
halfYears.forEach(k -> {
|
|
|
|
|
if(dimensionValue == null){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> listHalfYear = data.getList().stream().filter(sa -> Objects.equals(k, ReportTimeUtil.getHalfYear(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth())))).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastListHalfYear = data.getLastList().stream().filter(sa -> Objects.equals(k, ReportTimeUtil.getHalfYear(ReportTimeUtil.getPlusYearMonth(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth()), 6)))).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameListHalfYear = data.getSameList().stream().filter(sa -> Objects.equals(k, ReportTimeUtil.getHalfYear(ReportTimeUtil.getPlusYearMonth(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth()), 12)))).collect(Collectors.toList());
|
|
|
|
|
@ -1020,7 +1049,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
temp.put(DM, k);
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(listHalfYear, lastListHalfYear, sameListHalfYear, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if(StringUtils.equals(dimensionValue, k)){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, k)) {
|
|
|
|
|
List<SalaryAcctEmployeePO> listHalfYear = data.getList().stream().filter(sa -> Objects.equals(k, ReportTimeUtil.getHalfYear(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth())))).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(listHalfYear);
|
|
|
|
|
}
|
|
|
|
|
@ -1041,7 +1070,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
years.forEach(k -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> listYear = data.getList().stream().filter(sa -> Objects.equals(k, ReportTimeUtil.getYear(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth())))).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastListYear = data.getLastList().stream().filter(sa -> Objects.equals(ReportTimeUtil.getLastYear(k), ReportTimeUtil.getYear(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth())))).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameListYear = data.getSameList().stream().filter(sa -> Objects.equals(ReportTimeUtil.getLastYear(k), ReportTimeUtil.getYear(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth())))).collect(Collectors.toList());
|
|
|
|
|
@ -1049,7 +1078,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
temp.put(DM, k);
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(listYear, lastListYear, sameListYear, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, k) ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, k)) {
|
|
|
|
|
List<SalaryAcctEmployeePO> listYear = data.getList().stream().filter(sa -> Objects.equals(k, ReportTimeUtil.getYear(SalaryDateUtil.getFormatYearMonth(sa.getSalaryMonth())))).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(listYear);
|
|
|
|
|
}
|
|
|
|
|
@ -1697,7 +1726,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
workYears.forEach(k -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> salaryAcctEmployees = data.getList().stream().filter(po -> Objects.equals(empIdWorkYearMap.get(po.getEmployeeId()), k)).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastSalaryAcctEmployees = data.getLastList().stream().filter(po -> Objects.equals(lastEmpIdWorkYearMap.get(po.getEmployeeId()), k)).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameSalaryAcctEmployees = data.getSameList().stream().filter(po -> Objects.equals(sameEmpIdWorkYearMap.get(po.getEmployeeId()), k)).collect(Collectors.toList());
|
|
|
|
|
@ -1705,13 +1734,13 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
temp.put(DM, k);
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(salaryAcctEmployees, lastSalaryAcctEmployees, sameSalaryAcctEmployees, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if( Double.compare(Double.valueOf(dimensionValue), k) == 0 ){
|
|
|
|
|
} else if (Double.compare(Double.valueOf(dimensionValue), k) == 0) {
|
|
|
|
|
List<SalaryAcctEmployeePO> salaryAcctEmployees = data.getList().stream().filter(po -> Objects.equals(empIdWorkYearMap.get(po.getEmployeeId()), k)).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(salaryAcctEmployees);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> noGroupingList = data.getList().stream().filter(po -> empIdWorkYearMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastNoGroupingList = data.getLastList().stream().filter(po -> lastEmpIdWorkYearMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameNoGroupingList = data.getSameList().stream().filter(po -> lastEmpIdWorkYearMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
@ -1721,7 +1750,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
noGrouping.putAll(SalaryStatisticsReportBO.calculateItem(noGroupingList, lastNoGroupingList, sameNoGroupingList, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(noGrouping);
|
|
|
|
|
}
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, "无分组") ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, "无分组")) {
|
|
|
|
|
List<SalaryAcctEmployeePO> noGroupingList = data.getList().stream().filter(po -> empIdWorkYearMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(noGroupingList);
|
|
|
|
|
}
|
|
|
|
|
@ -1765,7 +1794,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
companyYears.forEach(k -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> salaryAcctEmployees = data.getList().stream().filter(po -> Objects.equals(empIdCompanyYearMap.get(po.getEmployeeId()), k)).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastSalaryAcctEmployees = data.getLastList().stream().filter(po -> Objects.equals(lastEmpIdCompanyYearMap.get(po.getEmployeeId()), k)).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameSalaryAcctEmployees = data.getSameList().stream().filter(po -> Objects.equals(sameEmpIdCompanyYearMap.get(po.getEmployeeId()), k)).collect(Collectors.toList());
|
|
|
|
|
@ -1773,13 +1802,13 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
temp.put(DM, k);
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(salaryAcctEmployees, lastSalaryAcctEmployees, sameSalaryAcctEmployees, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, k) ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, k)) {
|
|
|
|
|
List<SalaryAcctEmployeePO> salaryAcctEmployees = data.getList().stream().filter(po -> Objects.equals(empIdCompanyYearMap.get(po.getEmployeeId()), k)).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(salaryAcctEmployees);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> noGroupingList = data.getList().stream().filter(po -> empIdCompanyYearMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastNoGroupingList = data.getLastList().stream().filter(po -> lastEmpIdCompanyYearMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameNoGroupingList = data.getSameList().stream().filter(po -> sameEmpIdCompanyYearMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
@ -1789,7 +1818,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
noGrouping.putAll(SalaryStatisticsReportBO.calculateItem(noGroupingList, lastNoGroupingList, sameNoGroupingList, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(noGrouping);
|
|
|
|
|
}
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, "无分组")){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, "无分组")) {
|
|
|
|
|
List<SalaryAcctEmployeePO> noGroupingList = data.getList().stream().filter(po -> empIdCompanyYearMap.get(po.getEmployeeId()) == null).collect(Collectors.toList());
|
|
|
|
|
data.setListByDimensionValue(noGroupingList);
|
|
|
|
|
}
|
|
|
|
|
@ -1833,7 +1862,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
}
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
groups.forEach(k -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> salaryAcctEmployees = SalaryStatisticsReportBO.listAcctEmpByRationGroupSpacing(k, groupBelong, dimension.getDimCode(), data.getList(), empIdYearMap, salaryAcctResultValueMap, data.getSalaryStatisticsItemList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastSalaryAcctEmployees = SalaryStatisticsReportBO.listAcctEmpByRationGroupSpacing(k, groupBelong, dimension.getDimCode(), data.getLastList(), lastEmpIdYearMap, salaryAcctResultValueMap, data.getSalaryStatisticsItemList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameSalaryAcctEmployees = SalaryStatisticsReportBO.listAcctEmpByRationGroupSpacing(k, groupBelong, dimension.getDimCode(), data.getSameList(), sameEmpIdYearMap, salaryAcctResultValueMap, data.getSalaryStatisticsItemList());
|
|
|
|
|
@ -1841,7 +1870,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
temp.put(DM, k.getStartValue() + "-" + k.getEndValue());
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(salaryAcctEmployees, lastSalaryAcctEmployees, sameSalaryAcctEmployees, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, k.getStartValue() + "-" + k.getEndValue()) ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, k.getStartValue() + "-" + k.getEndValue())) {
|
|
|
|
|
List<SalaryAcctEmployeePO> salaryAcctEmployees = SalaryStatisticsReportBO.listAcctEmpByRationGroupSpacing(k, groupBelong, dimension.getDimCode(), data.getList(), empIdYearMap, salaryAcctResultValueMap, data.getSalaryStatisticsItemList());
|
|
|
|
|
data.setListByDimensionValue(salaryAcctEmployees);
|
|
|
|
|
}
|
|
|
|
|
@ -1914,7 +1943,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
|
|
|
|
|
String dimensionValue = data.getDimensionValue();
|
|
|
|
|
groups.forEach(k -> {
|
|
|
|
|
if(dimensionValue == null ){
|
|
|
|
|
if (dimensionValue == null) {
|
|
|
|
|
List<SalaryAcctEmployeePO> salaryAcctEmployees = SalaryStatisticsReportBO.listAcctEmpByRationGroupIndividual(k, groupBelong, dimension.getDimCode(), data.getList(), empIdYearMap, salaryAcctResultValueMap, data.getSalaryStatisticsItemList());
|
|
|
|
|
List<SalaryAcctEmployeePO> lastSalaryAcctEmployees = SalaryStatisticsReportBO.listAcctEmpByRationGroupIndividual(k, groupBelong, dimension.getDimCode(), data.getLastList(), lastEmpIdYearMap, salaryAcctResultValueMap, data.getSalaryStatisticsItemList());
|
|
|
|
|
List<SalaryAcctEmployeePO> sameSalaryAcctEmployees = SalaryStatisticsReportBO.listAcctEmpByRationGroupIndividual(k, groupBelong, dimension.getDimCode(), data.getSameList(), sameEmpIdYearMap, salaryAcctResultValueMap, data.getSalaryStatisticsItemList());
|
|
|
|
|
@ -1922,7 +1951,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|
|
|
|
temp.put(DM, k.getValue());
|
|
|
|
|
temp.putAll(SalaryStatisticsReportBO.calculateItem(salaryAcctEmployees, lastSalaryAcctEmployees, sameSalaryAcctEmployees, salaryAcctResultValueMap, data.getSalaryStatisticsItemList()));
|
|
|
|
|
records.add(temp);
|
|
|
|
|
}else if( StringUtils.equals(dimensionValue, k.getValue()) ){
|
|
|
|
|
} else if (StringUtils.equals(dimensionValue, k.getValue())) {
|
|
|
|
|
List<SalaryAcctEmployeePO> salaryAcctEmployees = SalaryStatisticsReportBO.listAcctEmpByRationGroupIndividual(k, groupBelong, dimension.getDimCode(), data.getList(), empIdYearMap, salaryAcctResultValueMap, data.getSalaryStatisticsItemList());
|
|
|
|
|
data.setListByDimensionValue(salaryAcctEmployees);
|
|
|
|
|
}
|
|
|
|
|
|