Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
commit
fa92ddddf5
|
|
@ -1,6 +1,5 @@
|
|||
package com.engine.salary.entity.salaryacct.bo;
|
||||
|
||||
import com.cloudstore.eccom.pc.table.WeaTableColumn;
|
||||
import com.engine.salary.annotation.SalaryFormulaVar;
|
||||
import com.engine.salary.component.WeaTableColumnGroup;
|
||||
import com.engine.salary.constant.SalaryDefaultTenantConstant;
|
||||
|
|
@ -23,6 +22,7 @@ import com.engine.salary.entity.taxrate.TaxAgent;
|
|||
import com.engine.salary.enums.salaryitem.SalaryDataTypeEnum;
|
||||
import com.engine.salary.util.SalaryEntityUtil;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.page.Column;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
|
@ -35,12 +35,13 @@ import java.util.*;
|
|||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @description: 薪资核算结果
|
||||
* @author: xiajun
|
||||
* @modified By: xiajun
|
||||
* @date: Created in 12/6/21 7:05 PM
|
||||
* @version:v1.0
|
||||
*/
|
||||
* 薪资核算结果
|
||||
* <p>Copyright: Copyright (c) 2022</p>
|
||||
* <p>Company: 泛微软件</p>
|
||||
*
|
||||
* @author qiantao
|
||||
* @version 1.0
|
||||
**/
|
||||
public class SalaryAcctResultBO {
|
||||
|
||||
/**
|
||||
|
|
@ -49,17 +50,52 @@ public class SalaryAcctResultBO {
|
|||
*/
|
||||
private static final String DATA_TYPE_SUFFIX = "_type";
|
||||
|
||||
// /**
|
||||
// * 构建薪资核算结果列表的表头(线下对比)
|
||||
// *
|
||||
// * @param salarySobItemAggregateDTO
|
||||
// * @return
|
||||
// */
|
||||
// public static List<WeaTableColumn> buildTableColumns4ComparisonResult(SalarySobItemAggregateDTO salarySobItemAggregateDTO, Set<Long> excludeSalaryItemIds) {
|
||||
// List<WeaTableColumn> columns = Lists.newArrayList();
|
||||
// // 员工信息字段
|
||||
// for (SalarySobEmpFieldDTO salarySobEmpFieldDTO : salarySobItemAggregateDTO.getEmpFields()) {
|
||||
// columns.add(new WeaTableColumn("150", salarySobEmpFieldDTO.getFieldName(), salarySobEmpFieldDTO.getFieldId()));
|
||||
// }
|
||||
// // 薪资项目分组下的薪资项目
|
||||
// for (SalarySobItemGroupDTO salarySobItemGroupDTO : salarySobItemAggregateDTO.getItemGroups()) {
|
||||
// if (CollectionUtils.isEmpty(salarySobItemGroupDTO.getItems())) {
|
||||
// continue;
|
||||
// }
|
||||
// for (SalarySobItemDTO salarySobItemDTO : salarySobItemGroupDTO.getItems()) {
|
||||
// if (excludeSalaryItemIds.contains(salarySobItemDTO.getSalaryItemId())) {
|
||||
// continue;
|
||||
// }
|
||||
// columns.add(new WeaTableColumn("150", salarySobItemDTO.getName(), "" + salarySobItemDTO.getSalaryItemId()));
|
||||
// }
|
||||
// }
|
||||
// // 没有分类的薪资项目
|
||||
// for (SalarySobItemDTO salarySobItemDTO : salarySobItemAggregateDTO.getItems()) {
|
||||
// if (excludeSalaryItemIds.contains(salarySobItemDTO.getSalaryItemId())) {
|
||||
// continue;
|
||||
// }
|
||||
// columns.add(new WeaTableColumn("150", salarySobItemDTO.getName(), "" + salarySobItemDTO.getSalaryItemId()));
|
||||
// }
|
||||
// return columns;
|
||||
// }
|
||||
|
||||
|
||||
/**
|
||||
* 构建薪资核算结果列表的表头
|
||||
* 构建薪资核算结果列表的表头(线下对比)
|
||||
*
|
||||
* @param salarySobItemAggregateDTO
|
||||
* @return
|
||||
*/
|
||||
public static List<WeaTableColumn> buildTableColumns4ComparisonResult(SalarySobItemAggregateDTO salarySobItemAggregateDTO, Set<Long> excludeSalaryItemIds) {
|
||||
List<WeaTableColumn> columns = Lists.newArrayList();
|
||||
public static List<Column> buildTableColumns4ComparisonResult(SalarySobItemAggregateDTO salarySobItemAggregateDTO, Set<Long> excludeSalaryItemIds) {
|
||||
List<Column> columns = Lists.newArrayList();
|
||||
// 员工信息字段
|
||||
for (SalarySobEmpFieldDTO salarySobEmpFieldDTO : salarySobItemAggregateDTO.getEmpFields()) {
|
||||
columns.add(new WeaTableColumn("150", salarySobEmpFieldDTO.getFieldName(), salarySobEmpFieldDTO.getFieldId()));
|
||||
columns.add(new Column(salarySobEmpFieldDTO.getFieldName(), salarySobEmpFieldDTO.getFieldId(), salarySobEmpFieldDTO.getFieldId()));
|
||||
}
|
||||
// 薪资项目分组下的薪资项目
|
||||
for (SalarySobItemGroupDTO salarySobItemGroupDTO : salarySobItemAggregateDTO.getItemGroups()) {
|
||||
|
|
@ -70,7 +106,7 @@ public class SalaryAcctResultBO {
|
|||
if (excludeSalaryItemIds.contains(salarySobItemDTO.getSalaryItemId())) {
|
||||
continue;
|
||||
}
|
||||
columns.add(new WeaTableColumn("150", salarySobItemDTO.getName(), "" + salarySobItemDTO.getSalaryItemId()));
|
||||
columns.add(new Column(salarySobItemDTO.getName(), "" + salarySobItemDTO.getSalaryItemId(), "" + salarySobItemDTO.getSalaryItemId()));
|
||||
}
|
||||
}
|
||||
// 没有分类的薪资项目
|
||||
|
|
@ -78,7 +114,7 @@ public class SalaryAcctResultBO {
|
|||
if (excludeSalaryItemIds.contains(salarySobItemDTO.getSalaryItemId())) {
|
||||
continue;
|
||||
}
|
||||
columns.add(new WeaTableColumn("150", salarySobItemDTO.getName(), "" + salarySobItemDTO.getSalaryItemId()));
|
||||
columns.add(new Column(salarySobItemDTO.getName(), "" + salarySobItemDTO.getSalaryItemId(), "" + salarySobItemDTO.getSalaryItemId()));
|
||||
}
|
||||
return columns;
|
||||
}
|
||||
|
|
@ -105,7 +141,7 @@ public class SalaryAcctResultBO {
|
|||
for (SalarySobItemDTO salarySobItemDTO : salarySobItemGroupDTO.getItems()) {
|
||||
childrenColumns.add(new WeaTableColumnGroup("150", salarySobItemDTO.getName(), "" + salarySobItemDTO.getSalaryItemId()));
|
||||
}
|
||||
WeaTableColumnGroup weaTableColumnWapper = new WeaTableColumnGroup("150", salarySobItemGroupDTO.getName(), String.valueOf(salarySobItemGroupDTO.getId()),childrenColumns);
|
||||
WeaTableColumnGroup weaTableColumnWapper = new WeaTableColumnGroup("150", salarySobItemGroupDTO.getName(), String.valueOf(salarySobItemGroupDTO.getId()), childrenColumns);
|
||||
columns.add(weaTableColumnWapper);
|
||||
}
|
||||
// 没有分类的薪资项目
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
package com.engine.salary.entity.salaryacct.dto;
|
||||
|
||||
import com.cloudstore.eccom.pc.table.WeaTableColumn;
|
||||
import com.engine.salary.util.page.Column;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
|
@ -24,9 +24,9 @@ import java.util.Map;
|
|||
@AllArgsConstructor
|
||||
public class SalaryComparisonResultListDTO {
|
||||
|
||||
//列表的表头")
|
||||
private List<WeaTableColumn> weaTableColumns;
|
||||
//列表的表头
|
||||
private List<Column> weaTableColumns;
|
||||
|
||||
//列表数据")
|
||||
//列表数据
|
||||
private PageInfo<Map<String, Object>> data;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@ import com.engine.salary.util.SalaryI18nUtil;
|
|||
import com.engine.salary.util.excel.ExcelParseHelper;
|
||||
import com.engine.salary.util.excel.ExcelSupport;
|
||||
import com.engine.salary.util.excel.ExcelUtil;
|
||||
import com.engine.salary.util.page.Column;
|
||||
import com.engine.salary.util.valid.ValidUtil;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
|
|
@ -355,15 +356,15 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
|
|||
// 查询薪资项目
|
||||
List<SalaryItemPO> salaryItemPOS = getSalarySobItemService(user).listBySalarySobId4SalaryItem(salaryAcctRecordPO.getSalarySobId());
|
||||
Set<String> salaryItemIds = SalaryEntityUtil.properties(salaryItemPOS, salaryItemPO -> "" + salaryItemPO.getId());
|
||||
for (WeaTableColumn weaTableColumn : salaryComparisonResultListDTO.getWeaTableColumns()) {
|
||||
for (Column weaTableColumn : salaryComparisonResultListDTO.getWeaTableColumns()) {
|
||||
// 员工信息字段
|
||||
if (employeeFieldCodeSet.contains(weaTableColumn.getColumn())) {
|
||||
headerList.add(weaTableColumn.getText());
|
||||
if (employeeFieldCodeSet.contains(weaTableColumn.getKey())) {
|
||||
headerList.add(weaTableColumn.getTitle());
|
||||
}
|
||||
// 薪资项目的表头
|
||||
if (salaryItemIds.contains(weaTableColumn.getColumn())) {
|
||||
headerList.add(weaTableColumn.getText() + " (线上值)");
|
||||
headerList.add(weaTableColumn.getText() + " (线下值)");
|
||||
if (salaryItemIds.contains(weaTableColumn.getKey())) {
|
||||
headerList.add(weaTableColumn.getTitle() + " (线上值)");
|
||||
headerList.add(weaTableColumn.getTitle() + " (线下值)");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -373,14 +374,14 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
|
|||
rows.add(headerList);
|
||||
for (Map<String, Object> map : resultMapList) {
|
||||
List<Object> row = Lists.newArrayList();
|
||||
for (WeaTableColumn weaTableColumn : salaryComparisonResultListDTO.getWeaTableColumns()) {
|
||||
for (Column weaTableColumn : salaryComparisonResultListDTO.getWeaTableColumns()) {
|
||||
// 员工信息字段的值
|
||||
if (employeeFieldCodeSet.contains(weaTableColumn.getColumn())) {
|
||||
row.add(map.get(weaTableColumn.getColumn()));
|
||||
if (employeeFieldCodeSet.contains(weaTableColumn.getKey())) {
|
||||
row.add(map.get(weaTableColumn.getKey()));
|
||||
}
|
||||
// 薪资项目的值
|
||||
if (salaryItemIds.contains(weaTableColumn.getColumn())) {
|
||||
Map tempMap = (Map) map.getOrDefault(weaTableColumn.getColumn(), Collections.emptyMap());
|
||||
if (salaryItemIds.contains(weaTableColumn.getKey())) {
|
||||
Map tempMap = (Map) map.getOrDefault(weaTableColumn.getKey(), Collections.emptyMap());
|
||||
row.add(tempMap.get("acctResultValue"));
|
||||
row.add(tempMap.get("excelResultValue"));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
package com.engine.salary.service.impl;
|
||||
|
||||
import com.cloudstore.eccom.pc.table.WeaTableColumn;
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.biz.TaxAgentBiz;
|
||||
|
|
@ -28,6 +27,7 @@ import com.engine.salary.service.*;
|
|||
import com.engine.salary.util.SalaryEntityUtil;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.db.MapperProxyFactory;
|
||||
import com.engine.salary.util.page.Column;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.engine.salary.util.page.PageUtil;
|
||||
import com.google.common.collect.Lists;
|
||||
|
|
@ -163,7 +163,7 @@ public class SalaryComparisonResultServiceImpl extends Service implements Salary
|
|||
List<SalaryAcctEmployeePO> salaryAcctEmployeePOS = getSalaryAcctEmployeeService(user).listByResultQueryParam(queryParam);
|
||||
if (CollectionUtils.isEmpty(salaryAcctEmployeePOS)) {
|
||||
// 构建薪资核算结果列表表头
|
||||
List<WeaTableColumn> weaTableColumns = SalaryAcctResultBO.buildTableColumns4ComparisonResult(salarySobItemAggregateDTO, Collections.emptySet());
|
||||
List<Column> weaTableColumns = SalaryAcctResultBO.buildTableColumns4ComparisonResult(salarySobItemAggregateDTO, Collections.emptySet());
|
||||
// 构建列表数据
|
||||
// 返回结果
|
||||
return new SalaryComparisonResultListDTO().setWeaTableColumns(weaTableColumns).setData(new PageInfo<>());
|
||||
|
|
@ -234,7 +234,7 @@ public class SalaryComparisonResultServiceImpl extends Service implements Salary
|
|||
.collect(Collectors.toSet());
|
||||
}
|
||||
// 构建薪资核算结果列表表头
|
||||
List<WeaTableColumn> weaTableColumns = SalaryAcctResultBO.buildTableColumns4ComparisonResult(salarySobItemAggregateDTO, excludeSalaryItemIds);
|
||||
List<Column> weaTableColumns = SalaryAcctResultBO.buildTableColumns4ComparisonResult(salarySobItemAggregateDTO, excludeSalaryItemIds);
|
||||
// 返回结果
|
||||
return new SalaryComparisonResultListDTO().setWeaTableColumns(weaTableColumns).setData(dtoPage);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -551,7 +551,7 @@ public class SalaryAcctController {
|
|||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String listComparisonResult(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryComparisonResultQueryParam param) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<SalaryComparisonResultQueryParam, Map<String, Object>>(user).run(getSalaryComparisonResultWrapper(user)::listPage, param);
|
||||
return new ResponseResult<SalaryComparisonResultQueryParam, PageInfo<Map<String, Object>>>(user).run(getSalaryComparisonResultWrapper(user)::listPage, param);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
package com.engine.salary.wrapper;
|
||||
|
||||
import com.cloudstore.eccom.pc.table.WeaTable;
|
||||
import com.cloudstore.eccom.result.WeaResultMsg;
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.entity.salaryacct.dto.SalaryComparisonResultListDTO;
|
||||
|
|
@ -11,9 +9,9 @@ import com.engine.salary.service.SalaryComparisonResultService;
|
|||
import com.engine.salary.service.SalarySobEmpFieldService;
|
||||
import com.engine.salary.service.SalarySobItemService;
|
||||
import com.engine.salary.service.impl.SalaryComparisonResultServiceImpl;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
|
|
@ -43,22 +41,13 @@ public class SalaryComparisonResultWrapper extends Service {
|
|||
* @param queryParam 列表查询条件
|
||||
* @return
|
||||
*/
|
||||
public Map<String, Object> listPage(SalaryComparisonResultQueryParam queryParam) {
|
||||
public PageInfo<Map<String, Object>> listPage(SalaryComparisonResultQueryParam queryParam) {
|
||||
// 查询薪资核算线下对比列表
|
||||
SalaryComparisonResultListDTO salaryComparisonResultListDTO = getSalaryComparisonResultService(user).listPageByParam(queryParam);
|
||||
|
||||
WeaTable table = new WeaTable();
|
||||
table.setColumns(salaryComparisonResultListDTO.getWeaTableColumns());
|
||||
PageInfo<Map<String, Object>> pageInfo = salaryComparisonResultListDTO.getData();
|
||||
pageInfo.setColumns(salaryComparisonResultListDTO.getWeaTableColumns());
|
||||
|
||||
|
||||
WeaResultMsg result = new WeaResultMsg(false);
|
||||
result.putAll(table.makeDataResult());
|
||||
result.success();
|
||||
|
||||
Map<String,Object> datas = new HashMap<>();
|
||||
datas.put("pageInfo", salaryComparisonResultListDTO.getData());
|
||||
datas.put("dataKey",result.getResultMap());
|
||||
|
||||
return datas;
|
||||
return pageInfo;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue