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; import com.engine.salary.service.SalaryAcctReportService; import com.engine.salary.util.db.MapperProxyFactory; import com.google.common.collect.Lists; import org.apache.commons.collections4.CollectionUtils; import java.util.Collection; import java.util.List; import java.util.stream.Collectors; /** * 薪资报表 *

Copyright: Copyright (c) 2022

*

Company: 泛微软件

* * @author qiantao * @version 1.0 **/ public class SalaryAcctReportServiceImpl extends Service implements SalaryAcctReportService { private SalaryAcctResultReportMapper getSalaryAcctResultReportMapper() { return MapperProxyFactory.getProxy(SalaryAcctResultReportMapper.class); } /** * 薪酬解密方法 * * @param s 待解密字符串 * @return */ @Override public List decrypt(List s) { if (s != null) { return s.stream().map(AESEncryptUtil::decrypt).collect(Collectors.toList()); } return Lists.newArrayList(); } /** * 薪酬解密方法 * * @param s 待解密字符串 * @return */ @Override public String decrypt(String s) { return AESEncryptUtil.decrypt(s); } /** * 保存核算报表数据 * * @param pos */ @Override public void batchSave(Collection pos) { if (CollectionUtils.isNotEmpty(pos)) { SalaryAcctResultReportPOEncrypt.encryptList(pos); List> partition = Lists.partition((List) pos, 100); partition.forEach(getSalaryAcctResultReportMapper()::batchInsert); } } @Override public void deleteBySalaryAcctRecordIds(Collection salaryAcctRecordIds) { if (CollectionUtils.isNotEmpty(salaryAcctRecordIds)) { List> partition = Lists.partition((List) salaryAcctRecordIds, 100); partition.forEach(getSalaryAcctResultReportMapper()::deleteBySalaryAcctRecordIds); } } @Override public void deleteBySalaryAcctRecordId(Long salaryAcctRecordId) { getSalaryAcctResultReportMapper().deleteBySalaryAcctRecordId(salaryAcctRecordId); } @Override public void deleteBySalaryAcctEmpIds(Collection salaryAcctEmpIds) { if (CollectionUtils.isNotEmpty(salaryAcctEmpIds)) { List collect = salaryAcctEmpIds.stream().map(e -> AESEncryptUtil.encrypt(e.toString())).collect(Collectors.toList()); getSalaryAcctResultReportMapper().deleteBySalaryAcctEmpIds(collect); } } @Override public void deleteByAcctEmployeeIdsAndSalaryItemIds(Collection salaryAcctEmployeeIds, Collection salaryItemIds) { if (CollectionUtils.isNotEmpty(salaryAcctEmployeeIds) && CollectionUtils.isNotEmpty(salaryItemIds)) { List salaryAcctEmployeeIdsStr = salaryAcctEmployeeIds.stream().map(e -> AESEncryptUtil.encrypt(e.toString())).collect(Collectors.toList()); getSalaryAcctResultReportMapper().deleteByAcctEmpIdsAndSalaryItemIds(salaryAcctEmployeeIdsStr, salaryItemIds); } } }