weaver-hrm-salary/src/com/engine/salary/service/impl/SalaryAcctReportServiceImpl...

99 lines
3.4 KiB
Java
Raw Normal View History

2022-07-04 19:21:44 +08:00
package com.engine.salary.service.impl;
import com.engine.core.impl.Service;
import com.engine.salary.encrypt.AESEncryptUtil;
import com.engine.salary.encrypt.report.SalaryAcctResultReportPOEncrypt;
import com.engine.salary.entity.report.po.SalaryAcctResultReportPO;
import com.engine.salary.mapper.report.SalaryAcctResultReportMapper;
2022-07-04 19:21:44 +08:00
import com.engine.salary.service.SalaryAcctReportService;
import com.engine.salary.util.db.MapperProxyFactory;
2022-07-04 19:21:44 +08:00
import com.google.common.collect.Lists;
import org.apache.commons.collections4.CollectionUtils;
2022-07-04 19:21:44 +08:00
import java.util.Collection;
2022-07-04 19:21:44 +08:00
import java.util.List;
import java.util.stream.Collectors;
/**
2022-07-05 15:04:00 +08:00
* 薪资报表
2022-07-04 19:21:44 +08:00
* <p>Copyright: Copyright (c) 2022</p>
* <p>Company: 泛微软件</p>
*
* @author qiantao
* @version 1.0
**/
2022-07-05 15:04:00 +08:00
public class SalaryAcctReportServiceImpl extends Service implements SalaryAcctReportService {
2022-07-04 19:21:44 +08:00
private SalaryAcctResultReportMapper getSalaryAcctResultReportMapper() {
return MapperProxyFactory.getProxy(SalaryAcctResultReportMapper.class);
}
2022-07-04 19:21:44 +08:00
/**
* 薪酬解密方法
*
* @param s 待解密字符串
* @return
*/
2022-07-05 15:08:59 +08:00
@Override
public List<String> decrypt(List<String> s) {
2022-07-04 19:21:44 +08:00
if (s != null) {
2022-07-05 15:08:59 +08:00
return s.stream().map(AESEncryptUtil::decrypt).collect(Collectors.toList());
2022-07-04 19:21:44 +08:00
}
return Lists.newArrayList();
}
2022-07-05 15:08:59 +08:00
/**
* 薪酬解密方法
*
* @param s 待解密字符串
* @return
*/
@Override
public String decrypt(String s) {
return AESEncryptUtil.decrypt(s);
}
/**
* 保存核算报表数据
*
* @param pos
*/
@Override
public void batchSave(Collection<SalaryAcctResultReportPO> pos) {
if (CollectionUtils.isNotEmpty(pos)) {
SalaryAcctResultReportPOEncrypt.encryptList(pos);
List<List<SalaryAcctResultReportPO>> partition = Lists.partition((List) pos, 100);
partition.forEach(getSalaryAcctResultReportMapper()::batchInsert);
}
}
@Override
public void deleteBySalaryAcctRecordIds(Collection<Long> salaryAcctRecordIds) {
if (CollectionUtils.isNotEmpty(salaryAcctRecordIds)) {
List<List<Long>> partition = Lists.partition((List) salaryAcctRecordIds, 100);
partition.forEach(getSalaryAcctResultReportMapper()::deleteBySalaryAcctRecordIds);
}
}
@Override
public void deleteBySalaryAcctRecordId(Long salaryAcctRecordId) {
getSalaryAcctResultReportMapper().deleteBySalaryAcctRecordId(salaryAcctRecordId);
}
@Override
public void deleteBySalaryAcctEmpIds(Collection<Long> salaryAcctEmpIds) {
if (CollectionUtils.isNotEmpty(salaryAcctEmpIds)) {
List<String> collect = salaryAcctEmpIds.stream().map(e -> AESEncryptUtil.encrypt(e.toString())).collect(Collectors.toList());
getSalaryAcctResultReportMapper().deleteBySalaryAcctEmpIds(collect);
}
}
@Override
public void deleteByAcctEmployeeIdsAndSalaryItemIds(Collection<Long> salaryAcctEmployeeIds, Collection<Long> salaryItemIds) {
if (CollectionUtils.isNotEmpty(salaryAcctEmployeeIds) && CollectionUtils.isNotEmpty(salaryItemIds)) {
List<String> salaryAcctEmployeeIdsStr = salaryAcctEmployeeIds.stream().map(e -> AESEncryptUtil.encrypt(e.toString())).collect(Collectors.toList());
getSalaryAcctResultReportMapper().deleteByAcctEmpIdsAndSalaryItemIds(salaryAcctEmployeeIdsStr, salaryItemIds);
}
}
2022-07-04 19:21:44 +08:00
}