Excel导入导出

yun-zuoyi
yunhao.wang 7 years ago
parent 7c90e3f1d2
commit a57c4ee19e

@ -5,6 +5,8 @@ import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.platform.bean.SysOrderNoRule;
import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
* @Description :
* @Reference :
@ -32,6 +34,15 @@ public interface ISysOrderNoRuleService {
@ApiOperation(value = "根据code查询单号规则")
SysOrderNoRule getSysOrderNoRuleCode(String code);
@ApiOperation(value = "根据id修改用户状态")
@ApiOperation(value = "根据id修改单号规则状态")
void updateSysOrderNoRuleCodeStatusById(Long id,Integer status);
@ApiOperation(value = "批量删除单号规则")
void deleteSysOrderNoRuleByIds(Long[] ids);
@ApiOperation(value = "批量修改单号规则状态")
void updateSysOrderNoRuleByIds(Long[] ids,Integer status);
@ApiOperation(value = "批量添加编号规则")
void insertSysOrderNoRuleList(List sysOrderNoRuleList);
}

@ -1,20 +1,42 @@
package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysConfigService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysDictionaryService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysFileService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysOrderNoRuleService;
import cn.estsh.i3plus.core.apiservice.util.ExcelUtil;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysDictionary;
import cn.estsh.i3plus.pojo.platform.bean.SysFile;
import cn.estsh.i3plus.pojo.platform.bean.SysOrderNoRule;
import cn.estsh.impp.framework.base.controller.CoreBaseController;
import cn.estsh.impp.framework.boot.exception.ImppBusiException;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.fastdfs.FastDFSClient;
import cn.estsh.impp.framework.boot.fastdfs.FastDFSFile;
import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import com.netflix.discovery.converters.Auto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
/**
* @Description :
@ -26,10 +48,18 @@ import org.springframework.web.bind.annotation.*;
@RestController
@Api(description = "系统单号规则管理服务")
@RequestMapping(CoreBaseController.BASE_URL + "/sys-order-no-rule")
public class SysOrderNoRuleController {
public class SysOrderNoRuleController extends CoreBaseController {
@Autowired
ISysOrderNoRuleService sysOrderNoRuleService;
@Autowired
ISysDictionaryService sysDictionaryService;
@Autowired
ISysConfigService sysConfigService;
@Autowired
ISysFileService sysFileService;
@Autowired
private FastDFSClient dfsClient;
@PostMapping(value = "/insert")
@ApiOperation(value = "新增单号规则")
@ -135,14 +165,14 @@ public class SysOrderNoRuleController {
ListPager sysOrderNoRuleList = sysOrderNoRuleService.querySysOrderNoRuleByPager(sysOrderNoRule, pager);
return ResultBean.success("查询成功").setListPager(sysOrderNoRuleList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep.getErrorShow());
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@PutMapping(value = "/update-status/{id}/{status}")
@ApiOperation(value = "单号规则复杂查询,分页,排序")
@PutMapping(value = "/status/{id}/{status}")
@ApiOperation(value = "根据id修改规则状态")
public ResultBean updateSysOrderNoRuleStatusById(@PathVariable("id") String id,@PathVariable("status") Integer status){
try {
ValidatorBean.checkNotNull(id,"code不能为空");
@ -151,9 +181,131 @@ public class SysOrderNoRuleController {
sysOrderNoRuleService.updateSysOrderNoRuleCodeStatusById(Long.parseLong(id),status);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep.getErrorShow());
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@DeleteMapping(value = "/batch-delete")
@ApiOperation(value = "批量删除单号规则")
public ResultBean deleteSysOrderNoRuleByIds(String[] idsStr){
try {
if(idsStr.length == 0){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("请选择需要删除的资源。")
.build();
}
sysOrderNoRuleService.deleteSysOrderNoRuleByIds(StringTool.getArrayLong(idsStr));
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@PutMapping(value = "/batch-status")
@ApiOperation(value = "根据id批量修改规则状态")
public ResultBean updateSysOrderNoRuleStatusByIds(String[] idsStr,Integer status){
try {
if(idsStr.length == 0){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("请选择需要删除的资源。")
.build();
}
ValidatorBean.checkIsNumber(status,"状态不能为空!");
sysOrderNoRuleService.updateSysOrderNoRuleByIds(StringTool.getArrayLong(idsStr),status);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@GetMapping(value = "/export")
@ApiOperation(value = "导出单号规则")
public ResultBean exportSysOrderNoRule(SysOrderNoRule sysOrderNoRule, String[] colName){
try {
Pager pager = new Pager();
pager.setCurrentPage(1);
pager.setPageSize(Integer.parseInt(sysConfigService.getSysConfigByCode(PlatformConstWords.EXCEL_EXPORT_MAX_ROW).getConfigValue()));
ListPager listPager;
String[] fileAbsolutePath;
List result = new ArrayList();
do {
listPager = sysOrderNoRuleService.querySysOrderNoRuleByPager(sysOrderNoRule, pager);
pager = listPager.getObjectPager();
// 上传至文件服务器
FastDFSFile fastDFSFile = new FastDFSFile(SysOrderNoRule.class.getSimpleName() + pager.getCurrentPage() + ".xls",
ExcelUtil.exportData(listPager.getObjectList(),SysOrderNoRule.class,colName),"xls");
fileAbsolutePath = dfsClient.upload(fastDFSFile);
// 保证系统文件表中
String filePath = dfsClient.getHostUi() + "/" + fileAbsolutePath[0] + "/" + fileAbsolutePath[1];
SysDictionary dictionary = sysDictionaryService.getSysDictionaryByParentCodeAndCode(
CommonConstWords.DICTIONARY_FILE_TYPE,fastDFSFile.getExt());
SysFile sysFile = new SysFile();
sysFile.setDfsGroupName(fileAbsolutePath[0]);
sysFile.setDfsFileName(fileAbsolutePath[1]);
sysFile.setFileSize(fastDFSFile.getContent().length);
sysFile.setFilePath(filePath);
sysFile.setFileOriginalName(fastDFSFile.getName());
sysFile.setFileTypeId(dictionary.getId());
sysFile.setFileTypeName(dictionary.getName());
sysFile.setDownloadNum(0);
result.add(sysFileService.insertSysFile(sysFile));
pager.setCurrentPage(pager.getCurrentPage() + 1);
} while (pager.getCurrentPage() <= pager.getTotalPages());
return ResultBean.success("导出成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(result);
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@GetMapping(value = "/import")
@ApiOperation(value = "导入单号规则")
public ResultBean importSysOrderNoRule(@RequestParam("file") MultipartFile file){
try {
List<SysOrderNoRule> sysOrderNoRuleList = ExcelUtil.importData(file.getName(),file.getInputStream(),SysOrderNoRule.class);
sysOrderNoRuleService.insertSysOrderNoRuleList(sysOrderNoRuleList);
return ResultBean.success("导出成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@GetMapping(value = "/import-template")
@ApiOperation(value = "下载导入模板")
public ResultBean importSysOrderNoRuleTemplate(HttpServletResponse response, String[] colName){
try {
response.setContentType("application/force-download");// 设置强制下载不打开
response.addHeader("Content-Disposition", "attachment;fileName=" + SysOrderNoRule.class.getSimpleName() + "Template.xls");// 设置文件名
response.addHeader("Content-type", "application/octet-stream");// 设置文件名
// ExcelUtil.importTemplate(response.getOutputStream(),SysOrderNoRule.class, colName);
return ResultBean.success("导出成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
}

@ -18,11 +18,18 @@ import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.apache.poi.ss.formula.functions.T;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**

@ -2,10 +2,12 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysOrderNoRuleService;
import cn.estsh.i3plus.core.apiservice.util.OrderNoMakeUtil;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.platform.bean.SysOrderNoRule;
import cn.estsh.i3plus.pojo.platform.repository.SysOrderNoRuleRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
@ -16,6 +18,8 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @Description :
* @Reference :
@ -112,5 +116,22 @@ public class SysOrderNoRuleService implements ISysOrderNoRuleService {
sysOrderNoRuleRDao.updateByProperties("id",id,"orderNoRuleStatus",status);
}
@Override
public void deleteSysOrderNoRuleByIds(Long[] ids) {
sysOrderNoRuleRDao.deleteByIds(ids);
}
@Override
public void updateSysOrderNoRuleByIds(Long[] ids, Integer status) {
StringBuffer where = new StringBuffer();
HqlPack.getInPack(String.join(",", StringTool.getArrayString(ids)), "id", where);
sysOrderNoRuleRDao.updateByHqlWhere(where.toString(), "orderNoRuleStatus", status);
}
@Override
public void insertSysOrderNoRuleList(List sysOrderNoRuleList) {
sysOrderNoRuleRDao.saveAll(sysOrderNoRuleList);
}
}

@ -0,0 +1,358 @@
package cn.estsh.i3plus.core.apiservice.util;
import cn.estsh.i3plus.core.api.iservice.busi.ISysConfigService;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysTool;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import io.swagger.annotations.ApiParam;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.CellType;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.io.*;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.*;
/**
* @Description : Excel
* @Reference :
* @Author : yunhao
* @CreateDate : 2018-12-05 16:12
* @Modify:
**/
@Component
public class ExcelUtil {
public static final Logger LOGGER = LoggerFactory.getLogger(ExcelUtil.class);
private ExcelUtil() throws IOException {
}
private static ISysConfigService sysConfigService;
@Autowired
public void setSysConfigService(ISysConfigService sysConfigService) {
ExcelUtil.sysConfigService = sysConfigService;
}
/**
*
*
* @param data
* @param exportClass
* @param exportCol
*/
public static byte[] exportData(List data, Class exportClass, String[] exportCol) {
File excelFile = null;
FileOutputStream fos = null;
//创建HSSFWorkbook对象(excel的文档对象)
HSSFWorkbook workbook = new HSSFWorkbook();
try {
//创建临时文件
System.out.println(exportClass.getSimpleName() + TimeTool.getNowTime(true));
excelFile = File.createTempFile(exportClass.getSimpleName() + new Date().getTime(),".xls");
LOGGER.info("临时文件所在的本地路径:" + excelFile.getCanonicalPath());
fos = new FileOutputStream(excelFile);
//建立新的sheet对象excel的表单
HSSFSheet sheet = workbook.createSheet(exportClass.getSimpleName());
// 创建表头
HSSFRow tableHeader = sheet.createRow(0);
// 类数据
Field[] declaredFields = exportClass.getDeclaredFields();
Field[] fields = new Field[exportCol.length];
for (int i = 0; i < exportCol.length; i++) {
for (Field field : declaredFields) {
if (field.getName().equals(exportCol[i])) {
fields[i] = field;
if (field.isAnnotationPresent(ApiParam.class)) {
ApiParam fieldAnno = field.getAnnotation(ApiParam.class);
tableHeader.createCell(i, CellType.STRING).setCellValue(fieldAnno.value());
}
}
}
}
//加载数据至excel对象
HSSFRow hssfRow;
Method method;
for (int i = 0; i < data.size(); i++) {
hssfRow = sheet.createRow(i + 1);
for (int j = 0; j < fields.length; j++) {
method = exportClass.getDeclaredMethod("get" + StringTool.toUpperCaseFirstOne(fields[j].getName()));
hssfRow.createCell(j, CellType.STRING).setCellValue(
String.valueOf(method.invoke(data.get(i)))
);
}
}
workbook.write(fos);
fos.flush();
return file2Byte(excelFile);
} catch (NoSuchMethodException e) {
LOGGER.error("属性get方法不存在", e);
} catch (IllegalAccessException e) {
LOGGER.error("Excel 导出异常!", e);
} catch (InvocationTargetException e) {
LOGGER.error("Excel 导出异常!", e);
} catch (IOException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION_FILE.getCode())
.setErrorDetail("Excel 导出错误")
.build();
} finally {
try {
workbook.close();
fos.close();
excelFile.deleteOnExit();
} catch (IOException e) {
LOGGER.error("IOException!", e);
}
}
return null;
}
/**
*
*
* @param fileName
* @param inputStream
* @param importClass
* @return
*/
public static <T> List<T> importData(String fileName, InputStream inputStream, Class importClass) {
List dataList = new ArrayList<T>();
String fileType = StringTool.getStringFileSuffix(fileName, false);
try {
//根据文件类型及文件输入流新建工作簿对象
Workbook wb = null;
if (fileType.equals("xls")) {
wb = new HSSFWorkbook(inputStream);
} else if (fileType.equals("xlsx")) {
wb = new XSSFWorkbook(inputStream);
} else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION_FILE.getCode())
.setErrorDetail("Excel 您导入的excel格式不正确")
.setErrorSolution("请检查导入文件格式")
.build();
}
// 校验sheet是否超过最大行数
Sheet sheet = wb.getSheet(importClass.getSimpleName());
int maxRow = Integer.parseInt(sysConfigService.getSysConfigByCode(PlatformConstWords.EXCEL_IMPORT_MAX_ROW).getConfigValue());
if (sheet != null && sheet.getLastRowNum() > maxRow) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("Excel 数据超过最大行数")
.setErrorSolution("请检查是否有空行,或分批导入")
.build();
}
// excel列名与字段名映射
Map<String, Field> colName = new HashMap<>();
ApiParam fieldAnno;
for (Field field : importClass.getDeclaredFields()) {
if (field.isAnnotationPresent(ApiParam.class)) {
fieldAnno = field.getAnnotation(ApiParam.class);
colName.put(fieldAnno.value(), field);
}
}
// 创建表头
Row tableHeader = sheet.getRow(0);
Field[] fields = new Field[tableHeader.getLastCellNum()];
for (int i = 0; i < tableHeader.getLastCellNum(); i++) {
fields[i] = colName.get(tableHeader.getCell(i).getStringCellValue());
}
Row row;
Object obj;
Object cellValue = null;
for (int i = 0; i < sheet.getLastRowNum(); i++) {
row = sheet.getRow(i);
obj = importClass.newInstance();
for (int j = 0; j < fields.length; j++) {
if (fields[j].getType() == String.class) {
cellValue = row.getCell(j).getStringCellValue();
} else if (fields[j].getType() == Integer.class) {
cellValue = Integer.parseInt(row.getCell(j).getStringCellValue());
} else if (fields[j].getType() == Long.class) {
cellValue = Long.parseLong(row.getCell(j).getStringCellValue());
}
importClass.getDeclaredMethod("set" + StringTool.toUpperCaseFirstOne(fields[i].getName()), fields[i].getType())
.invoke(obj, cellValue);
}
dataList.add(obj);
}
} catch (IOException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("IO输入输出异常")
.build();
} catch (IllegalAccessException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.REFLEX_EXCEPTION.getCode())
.setErrorDetail("无法访问导入类")
.setErrorSolution("请检查导入类访问修饰符")
.build();
} catch (InstantiationException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.REFLEX_EXCEPTION.getCode())
.setErrorDetail("无法实例化导入类")
.setErrorSolution("请检查导入类是拥有无参构造方法")
.build();
} catch (InvocationTargetException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.REFLEX_EXCEPTION.getCode())
.setErrorDetail("属性set方法实现错误")
.setErrorSolution("请检查属性set方法参数类型是否正确")
.build();
} catch (NoSuchMethodException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.REFLEX_EXCEPTION.getCode())
.setErrorDetail("没有找到属性set方法")
.setErrorSolution("请检查属性set方法是否存在")
.build();
}
return dataList;
}
/**
*
*
* @param exportClass
* @param exportCol
*/
public static byte[] importTemplate(Class exportClass, String[] exportCol) {
//创建HSSFWorkbook对象(excel的文档对象)
HSSFWorkbook workbook = new HSSFWorkbook();
try {
//建立新的sheet对象excel的表单
HSSFSheet sheet = workbook.createSheet(exportClass.getSimpleName());
// 创建表头
HSSFRow tableHeader = sheet.createRow(0);
HSSFRow tableData = sheet.createRow(1);
// 类数据
Field[] declaredFields = exportClass.getDeclaredFields();
Field[] fields = new Field[exportCol.length];
ApiParam fieldAnno;
for (int i = 0; i < exportCol.length; i++) {
for (Field field : declaredFields) {
if (field.getName().equals(exportCol[i])) {
fields[i] = field;
if (field.isAnnotationPresent(ApiParam.class)) {
fieldAnno = field.getAnnotation(ApiParam.class);
tableHeader.createCell(i, CellType.STRING).setCellValue(fieldAnno.value());
tableData.createCell(i, CellType.STRING).setCellValue(fieldAnno.example());
}
}
}
}
ByteArrayOutputStream os = new ByteArrayOutputStream();
workbook.write(os);
return os.toString("utf-8").getBytes();
} catch (IOException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.IO_EXCEPTION.getCode())
.setErrorDetail("Excel导出错误")
.build();
} finally {
try {
workbook.close();
} catch (IOException e) {
LOGGER.error("IOException!", e);
}
}
}
public static void main(String[] args) {
List<SysTool> sysTools = new ArrayList<>();
SysTool sysTool = new SysTool();
for (int i = 0; i < 14; i++) {
sysTool.setName("ddd");
sysTools.add(sysTool);
}
String[] colName = new String[]{"name", "toolTypeNameRdd", "toolStatus", "toolIp", "toolPort", "toolConnType", "toolDataType", "toolOperating", "toolDescription"};
try {
FileOutputStream ds = new FileOutputStream("E://testOut.xls");
ds.write(ExcelUtil.exportData(sysTools, SysTool.class, colName));
ds.flush();
ds.close();
// ExcelUtil.importData("testOut.xls", new FileInputStream("E://testOut.xls"), SysTool.class);
// ExcelUtil.importTemplate(new FileOutputStream("E://testOut.xls"), SysTool.class, colName);
} catch (IOException e) {
e.printStackTrace();
}
}
public static byte[] file2Byte(File file)
{
byte[] buffer = null;
try
{
FileInputStream fis = new FileInputStream(file);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte[] b = new byte[1024];
int n;
while ((n = fis.read(b)) != -1)
{
bos.write(b, 0, n);
}
fis.close();
bos.close();
buffer = bos.toByteArray();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
return buffer;
}
}

@ -197,13 +197,4 @@ public class MailUtil {
e.printStackTrace();
}
}
public static void main(String[] args) {
MailUtil mail = new MailUtil();
mail.setTo("yunhao.wang@estsh.com");
mail.setSubject("中文");
mail.setContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getDescription());
mail.setBody("内容");
mail.send();
}
}

@ -0,0 +1,96 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;//package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.pojo.platform.bean.*;
import cn.estsh.i3plus.pojo.platform.repository.*;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2018-11-22 11:01
* @Modify:
**/
public class TestExcelOrderNoRule extends TestBase {
public static final Logger LOGGER = LoggerFactory.getLogger(TestExcelOrderNoRule.class);
// 文件路径
public static final String PATH_NAME = "init/oder-no-rule.xlsx";
// 权限Sheet 名称
public static final String SHEET_ORDER_NO_RULE = "order-no-rule";
@Autowired
private SysOrderNoRuleRepository sysOrderNoRuleRDao;
@Test
public void testInit() throws Exception {
XSSFWorkbook workbook = getWorkbook(PATH_NAME);
if(workbook != null){
XSSFSheet sheetOrderNoRule = workbook.getSheet(SHEET_ORDER_NO_RULE);
List<SysOrderNoRule> ysOrderNoRuleList = getSysOrderNoRule(sheetOrderNoRule);
LOGGER.info("System Init SysOrderNoRule Size:{}",ysOrderNoRuleList.size());
sysOrderNoRuleRDao.saveAll(ysOrderNoRuleList);
}
}
public List<SysOrderNoRule> getSysOrderNoRule(XSSFSheet sheet){
List<SysOrderNoRule> result = new ArrayList<>();
if(sheet != null){
if(sheet.getLastRowNum() >= 1){
SysOrderNoRule obj = null;
for (int i = 1; i <= sheet.getLastRowNum(); i++) {
try {
Row row = sheet.getRow(i);//获取索引为i的行以0开始
if(row.getCell(0).toString().trim().length() > 0){
obj = new SysOrderNoRule();
obj.setId(Long.parseLong(row.getCell(0).getStringCellValue()));
obj.setName(row.getCell(1).getStringCellValue());
obj.setOrderNoRuleCode(row.getCell(2).getStringCellValue());
obj.setOrderNoRule(row.getCell(3).getStringCellValue());
obj.setSerialNoSeed(Long.parseLong(row.getCell(4).getStringCellValue()));
obj.setSerialNoIncrement(Long.parseLong(row.getCell(5).getStringCellValue()));
obj.setSerialNoLength(Long.parseLong(row.getCell(6).getStringCellValue()));
obj.setIsCycle(Integer.parseInt(row.getCell(7).getStringCellValue()));
obj.setOrderNoRuleDescription(row.getCell(8).getStringCellValue());
obj.setOrderNoRuleStatus(1);
obj.setSerialNo(-1L);
obj.setIsValid(1);
result.add(obj);
}
}catch (Exception e){
LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i);
}
}
}
}
return result;
}
public XSSFWorkbook getWorkbook(String pathName){
try {
InputStream in = TestExcelPermission.class.getClassLoader().getResourceAsStream(pathName);
XSSFWorkbook workbook = new XSSFWorkbook(in);
return workbook;
}catch (Exception e){
LOGGER.error(" System Init Sys Data Excel Error file path {} error message :{}",pathName,e.getMessage());
e.getMessage();
return null;
}
}
}

@ -1,207 +1,207 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.pojo.platform.bean.*;
import cn.estsh.i3plus.pojo.platform.repository.SysConfigRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysDictionaryRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysLocaleLanguageRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysLocaleResourceRepository;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2018-11-22 11:01
* @Modify:
**/
public class TestExcelSysConfig extends TestBase {
public static final Logger LOGGER = LoggerFactory.getLogger(TestExcelPermission.class);
// 文件路径
public static final String PATH_NAME = "init/sys-config.xlsx";
// 权限Sheet 名称
public static final String SHEET_SYS_CONFIG = "sys-config";
public static final String SHEET_DICTIONARY = "dictionary";
public static final String SHEET_LANGUAGE = "language";
public static final String SHEET_RESOURCE = "resource";
@Autowired
private SysConfigRepository sysConfigRDao;
@Autowired
private SysDictionaryRepository sysDictionaryRDao;
@Autowired
private SysLocaleLanguageRepository sysLocaleLanguageRDao;
@Autowired
private SysLocaleResourceRepository sysLocaleResourceRDao;
@Test
public void testInit() throws Exception {
XSSFWorkbook workbook = getWorkbook(PATH_NAME);
if(workbook != null){
XSSFSheet sheetSysConfig = workbook.getSheet(SHEET_SYS_CONFIG);
XSSFSheet sheetDictionary = workbook.getSheet(SHEET_DICTIONARY);
XSSFSheet sheetLanguage = workbook.getSheet(SHEET_LANGUAGE);
XSSFSheet sheetResource = workbook.getSheet(SHEET_RESOURCE);
List<SysConfig> sysConfigList = getSysConfig(sheetSysConfig);
List<SysDictionary> sysDictionaryList = getSysDictionary(sheetDictionary);
List<SysLocaleLanguage> sysLocaleLanguageList = getSysLocaleLanguage(sheetLanguage);
List<SysLocaleResource> sysLocaleResourceList= getSysLocaleResource(sheetResource);
LOGGER.info("System Init SysConfig Size:{}",sysConfigList.size());
LOGGER.info("System Init SysDictionary Size:{}",sysDictionaryList.size());
LOGGER.info("System Init SysLocaleLanguage Size:{}",sysLocaleLanguageList.size());
LOGGER.info("System Init SysLocaleResource Size:{}",sysLocaleResourceList.size());
sysConfigRDao.saveAll(sysConfigList);
sysDictionaryRDao.saveAll(sysDictionaryList);
sysLocaleLanguageRDao.saveAll(sysLocaleLanguageList);
sysLocaleResourceRDao.saveAll(sysLocaleResourceList);
}
}
public List<SysConfig> getSysConfig(XSSFSheet sheet){
List<SysConfig> result = new ArrayList<>();
if(sheet != null){
if(sheet.getLastRowNum() >= 1){
SysConfig obj = null;
for (int i = 1; i <= sheet.getLastRowNum(); i++) {
try {
Row row = sheet.getRow(i);//获取索引为i的行以0开始
if(row.getCell(0).toString().trim().length() > 0){
obj = new SysConfig();
obj.setId(Long.parseLong(row.getCell(0).getStringCellValue()));
obj.setName(row.getCell(1).getStringCellValue());
obj.setConfigType(Integer.valueOf(row.getCell(2).getStringCellValue()));
obj.setConfigCode(row.getCell(3).getStringCellValue());
obj.setConfigValue(row.getCell(4).getStringCellValue());
obj.setConfigDescription(row.getCell(5).getStringCellValue());
obj.setIsValid(1);
result.add(obj);
}
}catch (Exception e){
LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i);
}
}
}
}
return result;
}
public List<SysDictionary> getSysDictionary(XSSFSheet sheet){
List<SysDictionary> result = new ArrayList<>();
if(sheet != null){
if(sheet.getLastRowNum() >= 1){
SysDictionary obj = null;
for (int i = 1; i <= sheet.getLastRowNum(); i++) {
try {
Row row = sheet.getRow(i);//获取索引为i的行以0开始
if(row.getCell(0).toString().trim().length() > 0){
obj = new SysDictionary();
obj.setId(Long.parseLong(row.getCell(0).getStringCellValue()));
obj.setName(row.getCell(1).getStringCellValue());
obj.setDictionaryCode(row.getCell(2).getStringCellValue());
obj.setParentId(Long.valueOf(row.getCell(3).getStringCellValue()));
obj.setParentNameRdd(row.getCell(4).getStringCellValue());
obj.setParentCodeRdd(row.getCell(5).getStringCellValue());
obj.setDictionaryValue(row.getCell(6).getStringCellValue());
obj.setDictionarySort(Integer.valueOf(row.getCell(7).getStringCellValue()));
obj.setDictionaryDescription(row.getCell(8).getStringCellValue());
obj.setIsValid(1);
result.add(obj);
}
}catch (Exception e){
LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i);
}
}
}
}
return result;
}
public List<SysLocaleLanguage> getSysLocaleLanguage(XSSFSheet sheet){
List<SysLocaleLanguage> result = new ArrayList<>();
if(sheet != null){
if(sheet.getLastRowNum() >= 1){
SysLocaleLanguage obj = null;
for (int i = 1; i <= sheet.getLastRowNum(); i++) {
try {
Row row = sheet.getRow(i);//获取索引为i的行以0开始
if(row.getCell(0).toString().trim().length() > 0){
obj = new SysLocaleLanguage();
obj.setId(Long.parseLong(row.getCell(0).getStringCellValue()));
obj.setLanguageName(row.getCell(1).getStringCellValue());
obj.setLanguageCode(row.getCell(2).getStringCellValue());
obj.setLanguageSort(Integer.valueOf(row.getCell(3).getStringCellValue()));
obj.setIsDefault(Integer.valueOf(row.getCell(4).getStringCellValue()));
obj.setLanguageStatus(Integer.valueOf(row.getCell(5).getStringCellValue()));
obj.setIsValid(1);
result.add(obj);
}
}catch (Exception e){
LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i);
}
}
}
}
return result;
}
public List<SysLocaleResource> getSysLocaleResource(XSSFSheet sheet){
List<SysLocaleResource> result = new ArrayList<>();
if(sheet != null){
if(sheet.getLastRowNum() >= 1){
SysLocaleResource obj = null;
for (int i = 1; i <= sheet.getLastRowNum(); i++) {
try {
Row row = sheet.getRow(i);//获取索引为i的行以0开始
if(row.getCell(0).toString().trim().length() > 0){
obj = new SysLocaleResource();
obj.setId(Long.parseLong(row.getCell(0).getStringCellValue()));
obj.setResourceType(Integer.valueOf(row.getCell(1).getStringCellValue()));
obj.setLanguageCode(row.getCell(2).getStringCellValue());
obj.setLanguageNameRdd(row.getCell(3).getStringCellValue());
obj.setResourceKey(row.getCell(4).getStringCellValue());
obj.setResourceValue(row.getCell(5).getStringCellValue());
obj.setIsSystem(Integer.valueOf(row.getCell(6).getStringCellValue()));
obj.setIsValid(1);
result.add(obj);
}
}catch (Exception e){
LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i);
}
}
}
}
return result;
}
public XSSFWorkbook getWorkbook(String pathName){
try {
InputStream in = TestExcelPermission.class.getClassLoader().getResourceAsStream(pathName);
XSSFWorkbook workbook = new XSSFWorkbook(in);
return workbook;
}catch (Exception e){
LOGGER.error(" System Init Sys Data Excel Error file path {} error message :{}",pathName,e.getMessage());
e.getMessage();
return null;
}
}
}
//package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
//
//import cn.estsh.i3plus.pojo.platform.bean.*;
//import cn.estsh.i3plus.pojo.platform.repository.SysConfigRepository;
//import cn.estsh.i3plus.pojo.platform.repository.SysDictionaryRepository;
//import cn.estsh.i3plus.pojo.platform.repository.SysLocaleLanguageRepository;
//import cn.estsh.i3plus.pojo.platform.repository.SysLocaleResourceRepository;
//import org.apache.poi.ss.usermodel.Row;
//import org.apache.poi.xssf.usermodel.XSSFSheet;
//import org.apache.poi.xssf.usermodel.XSSFWorkbook;
//import org.junit.Test;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.beans.factory.annotation.Autowired;
//
//import java.io.InputStream;
//import java.util.ArrayList;
//import java.util.List;
//
///**
// * @Description :
// * @Reference :
// * @Author : yunhao
// * @CreateDate : 2018-11-22 11:01
// * @Modify:
// **/
//public class TestExcelSysConfig extends TestBase {
//
// public static final Logger LOGGER = LoggerFactory.getLogger(TestExcelPermission.class);
//
// // 文件路径
// public static final String PATH_NAME = "init/sys-config.xlsx";
// // 权限Sheet 名称
// public static final String SHEET_SYS_CONFIG = "sys-config";
// public static final String SHEET_DICTIONARY = "dictionary";
// public static final String SHEET_LANGUAGE = "language";
// public static final String SHEET_RESOURCE = "resource";
//
// @Autowired
// private SysConfigRepository sysConfigRDao;
// @Autowired
// private SysDictionaryRepository sysDictionaryRDao;
// @Autowired
// private SysLocaleLanguageRepository sysLocaleLanguageRDao;
// @Autowired
// private SysLocaleResourceRepository sysLocaleResourceRDao;
//
// @Test
// public void testInit() throws Exception {
// XSSFWorkbook workbook = getWorkbook(PATH_NAME);
// if(workbook != null){
// XSSFSheet sheetSysConfig = workbook.getSheet(SHEET_SYS_CONFIG);
// XSSFSheet sheetDictionary = workbook.getSheet(SHEET_DICTIONARY);
// XSSFSheet sheetLanguage = workbook.getSheet(SHEET_LANGUAGE);
// XSSFSheet sheetResource = workbook.getSheet(SHEET_RESOURCE);
//
// List<SysConfig> sysConfigList = getSysConfig(sheetSysConfig);
// List<SysDictionary> sysDictionaryList = getSysDictionary(sheetDictionary);
// List<SysLocaleLanguage> sysLocaleLanguageList = getSysLocaleLanguage(sheetLanguage);
// List<SysLocaleResource> sysLocaleResourceList= getSysLocaleResource(sheetResource);
//
// LOGGER.info("System Init SysConfig Size:{}",sysConfigList.size());
// LOGGER.info("System Init SysDictionary Size:{}",sysDictionaryList.size());
// LOGGER.info("System Init SysLocaleLanguage Size:{}",sysLocaleLanguageList.size());
// LOGGER.info("System Init SysLocaleResource Size:{}",sysLocaleResourceList.size());
//
// sysConfigRDao.saveAll(sysConfigList);
// sysDictionaryRDao.saveAll(sysDictionaryList);
// sysLocaleLanguageRDao.saveAll(sysLocaleLanguageList);
// sysLocaleResourceRDao.saveAll(sysLocaleResourceList);
// }
// }
//
// public List<SysConfig> getSysConfig(XSSFSheet sheet){
// List<SysConfig> result = new ArrayList<>();
// if(sheet != null){
// if(sheet.getLastRowNum() >= 1){
// SysConfig obj = null;
// for (int i = 1; i <= sheet.getLastRowNum(); i++) {
// try {
// Row row = sheet.getRow(i);//获取索引为i的行以0开始
// if(row.getCell(0).toString().trim().length() > 0){
// obj = new SysConfig();
// obj.setId(Long.parseLong(row.getCell(0).getStringCellValue()));
// obj.setName(row.getCell(1).getStringCellValue());
// obj.setConfigType(Integer.valueOf(row.getCell(2).getStringCellValue()));
// obj.setConfigCode(row.getCell(3).getStringCellValue());
// obj.setConfigValue(row.getCell(4).getStringCellValue());
// obj.setConfigDescription(row.getCell(5).getStringCellValue());
// obj.setIsValid(1);
//
// result.add(obj);
// }
// }catch (Exception e){
// LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i);
// }
// }
// }
// }
// return result;
// }
//
// public List<SysDictionary> getSysDictionary(XSSFSheet sheet){
// List<SysDictionary> result = new ArrayList<>();
// if(sheet != null){
// if(sheet.getLastRowNum() >= 1){
// SysDictionary obj = null;
// for (int i = 1; i <= sheet.getLastRowNum(); i++) {
// try {
// Row row = sheet.getRow(i);//获取索引为i的行以0开始
// if(row.getCell(0).toString().trim().length() > 0){
// obj = new SysDictionary();
// obj.setId(Long.parseLong(row.getCell(0).getStringCellValue()));
// obj.setName(row.getCell(1).getStringCellValue());
// obj.setDictionaryCode(row.getCell(2).getStringCellValue());
// obj.setParentId(Long.valueOf(row.getCell(3).getStringCellValue()));
// obj.setParentNameRdd(row.getCell(4).getStringCellValue());
// obj.setParentCodeRdd(row.getCell(5).getStringCellValue());
// obj.setDictionaryValue(row.getCell(6).getStringCellValue());
// obj.setDictionarySort(Integer.valueOf(row.getCell(7).getStringCellValue()));
// obj.setDictionaryDescription(row.getCell(8).getStringCellValue());
// obj.setIsValid(1);
//
// result.add(obj);
// }
// }catch (Exception e){
// LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i);
// }
// }
// }
// }
// return result;
// }
//
// public List<SysLocaleLanguage> getSysLocaleLanguage(XSSFSheet sheet){
// List<SysLocaleLanguage> result = new ArrayList<>();
// if(sheet != null){
// if(sheet.getLastRowNum() >= 1){
// SysLocaleLanguage obj = null;
// for (int i = 1; i <= sheet.getLastRowNum(); i++) {
// try {
// Row row = sheet.getRow(i);//获取索引为i的行以0开始
// if(row.getCell(0).toString().trim().length() > 0){
// obj = new SysLocaleLanguage();
// obj.setId(Long.parseLong(row.getCell(0).getStringCellValue()));
// obj.setLanguageName(row.getCell(1).getStringCellValue());
// obj.setLanguageCode(row.getCell(2).getStringCellValue());
// obj.setLanguageSort(Integer.valueOf(row.getCell(3).getStringCellValue()));
// obj.setIsDefault(Integer.valueOf(row.getCell(4).getStringCellValue()));
// obj.setLanguageStatus(Integer.valueOf(row.getCell(5).getStringCellValue()));
// obj.setIsValid(1);
//
// result.add(obj);
// }
// }catch (Exception e){
// LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i);
// }
// }
// }
// }
// return result;
// }
//
// public List<SysLocaleResource> getSysLocaleResource(XSSFSheet sheet){
// List<SysLocaleResource> result = new ArrayList<>();
// if(sheet != null){
// if(sheet.getLastRowNum() >= 1){
// SysLocaleResource obj = null;
// for (int i = 1; i <= sheet.getLastRowNum(); i++) {
// try {
// Row row = sheet.getRow(i);//获取索引为i的行以0开始
// if(row.getCell(0).toString().trim().length() > 0){
// obj = new SysLocaleResource();
// obj.setId(Long.parseLong(row.getCell(0).getStringCellValue()));
// obj.setResourceType(Integer.valueOf(row.getCell(1).getStringCellValue()));
// obj.setLanguageCode(row.getCell(2).getStringCellValue());
// obj.setLanguageNameRdd(row.getCell(3).getStringCellValue());
// obj.setResourceKey(row.getCell(4).getStringCellValue());
// obj.setResourceValue(row.getCell(5).getStringCellValue());
// obj.setIsSystem(Integer.valueOf(row.getCell(6).getStringCellValue()));
// obj.setIsValid(1);
//
// result.add(obj);
// }
// }catch (Exception e){
// LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i);
// }
// }
// }
// }
// return result;
// }
//
//
// public XSSFWorkbook getWorkbook(String pathName){
// try {
// InputStream in = TestExcelPermission.class.getClassLoader().getResourceAsStream(pathName);
// XSSFWorkbook workbook = new XSSFWorkbook(in);
// return workbook;
// }catch (Exception e){
// LOGGER.error(" System Init Sys Data Excel Error file path {} error message :{}",pathName,e.getMessage());
// e.getMessage();
// return null;
// }
// }
//
//}

@ -1,14 +1,14 @@
//package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
//
//import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService;
//import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService;
//import cn.estsh.i3plus.pojo.base.bean.ListPager;
//import cn.estsh.i3plus.pojo.base.common.Pager;
//import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
//import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
//import cn.estsh.i3plus.pojo.platform.bean.SysMessage;
//import com.alibaba.fastjson.JSON;
//import org.junit.Test;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.test.annotation.Rollback;
//
@ -22,10 +22,11 @@
// * @Date : 2018-10-31 15:30
// * @Modify :
// **/
//public class TestMessageServiceImpl extends TestBase {
//public class TestMessageService extends TestBase {
//
// public static final Logger LOGGER = LoggerFactory.getLogger(TestMessageService.class);
// @Autowired
// ISysMessageService sysMessageService;
// private ISysMessageService sysMessageService;
//
// /**
// * 测试 查询所有消息
@ -43,7 +44,7 @@
// @Test
// @Transactional
// public void testGetSysMessageById() {
// SysMessage sysMessage = sysMessageService.getSysMessageById("1057110061127700480");
// SysMessage sysMessage = sysMessageService.getSysMessageById(1L);
// System.out.println(JSON.toJSONString(sysMessage));
// }
//
@ -75,7 +76,7 @@
// @Test
// @Transactional
// public void testUpdateSysMessage(){
// SysMessage sysMessage = sysMessageService.getSysMessageById("1057110613261684736");
// SysMessage sysMessage = sysMessageService.getSysMessageById(1L);
// sysMessage.setMessageTitle("测试修改");
//
// sysMessageService.updateSysMessage(sysMessage);
@ -87,7 +88,7 @@
// @Test
// @Transactional
// public void testDeleteSysMessageById(){
// sysMessageService.deleteSysMessageById("1057111616417566720");
// sysMessageService.deleteSysMessageById(1L);
// }
//
// /**
@ -105,4 +106,5 @@
// ListPager list = sysMessageService.querySysMessageByPager(sysMessage,pager);
// System.out.println(list);
// }
//
//}

@ -0,0 +1,41 @@
package cn.estsh.i3plus.core.apiservice.util;
import cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestBase;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysTool;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.util.ArrayList;
import java.util.List;
/**
* @Description : excel
* @Reference :
* @Author : yunhao
* @CreateDate : 2018-11-21 19:44
* @Modify:
**/
public class TestExcelUtil extends TestBase {
@Test
public void TestExportData(){
}
@Test
public void importData(){
try {
List sy = ExcelUtil.importData("testOut.xls", new FileInputStream("E://testOut.xls"), SysTool.class);
System.out.println(sy);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
Loading…
Cancel
Save