update 标准征求意见详情代码
This commit is contained in:
+54
@@ -5,12 +5,14 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.oConvertUtils;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.beanutils.PropertyUtils;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.jeecgframework.poi.excel.ExcelImportCheckUtil;
|
||||
import org.jeecgframework.poi.excel.ExcelImportUtil;
|
||||
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||
import org.jeecgframework.poi.excel.entity.ExportParams;
|
||||
@@ -224,4 +226,56 @@ public class JeroController<T, S extends IService<T>> {
|
||||
}
|
||||
return Result.error("文件导入失败!");
|
||||
}
|
||||
/**
|
||||
* 通过excel获取导入数据
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
protected List<T> getExcelData(HttpServletRequest request, Class<T> clazz) {
|
||||
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
||||
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
|
||||
for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
|
||||
// 获取上传文件对象
|
||||
MultipartFile file = entity.getValue();
|
||||
//校验文件名
|
||||
String originalFilename = file.getOriginalFilename();
|
||||
if (originalFilename != null) {
|
||||
String substring = originalFilename.substring(originalFilename.lastIndexOf("."));
|
||||
if (!".xlsx".equals(substring)&&!".xls".equals(substring)) {
|
||||
throw new JeroBootException("文件类型错误:" + "请上传.xlsx或.xls文件!");
|
||||
}
|
||||
} else {
|
||||
throw new JeroBootException("文件错误:" + "文件名丢失,请上传正确的文件!");
|
||||
}
|
||||
ImportParams params = new ImportParams();
|
||||
params.setSheetNum(1);
|
||||
params.setTitleRows(1);
|
||||
params.setHeadRows(1);
|
||||
try {
|
||||
//导入Excel格式校验,看匹配的字段文本概率
|
||||
Boolean t = ExcelImportCheckUtil.check(file.getInputStream(), clazz, params);
|
||||
if (t == null) {
|
||||
throw new JeroBootException("导入数据为空!");
|
||||
}
|
||||
if(!t){
|
||||
throw new JeroBootException("文件格式有误,请下载模板后上传 !");
|
||||
}
|
||||
return ExcelImportUtil.importExcel(file.getInputStream(), clazz, params);
|
||||
} catch (Exception e) {
|
||||
if(Objects.isNull(e.getMessage())){
|
||||
throw new JeroBootException("文件导入失败:请填写内容标题!");
|
||||
}
|
||||
log.error("文件导入失败:",e);
|
||||
throw new JeroBootException("文件导入失败:" + e.getMessage());
|
||||
} finally {
|
||||
try {
|
||||
file.getInputStream().close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
throw new JeroBootException("文件导入失败!");
|
||||
}
|
||||
}
|
||||
|
||||
+14
-13
@@ -56,6 +56,19 @@ public class StandardSolicitOpinionsController extends JeroController<StandardSo
|
||||
IPage<StandardSolicitOpinions> pageList = standardSolicitOpinionsService.pageList(page, standardSolicitOpinions, req);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
/**
|
||||
* 通过id查询
|
||||
*/
|
||||
@AutoLog(value = "标准征求意见-通过id查询")
|
||||
@ApiOperation(value = "标准征求意见-通过id查询", notes = "标准征求意见-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<StandardSolicitOpinions> queryById(@RequestParam(name = "id") String id) {
|
||||
StandardSolicitOpinions standardSolicitOpinions = standardSolicitOpinionsService.queryById(id);
|
||||
if (standardSolicitOpinions == null) {
|
||||
return Result.error(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
||||
}
|
||||
return Result.OK(standardSolicitOpinions);
|
||||
}
|
||||
|
||||
///**
|
||||
// * 列表查询
|
||||
@@ -122,19 +135,7 @@ public class StandardSolicitOpinionsController extends JeroController<StandardSo
|
||||
// return Result.OK(ResultCommon.SUCCESSFULLY_DELETED_IN_BULK);
|
||||
//}
|
||||
//
|
||||
///**
|
||||
// * 通过id查询
|
||||
// */
|
||||
//@AutoLog(value = "标准征求意见-通过id查询")
|
||||
//@ApiOperation(value = "标准征求意见-通过id查询", notes = "标准征求意见-通过id查询")
|
||||
//@GetMapping(value = "/queryById")
|
||||
//public Result<StandardSolicitOpinions> queryById(@RequestParam(name = "id") String id) {
|
||||
// StandardSolicitOpinions standardSolicitOpinions = standardSolicitOpinionsService.queryById(id);
|
||||
// if (standardSolicitOpinions == null) {
|
||||
// return Result.error(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
||||
// }
|
||||
// return Result.OK(standardSolicitOpinions);
|
||||
//}
|
||||
|
||||
//
|
||||
///**
|
||||
// * 导出excel
|
||||
|
||||
+5
-2
@@ -153,8 +153,11 @@ public class StandardSolicitOpinionsTermController extends JeroController<Standa
|
||||
*/
|
||||
@ApiOperation(value = "标准征求意见条款关联表-通过excel导入数据")
|
||||
@PostMapping(value = "/importExcel")
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, StandardSolicitOpinionsTerm.class);
|
||||
public Result<?> importExcel(StandardSolicitOpinionsTerm standardSolicitOpinionsTerm, HttpServletRequest request, HttpServletResponse response) {
|
||||
List<StandardSolicitOpinionsTerm> excelDataList = super.getExcelData(request, StandardSolicitOpinionsTerm.class);
|
||||
|
||||
lawsStandardSolicitOpinionsTermService.importExcel(standardSolicitOpinionsTerm,excelDataList);
|
||||
return Result.OK();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+3
-2
@@ -42,7 +42,7 @@ public class StandardSolicitOpinionsTerm implements Serializable {
|
||||
* 法规工程师
|
||||
*/
|
||||
@ApiModelProperty(value = "法规工程师")
|
||||
@Excel(name = "法规工程师", width = 15, dictTable = "sys_user", dicCode = "id", dicText = "realname")
|
||||
@Excel(name = "法规工程师", width = 15, dictTable = "sys_user", dicCode = "id", dicText = "CONCAT(realname, '(', username, ')')")
|
||||
@Dict(dictTable = "sys_user", dicCode = "id", dicText = "realname")
|
||||
private String proposerId;
|
||||
/**
|
||||
@@ -97,12 +97,13 @@ public class StandardSolicitOpinionsTerm implements Serializable {
|
||||
* 反馈人id
|
||||
*/
|
||||
@ApiModelProperty(value = "反馈人id")
|
||||
@Excel(name = "反馈人", width = 15, dictTable = "sys_user", dicCode = "id", dicText = "CONCAT(realname, '(', username, ')')")
|
||||
@Dict(dictTable = "sys_user", dicCode = "id", dicText = "realname")
|
||||
private String feedbackPersonId;
|
||||
/**
|
||||
* 反馈人
|
||||
*/
|
||||
@ApiModelProperty(value = "反馈人")
|
||||
@Excel(name = "反馈人", width = 15)
|
||||
private String feedbackPerson;
|
||||
/**
|
||||
* 反馈意见
|
||||
|
||||
+19
@@ -1,9 +1,12 @@
|
||||
package com.jero.modules.laws.solicitopinions.service;
|
||||
|
||||
import cn.hutool.core.collection.CollStreamUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.common.system.api.ISysBaseAPI;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.common.system.vo.DictModel;
|
||||
import com.jero.modules.laws.solicitopinions.entity.StandardSolicitOpinionsTerm;
|
||||
import com.jero.modules.laws.solicitopinions.mapper.StandardSolicitOpinionsTermMapper;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -13,6 +16,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 标准征求意见条款关联表(StandardSolicitOpinionsTerm)表服务实现类
|
||||
@@ -25,6 +29,8 @@ import java.util.List;
|
||||
public class StandardSolicitOpinionsTermService extends ServiceImpl<StandardSolicitOpinionsTermMapper, StandardSolicitOpinionsTerm> {
|
||||
@Resource
|
||||
private StandardSolicitOpinionsTermMapper standardSolicitOpinionsTermMapper;
|
||||
@Resource
|
||||
private ISysBaseAPI sysBaseAPI;
|
||||
|
||||
public IPage<StandardSolicitOpinionsTerm> pageList(Page<StandardSolicitOpinionsTerm> page, StandardSolicitOpinionsTerm lawsStandardSolicitOpinionsTerm, HttpServletRequest req) {
|
||||
QueryWrapper<StandardSolicitOpinionsTerm> queryWrapper = QueryGenerator.initQueryWrapper(lawsStandardSolicitOpinionsTerm, req.getParameterMap());
|
||||
@@ -53,5 +59,18 @@ public class StandardSolicitOpinionsTermService extends ServiceImpl<StandardSoli
|
||||
StandardSolicitOpinionsTerm standardSolicitOpinionsTerm = this.getById(id);
|
||||
return standardSolicitOpinionsTerm;
|
||||
}
|
||||
|
||||
public void importExcel(StandardSolicitOpinionsTerm standardSolicitOpinionsTerm, List<StandardSolicitOpinionsTerm> excelDataList) {
|
||||
//List<DictModel> dictModels = sysBaseAPI.queryFilterTableDictInfo("sys_user", "CONCAT(realname, '(', username, ')')", "id", "");
|
||||
//Map<String, String> userMap = CollStreamUtil.toMap(dictModels, DictModel::getText, DictModel::getValue);
|
||||
for (StandardSolicitOpinionsTerm term : excelDataList) {
|
||||
//String feedbackPersonId = term.getFeedbackPersonId();
|
||||
//term.setFeedbackPersonId(userMap.get(feedbackPersonId));
|
||||
//String proposerId = term.getProposerId();
|
||||
//term.setProposerId(userMap.get(proposerId));
|
||||
term.setSolicitOpinionsId(standardSolicitOpinionsTerm.getSolicitOpinionsId());
|
||||
}
|
||||
this.saveBatch(excelDataList);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user