导入可以带出数据功能
This commit is contained in:
parent
27c84676b7
commit
341b122fe7
|
|
@ -2,6 +2,7 @@ package com.engine.salary.service.impl;
|
|||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.TypeReference;
|
||||
import com.cloudstore.eccom.pc.table.WeaTableColumn;
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.biz.SIArchivesBiz;
|
||||
|
|
@ -25,6 +26,7 @@ import com.engine.salary.service.SIImportService;
|
|||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.db.MapperProxyFactory;
|
||||
import com.engine.salary.util.excel.ExcelUtil;
|
||||
import com.google.common.collect.Lists;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import weaver.hrm.User;
|
||||
|
|
@ -81,6 +83,29 @@ public class SIImportServiceImpl extends Service implements SIImportService {
|
|||
// List<Map<String, Object>> datas = buildTableData(insuranceArchivesEmployeePOS);
|
||||
//表头
|
||||
excelSheetData.add(Arrays.asList(headers.toArray(new String[0])));
|
||||
Map<String, Object> dataMap = getSIArchivesService(user).listPage(param);
|
||||
List<Map<String, Object>> records = (List<Map<String, Object>>)dataMap.get("datas");
|
||||
List<WeaTableColumn> columns = (List<WeaTableColumn>)dataMap.get("columns");
|
||||
List<String> rowCloumn = Lists.newArrayList();
|
||||
List<String> names = columns.stream().map(WeaTableColumn::getText).collect(Collectors.toList());
|
||||
headers.forEach(header -> {
|
||||
if (names.contains(header)){
|
||||
columns.forEach(column -> {
|
||||
//用来判断columns中是否包含header
|
||||
if (header.equals(column.getText())){
|
||||
rowCloumn.add(column.getColumn());
|
||||
}
|
||||
|
||||
});
|
||||
}else {
|
||||
rowCloumn.add(null);
|
||||
}
|
||||
});
|
||||
records.forEach(record -> {
|
||||
List<Object> row = Lists.newArrayList();
|
||||
rowCloumn.forEach(column -> row.add(record.get(column)));
|
||||
excelSheetData.add(row);
|
||||
});
|
||||
// 3.表数据
|
||||
//工作簿数据
|
||||
return ExcelUtil.genWorkbookV2(excelSheetData, sheetName);
|
||||
|
|
|
|||
|
|
@ -4,21 +4,26 @@ import com.engine.common.util.ParamUtil;
|
|||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.salary.entity.siaccount.po.InsuranceAccountInspectPO;
|
||||
import com.engine.salary.entity.siarchives.param.InsuranceArchivesListParam;
|
||||
import com.engine.salary.entity.siarchives.po.InsuranceArchivesEmployeePO;
|
||||
import com.engine.salary.entity.sischeme.dto.InsuranceSchemeListDTO;
|
||||
import com.engine.salary.entity.sischeme.param.InsuranceSchemeParam;
|
||||
import com.engine.salary.entity.sischeme.param.InsuranceSchemeReqParam;
|
||||
import com.engine.salary.entity.sischeme.param.SISchemaImportParam;
|
||||
import com.engine.salary.enums.sicategory.WelfareTypeEnum;
|
||||
import com.engine.salary.mapper.siarchives.SocialSchemeMapper;
|
||||
import com.engine.salary.service.SIAccountService;
|
||||
import com.engine.salary.service.SISchemeService;
|
||||
import com.engine.salary.service.impl.SIAccountServiceImpl;
|
||||
import com.engine.salary.service.impl.SISchemeServiceImpl;
|
||||
import com.engine.salary.util.ResponseResult;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.engine.salary.util.page.SalaryPageUtil;
|
||||
import com.engine.salary.wrapper.SISchemeWrapper;
|
||||
import io.swagger.v3.oas.annotations.parameters.RequestBody;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.ibatis.session.SqlSession;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import weaver.conn.mybatis.MyBatisFactory;
|
||||
import weaver.hrm.HrmUserVarify;
|
||||
import weaver.hrm.User;
|
||||
|
||||
|
|
@ -31,10 +36,7 @@ import javax.ws.rs.core.Response;
|
|||
import javax.ws.rs.core.StreamingOutput;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.net.URLEncoder;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
|
|
@ -238,6 +240,15 @@ public class SISchemeController {
|
|||
List<InsuranceAccountInspectPO> insuranceAccountInspectPOS = getSIAccountService(user).allInspects(param.getIds(), param.getBillMonth());
|
||||
param.setEmployeeIds(insuranceAccountInspectPOS.stream().map(InsuranceAccountInspectPO::getEmployeeId).distinct().collect(Collectors.toList()));
|
||||
}
|
||||
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
|
||||
SocialSchemeMapper socialSchemeMapper = sqlSession.getMapper(SocialSchemeMapper.class);
|
||||
List<InsuranceArchivesEmployeePO> page = new ArrayList<>();
|
||||
SalaryPageUtil.start(param.getCurrent(), param.getPageSize());
|
||||
page = socialSchemeMapper.queryEmployeeList(param);
|
||||
PageInfo<InsuranceArchivesEmployeePO> pageInfo = new PageInfo<>(page, InsuranceArchivesEmployeePO.class);
|
||||
int total = (int)pageInfo.getTotal();
|
||||
param.setPageSize(total);
|
||||
param.setCurrent(1);
|
||||
XSSFWorkbook workbook = getService(user).exportTemplate(param);
|
||||
String fileName = null;
|
||||
try {
|
||||
|
|
|
|||
Loading…
Reference in New Issue