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

174 lines
6.0 KiB
Java

package com.engine.salary.biz;
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
import com.engine.salary.entity.hrm.DeptInfo;
import com.engine.salary.entity.hrm.PositionInfo;
import com.engine.salary.entity.hrm.SubCompanyInfo;
import com.engine.salary.entity.salarysob.param.SalarySobRangeEmpQueryParam;
import com.engine.salary.mapper.datacollection.EmployMapper;
import com.google.common.collect.Lists;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.ibatis.session.SqlSession;
import weaver.conn.mybatis.MyBatisFactory;
import weaver.general.BaseBean;
import java.util.ArrayList;
import java.util.List;
public class EmployBiz extends BaseBean {
public List<DataCollectionEmployee> listAll(){
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
return mapper.listAll();
} finally {
sqlSession.close();
}
}
/**
* 查询人员列表
*
* @return
*/
public List<DataCollectionEmployee> listEmployee() {
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
return mapper.listEmployee();
} finally {
sqlSession.close();
}
}
public List<DataCollectionEmployee> getEmployeeByIds(List<Long> list) {
if (CollectionUtils.isEmpty(list)) {
return new ArrayList<>();
}
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
List<DataCollectionEmployee> dataList = new ArrayList<>();
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
List<List<Long>> partition = Lists.partition(list, 1000);
for (List<Long> longs : partition) {
dataList.addAll(mapper.getEmployeeByIds(longs));
}
return dataList;
} finally {
sqlSession.close();
}
}
public List<DataCollectionEmployee> getEmployeeByIdsAll(List<Long> list) {
if (CollectionUtils.isEmpty(list)) {
return new ArrayList<>();
}
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
List<DataCollectionEmployee> employeeList = new ArrayList<>();
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
List<List<Long>> partition = Lists.partition(list, 1000);
partition.forEach(e->{
List<DataCollectionEmployee> employeeByIdsAll = mapper.getEmployeeByIdsAll(e);
employeeList.addAll(employeeByIdsAll);
});
return employeeList;
} finally {
sqlSession.close();
}
}
/**
* 岗位信息
*
* @param list
* @return
*/
public List<PositionInfo> listPositionInfo(List<Long> list) {
if (CollectionUtils.isEmpty(list)) {
return new ArrayList<>();
}
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
return mapper.listPositionInfo(list);
} finally {
sqlSession.close();
}
}
public List<DataCollectionEmployee> listByParams(List<SalarySobRangeEmpQueryParam> includeQueryParams) {
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
List<DataCollectionEmployee> emps = new ArrayList<>();
List<List<SalarySobRangeEmpQueryParam>> partition = Lists.partition(includeQueryParams, 100);
partition.forEach(list->{
emps.addAll(mapper.listByParams(list));
});
return emps;
} finally {
sqlSession.close();
}
}
public DataCollectionEmployee getEmployeeById(Long employeeId) {
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
return mapper.getEmployeeById(employeeId);
} finally {
sqlSession.close();
}
}
public List<DeptInfo> getDeptInfoList(List<Long> list) {
if (CollectionUtils.isEmpty(list)) {
return new ArrayList<>();
}
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
return mapper.getDeptInfoList(list);
} finally {
sqlSession.close();
}
}
public List<SubCompanyInfo> getSubCompanyInfoList(List<Long> list) {
if (CollectionUtils.isEmpty(list)) {
return new ArrayList<>();
}
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
return mapper.getSubCompanyInfoList(list);
} finally {
sqlSession.close();
}
}
public List<DataCollectionEmployee> listAllForReport() {
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
return mapper.listAllForReport();
} finally {
sqlSession.close();
}
}
public List<DataCollectionEmployee> listByDismissDate(String dismissDate) {
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
try {
EmployMapper mapper = sqlSession.getMapper(EmployMapper.class);
return mapper.listByDismissDate(dismissDate);
} finally {
sqlSession.close();
}
}
}