weaver-hrm-salary/src/com/engine/salary/biz/AddUpDeductionBiz.java

172 lines
5.6 KiB
Java
Raw Normal View History

2022-03-04 10:10:38 +08:00
package com.engine.salary.biz;
2022-12-12 09:37:15 +08:00
import com.engine.salary.encrypt.EncryptUtil;
2022-03-07 15:08:56 +08:00
import com.engine.salary.entity.datacollection.AddUpDeduction;
2022-03-08 18:10:03 +08:00
import com.engine.salary.entity.datacollection.dto.AddUpDeductionDTO;
2022-03-08 15:40:26 +08:00
import com.engine.salary.entity.datacollection.dto.AddUpDeductionRecordDTO;
2022-03-04 10:10:38 +08:00
import com.engine.salary.entity.datacollection.param.AddUpDeductionQueryParam;
import com.engine.salary.mapper.datacollection.AddUpDeductionMapper;
2024-03-14 18:16:20 +08:00
import com.engine.salary.util.SalaryI18nUtil;
2022-05-26 13:41:58 +08:00
import com.google.common.collect.Lists;
2022-03-07 15:08:56 +08:00
import org.apache.commons.collections4.CollectionUtils;
2022-03-04 10:10:38 +08:00
import org.apache.ibatis.session.SqlSession;
import weaver.conn.mybatis.MyBatisFactory;
import weaver.general.BaseBean;
2024-01-30 09:58:13 +08:00
import java.util.ArrayList;
import java.util.List;
2022-03-04 10:10:38 +08:00
public class AddUpDeductionBiz extends BaseBean {
2022-12-12 09:37:15 +08:00
private final EncryptUtil encryptUtil = new EncryptUtil();
2022-03-04 10:10:38 +08:00
/**
2022-03-07 15:08:56 +08:00
* 关联查询查询列表
2022-03-04 10:10:38 +08:00
*
* @param param
* @return
*/
2022-03-08 18:10:03 +08:00
public List<AddUpDeductionDTO> list(AddUpDeductionQueryParam param) {
2022-03-04 10:10:38 +08:00
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
AddUpDeductionMapper mapper = sqlSession.getMapper(AddUpDeductionMapper.class);
2022-06-10 16:43:38 +08:00
List<AddUpDeductionDTO> list = mapper.list(param);
2024-03-14 18:16:20 +08:00
encryptUtil.decryptList(list, AddUpDeductionDTO.class);
SalaryI18nUtil.i18nList(list);
2023-10-19 17:35:33 +08:00
return list;
2022-03-07 15:08:56 +08:00
} finally {
sqlSession.close();
}
}
/**
* 条件查询
*
* @param param
* @return
*/
public List<AddUpDeduction> listSome(AddUpDeduction param) {
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
AddUpDeductionMapper mapper = sqlSession.getMapper(AddUpDeductionMapper.class);
2023-10-19 17:35:33 +08:00
if (CollectionUtils.isNotEmpty(param.getEmployeeIds())) {
List<AddUpDeduction> addUpDeductions = new ArrayList<>();
List<List<Long>> partition = Lists.partition(param.getEmployeeIds(), 500);
partition.forEach(l -> {
param.setEmployeeIds(l);
addUpDeductions.addAll(mapper.listSome(param));
});
return encryptUtil.decryptList(addUpDeductions, AddUpDeduction.class);
} else {
List<AddUpDeduction> addUpDeductions = mapper.listSome(param);
return encryptUtil.decryptList(addUpDeductions, AddUpDeduction.class);
}
2022-03-07 15:08:56 +08:00
} finally {
sqlSession.close();
}
}
2022-03-08 15:40:26 +08:00
/**
* 根据id获取
2022-03-10 11:09:08 +08:00
*
2022-03-08 15:40:26 +08:00
* @param id
* @return
*/
public AddUpDeduction getById(Long id) {
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
AddUpDeductionMapper mapper = sqlSession.getMapper(AddUpDeductionMapper.class);
2022-05-24 09:23:17 +08:00
AddUpDeduction byId = mapper.getById(id);
return encryptUtil.decrypt(byId, AddUpDeduction.class);
2022-03-08 15:40:26 +08:00
} finally {
sqlSession.close();
}
}
/**
* 详情列表
2022-03-10 11:09:08 +08:00
*
2022-03-08 15:40:26 +08:00
* @param param
* @return
*/
2022-03-10 11:09:08 +08:00
public List<AddUpDeductionRecordDTO> recordList(AddUpDeductionQueryParam param) {
2022-03-08 15:40:26 +08:00
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
AddUpDeductionMapper mapper = sqlSession.getMapper(AddUpDeductionMapper.class);
2022-06-10 16:43:38 +08:00
List<AddUpDeductionRecordDTO> addUpDeductionRecordStrDTOS = mapper.recordList(param);
2024-09-20 15:58:05 +08:00
encryptUtil.decryptList(addUpDeductionRecordStrDTOS, AddUpDeductionRecordDTO.class);
SalaryI18nUtil.i18nList(addUpDeductionRecordStrDTOS);
return addUpDeductionRecordStrDTOS;
2022-03-08 15:40:26 +08:00
} finally {
sqlSession.close();
}
}
2022-03-07 15:08:56 +08:00
/**
* 批量插入
*
* @param param
* @return
*/
public void batchSave(List<AddUpDeduction> param) {
2022-05-26 13:41:58 +08:00
if (CollectionUtils.isEmpty(param)) {
return;
}
2022-03-07 15:08:56 +08:00
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
AddUpDeductionMapper mapper = sqlSession.getMapper(AddUpDeductionMapper.class);
encryptUtil.encryptList(param, AddUpDeduction.class);
2022-05-26 13:41:58 +08:00
List<List<AddUpDeduction>> partition = Lists.partition(param, 100);
partition.forEach(mapper::insertData);
2022-03-10 11:09:08 +08:00
sqlSession.commit();
2022-03-07 15:08:56 +08:00
} finally {
sqlSession.close();
}
}
/**
* 批量插入
*
* @param param
* @return
*/
public void batchUpdate(List<AddUpDeduction> param) {
2022-05-26 13:41:58 +08:00
if (CollectionUtils.isEmpty(param)) {
return;
}
2022-03-07 15:08:56 +08:00
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
AddUpDeductionMapper mapper = sqlSession.getMapper(AddUpDeductionMapper.class);
encryptUtil.encryptList(param, AddUpDeduction.class);
2022-05-26 13:41:58 +08:00
List<List<AddUpDeduction>> partition = Lists.partition(param, 100);
partition.forEach(mapper::updateData);
2022-03-07 15:08:56 +08:00
sqlSession.commit();
} finally {
sqlSession.close();
}
}
public void batchDeleteByIDS(List<Long> ids) {
if (CollectionUtils.isEmpty(ids)) {
return;
}
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
AddUpDeductionMapper mapper = sqlSession.getMapper(AddUpDeductionMapper.class);
List<List<Long>> partition = Lists.partition(ids, 100);
partition.forEach(mapper::deleteData);
sqlSession.commit();
} finally {
sqlSession.close();
}
}
2022-03-04 10:10:38 +08:00
}