Merge remote-tracking branch 'origin/release/2.17.1.2411.01' into release/2.17.1.2411.01
This commit is contained in:
commit
607fd2c6a2
|
|
@ -0,0 +1,5 @@
|
|||
ALTER TABLE hrsa_page_list_setting add (
|
||||
default_setting number
|
||||
);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
ALTER TABLE hrsa_page_list_setting add (
|
||||
default_setting number
|
||||
);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
ALTER TABLE hrsa_page_list_setting add (
|
||||
default_setting number
|
||||
);
|
||||
/
|
||||
|
||||
|
|
@ -0,0 +1 @@
|
|||
ALTER TABLE hrsa_page_list_setting ADD COLUMN default_setting int;
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
ALTER TABLE hrsa_page_list_setting add (
|
||||
default_setting number
|
||||
)
|
||||
/
|
||||
|
|
@ -0,0 +1 @@
|
|||
ALTER TABLE hrsa_page_list_setting ADD COLUMN default_setting int ;
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
ALTER TABLE hrsa_page_list_setting ADD default_setting int NULL
|
||||
GO
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
ALTER TABLE hrsa_page_list_setting add (
|
||||
default_setting number
|
||||
);
|
||||
/
|
||||
|
||||
|
|
@ -19,4 +19,6 @@ public class PageListSettingQueryParam {
|
|||
private String page;
|
||||
|
||||
private String name;
|
||||
|
||||
private Integer defaultSetting;
|
||||
}
|
||||
|
|
@ -17,6 +17,12 @@ import java.util.List;
|
|||
@AllArgsConstructor
|
||||
public class PageListSettingSaveParam {
|
||||
|
||||
/**
|
||||
* 默认设置
|
||||
*/
|
||||
@DataCheck(require = true,message = "是否为默认设置")
|
||||
private Integer defaultSetting;
|
||||
|
||||
/**
|
||||
* 页面,0:薪资明细
|
||||
*/
|
||||
|
|
@ -27,5 +33,5 @@ public class PageListSettingSaveParam {
|
|||
* 设置
|
||||
*/
|
||||
@DataCheck(require = true,message = "请选择设置")
|
||||
private List<Long> setting;
|
||||
private List<String> setting;
|
||||
}
|
||||
|
|
@ -30,7 +30,12 @@ public class PageListSettingPO {
|
|||
* 设置
|
||||
*/
|
||||
@ElogTransform(name = "设置")
|
||||
private List<Long> setting;
|
||||
private List<String> setting;
|
||||
|
||||
/**
|
||||
* 默认设置
|
||||
*/
|
||||
private Integer defaultSetting;
|
||||
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -8,70 +8,71 @@ import java.util.List;
|
|||
|
||||
public interface PageListSettingMapper {
|
||||
|
||||
/**
|
||||
/**
|
||||
* 查询所有记录
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<PageListSettingPO> listAll();
|
||||
|
||||
List<PageListSettingPO> listAll();
|
||||
|
||||
/**
|
||||
* 条件查询
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<PageListSettingPO> listSome(PageListSettingPO pageListSetting);
|
||||
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* 根据主键查询
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 返回记录,没有返回null
|
||||
*/
|
||||
PageListSettingPO getById(Long id);
|
||||
|
||||
/**
|
||||
PageListSettingPO getById(Long id);
|
||||
|
||||
/**
|
||||
* 新增,忽略null字段
|
||||
*
|
||||
* @param pageListSetting 新增的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int insertIgnoreNull(PageListSettingPO pageListSetting);
|
||||
|
||||
/**
|
||||
int insertIgnoreNull(PageListSettingPO pageListSetting);
|
||||
|
||||
/**
|
||||
* 修改,修改所有字段
|
||||
*
|
||||
* @param pageListSetting 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int update(PageListSettingPO pageListSetting);
|
||||
|
||||
/**
|
||||
int update(PageListSettingPO pageListSetting);
|
||||
|
||||
/**
|
||||
* 修改,忽略null字段
|
||||
*
|
||||
* @param pageListSetting 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int updateIgnoreNull(PageListSettingPO pageListSetting);
|
||||
|
||||
/**
|
||||
int updateIgnoreNull(PageListSettingPO pageListSetting);
|
||||
|
||||
/**
|
||||
* 删除记录
|
||||
*
|
||||
* @param pageListSetting 待删除的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int delete(PageListSettingPO pageListSetting);
|
||||
|
||||
int delete(PageListSettingPO pageListSetting);
|
||||
|
||||
/**
|
||||
* 批量删除记录
|
||||
*
|
||||
* @param ids 主键id集合
|
||||
*/
|
||||
void deleteByIds(@Param("ids") Collection<Long> ids);
|
||||
|
||||
//获取页面默认配置
|
||||
PageListSettingPO getByPage(String page);
|
||||
//获取页面默认配置
|
||||
PageListSettingPO getByPage(@Param("page") String page, @Param("defaultSetting") Integer defaultSetting, @Param("creator") Long creator);
|
||||
|
||||
//获取页面配置模板
|
||||
List<PageListSettingPO> getTemplatesByPage(String page);
|
||||
//获取页面配置模板
|
||||
List<PageListSettingPO> getTemplatesByPage(String page);
|
||||
}
|
||||
|
|
@ -10,6 +10,7 @@
|
|||
<result column="update_time" property="updateTime"/>
|
||||
<result column="delete_type" property="deleteType"/>
|
||||
<result column="tenant_key" property="tenantKey"/>
|
||||
<result column="default_setting" property="defaultSetting"/>
|
||||
</resultMap>
|
||||
|
||||
<!-- 表字段 -->
|
||||
|
|
@ -24,6 +25,7 @@
|
|||
, t.setting
|
||||
, t.tenant_key
|
||||
, t.update_time
|
||||
, t.default_setting
|
||||
</sql>
|
||||
|
||||
<!-- 查询全部 -->
|
||||
|
|
@ -70,6 +72,9 @@
|
|||
<if test="updateTime != null">
|
||||
AND update_time = #{updateTime}
|
||||
</if>
|
||||
<if test="defaultSetting != null">
|
||||
AND default_setting = #{defaultSetting}
|
||||
</if>
|
||||
<if test="ids != null and ids.size()>0">
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
|
|
@ -109,6 +114,9 @@
|
|||
<if test="updateTime != null">
|
||||
update_time,
|
||||
</if>
|
||||
<if test="defaultSetting != null">
|
||||
default_setting,
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="VALUES (" suffix=")" suffixOverrides=",">
|
||||
<if test="createTime != null">
|
||||
|
|
@ -135,6 +143,9 @@
|
|||
<if test="updateTime != null">
|
||||
#{updateTime},
|
||||
</if>
|
||||
<if test="defaultSetting != null">
|
||||
#{defaultSetting},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
|
|
@ -150,6 +161,7 @@
|
|||
setting=#{setting, jdbcType=ARRAY, typeHandler=com.engine.salary.handle.SalaryListTypeHandler},
|
||||
tenant_key=#{tenantKey},
|
||||
update_time=#{updateTime},
|
||||
default_setting=#{defaultSetting},
|
||||
</set>
|
||||
WHERE id = #{id} AND delete_type = 0
|
||||
</update>
|
||||
|
|
@ -180,6 +192,9 @@
|
|||
<if test="updateTime != null">
|
||||
update_time=#{updateTime},
|
||||
</if>
|
||||
<if test="defaultSetting != null">
|
||||
default_setting=#{defaultSetting},
|
||||
</if>
|
||||
</set>
|
||||
WHERE id = #{id} AND delete_type = 0
|
||||
</update>
|
||||
|
|
@ -209,6 +224,10 @@
|
|||
FROM hrsa_page_list_setting t
|
||||
WHERE delete_type = 0
|
||||
and page = #{page}
|
||||
and default_setting = #{defaultSetting}
|
||||
<if test="creator != null">
|
||||
AND creator = #{creator}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="getTemplatesByPage" resultMap="BaseResultMap">
|
||||
|
|
|
|||
|
|
@ -10,7 +10,6 @@ import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO;
|
|||
import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.engine.salary.entity.salarysob.po.SalarySobPO;
|
||||
import com.engine.salary.entity.setting.param.PageListSettingQueryParam;
|
||||
import com.engine.salary.entity.taxagent.po.TaxAgentPO;
|
||||
import com.engine.salary.enums.UserStatusEnum;
|
||||
import com.engine.salary.enums.datacollection.UseEmployeeTypeEnum;
|
||||
|
|
@ -26,7 +25,10 @@ import com.engine.salary.report.entity.param.SalaryStatisticsEmployeeSalaryQuery
|
|||
import com.engine.salary.report.service.SalaryStatisticsEmployeeService;
|
||||
import com.engine.salary.service.*;
|
||||
import com.engine.salary.service.impl.*;
|
||||
import com.engine.salary.util.*;
|
||||
import com.engine.salary.util.SalaryAssert;
|
||||
import com.engine.salary.util.SalaryDateUtil;
|
||||
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.PageInfo;
|
||||
import com.engine.salary.util.page.SalaryPageUtil;
|
||||
|
|
@ -41,8 +43,6 @@ import weaver.hrm.User;
|
|||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.engine.salary.enums.setting.PageListSettingPageEnum.SALARY_DETAILS_REPORT;
|
||||
|
||||
/**
|
||||
* 薪酬统计员工明细
|
||||
* <p>Copyright: Copyright (c) 2022</p>
|
||||
|
|
@ -350,10 +350,23 @@ public class SalaryStatisticsEmployeeServiceImpl extends Service implements Sala
|
|||
@Override
|
||||
public SalaryStatisticsEmployeeDetailResultDTO getDetailSalaryAcctResultByAcctEmp(List<SalaryAcctEmployeePO> salaryAcctEmployeeList) {
|
||||
// 3.获取薪资项目
|
||||
PageListSettingQueryParam param = PageListSettingQueryParam.builder().page(SALARY_DETAILS_REPORT.getValue()).build();
|
||||
Map setting = getSettingService(user).getPageListSetting(param);
|
||||
List<Long> checked = setting.get("checked") != null ? JsonUtil.parseList(setting.get("checked"), Long.class) : new ArrayList<>();
|
||||
List<SalaryItemPO> salaryItemList = getSalaryItemService(user).listByIds(checked);
|
||||
List<SalaryItemPO> salaryItemList = getSalaryItemService(user).listAll();
|
||||
salaryItemList = salaryItemList.stream()
|
||||
.sorted(new Comparator<SalaryItemPO>() {
|
||||
@Override
|
||||
public int compare(SalaryItemPO o1, SalaryItemPO o2) {
|
||||
if (o1.getSortedIndex() == null && o2.getSortedIndex() == null) {
|
||||
Integer systemType1 = o1.getSystemType() == null ? 0 : o1.getSystemType();
|
||||
Integer systemType2 = o2.getSystemType() == null ? 0 : o2.getSystemType();
|
||||
return systemType1.compareTo(systemType2);
|
||||
} else {
|
||||
Integer sortedIndex1 = o1.getSortedIndex() == null ? 0 : o1.getSortedIndex();
|
||||
Integer sortedIndex2 = o2.getSortedIndex() == null ? 0 : o2.getSortedIndex();
|
||||
return sortedIndex2.compareTo(sortedIndex1);
|
||||
}
|
||||
}
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
if (CollectionUtils.isEmpty(salaryAcctEmployeeList)) {
|
||||
return SalaryStatisticsEmployeeDetailResultDTO.builder()
|
||||
.salaryAcctEmployeeList(Collections.emptyList())
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
package com.engine.salary.report.wrapper;
|
||||
|
||||
import com.cloudstore.eccom.constant.WeaBoolAttr;
|
||||
import com.cloudstore.eccom.pc.table.WeaTable;
|
||||
import com.cloudstore.eccom.pc.table.WeaTableColumn;
|
||||
import com.cloudstore.eccom.result.WeaResultMsg;
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
|
|
@ -11,6 +10,8 @@ import com.engine.salary.component.WeaTableColumnGroup;
|
|||
import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
|
||||
import com.engine.salary.entity.salaryarchive.dto.SalaryArchiveListDTO;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.engine.salary.entity.setting.dto.PageListTemplateDTO;
|
||||
import com.engine.salary.entity.setting.param.PageListSettingQueryParam;
|
||||
import com.engine.salary.enums.salaryitem.SalaryDataTypeEnum;
|
||||
import com.engine.salary.report.common.constant.SalaryConstant;
|
||||
import com.engine.salary.report.entity.bo.SalaryStatisticsReportBO;
|
||||
|
|
@ -39,7 +40,6 @@ import org.apache.commons.collections4.CollectionUtils;
|
|||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.commons.lang3.math.NumberUtils;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import weaver.general.PageIdConst;
|
||||
import weaver.general.Util;
|
||||
import weaver.hrm.User;
|
||||
|
||||
|
|
@ -189,12 +189,14 @@ public class SalaryStatisticsEmployeeWrapper extends Service {
|
|||
if (templateShow) {
|
||||
weaTableColumns = getSettingService(user).getPageListColumns(SALARY_DETAILS_REPORT.getValue());
|
||||
} else {
|
||||
// 显示方案0,显示定制列,默认方式
|
||||
weaTableColumns = buildDetailTableColumns(salaryStatisticsEmployeeDetailResult, true);
|
||||
PageListSettingQueryParam param = PageListSettingQueryParam.builder().page(SALARY_DETAILS_REPORT.getValue()).defaultSetting(0).build();
|
||||
PageListTemplateDTO pageListSetting = getSettingService(user).getPageListSetting(param);
|
||||
weaTableColumns = pageListSetting.getChecked();
|
||||
}
|
||||
|
||||
// 结果
|
||||
resultMap.put("columns", weaTableColumns);
|
||||
resultMap.put("pageInfo", pageInfo);
|
||||
if (queryParam.isExport()) {
|
||||
Map<String, Object> countResultMap = Maps.newHashMap();
|
||||
List<SalaryItemPO> salaryItems = salaryStatisticsEmployeeDetailResult.getSalaryItemList();
|
||||
|
|
@ -212,21 +214,7 @@ public class SalaryStatisticsEmployeeWrapper extends Service {
|
|||
}
|
||||
resultMap.put("salaryItems", salaryStatisticsEmployeeDetailResult.getSalaryItemList());
|
||||
resultMap.put("countResult", countResultMap);
|
||||
} else {
|
||||
WeaTable table = new WeaTable();
|
||||
String pageId = "b72ed4bb-725e-45de-aea1-4eb4c9184af7";
|
||||
table.setPageID(pageId);
|
||||
table.setPageUID(pageId + user.getUID());
|
||||
table.setPagesize(PageIdConst.getPageSize(pageId, user.getUID()));
|
||||
table.setBackfields("");
|
||||
table.setColumns(weaTableColumns);
|
||||
|
||||
WeaResultMsg result = new WeaResultMsg(false);
|
||||
result.putAll(table.makeDataResult());
|
||||
result.success();
|
||||
resultMap.put("dataKey", result.getResultMap());
|
||||
}
|
||||
resultMap.put("pageInfo", pageInfo);
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,12 +6,11 @@ import com.engine.salary.entity.setting.param.*;
|
|||
import com.engine.salary.entity.setting.po.PageListTemplatePO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface SettingService {
|
||||
void savePageListSetting(PageListSettingSaveParam pageListSettingSaveParam);
|
||||
|
||||
Map getPageListSetting(PageListSettingQueryParam param);
|
||||
PageListTemplateDTO getPageListSetting(PageListSettingQueryParam param);
|
||||
|
||||
PageListTemplateDTO getPageListTemplate(PageListTemplateQueryParam param);
|
||||
|
||||
|
|
|
|||
|
|
@ -67,65 +67,97 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
|
||||
@Override
|
||||
public void savePageListSetting(PageListSettingSaveParam pageListSettingSaveParam) {
|
||||
ValidUtil.doValidator(pageListSettingSaveParam);
|
||||
|
||||
Date now = new Date();
|
||||
|
||||
PageListSettingPO pageListSettingPO = getPageListSettingMapper().getByPage(pageListSettingSaveParam.getPage());
|
||||
List<Long> checked = pageListSettingSaveParam.getSetting().stream().distinct().collect(Collectors.toList());
|
||||
//是否保存默认设置
|
||||
Integer defaultSetting = pageListSettingSaveParam.getDefaultSetting();
|
||||
PageListSettingPO pageListSettingPO;
|
||||
if (defaultSetting == 0) {
|
||||
pageListSettingPO = getPageListSettingMapper().getByPage(pageListSettingSaveParam.getPage(), defaultSetting, (long) user.getUID());
|
||||
} else {
|
||||
pageListSettingPO = getPageListSettingMapper().getByPage(pageListSettingSaveParam.getPage(), defaultSetting, null);
|
||||
}
|
||||
|
||||
List<String> checked = pageListSettingSaveParam.getSetting().stream().distinct().collect(Collectors.toList());
|
||||
if (pageListSettingPO != null) {
|
||||
pageListSettingPO.setSetting(checked);
|
||||
pageListSettingPO.setUpdateTime(now);
|
||||
getPageListSettingMapper().updateIgnoreNull(pageListSettingPO);
|
||||
} else {
|
||||
pageListSettingPO = PageListSettingPO.builder()
|
||||
.id(IdGenerator.generate())
|
||||
.page(pageListSettingSaveParam.getPage())
|
||||
.setting(checked)
|
||||
.creator((long) user.getUID())
|
||||
.createTime(now)
|
||||
.updateTime(now)
|
||||
.deleteType(0)
|
||||
.tenantKey(DEFAULT_TENANT_KEY)
|
||||
.build();
|
||||
pageListSettingPO = PageListSettingPO.builder().id(IdGenerator.generate()).page(pageListSettingSaveParam.getPage()).setting(checked).defaultSetting(defaultSetting).creator((long) user.getUID()).createTime(now).updateTime(now).deleteType(0).tenantKey(DEFAULT_TENANT_KEY).build();
|
||||
getPageListSettingMapper().insertIgnoreNull(pageListSettingPO);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map getPageListSetting(PageListSettingQueryParam param) {
|
||||
public PageListTemplateDTO getPageListSetting(PageListSettingQueryParam param) {
|
||||
String page = param.getPage();
|
||||
Map result = new HashMap();
|
||||
PageListSettingPO pageListSettingPO = getPageListSettingMapper().getByPage(page);
|
||||
if (SALARY_DETAILS_REPORT.getValue().equals(page)) {
|
||||
List<SalaryItemPO> salaryItemList = getSalaryItemService(user).listAll();
|
||||
salaryItemList = salaryItemList.stream()
|
||||
.filter(po -> {
|
||||
String name = param.getName();
|
||||
if (StrUtil.isNotEmpty(name)) {
|
||||
return po.getName() != null && po.getName().contains(name);
|
||||
}
|
||||
return true;
|
||||
})
|
||||
.sorted((o1, o2) -> {
|
||||
if (o1.getSortedIndex() == null && o2.getSortedIndex() == null) {
|
||||
Integer systemType1 = o1.getSystemType() == null ? 0 : o1.getSystemType();
|
||||
Integer systemType2 = o2.getSystemType() == null ? 0 : o2.getSystemType();
|
||||
return systemType1.compareTo(systemType2);
|
||||
} else {
|
||||
Integer sortedIndex1 = o1.getSortedIndex() == null ? 0 : o1.getSortedIndex();
|
||||
Integer sortedIndex2 = o2.getSortedIndex() == null ? 0 : o2.getSortedIndex();
|
||||
return sortedIndex2.compareTo(sortedIndex1);
|
||||
}
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
result.put("setting", salaryItemList);
|
||||
if (pageListSettingPO != null && CollUtil.isNotEmpty(pageListSettingPO.getSetting())) {
|
||||
result.put("checked", pageListSettingPO.getSetting());
|
||||
} else {
|
||||
List<Long> collect = salaryItemList.stream().map(SalaryItemPO::getId).collect(Collectors.toList());
|
||||
result.put("checked", collect);
|
||||
List<WeaTableColumn> columns = new ArrayList<>();
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(87614, "薪资所属月"), "salaryMonth"));
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(86184, "个税扣缴义务人"), "taxAgent"));
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(86184, "账套"), "salarySob"));
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(0, "姓名"), "userName"));
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(0, "分部"), "subCompany"));
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(0, "部门"), "department"));
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(0, "岗位"), "jobTitle"));
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(0, "员工状态"), "status"));
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(0, "工号"), "workCode"));
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(0, "入职日期"), "companystartdate"));
|
||||
columns.add(new WeaTableColumn("100px", SalaryI18nUtil.getI18nLabel(86184, "次数"), "acctTimes").setDisplay(WeaBoolAttr.FALSE));
|
||||
if (StrUtil.isNotBlank(param.getName())) {
|
||||
columns = columns.stream().filter(column -> column.getText().contains(param.getName())).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
List<SalaryItemPO> salaryItemList = getSalaryItemService(user).listAll();
|
||||
List<WeaTableColumn> collect = salaryItemList.stream().filter(po -> {
|
||||
String name = param.getName();
|
||||
if (StrUtil.isNotEmpty(name)) {
|
||||
return po.getName() != null && po.getName().contains(name);
|
||||
}
|
||||
return true;
|
||||
}).sorted((o1, o2) -> {
|
||||
if (o1.getSortedIndex() == null && o2.getSortedIndex() == null) {
|
||||
Integer systemType1 = o1.getSystemType() == null ? 0 : o1.getSystemType();
|
||||
Integer systemType2 = o2.getSystemType() == null ? 0 : o2.getSystemType();
|
||||
return systemType1.compareTo(systemType2);
|
||||
} else {
|
||||
Integer sortedIndex1 = o1.getSortedIndex() == null ? 0 : o1.getSortedIndex();
|
||||
Integer sortedIndex2 = o2.getSortedIndex() == null ? 0 : o2.getSortedIndex();
|
||||
return sortedIndex2.compareTo(sortedIndex1);
|
||||
}
|
||||
}).map(item -> new WeaTableColumn("100px", item.getName(), item.getId() + SalaryConstant.DYNAMIC_SUFFIX)).collect(Collectors.toList());
|
||||
|
||||
columns.addAll(collect);
|
||||
|
||||
Integer defaultSetting = param.getDefaultSetting();
|
||||
Map<String, WeaTableColumn> columnMap = SalaryEntityUtil.convert2Map(columns, WeaTableColumn::getColumn);
|
||||
List<WeaTableColumn> checkedList = new ArrayList<>();
|
||||
|
||||
//是否查询默认设置
|
||||
PageListSettingPO pageListSettingPO;
|
||||
if (defaultSetting == 0) {
|
||||
pageListSettingPO = getPageListSettingMapper().getByPage(page, 0, (long) user.getUID());
|
||||
//查不到个人查默认
|
||||
if (pageListSettingPO == null) {
|
||||
pageListSettingPO = getPageListSettingMapper().getByPage(page, 1, null);
|
||||
}
|
||||
} else {
|
||||
pageListSettingPO = getPageListSettingMapper().getByPage(page, 1, null);
|
||||
}
|
||||
|
||||
//查询选中的项目
|
||||
if (pageListSettingPO != null) {
|
||||
checkedList = Optional.ofNullable(pageListSettingPO.getSetting()).orElse(new ArrayList<>()).stream().map(s -> columnMap.getOrDefault(s, new WeaTableColumn())).collect(Collectors.toList());
|
||||
} else {
|
||||
checkedList = columns;
|
||||
}
|
||||
return PageListTemplateDTO.builder().setting(columns).checked(checkedList).build();
|
||||
}
|
||||
return result;
|
||||
|
||||
return PageListTemplateDTO.builder().setting(new ArrayList<>()).checked(new ArrayList<>()).build();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -150,27 +182,23 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
}
|
||||
|
||||
List<SalaryItemPO> salaryItemList = getSalaryItemService(user).listAll();
|
||||
List<WeaTableColumn> collect = salaryItemList.stream()
|
||||
.filter(po -> {
|
||||
String name = param.getName();
|
||||
if (StrUtil.isNotEmpty(name)) {
|
||||
return po.getName() != null && po.getName().contains(name);
|
||||
}
|
||||
return true;
|
||||
})
|
||||
.sorted((o1, o2) -> {
|
||||
if (o1.getSortedIndex() == null && o2.getSortedIndex() == null) {
|
||||
Integer systemType1 = o1.getSystemType() == null ? 0 : o1.getSystemType();
|
||||
Integer systemType2 = o2.getSystemType() == null ? 0 : o2.getSystemType();
|
||||
return systemType1.compareTo(systemType2);
|
||||
} else {
|
||||
Integer sortedIndex1 = o1.getSortedIndex() == null ? 0 : o1.getSortedIndex();
|
||||
Integer sortedIndex2 = o2.getSortedIndex() == null ? 0 : o2.getSortedIndex();
|
||||
return sortedIndex2.compareTo(sortedIndex1);
|
||||
}
|
||||
})
|
||||
.map(item -> new WeaTableColumn("100px", item.getName(), item.getId() + SalaryConstant.DYNAMIC_SUFFIX))
|
||||
.collect(Collectors.toList());
|
||||
List<WeaTableColumn> collect = salaryItemList.stream().filter(po -> {
|
||||
String name = param.getName();
|
||||
if (StrUtil.isNotEmpty(name)) {
|
||||
return po.getName() != null && po.getName().contains(name);
|
||||
}
|
||||
return true;
|
||||
}).sorted((o1, o2) -> {
|
||||
if (o1.getSortedIndex() == null && o2.getSortedIndex() == null) {
|
||||
Integer systemType1 = o1.getSystemType() == null ? 0 : o1.getSystemType();
|
||||
Integer systemType2 = o2.getSystemType() == null ? 0 : o2.getSystemType();
|
||||
return systemType1.compareTo(systemType2);
|
||||
} else {
|
||||
Integer sortedIndex1 = o1.getSortedIndex() == null ? 0 : o1.getSortedIndex();
|
||||
Integer sortedIndex2 = o2.getSortedIndex() == null ? 0 : o2.getSortedIndex();
|
||||
return sortedIndex2.compareTo(sortedIndex1);
|
||||
}
|
||||
}).map(item -> new WeaTableColumn("100px", item.getName(), item.getId() + SalaryConstant.DYNAMIC_SUFFIX)).collect(Collectors.toList());
|
||||
|
||||
columns.addAll(collect);
|
||||
|
||||
|
|
@ -179,10 +207,7 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
if (id != null) {
|
||||
PageListTemplatePO po = getPageListTemplateMapper().getById(id);
|
||||
if (po != null) {
|
||||
checkedList = Optional.ofNullable(po.getSetting()).orElse(new ArrayList<>())
|
||||
.stream()
|
||||
.map(s -> columnMap.getOrDefault(s, new WeaTableColumn()))
|
||||
.collect(Collectors.toList());
|
||||
checkedList = Optional.ofNullable(po.getSetting()).orElse(new ArrayList<>()).stream().map(s -> columnMap.getOrDefault(s, new WeaTableColumn())).collect(Collectors.toList());
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -207,22 +232,19 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
|
||||
Collection<TaxAgentPO> taxAgentPOS = getTaxAgentService().listAllTaxAgents((long) user.getUID());
|
||||
List<String> taxIds = SalaryEntityUtil.properties(taxAgentPOS, po -> po.getId().toString(), Collectors.toList());
|
||||
pos = pos.stream()
|
||||
.filter(po -> {
|
||||
if (po.getSharedType() == 1) {
|
||||
List limitIds = po.getLimitIds();
|
||||
List<String> collect = new ArrayList<>();
|
||||
for (int i = 0; i < limitIds.size(); i++) {
|
||||
collect.add(limitIds.get(i).toString());
|
||||
}
|
||||
return CollectionUtil.isNotEmpty(limitIds) && CollectionUtil.intersection(collect, taxIds).size() != 0;
|
||||
}
|
||||
return true;
|
||||
})
|
||||
.peek(po -> {
|
||||
po.setChecked(link != null && po.getId().equals(link.getTemplateId()));
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
pos = pos.stream().filter(po -> {
|
||||
if (po.getSharedType() == 1) {
|
||||
List limitIds = po.getLimitIds();
|
||||
List<String> collect = new ArrayList<>();
|
||||
for (int i = 0; i < limitIds.size(); i++) {
|
||||
collect.add(limitIds.get(i).toString());
|
||||
}
|
||||
return CollectionUtil.isNotEmpty(limitIds) && CollectionUtil.intersection(collect, taxIds).size() != 0;
|
||||
}
|
||||
return true;
|
||||
}).peek(po -> {
|
||||
po.setChecked(link != null && po.getId().equals(link.getTemplateId()));
|
||||
}).collect(Collectors.toList());
|
||||
return pos;
|
||||
}
|
||||
|
||||
|
|
@ -234,19 +256,7 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
|
||||
PageListTemplatePO po;
|
||||
if (id == null) {
|
||||
po = PageListTemplatePO.builder()
|
||||
.id(IdGenerator.generate())
|
||||
.page(param.getPage())
|
||||
.name(param.getName())
|
||||
.sharedType(param.getSharedType())
|
||||
.limitIds(param.getLimitIds())
|
||||
.setting(param.getSetting())
|
||||
.creator((long) user.getUID())
|
||||
.createTime(now)
|
||||
.updateTime(now)
|
||||
.deleteType(0)
|
||||
.tenantKey(DEFAULT_TENANT_KEY)
|
||||
.build();
|
||||
po = PageListTemplatePO.builder().id(IdGenerator.generate()).page(param.getPage()).name(param.getName()).sharedType(param.getSharedType()).limitIds(param.getLimitIds()).setting(param.getSetting()).creator((long) user.getUID()).createTime(now).updateTime(now).deleteType(0).tenantKey(DEFAULT_TENANT_KEY).build();
|
||||
getPageListTemplateMapper().insertIgnoreNull(po);
|
||||
} else {
|
||||
po = getPageListTemplateMapper().getById(id);
|
||||
|
|
@ -274,17 +284,7 @@ public class SettingServiceImpl extends Service implements SettingService {
|
|||
Set<Long> ids = SalaryEntityUtil.properties(pageLinkPOS, PageLinkPO::getId);
|
||||
getPageLinkMapper().deleteByIds(ids);
|
||||
}
|
||||
PageLinkPO pageLinkPO = PageLinkPO.builder()
|
||||
.id(IdGenerator.generate())
|
||||
.employeeId((long) user.getUID())
|
||||
.page(param.getPage())
|
||||
.templateId(param.getTemplateId())
|
||||
.tenantKey(DEFAULT_TENANT_KEY)
|
||||
.createTime(new Date())
|
||||
.updateTime(new Date())
|
||||
.creator((long) user.getUID())
|
||||
.deleteType(0)
|
||||
.build();
|
||||
PageLinkPO pageLinkPO = PageLinkPO.builder().id(IdGenerator.generate()).employeeId((long) user.getUID()).page(param.getPage()).templateId(param.getTemplateId()).tenantKey(DEFAULT_TENANT_KEY).createTime(new Date()).updateTime(new Date()).creator((long) user.getUID()).deleteType(0).build();
|
||||
|
||||
getPageLinkMapper().insertIgnoreNull(pageLinkPO);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@ public class SalaryCommonController {
|
|||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getPageListSetting(@Context HttpServletRequest request, @Context HttpServletResponse response,@RequestBody PageListSettingQueryParam param) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<PageListSettingQueryParam, Map>(user).run(getSalaryCommonWrapper(user)::getPageListSetting, param);
|
||||
return new ResponseResult<PageListSettingQueryParam, PageListTemplateDTO>(user).run(getSalaryCommonWrapper(user)::getPageListSetting, param);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -12,7 +12,6 @@ import com.engine.salary.service.impl.SettingServiceImpl;
|
|||
import weaver.hrm.User;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
public class SalaryCommonWrapper extends Service {
|
||||
|
|
@ -38,7 +37,7 @@ public class SalaryCommonWrapper extends Service {
|
|||
}
|
||||
|
||||
|
||||
public Map getPageListSetting(PageListSettingQueryParam param) {
|
||||
public PageListTemplateDTO getPageListSetting(PageListSettingQueryParam param) {
|
||||
return getSettingService(user).getPageListSetting(param);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue