市场法规清单添加导出按钮

This commit is contained in:
梁琦涛
2024-07-12 17:09:54 +08:00
parent af85e49d14
commit b281af6a89
@@ -69,6 +69,10 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
private static final String NOT_DATA = "数据不存在";
private static final String VERSION_NOT = "版本不存在";
private static final String NO_PERMISSIONS = "没有权限";
/**
* 法规管理员
*/
@@ -101,7 +105,7 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
&& !Objects.equals(lawsMarketStandard.getAuthor(),sysUser.getId())
&& !Objects.equals(lawsMarketStandard.getManifestStatus(),
MarketStandardConstants.MANIFEST_STATUS_PUBLISH)){
return Result.error("没有权限");
return Result.error(NO_PERMISSIONS);
}
}
@@ -113,7 +117,7 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
queryLawsMarketStandard.eq(LawsMarketStandard::getManifestVersion,manifestVersion);
LawsMarketStandard lawsMarketStandard = marketStandardService.getOne(queryLawsMarketStandard,false);
if(Objects.isNull(lawsMarketStandard)){
return Result.error(manifestVersion + "版本不存在");
return Result.error(manifestVersion + VERSION_NOT);
}
manifestId = lawsMarketStandard.getId();
}
@@ -142,7 +146,7 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
queryLawsMarketStandard.eq(LawsMarketStandard::getManifestVersion,manifestVersion);
LawsMarketStandard lawsMarketStandard = marketStandardService.getOne(queryLawsMarketStandard,false);
if(Objects.isNull(lawsMarketStandard)){
return Result.error(manifestVersion + "版本不存在");
return Result.error(manifestVersion + VERSION_NOT);
}
manifestId = lawsMarketStandard.getId();
}
@@ -166,7 +170,7 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
if(!Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
&& !Objects.equals(lawsMarketStandardOld.getAuthor(),sysUser.getId())){
return Result.error("没有权限");
return Result.error(NO_PERMISSIONS);
}
// 校验文件是否为excel
if (!ImportExcelUtil.checkExcelFile(file)) {
@@ -199,31 +203,7 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
if(CollectionUtils.isEmpty(listIds)){
return Result.error("标准编号不存在");
}
StringBuilder m = new StringBuilder();
// 获取当前清单的标准
List<String> listStandardIds = getStandardIds(manifestId);
// 验证标准编号是否重复
List<String> listStandardIdRepeat = new ArrayList<>();
for (int i = 0; i < listLawsMarketStandardDetail.size(); i++) {
LawsMarketStandardDetail p = listLawsMarketStandardDetail.get(i);
p.setManifestId(manifestId);
// 校验数据
StringBuilder s = new StringBuilder();
StringBuilder g = ValidUtil.validateReturnBuilder(p);
if(!StringUtils.isEmpty(g.toString())){
s.append(g.toString());
}
// 验证字典值是否满足条件
StringBuilder dict = lawsCommonService.validateFieldByDict(p);
if(!StringUtils.isBlank(dict)){
s.append(dict);
}
// 验证标准编号
checkStandard(listIds, listStandardIds, listStandardIdRepeat, p, s);
if(!StringUtils.isBlank(s.toString())){
m.append("").append(i + 1).append("行,").append(s.toString());
}
}
StringBuilder m = getStringBuilder(manifestId, listLawsMarketStandardDetail, listIds);
if(!StringUtils.isBlank(m.toString())){
return Result.error(m.toString());
@@ -244,6 +224,36 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
}
}
@NotNull
private StringBuilder getStringBuilder(String manifestId, List<LawsMarketStandardDetail> listLawsMarketStandardDetail, List<LawsMarketStandardDetail> listIds) {
StringBuilder m = new StringBuilder();
// 获取当前清单的标准
List<String> listStandardIds = getStandardIds(manifestId);
// 验证标准编号是否重复
List<String> listStandardIdRepeat = new ArrayList<>();
for (int i = 0; i < listLawsMarketStandardDetail.size(); i++) {
LawsMarketStandardDetail p = listLawsMarketStandardDetail.get(i);
p.setManifestId(manifestId);
// 校验数据
StringBuilder s = new StringBuilder();
StringBuilder g = ValidUtil.validateReturnBuilder(p);
if(!StringUtils.isEmpty(g.toString())){
s.append(g.toString());
}
// 验证字典值是否满足条件
StringBuilder dict = lawsCommonService.validateFieldByDict(p);
if(!StringUtils.isBlank(dict)){
s.append(dict);
}
// 验证标准编号
checkStandard(listIds, listStandardIds, listStandardIdRepeat, p, s);
if(!StringUtils.isBlank(s.toString())){
m.append("").append(i + 1).append("行,").append(s.toString());
}
}
return m;
}
@Nullable
private List<LawsMarketStandardDetailExcel> getLawsMarketStandardDetailExcels(MultipartFile file, ImportParams params) throws Exception {
List<LawsMarketStandardDetailExcel> listLawsMarketStandardDetailExcel = ExcelImportUtil.importExcel(
@@ -344,17 +354,17 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
String manifestId = listManifestId.get(0);
LawsMarketStandard lawsMarketStandard = marketStandardService.getById(manifestId);
if(Objects.isNull(lawsMarketStandard)){
return Result.error("数据不存在");
return Result.error(NOT_DATA);
}
// 已发布的清单所有人都可以查看,未发布的数据只能作者和管理管查看、编辑、删除
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
&& !Objects.equals(lawsMarketStandard.getAuthor(),sysUser.getId())){
return Result.error("没有权限");
return Result.error(NO_PERMISSIONS);
}
if(!Objects.equals(sysUser.getUsername(),lawsMarketStandard.getCreateBy())){
return Result.error("没有权限");
return Result.error(NO_PERMISSIONS);
}
List<String> listStandardId = list.stream().map(LawsMarketStandardDetail::getStandardId).collect(Collectors.toList());
LambdaQueryWrapper<LawsMarketStandardDetail> queryOld = new LambdaQueryWrapper<>();
@@ -377,13 +387,13 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
public synchronized Result<?> copy(String oldId,String newId) {
LawsMarketStandard lawsMarketStandard = marketStandardService.getById(newId);
if(Objects.isNull(lawsMarketStandard)){
return Result.error("数据不存在");
return Result.error(NOT_DATA);
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
&& !Objects.equals(lawsMarketStandard.getAuthor(),sysUser.getId())){
return Result.error("没有权限");
return Result.error(NO_PERMISSIONS);
}
LambdaQueryWrapper<LawsMarketStandardDetail> queryOld = new LambdaQueryWrapper<>();
queryOld.in(LawsMarketStandardDetail::getManifestId,Arrays.asList(oldId.split(",")));
@@ -423,13 +433,13 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
public synchronized Result<?> edit(LawsMarketStandardDetail marketStandardDetail) {
LawsMarketStandard lawsMarketStandard = marketStandardService.getById(marketStandardDetail.getManifestId());
if(Objects.isNull(lawsMarketStandard)){
return Result.error("数据不存在");
return Result.error(NOT_DATA);
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
&& !Objects.equals(lawsMarketStandard.getAuthor(),sysUser.getId())){
return Result.error("没有权限");
return Result.error(NO_PERMISSIONS);
}
LambdaQueryWrapper<LawsMarketStandardDetail> queryLawsMarketStandardDetail = new LambdaQueryWrapper<>();
queryLawsMarketStandardDetail.eq(LawsMarketStandardDetail::getStandardId,marketStandardDetail.getStandardId());
@@ -494,7 +504,7 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
long l = count(queryLawsMarketStandardDetail);
if (l == 0 && !Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)) {
throw new JeroBootException("没有权限");
throw new JeroBootException(NO_PERMISSIONS);
}
}
@@ -502,18 +512,18 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
public Result<?> queryById(String id) {
LawsMarketStandardDetail lawsMarketStandardDetail = getById(id);
if(Objects.isNull(lawsMarketStandardDetail)){
return Result.error("数据不存在");
return Result.error(NOT_DATA);
}
LawsMarketStandard lawsMarketStandard = marketStandardService.getById(lawsMarketStandardDetail.getManifestId());
if(Objects.isNull(lawsMarketStandard)){
return Result.error("数据不存在");
return Result.error(NOT_DATA);
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
&& !Objects.equals(lawsMarketStandard.getAuthor(),sysUser.getId())
&& !Objects.equals(lawsMarketStandard.getManifestStatus(),MarketStandardConstants.MANIFEST_STATUS_PUBLISH)){
return Result.error("没有权限");
return Result.error(NO_PERMISSIONS);
}
return Result.OK(lawsMarketStandardDetail);
}
@@ -537,7 +547,7 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
&& !Objects.equals(lawsMarketStandard.getAuthor(),sysUser.getId())
&& !Objects.equals(lawsMarketStandard.getManifestStatus(),
MarketStandardConstants.MANIFEST_STATUS_PUBLISH)){
throw new JeroBootException("没有权限");
throw new JeroBootException(NO_PERMISSIONS);
}
}
@@ -549,7 +559,7 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
queryLawsMarketStandard.eq(LawsMarketStandard::getManifestVersion,manifestVersion);
LawsMarketStandard lawsMarketStandard = marketStandardService.getOne(queryLawsMarketStandard,false);
if(Objects.isNull(lawsMarketStandard)){
throw new JeroBootException(manifestVersion + "版本不存在");
throw new JeroBootException(manifestVersion + VERSION_NOT);
}
manifestId = lawsMarketStandard.getId();
}