修复人员过多时bug
This commit is contained in:
parent
20e4856c23
commit
ae719ad65b
|
|
@ -0,0 +1,8 @@
|
|||
package com.api.salary.web;
|
||||
|
||||
import javax.ws.rs.Path;
|
||||
|
||||
@Path("/bs/hrmsalary/report/statistics/echarts")
|
||||
public class SalaryStatisticsEchartsController extends com.engine.salary.report.web.SalaryStatisticsEchartsController{
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,72 @@
|
|||
package com.engine.salary.mapper.report;
|
||||
|
||||
import com.engine.salary.report.entity.po.SalaryStatisticsEChartsSettingPO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface SalaryStatisticsEChartsSettingMapper {
|
||||
/**
|
||||
* 查询所有记录
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<SalaryStatisticsEChartsSettingPO> listAll();
|
||||
|
||||
/**
|
||||
* 条件查询
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<SalaryStatisticsEChartsSettingPO> listSome(SalaryStatisticsEChartsSettingPO SalaryStatisticsEChartsSettingPO);
|
||||
|
||||
|
||||
/**
|
||||
* 根据主键查询
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 返回记录,没有返回null
|
||||
*/
|
||||
SalaryStatisticsEChartsSettingPO getById(Long id);
|
||||
|
||||
/**
|
||||
* 新增,忽略null字段
|
||||
*
|
||||
* @param SalaryStatisticsEChartsSettingPO 新增的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int insertIgnoreNull(SalaryStatisticsEChartsSettingPO SalaryStatisticsEChartsSettingPO);
|
||||
|
||||
/**
|
||||
* 修改,修改所有字段
|
||||
*
|
||||
* @param SalaryStatisticsEChartsSettingPO 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int update(SalaryStatisticsEChartsSettingPO SalaryStatisticsEChartsSettingPO);
|
||||
|
||||
/**
|
||||
* 修改,忽略null字段
|
||||
*
|
||||
* @param SalaryStatisticsEChartsSettingPO 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int updateIgnoreNull(SalaryStatisticsEChartsSettingPO SalaryStatisticsEChartsSettingPO);
|
||||
|
||||
/**
|
||||
* 删除记录
|
||||
*
|
||||
* @param SalaryStatisticsEChartsSettingPO 待删除的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int delete(SalaryStatisticsEChartsSettingPO SalaryStatisticsEChartsSettingPO);
|
||||
|
||||
/**
|
||||
* 批量删除记录
|
||||
* @param ids 主键id集合
|
||||
*/
|
||||
void deleteByIds(@Param("ids") Collection<Long> ids);
|
||||
|
||||
void deleteByReportId(Long reportId);
|
||||
}
|
||||
|
|
@ -0,0 +1,321 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.engine.salary.mapper.report.SalaryStatisticsEChartsSettingMapper">
|
||||
<resultMap id="BaseResultMap" type="com.engine.salary.report.entity.po.SalaryStatisticsEChartsSettingPO">
|
||||
<result column="charts_type" property="chartsType"/>
|
||||
<result column="create_time" property="createTime"/>
|
||||
<result column="creator" property="creator"/>
|
||||
<result column="delete_type" property="deleteType"/>
|
||||
<result column="dimension_range" property="dimensionRange"/>
|
||||
<result column="id" property="id"/>
|
||||
<result column="item_col_sort_value" property="itemColSortValue"/>
|
||||
<result column="item_col_value" property="itemColValue"/>
|
||||
<result column="item_sort_value" property="itemSortValue"/>
|
||||
<result column="item_values" property="itemValues"/>
|
||||
<result column="report_id" property="reportId"/>
|
||||
<result column="sort_num" property="sortNum"/>
|
||||
<result column="sort_type" property="sortType"/>
|
||||
<result column="tenant_key" property="tenantKey"/>
|
||||
<result column="update_time" property="updateTime"/>
|
||||
</resultMap>
|
||||
|
||||
<!-- 表字段 -->
|
||||
<sql id="baseColumns">
|
||||
t
|
||||
.
|
||||
charts_type
|
||||
, t.create_time
|
||||
, t.creator
|
||||
, t.delete_type
|
||||
, t.dimension_range
|
||||
, t.id
|
||||
, t.item_col_sort_value
|
||||
, t.item_col_value
|
||||
, t.item_sort_value
|
||||
, t.item_values
|
||||
, t.report_id
|
||||
, t.sort_num
|
||||
, t.sort_type
|
||||
, t.tenant_key
|
||||
, t.update_time
|
||||
</sql>
|
||||
|
||||
<!-- 查询全部 -->
|
||||
<select id="listAll" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="baseColumns"/>
|
||||
FROM hrsa_salary_echarts_setting t
|
||||
WHERE delete_type = 0
|
||||
</select>
|
||||
|
||||
<!-- 根据主键获取单条记录 -->
|
||||
<select id="getById" resultMap="BaseResultMap" parameterType="Long">
|
||||
SELECT
|
||||
<include refid="baseColumns"/>
|
||||
FROM hrsa_salary_echarts_setting t
|
||||
WHERE id = #{id} AND delete_type = 0
|
||||
</select>
|
||||
|
||||
<!-- 条件查询 -->
|
||||
<select id="listSome" resultMap="BaseResultMap"
|
||||
parameterType="com.engine.salary.report.entity.po.SalaryStatisticsEChartsSettingPO">
|
||||
SELECT
|
||||
<include refid="baseColumns"/>
|
||||
FROM hrsa_salary_echarts_setting t
|
||||
WHERE delete_type = 0
|
||||
<if test="chartsType != null">
|
||||
AND charts_type = #{chartsType}
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
AND create_time = #{createTime}
|
||||
</if>
|
||||
<if test="creator != null">
|
||||
AND creator = #{creator}
|
||||
</if>
|
||||
<if test="deleteType != null">
|
||||
AND delete_type = #{deleteType}
|
||||
</if>
|
||||
<if test="dimensionRange != null">
|
||||
AND dimension_range = #{dimensionRange}
|
||||
</if>
|
||||
<if test="id != null">
|
||||
AND id = #{id}
|
||||
</if>
|
||||
<if test="itemColSortValue != null">
|
||||
AND item_col_sort_value = #{itemColSortValue}
|
||||
</if>
|
||||
<if test="itemColValue != null">
|
||||
AND item_col_value = #{itemColValue}
|
||||
</if>
|
||||
<if test="itemSortValue != null">
|
||||
AND item_sort_value = #{itemSortValue}
|
||||
</if>
|
||||
<if test="itemValues != null">
|
||||
AND item_values = #{itemValues}
|
||||
</if>
|
||||
<if test="reportId != null">
|
||||
AND report_id = #{reportId}
|
||||
</if>
|
||||
<if test="sortNum != null">
|
||||
AND sort_num = #{sortNum}
|
||||
</if>
|
||||
<if test="sortType != null">
|
||||
AND sort_type = #{sortType}
|
||||
</if>
|
||||
<if test="tenantKey != null">
|
||||
AND tenant_key = #{tenantKey}
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
AND update_time = #{updateTime}
|
||||
</if>
|
||||
<if test="ids != null and ids.size()>0">
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</if>
|
||||
ORDER BY id DESC
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 插入不为NULL的字段 -->
|
||||
<insert id="insertIgnoreNull" parameterType="com.engine.salary.report.entity.po.SalaryStatisticsEChartsSettingPO">
|
||||
INSERT INTO hrsa_salary_echarts_setting
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
|
||||
<if test="chartsType != null">
|
||||
charts_type,
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
create_time,
|
||||
</if>
|
||||
<if test="creator != null">
|
||||
creator,
|
||||
</if>
|
||||
<if test="deleteType != null">
|
||||
delete_type,
|
||||
</if>
|
||||
<if test="dimensionRange != null">
|
||||
dimension_range,
|
||||
</if>
|
||||
<if test="id != null">
|
||||
id,
|
||||
</if>
|
||||
<if test="itemColSortValue != null">
|
||||
item_col_sort_value,
|
||||
</if>
|
||||
<if test="itemColValue != null">
|
||||
item_col_value,
|
||||
</if>
|
||||
<if test="itemSortValue != null">
|
||||
item_sort_value,
|
||||
</if>
|
||||
<if test="itemValues != null">
|
||||
item_values,
|
||||
</if>
|
||||
<if test="reportId != null">
|
||||
report_id,
|
||||
</if>
|
||||
<if test="sortNum != null">
|
||||
sort_num,
|
||||
</if>
|
||||
<if test="sortType != null">
|
||||
sort_type,
|
||||
</if>
|
||||
<if test="tenantKey != null">
|
||||
tenant_key,
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
update_time,
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="VALUES (" suffix=")" suffixOverrides=",">
|
||||
<if test="chartsType != null">
|
||||
#{chartsType},
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
#{createTime},
|
||||
</if>
|
||||
<if test="creator != null">
|
||||
#{creator},
|
||||
</if>
|
||||
<if test="deleteType != null">
|
||||
#{deleteType},
|
||||
</if>
|
||||
<if test="dimensionRange != null">
|
||||
#{dimensionRange},
|
||||
</if>
|
||||
<if test="id != null">
|
||||
#{id},
|
||||
</if>
|
||||
<if test="itemColSortValue != null">
|
||||
#{itemColSortValue},
|
||||
</if>
|
||||
<if test="itemColValue != null">
|
||||
#{itemColValue},
|
||||
</if>
|
||||
<if test="itemSortValue != null">
|
||||
#{itemSortValue},
|
||||
</if>
|
||||
<if test="itemValues != null">
|
||||
#{itemValues},
|
||||
</if>
|
||||
<if test="reportId != null">
|
||||
#{reportId},
|
||||
</if>
|
||||
<if test="sortNum != null">
|
||||
#{sortNum},
|
||||
</if>
|
||||
<if test="sortType != null">
|
||||
#{sortType},
|
||||
</if>
|
||||
<if test="tenantKey != null">
|
||||
#{tenantKey},
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
#{updateTime},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<!-- 更新,更新全部字段 -->
|
||||
<update id="update" parameterType="com.engine.salary.report.entity.po.SalaryStatisticsEChartsSettingPO">
|
||||
UPDATE hrsa_salary_echarts_setting
|
||||
<set>
|
||||
charts_type=#{chartsType},
|
||||
create_time=#{createTime},
|
||||
creator=#{creator},
|
||||
delete_type=#{deleteType},
|
||||
dimension_range=#{dimensionRange},
|
||||
item_col_sort_value=#{itemColSortValue},
|
||||
item_col_value=#{itemColValue},
|
||||
item_sort_value=#{itemSortValue},
|
||||
item_values=#{itemValues},
|
||||
report_id=#{reportId},
|
||||
sort_num=#{sortNum},
|
||||
sort_type=#{sortType},
|
||||
tenant_key=#{tenantKey},
|
||||
update_time=#{updateTime},
|
||||
</set>
|
||||
WHERE id = #{id} AND delete_type = 0
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 更新不为NULL的字段 -->
|
||||
<update id="updateIgnoreNull" parameterType="com.engine.salary.report.entity.po.SalaryStatisticsEChartsSettingPO">
|
||||
UPDATE hrsa_salary_echarts_setting
|
||||
<set>
|
||||
<if test="chartsType != null">
|
||||
charts_type=#{chartsType},
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
create_time=#{createTime},
|
||||
</if>
|
||||
<if test="creator != null">
|
||||
creator=#{creator},
|
||||
</if>
|
||||
<if test="deleteType != null">
|
||||
delete_type=#{deleteType},
|
||||
</if>
|
||||
<if test="dimensionRange != null">
|
||||
dimension_range=#{dimensionRange},
|
||||
</if>
|
||||
<if test="itemColSortValue != null">
|
||||
item_col_sort_value=#{itemColSortValue},
|
||||
</if>
|
||||
<if test="itemColValue != null">
|
||||
item_col_value=#{itemColValue},
|
||||
</if>
|
||||
<if test="itemSortValue != null">
|
||||
item_sort_value=#{itemSortValue},
|
||||
</if>
|
||||
<if test="itemValues != null">
|
||||
item_values=#{itemValues},
|
||||
</if>
|
||||
<if test="reportId != null">
|
||||
report_id=#{reportId},
|
||||
</if>
|
||||
<if test="sortNum != null">
|
||||
sort_num=#{sortNum},
|
||||
</if>
|
||||
<if test="sortType != null">
|
||||
sort_type=#{sortType},
|
||||
</if>
|
||||
<if test="tenantKey != null">
|
||||
tenant_key=#{tenantKey},
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
update_time=#{updateTime},
|
||||
</if>
|
||||
</set>
|
||||
WHERE id = #{id} AND delete_type = 0
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 根据主键删除记录 -->
|
||||
<delete id="delete">
|
||||
UPDATE hrsa_salary_echarts_setting
|
||||
SET delete_type=1
|
||||
WHERE id = #{id}
|
||||
AND delete_type = 0
|
||||
</delete>
|
||||
|
||||
<delete id="deleteByIds">
|
||||
UPDATE hrsa_salary_echarts_setting
|
||||
SET delete_type = 1
|
||||
WHERE delete_type = 0
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</delete>
|
||||
|
||||
<delete id="deleteByReportId">
|
||||
UPDATE hrsa_salary_echarts_setting
|
||||
SET delete_type=1
|
||||
WHERE report_id = #{reportId}
|
||||
AND delete_type = 0
|
||||
</delete>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
|
@ -0,0 +1,76 @@
|
|||
package com.engine.salary.report.entity.po;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @Description: 薪酬统计图表
|
||||
* @Author: wangxiangzhong
|
||||
* @Date: 2023/1/31 15:25
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_salary_echarts_setting//
|
||||
public class SalaryStatisticsEChartsSettingPO {
|
||||
|
||||
//分析图配置表id
|
||||
private Long id;
|
||||
|
||||
//报表id
|
||||
private Long reportId;
|
||||
|
||||
//报表类型
|
||||
private Integer chartsType;
|
||||
|
||||
//统计项目
|
||||
private String itemValues;
|
||||
|
||||
//统计列
|
||||
private String itemColValue;
|
||||
|
||||
//维度统计范围
|
||||
private Integer dimensionRange;
|
||||
|
||||
//排序统计项目
|
||||
private String itemSortValue;
|
||||
|
||||
//排序列
|
||||
private String itemColSortValue;
|
||||
|
||||
//排序类型
|
||||
private Integer sortType;
|
||||
|
||||
//排序取数值
|
||||
private Integer sortNum;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否已删除。0:未删除、1:已删除
|
||||
*/
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
private String tenantKey;
|
||||
}
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
package com.engine.salary.report.service;
|
||||
|
||||
import com.engine.salary.report.entity.dto.SalaryStatisticsEchartsDTO;
|
||||
|
||||
/**
|
||||
* 薪酬统计图表
|
||||
* <p>Copyright: Copyright (c) 2022</p>
|
||||
* <p>Company: 泛微软件</p>
|
||||
*
|
||||
* @author qiantao
|
||||
* @version 1.0
|
||||
**/
|
||||
public interface SalaryStatisticsEchartsService {
|
||||
|
||||
/**
|
||||
* 分析图数据展示范围设置保存
|
||||
*
|
||||
* @param saveParam
|
||||
* @return
|
||||
*/
|
||||
String saveRangeSetting(SalaryStatisticsEchartsDTO saveParam);
|
||||
|
||||
/**
|
||||
* 分析图数据展示范围设置删除
|
||||
*
|
||||
* @param reportId
|
||||
* @return
|
||||
*/
|
||||
String deleteRangeSetting(Long reportId);
|
||||
|
||||
/**
|
||||
* 分析图数据展示范围设置查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
SalaryStatisticsEchartsDTO queryRangeSetting(SalaryStatisticsEchartsDTO param);
|
||||
}
|
||||
|
|
@ -0,0 +1,104 @@
|
|||
package com.engine.salary.report.service.impl;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.constant.SalaryDefaultTenantConstant;
|
||||
import com.engine.salary.enums.sicategory.DeleteTypeEnum;
|
||||
import com.engine.salary.mapper.report.SalaryStatisticsEChartsSettingMapper;
|
||||
import com.engine.salary.report.entity.dto.SalaryStatisticsEchartsDTO;
|
||||
import com.engine.salary.report.entity.po.SalaryStatisticsEChartsSettingPO;
|
||||
import com.engine.salary.report.service.SalaryStatisticsEchartsService;
|
||||
import com.engine.salary.util.SalaryAssert;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.db.MapperProxyFactory;
|
||||
import dm.jdbc.util.IdGenerator;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* 薪酬统计图表
|
||||
* <p>Copyright: Copyright (c) 2022</p>
|
||||
* <p>Company: 泛微软件</p>
|
||||
*
|
||||
* @author qiantao
|
||||
* @version 1.0
|
||||
**/
|
||||
public class SalaryStatisticsEchartsServiceImpl extends Service implements SalaryStatisticsEchartsService {
|
||||
|
||||
private SalaryStatisticsEChartsSettingMapper getSalaryStatisticsDimensionMapper() {
|
||||
return MapperProxyFactory.getProxy(SalaryStatisticsEChartsSettingMapper.class);
|
||||
}
|
||||
@Override
|
||||
public String saveRangeSetting(SalaryStatisticsEchartsDTO saveParam) {
|
||||
SalaryAssert.notNull(saveParam.getReportId(), SalaryI18nUtil.getI18nLabel( 152562, "报表id不能为空"));
|
||||
SalaryAssert.notNull(saveParam.getChartsType(), SalaryI18nUtil.getI18nLabel( 177912, "报表类型不能为空"));
|
||||
|
||||
SalaryStatisticsEChartsSettingPO salaryStatisticsEChartsSettingQue = null;
|
||||
List<SalaryStatisticsEChartsSettingPO> pos = getSalaryStatisticsDimensionMapper().listSome(SalaryStatisticsEChartsSettingPO.builder().reportId(saveParam.getReportId()).chartsType(saveParam.getChartsType()).build());
|
||||
if(CollectionUtils.isNotEmpty(pos)){
|
||||
salaryStatisticsEChartsSettingQue = pos.get(0);
|
||||
}
|
||||
|
||||
if (salaryStatisticsEChartsSettingQue != null) {
|
||||
getSalaryStatisticsDimensionMapper().delete(salaryStatisticsEChartsSettingQue);
|
||||
}
|
||||
Date now = new Date();
|
||||
SalaryStatisticsEChartsSettingPO salaryStatisticsEChartsSetting = SalaryStatisticsEChartsSettingPO.builder()
|
||||
.id(IdGenerator.generate())
|
||||
.reportId(saveParam.getReportId())
|
||||
.chartsType(saveParam.getChartsType())
|
||||
.itemValues(JSONArray.toJSONString(saveParam.getItemValues()))
|
||||
.itemColValue(saveParam.getItemColValue())
|
||||
.dimensionRange(Objects.isNull(saveParam.getDimensionRange()) ? 0 : saveParam.getDimensionRange())
|
||||
.itemSortValue(saveParam.getItemSortValue())
|
||||
.itemColSortValue(saveParam.getItemColSortValue())
|
||||
.sortType(saveParam.getSortType())
|
||||
.sortNum(saveParam.getSortNum())
|
||||
.createTime(now)
|
||||
.updateTime(now)
|
||||
.deleteType(DeleteTypeEnum.NOT_DELETED.getValue())
|
||||
.creator((long)user.getUID())
|
||||
.tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
|
||||
.build();
|
||||
getSalaryStatisticsDimensionMapper().insertIgnoreNull(salaryStatisticsEChartsSetting);
|
||||
return StringUtils.EMPTY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String deleteRangeSetting(Long reportId) {
|
||||
|
||||
getSalaryStatisticsDimensionMapper().deleteByReportId(reportId);
|
||||
|
||||
return StringUtils.EMPTY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SalaryStatisticsEchartsDTO queryRangeSetting(SalaryStatisticsEchartsDTO resp) {
|
||||
|
||||
|
||||
SalaryStatisticsEChartsSettingPO salaryStatisticsEChartsSetting = null;
|
||||
List<SalaryStatisticsEChartsSettingPO> pos = getSalaryStatisticsDimensionMapper().listSome(SalaryStatisticsEChartsSettingPO.builder().reportId(resp.getReportId()).chartsType(resp.getChartsType()).build());
|
||||
if(CollectionUtils.isNotEmpty(pos)){
|
||||
salaryStatisticsEChartsSetting = pos.get(0);
|
||||
}
|
||||
|
||||
if (salaryStatisticsEChartsSetting != null) {
|
||||
resp.setId(salaryStatisticsEChartsSetting.getId());
|
||||
resp.setReportId(salaryStatisticsEChartsSetting.getReportId());
|
||||
resp.setChartsType(salaryStatisticsEChartsSetting.getChartsType());
|
||||
resp.setDimensionRange(salaryStatisticsEChartsSetting.getDimensionRange());
|
||||
resp.setItemValues(JSONArray.parseArray(salaryStatisticsEChartsSetting.getItemValues(), String.class));
|
||||
resp.setSortNum(salaryStatisticsEChartsSetting.getSortNum());
|
||||
resp.setSortType(salaryStatisticsEChartsSetting.getSortType());
|
||||
resp.setItemColValue(salaryStatisticsEChartsSetting.getItemColValue());
|
||||
resp.setItemSortValue(salaryStatisticsEChartsSetting.getItemSortValue());
|
||||
resp.setItemColSortValue(salaryStatisticsEChartsSetting.getItemColSortValue());
|
||||
return resp;
|
||||
}
|
||||
return resp;
|
||||
}
|
||||
}
|
||||
|
|
@ -108,14 +108,14 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|||
|
||||
@Override
|
||||
public List<SalaryStatisticsReportPO> list() {
|
||||
Boolean needAuth = getTaxAgentService(user).isNeedAuth((long)user.getUID());
|
||||
if(needAuth){
|
||||
Boolean needAuth = getTaxAgentService(user).isNeedAuth((long) user.getUID());
|
||||
if (needAuth) {
|
||||
Boolean adminEnable = getTaxAgentService(user).isAdminEnable((long) user.getUID());
|
||||
if(!adminEnable){
|
||||
if (!adminEnable) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return getSalaryStatisticsReportMapper().listSome(SalaryStatisticsReportPO.builder().build());
|
||||
}
|
||||
|
||||
|
|
@ -325,7 +325,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|||
allList.addAll(list);
|
||||
allList.addAll(lastList);
|
||||
allList.addAll(sameList);
|
||||
Set<Long> salaryAcctEmployeeIds = allList.stream().map(SalaryAcctEmployeePO::getId).collect(Collectors.toSet());
|
||||
List<Long> salaryAcctEmployeeIds = allList.stream().map(SalaryAcctEmployeePO::getId).collect(Collectors.toList());
|
||||
List<SalaryAcctResultPO> salaryAcctResultValues = getSalaryAcctResultService(user).listBySalaryAcctEmployeeIds(salaryAcctEmployeeIds);
|
||||
// Map<Long, List<SalaryAcctResultPO>> salaryAcctResultValueMap = SalaryEntityUtil.convert2Map();
|
||||
Map<Long, List<SalaryAcctResultPO>> salaryAcctEmpResultMap = SalaryEntityUtil.group2Map(salaryAcctResultValues, SalaryAcctResultPO::getSalaryAcctEmpId);
|
||||
|
|
@ -400,8 +400,7 @@ public class SalaryStatisticsReportServiceImpl extends Service implements Salary
|
|||
} else if (SalaryStatisticsDimensionTypeEnum.RATION_GROUP_SPACING.getValue().equals(dimension.getDimType())) {
|
||||
return buildRationGroupSpacing4Records(dimension, data, salaryAcctResultValueMap);
|
||||
// 定量-单项式分组
|
||||
}
|
||||
else if (SalaryStatisticsDimensionTypeEnum.RATION_GROUP_INDIVIDUAL.getValue().equals(dimension.getDimType())) {
|
||||
} else if (SalaryStatisticsDimensionTypeEnum.RATION_GROUP_INDIVIDUAL.getValue().equals(dimension.getDimType())) {
|
||||
return buildRationGroupIndividual4Records(dimension, data, salaryAcctResultValueMap);
|
||||
}
|
||||
return new PageInfo<>();
|
||||
|
|
|
|||
|
|
@ -0,0 +1,78 @@
|
|||
package com.engine.salary.report.web;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.salary.report.entity.dto.SalaryStatisticsEchartsDTO;
|
||||
import com.engine.salary.report.wrapper.SalaryStatisticsEchartsWrapper;
|
||||
import com.engine.salary.util.ResponseResult;
|
||||
import io.swagger.v3.oas.annotations.parameters.RequestBody;
|
||||
import weaver.hrm.HrmUserVarify;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.ws.rs.*;
|
||||
import javax.ws.rs.core.Context;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
|
||||
/**
|
||||
* 薪酬统计图表
|
||||
* <p>Copyright: Copyright (c) 2022</p>
|
||||
* <p>Company: 泛微软件</p>
|
||||
*
|
||||
* @author qiantao
|
||||
* @version 1.0
|
||||
**/
|
||||
public class SalaryStatisticsEchartsController {
|
||||
|
||||
private SalaryStatisticsEchartsWrapper getSalaryStatisticsEchartsWrapper(User user) {
|
||||
return ServiceUtil.getService(SalaryStatisticsEchartsWrapper.class, user);
|
||||
}
|
||||
/**
|
||||
* 分析图数据展示范围设置保存
|
||||
*
|
||||
* @param saveParam
|
||||
* @return
|
||||
*/
|
||||
@POST
|
||||
@Path("/saveRangeSetting")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String saveRangeSetting(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody SalaryStatisticsEchartsDTO saveParam) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<SalaryStatisticsEchartsDTO, String>(user).run(getSalaryStatisticsEchartsWrapper(user)::saveRangeSetting, saveParam);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 分析图数据展示范围设置删除
|
||||
*
|
||||
* @param reportId
|
||||
* @return
|
||||
*/
|
||||
@GET
|
||||
@Path("/deleteRangeSetting")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String deleteRangeSetting(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "reportId")Long reportId) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<Long, String>(user).run(getSalaryStatisticsEchartsWrapper(user)::deleteRangeSetting, reportId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分析图数据展示范围设置查询
|
||||
*
|
||||
* @param reportId
|
||||
* @param chartsType
|
||||
* @return
|
||||
*/
|
||||
@GET
|
||||
@Path("/queryRangeSetting")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String deleteRangeSetting(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "reportId")Long reportId, @QueryParam(value = "chartsType")Integer chartsType) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
SalaryStatisticsEchartsDTO resp = SalaryStatisticsEchartsDTO.builder()
|
||||
.reportId(reportId)
|
||||
.chartsType(chartsType)
|
||||
.build();
|
||||
return new ResponseResult<SalaryStatisticsEchartsDTO, SalaryStatisticsEchartsDTO>(user).run(getSalaryStatisticsEchartsWrapper(user)::queryRangeSetting, resp);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -34,7 +34,6 @@ public class SalaryStatisticsItemController {
|
|||
* @param id
|
||||
* @return
|
||||
*/
|
||||
|
||||
@GET
|
||||
@Path("/getForm")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,51 @@
|
|||
package com.engine.salary.report.wrapper;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.report.entity.dto.SalaryStatisticsEchartsDTO;
|
||||
import com.engine.salary.report.service.SalaryStatisticsEchartsService;
|
||||
import com.engine.salary.report.service.impl.SalaryStatisticsEchartsServiceImpl;
|
||||
import weaver.hrm.User;
|
||||
|
||||
/**
|
||||
* 薪酬统计图表
|
||||
* <p>Copyright: Copyright (c) 2022</p>
|
||||
* <p>Company: 泛微软件</p>
|
||||
*
|
||||
* @author qiantao
|
||||
* @version 1.0
|
||||
**/
|
||||
public class SalaryStatisticsEchartsWrapper extends Service {
|
||||
|
||||
private SalaryStatisticsEchartsService getSalaryStatisticsEchartsService(User user) {
|
||||
return ServiceUtil.getService(SalaryStatisticsEchartsServiceImpl.class, user);
|
||||
}
|
||||
/**
|
||||
* 分析图数据展示范围设置保存
|
||||
*
|
||||
* @param saveParam
|
||||
* @return
|
||||
*/
|
||||
public String saveRangeSetting(SalaryStatisticsEchartsDTO saveParam) {
|
||||
return getSalaryStatisticsEchartsService(user).saveRangeSetting(saveParam);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分析图数据展示范围设置删除
|
||||
*
|
||||
* @param reportId
|
||||
* @return
|
||||
*/
|
||||
public String deleteRangeSetting(Long reportId) {
|
||||
return getSalaryStatisticsEchartsService(user).deleteRangeSetting(reportId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分析图数据展示范围设置查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public SalaryStatisticsEchartsDTO queryRangeSetting(SalaryStatisticsEchartsDTO param) {
|
||||
return getSalaryStatisticsEchartsService(user).queryRangeSetting(param);
|
||||
}
|
||||
}
|
||||
|
|
@ -132,7 +132,7 @@ public class SalaryAcctCalculateServiceImpl extends Service implements SalaryAcc
|
|||
// 7、查询考勤数据
|
||||
List<AttendQuoteDataDTO> attendQuoteDataDTOS = getAttendQuoteDataService(user).getAttendQuoteData(salarySobCycleDTO.getSalaryMonth(), salarySobCycleDTO.getSalarySobId(), employeeIds);
|
||||
// 8、查询薪资核算人员的薪资核算结果
|
||||
Set<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctCalculateBO.getSalaryAcctEmployeePOS(), SalaryAcctEmployeePO::getId);
|
||||
List<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctCalculateBO.getSalaryAcctEmployeePOS(), SalaryAcctEmployeePO::getId,Collectors.toList());
|
||||
List<SalaryAcctResultPO> salaryAcctResultPOS = getSalaryAcctResultService(user).listBySalaryAcctEmployeeIds(salaryAcctEmployeeIds);
|
||||
|
||||
// 薪资回算时回算前的核算结果 (没有回算项)
|
||||
|
|
|
|||
|
|
@ -182,7 +182,11 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
if (CollectionUtils.isEmpty(salaryAcctEmployeeIds)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
List<SalaryAcctResultPO> salaryAcctResultPOS = getSalaryAcctResultMapper().listSome(SalaryAcctResultPO.builder().salaryAcctEmpIds(salaryAcctEmployeeIds).build());
|
||||
List<List<Long>> partition = Lists.partition((List<Long>) salaryAcctEmployeeIds, 2000);
|
||||
List<SalaryAcctResultPO> salaryAcctResultPOS = new ArrayList<>();
|
||||
partition.forEach(empIds -> {
|
||||
salaryAcctResultPOS.addAll(getSalaryAcctResultMapper().listSome(SalaryAcctResultPO.builder().salaryAcctEmpIds(empIds).build()));
|
||||
});
|
||||
// 解密
|
||||
encryptUtil.decryptList(salaryAcctResultPOS, SalaryAcctResultPO.class);
|
||||
return salaryAcctResultPOS;
|
||||
|
|
@ -193,7 +197,11 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
if (CollectionUtils.isEmpty(salaryAcctRecordIds) || CollectionUtils.isEmpty(employeeIds)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
List<SalaryAcctResultPO> salaryAcctResultPOS = getSalaryAcctResultMapper().listSome(SalaryAcctResultPO.builder().salaryAcctRecordIds(salaryAcctRecordIds).employeeIds(employeeIds).build());
|
||||
List<List<Long>> partition = Lists.partition((List<Long>) employeeIds, 2000);
|
||||
List<SalaryAcctResultPO> salaryAcctResultPOS = new ArrayList<>();
|
||||
partition.forEach(empIds -> {
|
||||
salaryAcctResultPOS.addAll(getSalaryAcctResultMapper().listSome(SalaryAcctResultPO.builder().salaryAcctRecordIds(salaryAcctRecordIds).employeeIds(empIds).build()));
|
||||
});
|
||||
encryptUtil.decryptList(salaryAcctResultPOS, SalaryAcctResultPO.class);
|
||||
return salaryAcctResultPOS;
|
||||
}
|
||||
|
|
@ -237,16 +245,16 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
List<SalaryItemPO> salaryBackItemPOS = Collections.emptyList();
|
||||
// key:账套中回算薪资项目的薪资项目id value:账套中回算薪资项目所对应的公式内容
|
||||
Map<Long, String> salaryBackItemFormula = new HashMap<>();
|
||||
if(isBackCal){
|
||||
if (isBackCal) {
|
||||
salarySobBackItemPOList = getSalarySobBackItemService(user).listBySalarySobId(byId.getSalarySobId());
|
||||
Set<Long> salarySobBackItemIds = SalaryEntityUtil.properties(salarySobBackItemPOList, SalarySobBackItemPO::getSalaryItemId);
|
||||
salaryBackItemPOS = getSalaryItemService(user).listByIds(salarySobBackItemIds);
|
||||
// 查询薪资账套中已发补发的公式内容
|
||||
List<ExpressFormula> expressFormulas = getSalaryFormulaService(user).listExpressFormula(SalaryEntityUtil.properties(salarySobBackItemPOList, SalarySobBackItemPO::getFormulaId));
|
||||
Map<Long, String> expressFormulaMap = SalaryEntityUtil.convert2Map(expressFormulas, ExpressFormula::getId, ExpressFormula::getFormula);
|
||||
for(SalarySobBackItemPO salarySobBackItemPO:salarySobBackItemPOList){
|
||||
for (SalarySobBackItemPO salarySobBackItemPO : salarySobBackItemPOList) {
|
||||
String exp = Objects.equals(expressFormulaMap.get(salarySobBackItemPO.getFormulaId()), 0) ? "输入" : expressFormulaMap.get(salarySobBackItemPO.getFormulaId());
|
||||
salaryBackItemFormula.put(salarySobBackItemPO.getSalaryItemId(),exp);
|
||||
salaryBackItemFormula.put(salarySobBackItemPO.getSalaryItemId(), exp);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -299,7 +307,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
Set<Long> salaryItemIds = SalaryEntityUtil.properties(salarySobItemPOS, SalarySobItemPO::getSalaryItemId);
|
||||
List<SalaryItemPO> salaryItemPOS = getSalaryItemService(user).listByIds(salaryItemIds);
|
||||
// 查询薪资核算结果
|
||||
Set<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctEmployeePOS, SalaryAcctEmployeePO::getId);
|
||||
List<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctEmployeePOS, SalaryAcctEmployeePO::getId,Collectors.toList());
|
||||
List<SalaryAcctResultPO> salaryAcctResultPOS = listBySalaryAcctEmployeeIds(salaryAcctEmployeeIds);
|
||||
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
|
|
@ -356,7 +364,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
}
|
||||
List<SalaryItemPO> salaryItemPOS = getSalaryItemService(user).listByIds(salaryItemIds);
|
||||
// 查询薪资核算结果
|
||||
Set<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctEmployeePOS, SalaryAcctEmployeePO::getId);
|
||||
List<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctEmployeePOS, SalaryAcctEmployeePO::getId,Collectors.toList());
|
||||
List<SalaryAcctResultPO> salaryAcctResultPOS = listBySalaryAcctEmployeeIds(salaryAcctEmployeeIds);
|
||||
// 查询人员信息
|
||||
List<Long> employeeIds = SalaryEntityUtil.properties(salaryAcctEmployeePOS, SalaryAcctEmployeePO::getEmployeeId, Collectors.toList());
|
||||
|
|
@ -379,7 +387,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
Set<Long> formulaIds = SalaryEntityUtil.properties(salarySobItemPOS, SalarySobItemPO::getFormulaId);
|
||||
// 获取回算公式
|
||||
if (isBackCalc) {
|
||||
formulaIds.addAll(salarySobBackItemPOList.stream().map(SalarySobBackItemPO :: getFormulaId ).collect(Collectors.toList()));
|
||||
formulaIds.addAll(salarySobBackItemPOList.stream().map(SalarySobBackItemPO::getFormulaId).collect(Collectors.toList()));
|
||||
}
|
||||
List<ExpressFormula> expressFormulas = getSalaryFormulaService(user).listExpressFormula(formulaIds);
|
||||
Map<Long, String> expressFormulaMap = SalaryEntityUtil.convert2Map(expressFormulas, ExpressFormula::getId, ExpressFormula::getFormula);
|
||||
|
|
@ -437,7 +445,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
salaryAcctEmployeePOS = getSalaryAcctEmployeeService(user).listByRecordIdsAndEmpIdAndTaxAgentId(salaryAcctRecordIds, salaryAcctEmployeePO.getEmployeeId(), salaryAcctEmployeePO.getTaxAgentId());
|
||||
}
|
||||
// 查询薪资核算人员的薪资核算结果
|
||||
Set<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctEmployeePOS, SalaryAcctEmployeePO::getId);
|
||||
List<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctEmployeePOS, SalaryAcctEmployeePO::getId,Collectors.toList());
|
||||
List<SalaryAcctResultPO> salaryAcctResultPOS = listBySalaryAcctEmployeeIds(salaryAcctEmployeeIds);
|
||||
// 查询薪资核算人员所有合并计税的薪资核算记录所用的账套
|
||||
Set<Long> salarySobIds = SalaryEntityUtil.properties(salaryAcctEmployeePOS, SalaryAcctEmployeePO::getSalarySobId);
|
||||
|
|
@ -512,7 +520,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
// 查询原来的薪资核算结果
|
||||
List<SalaryAcctResultPO> salaryAcctResultPOSOld = getSalaryAcctResultMapper().listSome(SalaryAcctResultPO.builder().salaryAcctEmpId(saveParam.getSalaryAcctEmpId()).build());
|
||||
// 解密
|
||||
encryptUtil.decryptList(salaryAcctResultPOSOld,SalaryAcctResultPO.class);
|
||||
encryptUtil.decryptList(salaryAcctResultPOSOld, SalaryAcctResultPO.class);
|
||||
// 保存参数转换成薪资核算结果po
|
||||
List<SalaryAcctResultPO> salaryAcctResultPOS = SalaryAcctResultBO.convert2PO(salaryAcctResultPOSOld, saveParam, salaryAcctEmployeePO, (long) user.getUID());
|
||||
|
||||
|
|
@ -615,7 +623,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
}
|
||||
// 回算薪资项目
|
||||
List<SalarySobBackItemPO> salarySobBackItems = Collections.emptyList();
|
||||
if(Objects.equals(salaryAcctRecordPO.getBackCalcStatus(), 1)){
|
||||
if (Objects.equals(salaryAcctRecordPO.getBackCalcStatus(), 1)) {
|
||||
salarySobBackItems = getSalarySobBackItemService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId());
|
||||
}
|
||||
// 4、查询当前租户的所有薪资项目
|
||||
|
|
@ -642,7 +650,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
// 8、查询公式详情
|
||||
Set<Long> formulaIds = SalaryEntityUtil.properties(salarySobItemPOS, SalarySobItemPO::getFormulaId);
|
||||
formulaIds.addAll(SalaryEntityUtil.properties(salaryItemPOS, SalaryItemPO::getFormulaId));
|
||||
formulaIds.addAll(SalaryEntityUtil.properties(salarySobBackItems,SalarySobBackItemPO::getFormulaId));
|
||||
formulaIds.addAll(SalaryEntityUtil.properties(salarySobBackItems, SalarySobBackItemPO::getFormulaId));
|
||||
List<ExpressFormula> expressFormulas = getSalaryFormulaService(user).listExpressFormula(formulaIds);
|
||||
// 本次运算的回算薪资项目所涉及的变量
|
||||
Set<String> issuedFieldIds = new HashSet<>();
|
||||
|
|
@ -825,7 +833,7 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
return;
|
||||
}
|
||||
// 查询薪资核算结果
|
||||
Set<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctEmployees, SalaryAcctEmployeePO::getId);
|
||||
List<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctEmployees, SalaryAcctEmployeePO::getId,Collectors.toList());
|
||||
List<SalaryAcctResultPO> salaryAcctResultValues = this.listBySalaryAcctEmployeeIds(salaryAcctEmployeeIds);
|
||||
Map<Long, SalaryAcctResultPO> salaryAcctResultValueMap = SalaryEntityUtil.convert2Map(salaryAcctResultValues, SalaryAcctResultPO::getSalaryAcctEmpId);
|
||||
// 值可以锁定的薪资项目
|
||||
|
|
@ -860,11 +868,11 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
|
||||
@Override
|
||||
public List<SalaryAcctResultPO> listBySalaryAcctRecordIdsAndSalaryItemIds(Collection<Long> salaryAcctRecordIds, Collection<Long> salaryItemIds) {
|
||||
if (CollectionUtils.isEmpty(salaryAcctRecordIds) || CollectionUtils.isEmpty(salaryItemIds) ) {
|
||||
if (CollectionUtils.isEmpty(salaryAcctRecordIds) || CollectionUtils.isEmpty(salaryItemIds)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
List<SalaryAcctResultPO> list = getSalaryAcctResultMapper().listSome(SalaryAcctResultPO.builder().salaryAcctRecordIds(salaryAcctRecordIds).salaryItemIds(salaryItemIds).build());
|
||||
return encryptUtil.decryptList(list,SalaryAcctResultPO.class);
|
||||
return encryptUtil.decryptList(list, SalaryAcctResultPO.class);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -109,7 +109,12 @@ public class SalaryComparisonResultServiceImpl extends Service implements Salary
|
|||
if (CollectionUtils.isEmpty(salaryAcctEmployeeIds)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
List<ExcelAcctResultPO> excelAcctResultPOS = getExcelAcctResultMapper().listSome(ExcelAcctResultPO.builder().salaryAcctEmpIds(salaryAcctEmployeeIds).build());
|
||||
|
||||
List<ExcelAcctResultPO> excelAcctResultPOS = new ArrayList<>();
|
||||
List<List<Long>> partition = Lists.partition((List<Long>) salaryAcctEmployeeIds, 2000);
|
||||
partition.forEach(empIds -> {
|
||||
excelAcctResultPOS.addAll(getExcelAcctResultMapper().listSome(ExcelAcctResultPO.builder().salaryAcctEmpIds(empIds).build()));
|
||||
});
|
||||
return encryptUtil.decryptList(excelAcctResultPOS, ExcelAcctResultPO.class);
|
||||
}
|
||||
|
||||
|
|
@ -159,7 +164,7 @@ public class SalaryComparisonResultServiceImpl extends Service implements Salary
|
|||
List<SalaryItemPO> salaryItemPOS = getSalaryItemService(user).listByIds(salaryItemIds);
|
||||
// 转换成聚合dto
|
||||
SalarySobItemAggregateBO salarySobItemAggregateBO = new SalarySobItemAggregateBO(salarySobPO, salarySobEmpFieldPOS,
|
||||
salarySobItemGroupPOS, salarySobItemPOS, expressFormulas, salaryItemPOS,Collections.emptyList(),Collections.emptyList());
|
||||
salarySobItemGroupPOS, salarySobItemPOS, expressFormulas, salaryItemPOS, Collections.emptyList(), Collections.emptyList());
|
||||
SalarySobItemAggregateDTO salarySobItemAggregateDTO = salarySobItemAggregateBO.convert2AggregateDTO();
|
||||
|
||||
// 薪资核算人员
|
||||
|
|
@ -183,7 +188,7 @@ public class SalaryComparisonResultServiceImpl extends Service implements Salary
|
|||
excelAcctResultPOS = listBySalaryAcctRecordId(queryParam.getSalaryAcctRecordId());
|
||||
} else {
|
||||
// 薪资核算人员id
|
||||
Set<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctEmployeePOS, SalaryAcctEmployeePO::getId);
|
||||
List<Long> salaryAcctEmployeeIds = SalaryEntityUtil.properties(salaryAcctEmployeePOS, SalaryAcctEmployeePO::getId, Collectors.toList());
|
||||
// 查询薪资核算结果
|
||||
salaryAcctResultPOS = getSalaryAcctResultService(user).listBySalaryAcctEmployeeIds(salaryAcctEmployeeIds);
|
||||
// 查询线下导入结果
|
||||
|
|
|
|||
Loading…
Reference in New Issue