fix:87898
This commit is contained in:
+9
-4
@@ -529,11 +529,11 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = JeroBootException.class)
|
@Transactional(rollbackFor = JeroBootException.class)
|
||||||
public Result<?> deleteById(String id) {
|
public Result<?> deleteById(String id) {
|
||||||
checkData(id);
|
|
||||||
LawsMarketStandardDetail lawsMarketStandardDetail = getById(id);
|
LawsMarketStandardDetail lawsMarketStandardDetail = getById(id);
|
||||||
if(Objects.isNull(lawsMarketStandardDetail)){
|
if(Objects.isNull(lawsMarketStandardDetail)){
|
||||||
throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
||||||
}
|
}
|
||||||
|
checkData(id,lawsMarketStandardDetail.getManifestId());
|
||||||
removeById(id);
|
removeById(id);
|
||||||
// 更细状态
|
// 更细状态
|
||||||
marketStandardService.updateStatus(lawsMarketStandardDetail.getManifestId());
|
marketStandardService.updateStatus(lawsMarketStandardDetail.getManifestId());
|
||||||
@@ -543,11 +543,11 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = JeroBootException.class)
|
@Transactional(rollbackFor = JeroBootException.class)
|
||||||
public Result<?> deleteBatchById(String ids) {
|
public Result<?> deleteBatchById(String ids) {
|
||||||
checkData(ids);
|
|
||||||
LawsMarketStandardDetail lawsMarketStandardDetail = getById(ids.split(",")[0]);
|
LawsMarketStandardDetail lawsMarketStandardDetail = getById(ids.split(",")[0]);
|
||||||
if(Objects.isNull(lawsMarketStandardDetail)){
|
if(Objects.isNull(lawsMarketStandardDetail)){
|
||||||
throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
||||||
}
|
}
|
||||||
|
checkData(ids,lawsMarketStandardDetail.getManifestId());
|
||||||
// 更细状态
|
// 更细状态
|
||||||
marketStandardService.updateStatus(lawsMarketStandardDetail.getManifestId());
|
marketStandardService.updateStatus(lawsMarketStandardDetail.getManifestId());
|
||||||
removeByIds(Arrays.asList(ids.split(",")));
|
removeByIds(Arrays.asList(ids.split(",")));
|
||||||
@@ -567,7 +567,11 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 验证数据权限
|
// 验证数据权限
|
||||||
private void checkData(String id) {
|
private void checkData(String id,String manifestId) {
|
||||||
|
LawsMarketStandard lawsMarketStandard = marketStandardService.getById(manifestId);
|
||||||
|
if(Objects.isNull(lawsMarketStandard)){
|
||||||
|
throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
||||||
|
}
|
||||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
LambdaQueryWrapper<LawsMarketStandardDetail> queryLawsMarketStandardDetail = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<LawsMarketStandardDetail> queryLawsMarketStandardDetail = new LambdaQueryWrapper<>();
|
||||||
queryLawsMarketStandardDetail.eq(LawsMarketStandardDetail::getCreateBy, sysUser.getUsername());
|
queryLawsMarketStandardDetail.eq(LawsMarketStandardDetail::getCreateBy, sysUser.getUsername());
|
||||||
@@ -575,7 +579,8 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
long l = count(queryLawsMarketStandardDetail);
|
long l = count(queryLawsMarketStandardDetail);
|
||||||
if (l == 0 && !Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
|
if (l == 0 && !Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
|
||||||
&& !Arrays.stream(sysUser.getRoleIds().split(",")).anyMatch(otherAdmin::contains)
|
&& !Arrays.stream(sysUser.getRoleIds().split(",")).anyMatch(otherAdmin::contains)
|
||||||
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)) {
|
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
|
||||||
|
&& !Objects.equals(lawsMarketStandard.getAuthor(),sysUser.getId())) {
|
||||||
throw new JeroBootException(ResultCommon.NO_PERMISSION);
|
throw new JeroBootException(ResultCommon.NO_PERMISSION);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user