提交 b16cf1bb 作者: yuanhaojie

智库基础信息外部导入excel维护

上级 3ad09a17
......@@ -264,4 +264,14 @@ public class ThinktankBasicInfoController {
}
/**
* 智库维护
* @return
*/
@PostMapping("importExcel")
public Result think(MultipartFile file) {
thinktankBasicInfoService.thinkTank(file);
return Result.OK();
}
}
......@@ -6,6 +6,8 @@ import com.zzsn.thinktank.vo.ThinktankBasicInfoExportVo;
import com.zzsn.thinktank.vo.ThinktankBasicInfoListVo;
import com.zzsn.thinktank.vo.ThinktankBasicInfoVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;
import java.util.List;
......@@ -22,4 +24,21 @@ public interface ThinktankBasicInfoMapper extends BaseMapper<ThinktankBasicInfo>
Integer getCount(ThinktankBasicInfoListVo thinktankBasicInfoListVo);
List<ThinktankBasicInfoExportVo> getExportList(ThinktankBasicInfoListVo thinktankBasicInfoListVo);
/**
* 根据id更新智库基本信息
* @param id 智库id
* @param lang 语言
* @param profitNature 盈利性质
* @param nature 智库性质
* @param influencePosition 影响力和地位
* @param scale 智库规模
*/
@Update("update thinktank_basic_info set lang = #{lang},profit_nature = #{profitNature},nature = #{nature},influence_position = #{influencePosition},scale = #{scale} where id = #{id} ")
void updateThinkTankBasicInfoById(@Param("id") String id,
@Param("lang")String lang,
@Param("profitNature")String profitNature,
@Param("nature")String nature,
@Param("influencePosition")String influencePosition,
@Param("scale")String scale);
}
......@@ -52,4 +52,6 @@ public interface ThinktankBasicInfoService extends IService<ThinktankBasicInfo>
IPage<ThinktankBasicInfo> pageList(Integer pageNo,Integer pageSize,ThinktankBasicInfoListVo vo, HttpServletRequest req) throws Exception;
List<Map<String,Object>> queryStatisticalAnalysis(String type,Page page, ThinktankBasicInfoListVo vo, HttpServletRequest req);
void thinkTank(MultipartFile file);
}
package com.zzsn.thinktank.service.impl;
import cn.hutool.poi.excel.ExcelReader;
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
......@@ -16,6 +17,9 @@ import com.zzsn.thinktank.util.*;
import com.zzsn.thinktank.vo.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
......@@ -24,9 +28,7 @@ import org.elasticsearch.search.sort.SortOrder;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.ClassPathResource;
import org.springframework.stereotype.Service;
import org.springframework.util.ResourceUtils;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
......@@ -969,4 +971,43 @@ public class ThinktankBasicInfoServiceImpl extends ServiceImpl<ThinktankBasicInf
return mapList;
}
/**
* 智库维护
*
* @param file
*/
@Override
public void thinkTank(MultipartFile file) {
try {
InputStream inputStream = file.getInputStream();
ExcelReader reader = ExcelUtil.getReader(inputStream);
Sheet sheet = reader.getSheet();
for (int i = 1; i <= sheet.getLastRowNum(); i++) {
Row row = sheet.getRow(i);
if (row != null) {
Cell idCell = row.getCell(1);
Cell codeCell = row.getCell(2);
Cell cell1 = row.getCell(11);
Cell cell2 = row.getCell(13);
Cell cell3 = row.getCell(14);
Cell cell4 = row.getCell(16);
Cell cell5 = row.getCell(17);
if (idCell != null) {
String id = idCell.getStringCellValue();
String stringCellValue1 = cell1.getStringCellValue();
String stringCellValue2 = cell2.getStringCellValue();
String stringCellValue3 = cell3.getStringCellValue();
String stringCellValue4 = cell4.getStringCellValue();
String stringCellValue5 = cell5.getStringCellValue();
thinktankBasicInfoMapper.updateThinkTankBasicInfoById(id,stringCellValue1,stringCellValue2,stringCellValue3,stringCellValue4,stringCellValue5);
log.info("success,{}",i);
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论