Merge remote-tracking branch 'origin/master'

This commit is contained in:
yjz
2024-07-23 16:12:26 +08:00
9 changed files with 162 additions and 35 deletions
@@ -360,7 +360,7 @@ public class ProcessMarketStandardReleaseServiceImpl extends ServiceImpl<Process
queryProcessAll.eq(ProcessAll::getPrcStatus,"1");
long l = processAllService.count(queryProcessAll);
if(l > 0){
throw new JeroBootException("当前数据已发布的流程未结束,不可重复发布");
throw new JeroBootException("当前数据已发布的流程未结束,不可操作");
}
}
}
@@ -205,7 +205,7 @@ public class MarketStandardController {
if (!map.containsKey("id") || StringUtils.isEmpty(map.get("id"))) {
return Result.error("请选择数据!");
}
return marketStandardService.publish(map.get("id"));
return marketStandardService.checkPublish(map.get("id"));
}
/**
@@ -87,6 +87,13 @@ public interface ILawsMarketStandardService extends IService<LawsMarketStandard>
*/
void edit(MarketStandardDetailVO marketStandardDetailVO);
/**
* 验证是否已发布
* @param id
* @return
*/
Result<?> checkPublish(String id);
/**
* 发布
* @param id
@@ -408,7 +408,26 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
}
@Override
@Transactional(rollbackFor = JeroBootException.class)
public synchronized Result<?> checkPublish(String id) {
LawsMarketStandard lawsMarketStandardOld = getById(id);
if(Objects.isNull(lawsMarketStandardOld)){
return Result.error("数据不存在");
}
// 已发布的清单所有人都可以查看,未发布的数据只能作者和管理管查看、编辑、删除
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
&& !Objects.equals(lawsMarketStandardOld.getAuthor(),sysUser.getId())){
return Result.error("没有权限");
}
if(Objects.equals(lawsMarketStandardOld.getManifestStatus(),MarketStandardConstants.MANIFEST_STATUS_PUBLISH)){
return Result.error("数据已发布");
}
processMarketStandardReleaseService.checkProcessStatus(id);
return Result.OK();
}
@Override
public synchronized Result<?> publish(String id) {
LawsMarketStandard lawsMarketStandardOld = getById(id);
if(Objects.isNull(lawsMarketStandardOld)){